# 1 "exiv2.cc"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "exiv2.cc"
# 21 "exiv2.cc"
# 1 "../config.h" 1
# 22 "exiv2.cc" 2



# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/config.h" 1
# 10 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/config.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exv_conf.h" 1
# 11 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/config.h" 2
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/version.hpp" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/version.hpp"
# 1 "/usr/include/g++/string" 1 3
# 36 "/usr/include/g++/string" 3

# 37 "/usr/include/g++/string" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3






# 1 "/usr/include/g++/bits/x86_64/c++config.h" 1 3
# 198 "/usr/include/g++/bits/x86_64/c++config.h" 3

# 198 "/usr/include/g++/bits/x86_64/c++config.h" 3
namespace std
{
 typedef long unsigned int size_t;
 typedef long int ptrdiff_t;




}
# 220 "/usr/include/g++/bits/x86_64/c++config.h" 3
namespace std
{
 inline namespace __cxx11 __attribute__((__abi_tag__ ("cxx11"))) { }
}
namespace __gnu_cxx
{
 inline namespace __cxx11 __attribute__((__abi_tag__ ("cxx11"))) { }
}
# 486 "/usr/include/g++/bits/x86_64/c++config.h" 3
# 1 "/usr/include/g++/bits/os_defines.h" 1 3
# 487 "/usr/include/g++/bits/x86_64/c++config.h" 2 3


# 1 "/usr/include/g++/bits/cpu_defines.h" 1 3
# 490 "/usr/include/g++/bits/x86_64/c++config.h" 2 3
# 8 "/usr/include/g++/bits/c++config.h" 2 3
# 39 "/usr/include/g++/string" 2 3
# 1 "/usr/include/g++/bits/stringfwd.h" 1 3
# 37 "/usr/include/g++/bits/stringfwd.h" 3

# 38 "/usr/include/g++/bits/stringfwd.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 40 "/usr/include/g++/bits/stringfwd.h" 2 3
# 1 "/usr/include/g++/bits/memoryfwd.h" 1 3
# 46 "/usr/include/g++/bits/memoryfwd.h" 3

# 47 "/usr/include/g++/bits/memoryfwd.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 49 "/usr/include/g++/bits/memoryfwd.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{

# 63 "/usr/include/g++/bits/memoryfwd.h" 3
 template<typename>
   class allocator;

 template<>
   class allocator<void>;


 template<typename, typename>
   struct uses_allocator;




}
# 41 "/usr/include/g++/bits/stringfwd.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{








 template<class _CharT>
   struct char_traits;

 template<> struct char_traits<char>;


 template<> struct char_traits<wchar_t>;
# 67 "/usr/include/g++/bits/stringfwd.h" 3
namespace __cxx11 {

 template<typename _CharT, typename _Traits = char_traits<_CharT>,
          typename _Alloc = allocator<_CharT> >
   class basic_string;


 typedef basic_string<char> string;



 typedef basic_string<wchar_t> wstring;
# 90 "/usr/include/g++/bits/stringfwd.h" 3
}




}
# 40 "/usr/include/g++/string" 2 3
# 1 "/usr/include/g++/bits/char_traits.h" 1 3
# 37 "/usr/include/g++/bits/char_traits.h" 3

# 38 "/usr/include/g++/bits/char_traits.h" 3

# 1 "/usr/include/g++/bits/stl_algobase.h" 1 3
# 59 "/usr/include/g++/bits/stl_algobase.h" 3
# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 60 "/usr/include/g++/bits/stl_algobase.h" 2 3
# 1 "/usr/include/g++/bits/functexcept.h" 1 3
# 39 "/usr/include/g++/bits/functexcept.h" 3
# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 40 "/usr/include/g++/bits/functexcept.h" 2 3
# 1 "/usr/include/g++/bits/exception_defines.h" 1 3
# 41 "/usr/include/g++/bits/functexcept.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{



 void
 __throw_bad_exception(void) __attribute__((__noreturn__));


 void
 __throw_bad_alloc(void) __attribute__((__noreturn__));


 void
 __throw_bad_cast(void) __attribute__((__noreturn__));

 void
 __throw_bad_typeid(void) __attribute__((__noreturn__));


 void
 __throw_logic_error(const char*) __attribute__((__noreturn__));

 void
 __throw_domain_error(const char*) __attribute__((__noreturn__));

 void
 __throw_invalid_argument(const char*) __attribute__((__noreturn__));

 void
 __throw_length_error(const char*) __attribute__((__noreturn__));

 void
 __throw_out_of_range(const char*) __attribute__((__noreturn__));

 void
 __throw_out_of_range_fmt(const char*, ...) __attribute__((__noreturn__))
   __attribute__((__format__(__gnu_printf__, 1, 2)));

 void
 __throw_runtime_error(const char*) __attribute__((__noreturn__));

 void
 __throw_range_error(const char*) __attribute__((__noreturn__));

 void
 __throw_overflow_error(const char*) __attribute__((__noreturn__));

 void
 __throw_underflow_error(const char*) __attribute__((__noreturn__));


 void
 __throw_ios_failure(const char*) __attribute__((__noreturn__));

 void
 __throw_system_error(int) __attribute__((__noreturn__));

 void
 __throw_future_error(int) __attribute__((__noreturn__));


 void
 __throw_bad_function_call() __attribute__((__noreturn__));


}
# 61 "/usr/include/g++/bits/stl_algobase.h" 2 3
# 1 "/usr/include/g++/bits/cpp_type_traits.h" 1 3
# 35 "/usr/include/g++/bits/cpp_type_traits.h" 3

# 36 "/usr/include/g++/bits/cpp_type_traits.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 38 "/usr/include/g++/bits/cpp_type_traits.h" 2 3
# 68 "/usr/include/g++/bits/cpp_type_traits.h" 3
namespace __gnu_cxx __attribute__ ((__visibility__ ("default")))
{


 template<typename _Iterator, typename _Container>
   class __normal_iterator;


}

namespace std __attribute__ ((__visibility__ ("default")))
{


 struct __true_type { };
 struct __false_type { };

 template<bool>
   struct __truth_type
   { typedef __false_type __type; };

 template<>
   struct __truth_type<true>
   { typedef __true_type __type; };



 template<class _Sp, class _Tp>
   struct __traitor
   {
     enum { __value = bool(_Sp::__value) || bool(_Tp::__value) };
     typedef typename __truth_type<__value>::__type __type;
   };


 template<typename, typename>
   struct __are_same
   {
     enum { __value = 0 };
     typedef __false_type __type;
   };

 template<typename _Tp>
   struct __are_same<_Tp, _Tp>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };


 template<typename _Tp>
   struct __is_void
   {
     enum { __value = 0 };
     typedef __false_type __type;
   };

 template<>
   struct __is_void<void>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };




 template<typename _Tp>
   struct __is_integer
   {
     enum { __value = 0 };
     typedef __false_type __type;
   };





 template<>
   struct __is_integer<bool>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<char>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<signed char>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<unsigned char>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };


 template<>
   struct __is_integer<wchar_t>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };
# 199 "/usr/include/g++/bits/cpp_type_traits.h" 3
 template<>
   struct __is_integer<short>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<unsigned short>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<int>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<unsigned int>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<long>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<unsigned long>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<long long>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_integer<unsigned long long>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };
# 270 "/usr/include/g++/bits/cpp_type_traits.h" 3
template<> struct __is_integer<__int128> { enum { __value = 1 }; typedef __true_type __type; }; template<> struct __is_integer<unsigned __int128> { enum { __value = 1 }; typedef __true_type __type; };
# 287 "/usr/include/g++/bits/cpp_type_traits.h" 3
 template<typename _Tp>
   struct __is_floating
   {
     enum { __value = 0 };
     typedef __false_type __type;
   };


 template<>
   struct __is_floating<float>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_floating<double>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_floating<long double>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };




 template<typename _Tp>
   struct __is_pointer
   {
     enum { __value = 0 };
     typedef __false_type __type;
   };

 template<typename _Tp>
   struct __is_pointer<_Tp*>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };




 template<typename _Tp>
   struct __is_normal_iterator
   {
     enum { __value = 0 };
     typedef __false_type __type;
   };

 template<typename _Iterator, typename _Container>
   struct __is_normal_iterator< __gnu_cxx::__normal_iterator<_Iterator,
            _Container> >
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };




 template<typename _Tp>
   struct __is_arithmetic
   : public __traitor<__is_integer<_Tp>, __is_floating<_Tp> >
   { };




 template<typename _Tp>
   struct __is_scalar
   : public __traitor<__is_arithmetic<_Tp>, __is_pointer<_Tp> >
   { };




 template<typename _Tp>
   struct __is_char
   {
     enum { __value = 0 };
     typedef __false_type __type;
   };

 template<>
   struct __is_char<char>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };


 template<>
   struct __is_char<wchar_t>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };


 template<typename _Tp>
   struct __is_byte
   {
     enum { __value = 0 };
     typedef __false_type __type;
   };

 template<>
   struct __is_byte<char>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_byte<signed char>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };

 template<>
   struct __is_byte<unsigned char>
   {
     enum { __value = 1 };
     typedef __true_type __type;
   };




 template<typename _Tp>
   struct __is_move_iterator
   {
     enum { __value = 0 };
     typedef __false_type __type;
   };
# 443 "/usr/include/g++/bits/cpp_type_traits.h" 3

}
# 62 "/usr/include/g++/bits/stl_algobase.h" 2 3
# 1 "/usr/include/g++/ext/type_traits.h" 1 3
# 32 "/usr/include/g++/ext/type_traits.h" 3

# 33 "/usr/include/g++/ext/type_traits.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 35 "/usr/include/g++/ext/type_traits.h" 2 3


namespace __gnu_cxx __attribute__ ((__visibility__ ("default")))
{



 template<bool, typename>
   struct __enable_if
   { };

 template<typename _Tp>
   struct __enable_if<true, _Tp>
   { typedef _Tp __type; };



 template<bool _Cond, typename _Iftrue, typename _Iffalse>
   struct __conditional_type
   { typedef _Iftrue __type; };

 template<typename _Iftrue, typename _Iffalse>
   struct __conditional_type<false, _Iftrue, _Iffalse>
   { typedef _Iffalse __type; };



 template<typename _Tp>
   struct __add_unsigned
   {
   private:
     typedef __enable_if<std::__is_integer<_Tp>::__value, _Tp> __if_type;

   public:
     typedef typename __if_type::__type __type;
   };

 template<>
   struct __add_unsigned<char>
   { typedef unsigned char __type; };

 template<>
   struct __add_unsigned<signed char>
   { typedef unsigned char __type; };

 template<>
   struct __add_unsigned<short>
   { typedef unsigned short __type; };

 template<>
   struct __add_unsigned<int>
   { typedef unsigned int __type; };

 template<>
   struct __add_unsigned<long>
   { typedef unsigned long __type; };

 template<>
   struct __add_unsigned<long long>
   { typedef unsigned long long __type; };


 template<>
   struct __add_unsigned<bool>;

 template<>
   struct __add_unsigned<wchar_t>;



 template<typename _Tp>
   struct __remove_unsigned
   {
   private:
     typedef __enable_if<std::__is_integer<_Tp>::__value, _Tp> __if_type;

   public:
     typedef typename __if_type::__type __type;
   };

 template<>
   struct __remove_unsigned<char>
   { typedef signed char __type; };

 template<>
   struct __remove_unsigned<unsigned char>
   { typedef signed char __type; };

 template<>
   struct __remove_unsigned<unsigned short>
   { typedef short __type; };

 template<>
   struct __remove_unsigned<unsigned int>
   { typedef int __type; };

 template<>
   struct __remove_unsigned<unsigned long>
   { typedef long __type; };

 template<>
   struct __remove_unsigned<unsigned long long>
   { typedef long long __type; };


 template<>
   struct __remove_unsigned<bool>;

 template<>
   struct __remove_unsigned<wchar_t>;



 template<typename _Type>
   inline bool
   __is_null_pointer(_Type* __ptr)
   { return __ptr == 0; }

 template<typename _Type>
   inline bool
   __is_null_pointer(_Type)
   { return false; }
# 165 "/usr/include/g++/ext/type_traits.h" 3
 template<typename _Tp, bool = std::__is_integer<_Tp>::__value>
   struct __promote
   { typedef double __type; };




 template<typename _Tp>
   struct __promote<_Tp, false>
   { };

 template<>
   struct __promote<long double>
   { typedef long double __type; };

 template<>
   struct __promote<double>
   { typedef double __type; };

 template<>
   struct __promote<float>
   { typedef float __type; };

 template<typename _Tp, typename _Up,
          typename _Tp2 = typename __promote<_Tp>::__type,
          typename _Up2 = typename __promote<_Up>::__type>
   struct __promote_2
   {
     typedef __typeof__(_Tp2() + _Up2()) __type;
   };

 template<typename _Tp, typename _Up, typename _Vp,
          typename _Tp2 = typename __promote<_Tp>::__type,
          typename _Up2 = typename __promote<_Up>::__type,
          typename _Vp2 = typename __promote<_Vp>::__type>
   struct __promote_3
   {
     typedef __typeof__(_Tp2() + _Up2() + _Vp2()) __type;
   };

 template<typename _Tp, typename _Up, typename _Vp, typename _Wp,
          typename _Tp2 = typename __promote<_Tp>::__type,
          typename _Up2 = typename __promote<_Up>::__type,
          typename _Vp2 = typename __promote<_Vp>::__type,
          typename _Wp2 = typename __promote<_Wp>::__type>
   struct __promote_4
   {
     typedef __typeof__(_Tp2() + _Up2() + _Vp2() + _Wp2()) __type;
   };


}
# 63 "/usr/include/g++/bits/stl_algobase.h" 2 3
# 1 "/usr/include/g++/ext/numeric_traits.h" 1 3
# 32 "/usr/include/g++/ext/numeric_traits.h" 3

# 33 "/usr/include/g++/ext/numeric_traits.h" 3




namespace __gnu_cxx __attribute__ ((__visibility__ ("default")))
{

# 54 "/usr/include/g++/ext/numeric_traits.h" 3
 template<typename _Value>
   struct __numeric_traits_integer
   {

     static const _Value __min = (((_Value)(-1) < 0) ? (_Value)1 << (sizeof(_Value) * 8 - ((_Value)(-1) < 0)) : (_Value)0);
     static const _Value __max = (((_Value)(-1) < 0) ? (((((_Value)1 << ((sizeof(_Value) * 8 - ((_Value)(-1) < 0)) - 1)) - 1) << 1) + 1) : ~(_Value)0);



     static const bool __is_signed_val = ((_Value)(-1) < 0);
     static const int __digits = (sizeof(_Value) * 8 - ((_Value)(-1) < 0));
   };

 template<typename _Value>
   const _Value __numeric_traits_integer<_Value>::__min;

 template<typename _Value>
   const _Value __numeric_traits_integer<_Value>::__max;

 template<typename _Value>
   const bool __numeric_traits_integer<_Value>::__is_signed_val;

 template<typename _Value>
   const int __numeric_traits_integer<_Value>::__digits;
# 99 "/usr/include/g++/ext/numeric_traits.h" 3
 template<typename _Value>
   struct __numeric_traits_floating
   {

     static const int __max_digits10 = (2 + (std::__are_same<_Value, float>::__value ? 24 : std::__are_same<_Value, double>::__value ? 53 : 64) * 643L / 2136);


     static const bool __is_signed_val = true;
     static const int __digits10 = (std::__are_same<_Value, float>::__value ? 6 : std::__are_same<_Value, double>::__value ? 15 : 18);
     static const int __max_exponent10 = (std::__are_same<_Value, float>::__value ? 38 : std::__are_same<_Value, double>::__value ? 308 : 4932);
   };

 template<typename _Value>
   const int __numeric_traits_floating<_Value>::__max_digits10;

 template<typename _Value>
   const bool __numeric_traits_floating<_Value>::__is_signed_val;

 template<typename _Value>
   const int __numeric_traits_floating<_Value>::__digits10;

 template<typename _Value>
   const int __numeric_traits_floating<_Value>::__max_exponent10;

 template<typename _Value>
   struct __numeric_traits
   : public __conditional_type<std::__is_integer<_Value>::__value,
   __numeric_traits_integer<_Value>,
   __numeric_traits_floating<_Value> >::__type
   { };


}
# 64 "/usr/include/g++/bits/stl_algobase.h" 2 3
# 1 "/usr/include/g++/bits/stl_pair.h" 1 3
# 59 "/usr/include/g++/bits/stl_pair.h" 3
# 1 "/usr/include/g++/bits/move.h" 1 3
# 33 "/usr/include/g++/bits/move.h" 3
# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 34 "/usr/include/g++/bits/move.h" 2 3
# 1 "/usr/include/g++/bits/concept_check.h" 1 3
# 33 "/usr/include/g++/bits/concept_check.h" 3

# 34 "/usr/include/g++/bits/concept_check.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 36 "/usr/include/g++/bits/concept_check.h" 2 3
# 35 "/usr/include/g++/bits/move.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{







 template<typename _Tp>
   inline _Tp*
   __addressof(_Tp& __r)
   {
     return reinterpret_cast<_Tp*>
(&const_cast<char&>(reinterpret_cast<const volatile char&>(__r)));
   }


}
# 159 "/usr/include/g++/bits/move.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{

# 174 "/usr/include/g++/bits/move.h" 3
 template<typename _Tp>
   inline void
   swap(_Tp& __a, _Tp& __b)




   {



     _Tp __tmp = (__a);
     __a = (__b);
     __b = (__tmp);
   }




 template<typename _Tp, size_t _Nm>
   inline void
   swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])



   {
     for (size_t __n = 0; __n < _Nm; ++__n)
swap(__a[__n], __b[__n]);
   }



}
# 60 "/usr/include/g++/bits/stl_pair.h" 2 3





namespace std __attribute__ ((__visibility__ ("default")))
{

# 95 "/usr/include/g++/bits/stl_pair.h" 3
 template<class _T1, class _T2>
   struct pair
   {
     typedef _T1 first_type;
     typedef _T2 second_type;

     _T1 first;
     _T2 second;





     pair()
     : first(), second() { }


     pair(const _T1& __a, const _T2& __b)
     : first(__a), second(__b) { }



     template<class _U1, class _U2>
pair(const pair<_U1, _U2>& __p)
: first(__p.first), second(__p.second) { }
# 209 "/usr/include/g++/bits/stl_pair.h" 3
   };


 template<class _T1, class _T2>
   inline bool
   operator==(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
   { return __x.first == __y.first && __x.second == __y.second; }


 template<class _T1, class _T2>
   inline bool
   operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
   { return __x.first < __y.first
     || (!(__y.first < __x.first) && __x.second < __y.second); }


 template<class _T1, class _T2>
   inline bool
   operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
   { return !(__x == __y); }


 template<class _T1, class _T2>
   inline bool
   operator>(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
   { return __y < __x; }


 template<class _T1, class _T2>
   inline bool
   operator<=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
   { return !(__y < __x); }


 template<class _T1, class _T2>
   inline bool
   operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
   { return !(__x < __y); }
# 284 "/usr/include/g++/bits/stl_pair.h" 3
 template<class _T1, class _T2>
   inline pair<_T1, _T2>
   make_pair(_T1 __x, _T2 __y)
   { return pair<_T1, _T2>(__x, __y); }





}
# 65 "/usr/include/g++/bits/stl_algobase.h" 2 3
# 1 "/usr/include/g++/bits/stl_iterator_base_types.h" 1 3
# 62 "/usr/include/g++/bits/stl_iterator_base_types.h" 3

# 63 "/usr/include/g++/bits/stl_iterator_base_types.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 65 "/usr/include/g++/bits/stl_iterator_base_types.h" 2 3





namespace std __attribute__ ((__visibility__ ("default")))
{

# 89 "/usr/include/g++/bits/stl_iterator_base_types.h" 3
 struct input_iterator_tag { };


 struct output_iterator_tag { };


 struct forward_iterator_tag : public input_iterator_tag { };



 struct bidirectional_iterator_tag : public forward_iterator_tag { };



 struct random_access_iterator_tag : public bidirectional_iterator_tag { };
# 116 "/usr/include/g++/bits/stl_iterator_base_types.h" 3
 template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t,
          typename _Pointer = _Tp*, typename _Reference = _Tp&>
   struct iterator
   {

     typedef _Category iterator_category;

     typedef _Tp value_type;

     typedef _Distance difference_type;

     typedef _Pointer pointer;

     typedef _Reference reference;
   };
# 165 "/usr/include/g++/bits/stl_iterator_base_types.h" 3
 template<typename _Iterator>
   struct iterator_traits
   {
     typedef typename _Iterator::iterator_category iterator_category;
     typedef typename _Iterator::value_type value_type;
     typedef typename _Iterator::difference_type difference_type;
     typedef typename _Iterator::pointer pointer;
     typedef typename _Iterator::reference reference;
   };



 template<typename _Tp>
   struct iterator_traits<_Tp*>
   {
     typedef random_access_iterator_tag iterator_category;
     typedef _Tp value_type;
     typedef ptrdiff_t difference_type;
     typedef _Tp* pointer;
     typedef _Tp& reference;
   };


 template<typename _Tp>
   struct iterator_traits<const _Tp*>
   {
     typedef random_access_iterator_tag iterator_category;
     typedef _Tp value_type;
     typedef ptrdiff_t difference_type;
     typedef const _Tp* pointer;
     typedef const _Tp& reference;
   };





 template<typename _Iter>
   inline typename iterator_traits<_Iter>::iterator_category
   __iterator_category(const _Iter&)
   { return typename iterator_traits<_Iter>::iterator_category(); }





 template<typename _Iterator, bool _HasBase>
   struct _Iter_base
   {
     typedef _Iterator iterator_type;
     static iterator_type _S_base(_Iterator __it)
     { return __it; }
   };

 template<typename _Iterator>
   struct _Iter_base<_Iterator, true>
   {
     typedef typename _Iterator::iterator_type iterator_type;
     static iterator_type _S_base(_Iterator __it)
     { return __it.base(); }
   };
# 235 "/usr/include/g++/bits/stl_iterator_base_types.h" 3

}
# 66 "/usr/include/g++/bits/stl_algobase.h" 2 3
# 1 "/usr/include/g++/bits/stl_iterator_base_funcs.h" 1 3
# 62 "/usr/include/g++/bits/stl_iterator_base_funcs.h" 3

# 63 "/usr/include/g++/bits/stl_iterator_base_funcs.h" 3


# 1 "/usr/include/g++/debug/debug.h" 1 3
# 46 "/usr/include/g++/debug/debug.h" 3
namespace std
{
 namespace __debug { }
}




namespace __gnu_debug
{
 using namespace std::__debug;
}
# 66 "/usr/include/g++/bits/stl_iterator_base_funcs.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _InputIterator>
   inline typename iterator_traits<_InputIterator>::difference_type
   __distance(_InputIterator __first, _InputIterator __last,
              input_iterator_tag)
   {



     typename iterator_traits<_InputIterator>::difference_type __n = 0;
     while (__first != __last)
{
  ++__first;
  ++__n;
}
     return __n;
   }

 template<typename _RandomAccessIterator>
   inline typename iterator_traits<_RandomAccessIterator>::difference_type
   __distance(_RandomAccessIterator __first, _RandomAccessIterator __last,
              random_access_iterator_tag)
   {



     return __last - __first;
   }
# 112 "/usr/include/g++/bits/stl_iterator_base_funcs.h" 3
 template<typename _InputIterator>
   inline typename iterator_traits<_InputIterator>::difference_type
   distance(_InputIterator __first, _InputIterator __last)
   {

     return std::__distance(__first, __last,
       std::__iterator_category(__first));
   }

 template<typename _InputIterator, typename _Distance>
   inline void
   __advance(_InputIterator& __i, _Distance __n, input_iterator_tag)
   {


     ;
     while (__n--)
++__i;
   }

 template<typename _BidirectionalIterator, typename _Distance>
   inline void
   __advance(_BidirectionalIterator& __i, _Distance __n,
      bidirectional_iterator_tag)
   {



     if (__n > 0)
       while (__n--)
  ++__i;
     else
       while (__n++)
  --__i;
   }

 template<typename _RandomAccessIterator, typename _Distance>
   inline void
   __advance(_RandomAccessIterator& __i, _Distance __n,
             random_access_iterator_tag)
   {



     __i += __n;
   }
# 171 "/usr/include/g++/bits/stl_iterator_base_funcs.h" 3
 template<typename _InputIterator, typename _Distance>
   inline void
   advance(_InputIterator& __i, _Distance __n)
   {

     typename iterator_traits<_InputIterator>::difference_type __d = __n;
     std::__advance(__i, __d, std::__iterator_category(__i));
   }
# 202 "/usr/include/g++/bits/stl_iterator_base_funcs.h" 3

}
# 67 "/usr/include/g++/bits/stl_algobase.h" 2 3
# 1 "/usr/include/g++/bits/stl_iterator.h" 1 3
# 66 "/usr/include/g++/bits/stl_iterator.h" 3
# 1 "/usr/include/g++/bits/ptr_traits.h" 1 3
# 67 "/usr/include/g++/bits/stl_iterator.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{

# 96 "/usr/include/g++/bits/stl_iterator.h" 3
 template<typename _Iterator>
   class reverse_iterator
   : public iterator<typename iterator_traits<_Iterator>::iterator_category,
       typename iterator_traits<_Iterator>::value_type,
       typename iterator_traits<_Iterator>::difference_type,
       typename iterator_traits<_Iterator>::pointer,
                     typename iterator_traits<_Iterator>::reference>
   {
   protected:
     _Iterator current;

     typedef iterator_traits<_Iterator> __traits_type;

   public:
     typedef _Iterator iterator_type;
     typedef typename __traits_type::difference_type difference_type;
     typedef typename __traits_type::pointer pointer;
     typedef typename __traits_type::reference reference;







     reverse_iterator() : current() { }




     explicit
     reverse_iterator(iterator_type __x) : current(__x) { }




     reverse_iterator(const reverse_iterator& __x)
     : current(__x.current) { }





     template<typename _Iter>
       reverse_iterator(const reverse_iterator<_Iter>& __x)
: current(__x.base()) { }




     iterator_type
     base() const
     { return current; }
# 160 "/usr/include/g++/bits/stl_iterator.h" 3
     reference
     operator*() const
     {
_Iterator __tmp = current;
return *--__tmp;
     }






     pointer
     operator->() const
     { return &(operator*()); }






     reverse_iterator&
     operator++()
     {
--current;
return *this;
     }






     reverse_iterator
     operator++(int)
     {
reverse_iterator __tmp = *this;
--current;
return __tmp;
     }






     reverse_iterator&
     operator--()
     {
++current;
return *this;
     }






     reverse_iterator
     operator--(int)
     {
reverse_iterator __tmp = *this;
++current;
return __tmp;
     }






     reverse_iterator
     operator+(difference_type __n) const
     { return reverse_iterator(current - __n); }







     reverse_iterator&
     operator+=(difference_type __n)
     {
current -= __n;
return *this;
     }






     reverse_iterator
     operator-(difference_type __n) const
     { return reverse_iterator(current + __n); }







     reverse_iterator&
     operator-=(difference_type __n)
     {
current += __n;
return *this;
     }






     reference
     operator[](difference_type __n) const
     { return *(*this + __n); }
   };
# 290 "/usr/include/g++/bits/stl_iterator.h" 3
 template<typename _Iterator>
   inline bool
   operator==(const reverse_iterator<_Iterator>& __x,
       const reverse_iterator<_Iterator>& __y)
   { return __x.base() == __y.base(); }

 template<typename _Iterator>
   inline bool
   operator<(const reverse_iterator<_Iterator>& __x,
      const reverse_iterator<_Iterator>& __y)
   { return __y.base() < __x.base(); }

 template<typename _Iterator>
   inline bool
   operator!=(const reverse_iterator<_Iterator>& __x,
       const reverse_iterator<_Iterator>& __y)
   { return !(__x == __y); }

 template<typename _Iterator>
   inline bool
   operator>(const reverse_iterator<_Iterator>& __x,
      const reverse_iterator<_Iterator>& __y)
   { return __y < __x; }

 template<typename _Iterator>
   inline bool
   operator<=(const reverse_iterator<_Iterator>& __x,
       const reverse_iterator<_Iterator>& __y)
   { return !(__y < __x); }

 template<typename _Iterator>
   inline bool
   operator>=(const reverse_iterator<_Iterator>& __x,
       const reverse_iterator<_Iterator>& __y)
   { return !(__x < __y); }

 template<typename _Iterator>
   inline typename reverse_iterator<_Iterator>::difference_type
   operator-(const reverse_iterator<_Iterator>& __x,
      const reverse_iterator<_Iterator>& __y)
   { return __y.base() - __x.base(); }

 template<typename _Iterator>
   inline reverse_iterator<_Iterator>
   operator+(typename reverse_iterator<_Iterator>::difference_type __n,
      const reverse_iterator<_Iterator>& __x)
   { return reverse_iterator<_Iterator>(__x.base() - __n); }



 template<typename _IteratorL, typename _IteratorR>
   inline bool
   operator==(const reverse_iterator<_IteratorL>& __x,
       const reverse_iterator<_IteratorR>& __y)
   { return __x.base() == __y.base(); }

 template<typename _IteratorL, typename _IteratorR>
   inline bool
   operator<(const reverse_iterator<_IteratorL>& __x,
      const reverse_iterator<_IteratorR>& __y)
   { return __y.base() < __x.base(); }

 template<typename _IteratorL, typename _IteratorR>
   inline bool
   operator!=(const reverse_iterator<_IteratorL>& __x,
       const reverse_iterator<_IteratorR>& __y)
   { return !(__x == __y); }

 template<typename _IteratorL, typename _IteratorR>
   inline bool
   operator>(const reverse_iterator<_IteratorL>& __x,
      const reverse_iterator<_IteratorR>& __y)
   { return __y < __x; }

 template<typename _IteratorL, typename _IteratorR>
   inline bool
   operator<=(const reverse_iterator<_IteratorL>& __x,
       const reverse_iterator<_IteratorR>& __y)
   { return !(__y < __x); }

 template<typename _IteratorL, typename _IteratorR>
   inline bool
   operator>=(const reverse_iterator<_IteratorL>& __x,
       const reverse_iterator<_IteratorR>& __y)
   { return !(__x < __y); }

 template<typename _IteratorL, typename _IteratorR>







   inline typename reverse_iterator<_IteratorL>::difference_type
   operator-(const reverse_iterator<_IteratorL>& __x,
      const reverse_iterator<_IteratorR>& __y)

   { return __y.base() - __x.base(); }
# 414 "/usr/include/g++/bits/stl_iterator.h" 3
 template<typename _Container>
   class back_insert_iterator
   : public iterator<output_iterator_tag, void, void, void, void>
   {
   protected:
     _Container* container;

   public:

     typedef _Container container_type;


     explicit
     back_insert_iterator(_Container& __x) : container(&__x) { }
# 441 "/usr/include/g++/bits/stl_iterator.h" 3
     back_insert_iterator&
     operator=(typename _Container::const_reference __value)
     {
container->push_back(__value);
return *this;
     }
# 464 "/usr/include/g++/bits/stl_iterator.h" 3
     back_insert_iterator&
     operator*()
     { return *this; }


     back_insert_iterator&
     operator++()
     { return *this; }


     back_insert_iterator
     operator++(int)
     { return *this; }
   };
# 490 "/usr/include/g++/bits/stl_iterator.h" 3
 template<typename _Container>
   inline back_insert_iterator<_Container>
   back_inserter(_Container& __x)
   { return back_insert_iterator<_Container>(__x); }
# 505 "/usr/include/g++/bits/stl_iterator.h" 3
 template<typename _Container>
   class front_insert_iterator
   : public iterator<output_iterator_tag, void, void, void, void>
   {
   protected:
     _Container* container;

   public:

     typedef _Container container_type;


     explicit front_insert_iterator(_Container& __x) : container(&__x) { }
# 531 "/usr/include/g++/bits/stl_iterator.h" 3
     front_insert_iterator&
     operator=(typename _Container::const_reference __value)
     {
container->push_front(__value);
return *this;
     }
# 554 "/usr/include/g++/bits/stl_iterator.h" 3
     front_insert_iterator&
     operator*()
     { return *this; }


     front_insert_iterator&
     operator++()
     { return *this; }


     front_insert_iterator
     operator++(int)
     { return *this; }
   };
# 580 "/usr/include/g++/bits/stl_iterator.h" 3
 template<typename _Container>
   inline front_insert_iterator<_Container>
   front_inserter(_Container& __x)
   { return front_insert_iterator<_Container>(__x); }
# 599 "/usr/include/g++/bits/stl_iterator.h" 3
 template<typename _Container>
   class insert_iterator
   : public iterator<output_iterator_tag, void, void, void, void>
   {
   protected:
     _Container* container;
     typename _Container::iterator iter;

   public:

     typedef _Container container_type;





     insert_iterator(_Container& __x, typename _Container::iterator __i)
     : container(&__x), iter(__i) {}
# 642 "/usr/include/g++/bits/stl_iterator.h" 3
     insert_iterator&
     operator=(typename _Container::const_reference __value)
     {
iter = container->insert(iter, __value);
++iter;
return *this;
     }
# 668 "/usr/include/g++/bits/stl_iterator.h" 3
     insert_iterator&
     operator*()
     { return *this; }


     insert_iterator&
     operator++()
     { return *this; }


     insert_iterator&
     operator++(int)
     { return *this; }
   };
# 694 "/usr/include/g++/bits/stl_iterator.h" 3
 template<typename _Container, typename _Iterator>
   inline insert_iterator<_Container>
   inserter(_Container& __x, _Iterator __i)
   {
     return insert_iterator<_Container>(__x,
     typename _Container::iterator(__i));
   }




}

namespace __gnu_cxx __attribute__ ((__visibility__ ("default")))
{

# 718 "/usr/include/g++/bits/stl_iterator.h" 3
 using std::iterator_traits;
 using std::iterator;
 template<typename _Iterator, typename _Container>
   class __normal_iterator
   {
   protected:
     _Iterator _M_current;

     typedef iterator_traits<_Iterator> __traits_type;

   public:
     typedef _Iterator iterator_type;
     typedef typename __traits_type::iterator_category iterator_category;
     typedef typename __traits_type::value_type value_type;
     typedef typename __traits_type::difference_type difference_type;
     typedef typename __traits_type::reference reference;
     typedef typename __traits_type::pointer pointer;

     __normal_iterator()
     : _M_current(_Iterator()) { }

     explicit
     __normal_iterator(const _Iterator& __i)
     : _M_current(__i) { }


     template<typename _Iter>
       __normal_iterator(const __normal_iterator<_Iter,
    typename __enable_if<
             (std::__are_same<_Iter, typename _Container::pointer>::__value),
       _Container>::__type>& __i)
       : _M_current(__i.base()) { }


     reference
     operator*() const
     { return *_M_current; }

     pointer
     operator->() const
     { return _M_current; }

     __normal_iterator&
     operator++()
     {
++_M_current;
return *this;
     }

     __normal_iterator
     operator++(int)
     { return __normal_iterator(_M_current++); }


     __normal_iterator&
     operator--()
     {
--_M_current;
return *this;
     }

     __normal_iterator
     operator--(int)
     { return __normal_iterator(_M_current--); }


     reference
     operator[](difference_type __n) const
     { return _M_current[__n]; }

     __normal_iterator&
     operator+=(difference_type __n)
     { _M_current += __n; return *this; }

     __normal_iterator
     operator+(difference_type __n) const
     { return __normal_iterator(_M_current + __n); }

     __normal_iterator&
     operator-=(difference_type __n)
     { _M_current -= __n; return *this; }

     __normal_iterator
     operator-(difference_type __n) const
     { return __normal_iterator(_M_current - __n); }

     const _Iterator&
     base() const
     { return _M_current; }
   };
# 818 "/usr/include/g++/bits/stl_iterator.h" 3
 template<typename _IteratorL, typename _IteratorR, typename _Container>
   inline bool
   operator==(const __normal_iterator<_IteratorL, _Container>& __lhs,
       const __normal_iterator<_IteratorR, _Container>& __rhs)

   { return __lhs.base() == __rhs.base(); }

 template<typename _Iterator, typename _Container>
   inline bool
   operator==(const __normal_iterator<_Iterator, _Container>& __lhs,
       const __normal_iterator<_Iterator, _Container>& __rhs)

   { return __lhs.base() == __rhs.base(); }

 template<typename _IteratorL, typename _IteratorR, typename _Container>
   inline bool
   operator!=(const __normal_iterator<_IteratorL, _Container>& __lhs,
       const __normal_iterator<_IteratorR, _Container>& __rhs)

   { return __lhs.base() != __rhs.base(); }

 template<typename _Iterator, typename _Container>
   inline bool
   operator!=(const __normal_iterator<_Iterator, _Container>& __lhs,
       const __normal_iterator<_Iterator, _Container>& __rhs)

   { return __lhs.base() != __rhs.base(); }


 template<typename _IteratorL, typename _IteratorR, typename _Container>
   inline bool
   operator<(const __normal_iterator<_IteratorL, _Container>& __lhs,
      const __normal_iterator<_IteratorR, _Container>& __rhs)

   { return __lhs.base() < __rhs.base(); }

 template<typename _Iterator, typename _Container>
   inline bool
   operator<(const __normal_iterator<_Iterator, _Container>& __lhs,
      const __normal_iterator<_Iterator, _Container>& __rhs)

   { return __lhs.base() < __rhs.base(); }

 template<typename _IteratorL, typename _IteratorR, typename _Container>
   inline bool
   operator>(const __normal_iterator<_IteratorL, _Container>& __lhs,
      const __normal_iterator<_IteratorR, _Container>& __rhs)

   { return __lhs.base() > __rhs.base(); }

 template<typename _Iterator, typename _Container>
   inline bool
   operator>(const __normal_iterator<_Iterator, _Container>& __lhs,
      const __normal_iterator<_Iterator, _Container>& __rhs)

   { return __lhs.base() > __rhs.base(); }

 template<typename _IteratorL, typename _IteratorR, typename _Container>
   inline bool
   operator<=(const __normal_iterator<_IteratorL, _Container>& __lhs,
       const __normal_iterator<_IteratorR, _Container>& __rhs)

   { return __lhs.base() <= __rhs.base(); }

 template<typename _Iterator, typename _Container>
   inline bool
   operator<=(const __normal_iterator<_Iterator, _Container>& __lhs,
       const __normal_iterator<_Iterator, _Container>& __rhs)

   { return __lhs.base() <= __rhs.base(); }

 template<typename _IteratorL, typename _IteratorR, typename _Container>
   inline bool
   operator>=(const __normal_iterator<_IteratorL, _Container>& __lhs,
       const __normal_iterator<_IteratorR, _Container>& __rhs)

   { return __lhs.base() >= __rhs.base(); }

 template<typename _Iterator, typename _Container>
   inline bool
   operator>=(const __normal_iterator<_Iterator, _Container>& __lhs,
       const __normal_iterator<_Iterator, _Container>& __rhs)

   { return __lhs.base() >= __rhs.base(); }





 template<typename _IteratorL, typename _IteratorR, typename _Container>







   inline typename __normal_iterator<_IteratorL, _Container>::difference_type
   operator-(const __normal_iterator<_IteratorL, _Container>& __lhs,
      const __normal_iterator<_IteratorR, _Container>& __rhs)

   { return __lhs.base() - __rhs.base(); }

 template<typename _Iterator, typename _Container>
   inline typename __normal_iterator<_Iterator, _Container>::difference_type
   operator-(const __normal_iterator<_Iterator, _Container>& __lhs,
      const __normal_iterator<_Iterator, _Container>& __rhs)

   { return __lhs.base() - __rhs.base(); }

 template<typename _Iterator, typename _Container>
   inline __normal_iterator<_Iterator, _Container>
   operator+(typename __normal_iterator<_Iterator, _Container>::difference_type
      __n, const __normal_iterator<_Iterator, _Container>& __i)

   { return __normal_iterator<_Iterator, _Container>(__i.base() + __n); }


}
# 68 "/usr/include/g++/bits/stl_algobase.h" 2 3



# 1 "/usr/include/g++/bits/predefined_ops.h" 1 3
# 33 "/usr/include/g++/bits/predefined_ops.h" 3
namespace __gnu_cxx
{
namespace __ops
{
 struct _Iter_less_iter
 {
   template<typename _Iterator1, typename _Iterator2>

     bool
     operator()(_Iterator1 __it1, _Iterator2 __it2) const
     { return *__it1 < *__it2; }
 };

 inline _Iter_less_iter
 __iter_less_iter()
 { return _Iter_less_iter(); }

 struct _Iter_less_val
 {
   template<typename _Iterator, typename _Value>
     bool
     operator()(_Iterator __it, _Value& __val) const
     { return *__it < __val; }
   };

 inline _Iter_less_val
 __iter_less_val()
 { return _Iter_less_val(); }

 inline _Iter_less_val
 __iter_comp_val(_Iter_less_iter)
 { return _Iter_less_val(); }

 struct _Val_less_iter
 {
   template<typename _Value, typename _Iterator>
     bool
     operator()(_Value& __val, _Iterator __it) const
     { return __val < *__it; }
   };

 inline _Val_less_iter
 __val_less_iter()
 { return _Val_less_iter(); }

 inline _Val_less_iter
 __val_comp_iter(_Iter_less_iter)
 { return _Val_less_iter(); }

 struct _Iter_equal_to_iter
 {
   template<typename _Iterator1, typename _Iterator2>
     bool
     operator()(_Iterator1 __it1, _Iterator2 __it2) const
     { return *__it1 == *__it2; }
   };

 inline _Iter_equal_to_iter
 __iter_equal_to_iter()
 { return _Iter_equal_to_iter(); }

 struct _Iter_equal_to_val
 {
   template<typename _Iterator, typename _Value>
     bool
     operator()(_Iterator __it, _Value& __val) const
     { return *__it == __val; }
   };

 inline _Iter_equal_to_val
 __iter_equal_to_val()
 { return _Iter_equal_to_val(); }

 inline _Iter_equal_to_val
 __iter_comp_val(_Iter_equal_to_iter)
 { return _Iter_equal_to_val(); }

 template<typename _Compare>
   struct _Iter_comp_iter
   {
     _Compare _M_comp;

     _Iter_comp_iter(_Compare __comp)
: _M_comp(__comp)
     { }

     template<typename _Iterator1, typename _Iterator2>

       bool
       operator()(_Iterator1 __it1, _Iterator2 __it2)
       { return bool(_M_comp(*__it1, *__it2)); }
   };

 template<typename _Compare>

   inline _Iter_comp_iter<_Compare>
   __iter_comp_iter(_Compare __comp)
   { return _Iter_comp_iter<_Compare>(__comp); }

 template<typename _Compare>
   struct _Iter_comp_val
   {
     _Compare _M_comp;

     _Iter_comp_val(_Compare __comp)
: _M_comp(__comp)
     { }

     template<typename _Iterator, typename _Value>
bool
operator()(_Iterator __it, _Value& __val)
{ return bool(_M_comp(*__it, __val)); }
   };

 template<typename _Compare>
  inline _Iter_comp_val<_Compare>
   __iter_comp_val(_Compare __comp)
   { return _Iter_comp_val<_Compare>(__comp); }

 template<typename _Compare>
   inline _Iter_comp_val<_Compare>
   __iter_comp_val(_Iter_comp_iter<_Compare> __comp)
   { return _Iter_comp_val<_Compare>(__comp._M_comp); }

 template<typename _Compare>
   struct _Val_comp_iter
   {
     _Compare _M_comp;

     _Val_comp_iter(_Compare __comp)
: _M_comp(__comp)
     { }

     template<typename _Value, typename _Iterator>
bool
operator()(_Value& __val, _Iterator __it)
{ return bool(_M_comp(__val, *__it)); }
   };

 template<typename _Compare>
   inline _Val_comp_iter<_Compare>
   __val_comp_iter(_Compare __comp)
   { return _Val_comp_iter<_Compare>(__comp); }

 template<typename _Compare>
   inline _Val_comp_iter<_Compare>
   __val_comp_iter(_Iter_comp_iter<_Compare> __comp)
   { return _Val_comp_iter<_Compare>(__comp._M_comp); }

 template<typename _Value>
   struct _Iter_equals_val
   {
     _Value& _M_value;

     _Iter_equals_val(_Value& __value)
: _M_value(__value)
     { }

     template<typename _Iterator>
bool
operator()(_Iterator __it)
{ return *__it == _M_value; }
   };

 template<typename _Value>
   inline _Iter_equals_val<_Value>
   __iter_equals_val(_Value& __val)
   { return _Iter_equals_val<_Value>(__val); }

 template<typename _Iterator1>
   struct _Iter_equals_iter
   {
     typename std::iterator_traits<_Iterator1>::reference _M_ref;

     _Iter_equals_iter(_Iterator1 __it1)
: _M_ref(*__it1)
     { }

     template<typename _Iterator2>
bool
operator()(_Iterator2 __it2)
{ return *__it2 == _M_ref; }
   };

 template<typename _Iterator>
   inline _Iter_equals_iter<_Iterator>
   __iter_comp_iter(_Iter_equal_to_iter, _Iterator __it)
   { return _Iter_equals_iter<_Iterator>(__it); }

 template<typename _Predicate>
   struct _Iter_pred
   {
     _Predicate _M_pred;

     _Iter_pred(_Predicate __pred)
: _M_pred(__pred)
     { }

     template<typename _Iterator>
bool
operator()(_Iterator __it)
{ return bool(_M_pred(*__it)); }
   };

 template<typename _Predicate>
   inline _Iter_pred<_Predicate>
   __pred_iter(_Predicate __pred)
   { return _Iter_pred<_Predicate>(__pred); }

 template<typename _Compare, typename _Value>
   struct _Iter_comp_to_val
   {
     _Compare _M_comp;
     _Value& _M_value;

     _Iter_comp_to_val(_Compare __comp, _Value& __value)
: _M_comp(__comp), _M_value(__value)
     { }

     template<typename _Iterator>
bool
operator()(_Iterator __it)
{ return bool(_M_comp(*__it, _M_value)); }
   };

 template<typename _Compare, typename _Value>
   _Iter_comp_to_val<_Compare, _Value>
   __iter_comp_val(_Compare __comp, _Value &__val)
   { return _Iter_comp_to_val<_Compare, _Value>(__comp, __val); }

 template<typename _Compare, typename _Iterator1>
   struct _Iter_comp_to_iter
   {
     _Compare _M_comp;
     typename std::iterator_traits<_Iterator1>::reference _M_ref;

     _Iter_comp_to_iter(_Compare __comp, _Iterator1 __it1)
: _M_comp(__comp), _M_ref(*__it1)
     { }

     template<typename _Iterator2>
bool
operator()(_Iterator2 __it2)
{ return bool(_M_comp(*__it2, _M_ref)); }
   };

 template<typename _Compare, typename _Iterator>
   inline _Iter_comp_to_iter<_Compare, _Iterator>
   __iter_comp_iter(_Iter_comp_iter<_Compare> __comp, _Iterator __it)
   { return _Iter_comp_to_iter<_Compare, _Iterator>(__comp._M_comp, __it); }

 template<typename _Predicate>
   struct _Iter_negate
   {
     _Predicate _M_pred;

     _Iter_negate(_Predicate __pred)
: _M_pred(__pred)
     { }

     template<typename _Iterator>
bool
operator()(_Iterator __it)
{ return !bool(_M_pred(*__it)); }
   };

 template<typename _Predicate>
   inline _Iter_negate<_Predicate>
   __negate(_Iter_pred<_Predicate> __pred)
   { return _Iter_negate<_Predicate>(__pred._M_pred); }

}
}
# 72 "/usr/include/g++/bits/stl_algobase.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{






 template<bool _BoolType>
   struct __iter_swap
   {
     template<typename _ForwardIterator1, typename _ForwardIterator2>
       static void
       iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
       {
         typedef typename iterator_traits<_ForwardIterator1>::value_type
           _ValueType1;
         _ValueType1 __tmp = (*__a);
         *__a = (*__b);
         *__b = (__tmp);
}
   };

 template<>
   struct __iter_swap<true>
   {
     template<typename _ForwardIterator1, typename _ForwardIterator2>
       static void
       iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
       {
         swap(*__a, *__b);
       }
   };
# 118 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _ForwardIterator1, typename _ForwardIterator2>
   inline void
   iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
   {







     typedef typename iterator_traits<_ForwardIterator1>::value_type
_ValueType1;
     typedef typename iterator_traits<_ForwardIterator2>::value_type
_ValueType2;






     typedef typename iterator_traits<_ForwardIterator1>::reference
_ReferenceType1;
     typedef typename iterator_traits<_ForwardIterator2>::reference
_ReferenceType2;
     std::__iter_swap<__are_same<_ValueType1, _ValueType2>::__value
&& __are_same<_ValueType1&, _ReferenceType1>::__value
&& __are_same<_ValueType2&, _ReferenceType2>::__value>::
iter_swap(__a, __b);



   }
# 164 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _ForwardIterator1, typename _ForwardIterator2>
   _ForwardIterator2
   swap_ranges(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
 _ForwardIterator2 __first2)
   {





     ;

     for (; __first1 != __last1; ++__first1, ++__first2)
std::iter_swap(__first1, __first2);
     return __first2;
   }
# 192 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _Tp>

   inline const _Tp&
   min(const _Tp& __a, const _Tp& __b)
   {



     if (__b < __a)
return __b;
     return __a;
   }
# 216 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _Tp>

   inline const _Tp&
   max(const _Tp& __a, const _Tp& __b)
   {



     if (__a < __b)
return __b;
     return __a;
   }
# 240 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _Tp, typename _Compare>

   inline const _Tp&
   min(const _Tp& __a, const _Tp& __b, _Compare __comp)
   {

     if (__comp(__b, __a))
return __b;
     return __a;
   }
# 262 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _Tp, typename _Compare>

   inline const _Tp&
   max(const _Tp& __a, const _Tp& __b, _Compare __comp)
   {

     if (__comp(__a, __b))
return __b;
     return __a;
   }



 template<typename _Iterator>
   struct _Niter_base
   : _Iter_base<_Iterator, __is_normal_iterator<_Iterator>::__value>
   { };

 template<typename _Iterator>
   inline typename _Niter_base<_Iterator>::iterator_type
   __niter_base(_Iterator __it)
   { return std::_Niter_base<_Iterator>::_S_base(__it); }


 template<typename _Iterator>
   struct _Miter_base
   : _Iter_base<_Iterator, __is_move_iterator<_Iterator>::__value>
   { };

 template<typename _Iterator>
   inline typename _Miter_base<_Iterator>::iterator_type
   __miter_base(_Iterator __it)
   { return std::_Miter_base<_Iterator>::_S_base(__it); }







 template<bool, bool, typename>
   struct __copy_move
   {
     template<typename _II, typename _OI>
       static _OI
       __copy_m(_II __first, _II __last, _OI __result)
       {
  for (; __first != __last; ++__result, ++__first)
    *__result = *__first;
  return __result;
}
   };
# 330 "/usr/include/g++/bits/stl_algobase.h" 3
 template<>
   struct __copy_move<false, false, random_access_iterator_tag>
   {
     template<typename _II, typename _OI>
       static _OI
       __copy_m(_II __first, _II __last, _OI __result)
       {
  typedef typename iterator_traits<_II>::difference_type _Distance;
  for(_Distance __n = __last - __first; __n > 0; --__n)
    {
      *__result = *__first;
      ++__first;
      ++__result;
    }
  return __result;
}
   };
# 368 "/usr/include/g++/bits/stl_algobase.h" 3
 template<bool _IsMove>
   struct __copy_move<_IsMove, true, random_access_iterator_tag>
   {
     template<typename _Tp>
       static _Tp*
       __copy_m(const _Tp* __first, const _Tp* __last, _Tp* __result)
       {







  const ptrdiff_t _Num = __last - __first;
  if (_Num)
    __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
  return __result + _Num;
}
   };

 template<bool _IsMove, typename _II, typename _OI>
   inline _OI
   __copy_move_a(_II __first, _II __last, _OI __result)
   {
     typedef typename iterator_traits<_II>::value_type _ValueTypeI;
     typedef typename iterator_traits<_OI>::value_type _ValueTypeO;
     typedef typename iterator_traits<_II>::iterator_category _Category;
     const bool __simple = (__is_trivial(_ValueTypeI)
                     && __is_pointer<_II>::__value
                     && __is_pointer<_OI>::__value
       && __are_same<_ValueTypeI, _ValueTypeO>::__value);

     return std::__copy_move<_IsMove, __simple,
                      _Category>::__copy_m(__first, __last, __result);
   }



 template<typename _CharT>
   struct char_traits;

 template<typename _CharT, typename _Traits>
   class istreambuf_iterator;

 template<typename _CharT, typename _Traits>
   class ostreambuf_iterator;

 template<bool _IsMove, typename _CharT>
   typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
     ostreambuf_iterator<_CharT, char_traits<_CharT> > >::__type
   __copy_move_a2(_CharT*, _CharT*,
    ostreambuf_iterator<_CharT, char_traits<_CharT> >);

 template<bool _IsMove, typename _CharT>
   typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
     ostreambuf_iterator<_CharT, char_traits<_CharT> > >::__type
   __copy_move_a2(const _CharT*, const _CharT*,
    ostreambuf_iterator<_CharT, char_traits<_CharT> >);

 template<bool _IsMove, typename _CharT>
   typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
       _CharT*>::__type
   __copy_move_a2(istreambuf_iterator<_CharT, char_traits<_CharT> >,
    istreambuf_iterator<_CharT, char_traits<_CharT> >, _CharT*);

 template<bool _IsMove, typename _II, typename _OI>
   inline _OI
   __copy_move_a2(_II __first, _II __last, _OI __result)
   {
     return _OI(std::__copy_move_a<_IsMove>(std::__niter_base(__first),
         std::__niter_base(__last),
         std::__niter_base(__result)));
   }
# 460 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _II, typename _OI>
   inline _OI
   copy(_II __first, _II __last, _OI __result)
   {




     ;

     return (std::__copy_move_a2<__is_move_iterator<_II>::__value>
      (std::__miter_base(__first), std::__miter_base(__last),
       __result));
   }
# 512 "/usr/include/g++/bits/stl_algobase.h" 3
 template<bool, bool, typename>
   struct __copy_move_backward
   {
     template<typename _BI1, typename _BI2>
       static _BI2
       __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)
       {
  while (__first != __last)
    *--__result = *--__last;
  return __result;
}
   };
# 540 "/usr/include/g++/bits/stl_algobase.h" 3
 template<>
   struct __copy_move_backward<false, false, random_access_iterator_tag>
   {
     template<typename _BI1, typename _BI2>
       static _BI2
       __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)
       {
  typename iterator_traits<_BI1>::difference_type __n;
  for (__n = __last - __first; __n > 0; --__n)
    *--__result = *--__last;
  return __result;
}
   };
# 570 "/usr/include/g++/bits/stl_algobase.h" 3
 template<bool _IsMove>
   struct __copy_move_backward<_IsMove, true, random_access_iterator_tag>
   {
     template<typename _Tp>
       static _Tp*
       __copy_move_b(const _Tp* __first, const _Tp* __last, _Tp* __result)
       {







  const ptrdiff_t _Num = __last - __first;
  if (_Num)
    __builtin_memmove(__result - _Num, __first, sizeof(_Tp) * _Num);
  return __result - _Num;
}
   };

 template<bool _IsMove, typename _BI1, typename _BI2>
   inline _BI2
   __copy_move_backward_a(_BI1 __first, _BI1 __last, _BI2 __result)
   {
     typedef typename iterator_traits<_BI1>::value_type _ValueType1;
     typedef typename iterator_traits<_BI2>::value_type _ValueType2;
     typedef typename iterator_traits<_BI1>::iterator_category _Category;
     const bool __simple = (__is_trivial(_ValueType1)
                     && __is_pointer<_BI1>::__value
                     && __is_pointer<_BI2>::__value
       && __are_same<_ValueType1, _ValueType2>::__value);

     return std::__copy_move_backward<_IsMove, __simple,
                               _Category>::__copy_move_b(__first,
        __last,
        __result);
   }

 template<bool _IsMove, typename _BI1, typename _BI2>
   inline _BI2
   __copy_move_backward_a2(_BI1 __first, _BI1 __last, _BI2 __result)
   {
     return _BI2(std::__copy_move_backward_a<_IsMove>
   (std::__niter_base(__first), std::__niter_base(__last),
    std::__niter_base(__result)));
   }
# 636 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _BI1, typename _BI2>
   inline _BI2
   copy_backward(_BI1 __first, _BI1 __last, _BI2 __result)
   {






     ;

     return (std::__copy_move_backward_a2<__is_move_iterator<_BI1>::__value>
      (std::__miter_base(__first), std::__miter_base(__last),
       __result));
   }
# 694 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _ForwardIterator, typename _Tp>
   inline typename
   __gnu_cxx::__enable_if<!__is_scalar<_Tp>::__value, void>::__type
   __fill_a(_ForwardIterator __first, _ForwardIterator __last,
      const _Tp& __value)
   {
     for (; __first != __last; ++__first)
*__first = __value;
   }

 template<typename _ForwardIterator, typename _Tp>
   inline typename
   __gnu_cxx::__enable_if<__is_scalar<_Tp>::__value, void>::__type
   __fill_a(_ForwardIterator __first, _ForwardIterator __last,
     const _Tp& __value)
   {
     const _Tp __tmp = __value;
     for (; __first != __last; ++__first)
*__first = __tmp;
   }


 template<typename _Tp>
   inline typename
   __gnu_cxx::__enable_if<__is_byte<_Tp>::__value, void>::__type
   __fill_a(_Tp* __first, _Tp* __last, const _Tp& __c)
   {
     const _Tp __tmp = __c;
     if (const size_t __len = __last - __first)
__builtin_memset(__first, static_cast<unsigned char>(__tmp), __len);
   }
# 738 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _ForwardIterator, typename _Tp>
   inline void
   fill(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __value)
   {



     ;

     std::__fill_a(std::__niter_base(__first), std::__niter_base(__last),
     __value);
   }

 template<typename _OutputIterator, typename _Size, typename _Tp>
   inline typename
   __gnu_cxx::__enable_if<!__is_scalar<_Tp>::__value, _OutputIterator>::__type
   __fill_n_a(_OutputIterator __first, _Size __n, const _Tp& __value)
   {
     for (__decltype(__n + 0) __niter = __n;
   __niter > 0; --__niter, ++__first)
*__first = __value;
     return __first;
   }

 template<typename _OutputIterator, typename _Size, typename _Tp>
   inline typename
   __gnu_cxx::__enable_if<__is_scalar<_Tp>::__value, _OutputIterator>::__type
   __fill_n_a(_OutputIterator __first, _Size __n, const _Tp& __value)
   {
     const _Tp __tmp = __value;
     for (__decltype(__n + 0) __niter = __n;
   __niter > 0; --__niter, ++__first)
*__first = __tmp;
     return __first;
   }

 template<typename _Size, typename _Tp>
   inline typename
   __gnu_cxx::__enable_if<__is_byte<_Tp>::__value, _Tp*>::__type
   __fill_n_a(_Tp* __first, _Size __n, const _Tp& __c)
   {
     std::__fill_a(__first, __first + __n, __c);
     return __first + __n;
   }
# 798 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _OI, typename _Size, typename _Tp>
   inline _OI
   fill_n(_OI __first, _Size __n, const _Tp& __value)
   {



     return _OI(std::__fill_n_a(std::__niter_base(__first), __n, __value));
   }

 template<bool _BoolType>
   struct __equal
   {
     template<typename _II1, typename _II2>
       static bool
       equal(_II1 __first1, _II1 __last1, _II2 __first2)
       {
  for (; __first1 != __last1; ++__first1, ++__first2)
    if (!(*__first1 == *__first2))
      return false;
  return true;
}
   };

 template<>
   struct __equal<true>
   {
     template<typename _Tp>
       static bool
       equal(const _Tp* __first1, const _Tp* __last1, const _Tp* __first2)
       {
  if (const size_t __len = (__last1 - __first1))
    return !__builtin_memcmp(__first1, __first2, sizeof(_Tp) * __len);
  return true;
}
   };

 template<typename _II1, typename _II2>
   inline bool
   __equal_aux(_II1 __first1, _II1 __last1, _II2 __first2)
   {
     typedef typename iterator_traits<_II1>::value_type _ValueType1;
     typedef typename iterator_traits<_II2>::value_type _ValueType2;
     const bool __simple = ((__is_integer<_ValueType1>::__value
        || __is_pointer<_ValueType1>::__value)
                     && __is_pointer<_II1>::__value
                     && __is_pointer<_II2>::__value
       && __are_same<_ValueType1, _ValueType2>::__value);

     return std::__equal<__simple>::equal(__first1, __last1, __first2);
   }

 template<typename, typename>
   struct __lc_rai
   {
     template<typename _II1, typename _II2>
       static _II1
       __newlast1(_II1, _II1 __last1, _II2, _II2)
       { return __last1; }

     template<typename _II>
       static bool
       __cnd2(_II __first, _II __last)
       { return __first != __last; }
   };

 template<>
   struct __lc_rai<random_access_iterator_tag, random_access_iterator_tag>
   {
     template<typename _RAI1, typename _RAI2>
       static _RAI1
       __newlast1(_RAI1 __first1, _RAI1 __last1,
    _RAI2 __first2, _RAI2 __last2)
       {
  const typename iterator_traits<_RAI1>::difference_type
    __diff1 = __last1 - __first1;
  const typename iterator_traits<_RAI2>::difference_type
    __diff2 = __last2 - __first2;
  return __diff2 < __diff1 ? __first1 + __diff2 : __last1;
}

     template<typename _RAI>
       static bool
       __cnd2(_RAI, _RAI)
       { return true; }
   };

 template<typename _II1, typename _II2, typename _Compare>
   bool
   __lexicographical_compare_impl(_II1 __first1, _II1 __last1,
      _II2 __first2, _II2 __last2,
      _Compare __comp)
   {
     typedef typename iterator_traits<_II1>::iterator_category _Category1;
     typedef typename iterator_traits<_II2>::iterator_category _Category2;
     typedef std::__lc_rai<_Category1, _Category2> __rai_type;

     __last1 = __rai_type::__newlast1(__first1, __last1, __first2, __last2);
     for (; __first1 != __last1 && __rai_type::__cnd2(__first2, __last2);
   ++__first1, ++__first2)
{
  if (__comp(__first1, __first2))
    return true;
  if (__comp(__first2, __first1))
    return false;
}
     return __first1 == __last1 && __first2 != __last2;
   }

 template<bool _BoolType>
   struct __lexicographical_compare
   {
     template<typename _II1, typename _II2>
       static bool __lc(_II1, _II1, _II2, _II2);
   };

 template<bool _BoolType>
   template<typename _II1, typename _II2>
     bool
     __lexicographical_compare<_BoolType>::
     __lc(_II1 __first1, _II1 __last1, _II2 __first2, _II2 __last2)
     {
return std::__lexicographical_compare_impl(__first1, __last1,
        __first2, __last2,
    __gnu_cxx::__ops::__iter_less_iter());
     }

 template<>
   struct __lexicographical_compare<true>
   {
     template<typename _Tp, typename _Up>
       static bool
       __lc(const _Tp* __first1, const _Tp* __last1,
     const _Up* __first2, const _Up* __last2)
{
  const size_t __len1 = __last1 - __first1;
  const size_t __len2 = __last2 - __first2;
  if (const size_t __len = std::min(__len1, __len2))
    if (int __result = __builtin_memcmp(__first1, __first2, __len))
      return __result < 0;
  return __len1 < __len2;
}
   };

 template<typename _II1, typename _II2>
   inline bool
   __lexicographical_compare_aux(_II1 __first1, _II1 __last1,
     _II2 __first2, _II2 __last2)
   {
     typedef typename iterator_traits<_II1>::value_type _ValueType1;
     typedef typename iterator_traits<_II2>::value_type _ValueType2;
     const bool __simple =
(__is_byte<_ValueType1>::__value && __is_byte<_ValueType2>::__value
 && !__gnu_cxx::__numeric_traits<_ValueType1>::__is_signed_val
 && !__gnu_cxx::__numeric_traits<_ValueType2>::__is_signed_val
 && __is_pointer<_II1>::__value
 && __is_pointer<_II2>::__value);

     return std::__lexicographical_compare<__simple>::__lc(__first1, __last1,
          __first2, __last2);
   }

 template<typename _ForwardIterator, typename _Tp, typename _Compare>
   _ForwardIterator
   __lower_bound(_ForwardIterator __first, _ForwardIterator __last,
   const _Tp& __val, _Compare __comp)
   {
     typedef typename iterator_traits<_ForwardIterator>::difference_type
_DistanceType;

     _DistanceType __len = std::distance(__first, __last);

     while (__len > 0)
{
  _DistanceType __half = __len >> 1;
  _ForwardIterator __middle = __first;
  std::advance(__middle, __half);
  if (__comp(__middle, __val))
    {
      __first = __middle;
      ++__first;
      __len = __len - __half - 1;
    }
  else
    __len = __half;
}
     return __first;
   }
# 998 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _ForwardIterator, typename _Tp>
   inline _ForwardIterator
   lower_bound(_ForwardIterator __first, _ForwardIterator __last,
 const _Tp& __val)
   {




     ;

     return std::__lower_bound(__first, __last, __val,
   __gnu_cxx::__ops::__iter_less_val());
   }



 inline int
 __lg(int __n)
 { return sizeof(int) * 8 - 1 - __builtin_clz(__n); }

 inline unsigned
 __lg(unsigned __n)
 { return sizeof(int) * 8 - 1 - __builtin_clz(__n); }

 inline long
 __lg(long __n)
 { return sizeof(long) * 8 - 1 - __builtin_clzl(__n); }

 inline unsigned long
 __lg(unsigned long __n)
 { return sizeof(long) * 8 - 1 - __builtin_clzl(__n); }

 inline long long
 __lg(long long __n)
 { return sizeof(long long) * 8 - 1 - __builtin_clzll(__n); }

 inline unsigned long long
 __lg(unsigned long long __n)
 { return sizeof(long long) * 8 - 1 - __builtin_clzll(__n); }




# 1055 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _II1, typename _II2>
   inline bool
   equal(_II1 __first1, _II1 __last1, _II2 __first2)
   {






     ;

     return std::__equal_aux(std::__niter_base(__first1),
        std::__niter_base(__last1),
        std::__niter_base(__first2));
   }
# 1087 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _IIter1, typename _IIter2, typename _BinaryPredicate>
   inline bool
   equal(_IIter1 __first1, _IIter1 __last1,
  _IIter2 __first2, _BinaryPredicate __binary_pred)
   {



     ;

     for (; __first1 != __last1; ++__first1, ++__first2)
if (!bool(__binary_pred(*__first1, *__first2)))
  return false;
     return true;
   }
# 1215 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _II1, typename _II2>
   inline bool
   lexicographical_compare(_II1 __first1, _II1 __last1,
      _II2 __first2, _II2 __last2)
   {









     ;
     ;

     return std::__lexicographical_compare_aux(std::__niter_base(__first1),
     std::__niter_base(__last1),
     std::__niter_base(__first2),
     std::__niter_base(__last2));
   }
# 1251 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _II1, typename _II2, typename _Compare>
   inline bool
   lexicographical_compare(_II1 __first1, _II1 __last1,
      _II2 __first2, _II2 __last2, _Compare __comp)
   {



     ;
     ;

     return std::__lexicographical_compare_impl
(__first1, __last1, __first2, __last2,
 __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _InputIterator1, typename _InputIterator2,
   typename _BinaryPredicate>
   pair<_InputIterator1, _InputIterator2>
   __mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
       _InputIterator2 __first2, _BinaryPredicate __binary_pred)
   {
     while (__first1 != __last1 && __binary_pred(__first1, __first2))
       {
  ++__first1;
  ++__first2;
       }
     return pair<_InputIterator1, _InputIterator2>(__first1, __first2);
   }
# 1294 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _InputIterator1, typename _InputIterator2>
   inline pair<_InputIterator1, _InputIterator2>
   mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
     _InputIterator2 __first2)
   {






     ;

     return std::__mismatch(__first1, __last1, __first2,
       __gnu_cxx::__ops::__iter_equal_to_iter());
   }
# 1327 "/usr/include/g++/bits/stl_algobase.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _BinaryPredicate>
   inline pair<_InputIterator1, _InputIterator2>
   mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
     _InputIterator2 __first2, _BinaryPredicate __binary_pred)
   {



     ;

     return std::__mismatch(__first1, __last1, __first2,
__gnu_cxx::__ops::__iter_comp_iter(__binary_pred));
   }
# 1427 "/usr/include/g++/bits/stl_algobase.h" 3

}
# 40 "/usr/include/g++/bits/char_traits.h" 2 3
# 1 "/usr/include/g++/bits/postypes.h" 1 3
# 38 "/usr/include/g++/bits/postypes.h" 3

# 39 "/usr/include/g++/bits/postypes.h" 3

# 1 "/usr/include/g++/cwchar" 1 3
# 39 "/usr/include/g++/cwchar" 3

# 40 "/usr/include/g++/cwchar" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cwchar" 2 3


# 1 "/usr/include/wchar.h" 1 3 4
# 61 "/usr/include/wchar.h" 3 4
# 1 "/usr/include/sys/cdefs.h" 1 3 4
# 62 "/usr/include/sys/cdefs.h" 3 4
# 1 "/usr/include/amd64/cdefs.h" 1 3 4
# 63 "/usr/include/sys/cdefs.h" 2 3 4

# 1 "/usr/include/sys/cdefs_elf.h" 1 3 4
# 65 "/usr/include/sys/cdefs.h" 2 3 4
# 603 "/usr/include/sys/cdefs.h" 3 4
static inline long long __zeroll(void) { return 0; }
static inline unsigned long long __zeroull(void) { return 0; }
# 62 "/usr/include/wchar.h" 2 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 63 "/usr/include/wchar.h" 2 3 4
# 1 "/usr/include/amd64/wchar_limits.h" 1 3 4
# 64 "/usr/include/wchar.h" 2 3 4
# 1 "/usr/include/sys/ansi.h" 1 3 4
# 35 "/usr/include/sys/ansi.h" 3 4
# 1 "/usr/include/amd64/ansi.h" 1 3 4
# 41 "/usr/include/amd64/ansi.h" 3 4
# 1 "/usr/include/amd64/int_types.h" 1 3 4
# 38 "/usr/include/amd64/int_types.h" 3 4
# 1 "/usr/include/sys/common_int_types.h" 1 3 4
# 45 "/usr/include/sys/common_int_types.h" 3 4
typedef signed char __int8_t;
typedef unsigned char __uint8_t;
typedef short int __int16_t;
typedef short unsigned int __uint16_t;
typedef int __int32_t;
typedef unsigned int __uint32_t;
typedef long int __int64_t;
typedef long unsigned int __uint64_t;





typedef long int __intptr_t;
typedef long unsigned int __uintptr_t;
# 39 "/usr/include/amd64/int_types.h" 2 3 4
# 42 "/usr/include/amd64/ansi.h" 2 3 4
# 36 "/usr/include/sys/ansi.h" 2 3 4

typedef char * __caddr_t;
typedef __uint32_t __gid_t;
typedef __uint32_t __in_addr_t;
typedef __uint16_t __in_port_t;
typedef __uint32_t __mode_t;
typedef __int64_t __off_t;
typedef __int32_t __pid_t;
typedef __uint8_t __sa_family_t;
typedef unsigned int __socklen_t;
typedef __uint32_t __uid_t;
typedef __uint64_t __fsblkcnt_t;
typedef __uint64_t __fsfilcnt_t;

struct __tag_wctrans_t;
typedef struct __tag_wctrans_t *__wctrans_t;

struct __tag_wctype_t;
typedef struct __tag_wctype_t *__wctype_t;





typedef union {
__int64_t __mbstateL;
char __mbstate8[128];
} __mbstate_t;
# 72 "/usr/include/sys/ansi.h" 3 4
typedef __builtin_va_list __va_list;
# 65 "/usr/include/wchar.h" 2 3 4
# 1 "/usr/include/sys/null.h" 1 3 4
# 66 "/usr/include/wchar.h" 2 3 4

# 1 "/usr/include/stdio.h" 1 3 4
# 41 "/usr/include/stdio.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 42 "/usr/include/stdio.h" 2 3 4



typedef unsigned long size_t;



typedef long ssize_t;
# 67 "/usr/include/stdio.h" 3 4
typedef struct __sfpos {
__off_t _pos;
__mbstate_t _mbstate_in, _mbstate_out;
} fpos_t;
# 81 "/usr/include/stdio.h" 3 4
struct __sbuf {
unsigned char *_base;
int _size;
};
# 112 "/usr/include/stdio.h" 3 4
typedef struct __sFILE {
unsigned char *_p;
int _r;
int _w;
unsigned short _flags;
short _file;
struct __sbuf _bf;
int _lbfsize;


void *_cookie;
int (*_close)(void *);
ssize_t (*_read) (void *, void *, size_t);
__off_t (*_seek) (void *, __off_t, int);
ssize_t (*_write)(void *, const void *, size_t);


struct __sbuf _ext;


unsigned char *_up;
int _ur;


unsigned char _ubuf[3];
unsigned char _nbuf[1];

int (*_flush)(void *);

char _lb_unused[sizeof(struct __sbuf) - sizeof(int (*)(void *))];


int _blksize;
__off_t _offset;
} FILE;


# 148 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 148 "/usr/include/stdio.h" 3 4
extern "C" {
extern FILE __sF[3];
}
# 150 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 150 "/usr/include/stdio.h" 3 4

# 222 "/usr/include/stdio.h" 3 4

# 222 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 222 "/usr/include/stdio.h" 3 4
extern "C" {
void clearerr(FILE *);
int fclose(FILE *);
int feof(FILE *);
int ferror(FILE *);
int fflush(FILE *);
int fgetc(FILE *);
char *fgets(char * __restrict__, int, FILE * __restrict__);
FILE *fopen(const char * __restrict__ , const char * __restrict__);
int fprintf(FILE * __restrict__, const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 2, 3)));
int fputc(int, FILE *);
int fputs(const char * __restrict__, FILE * __restrict__);
size_t fread(void * __restrict__, size_t, size_t, FILE * __restrict__);
FILE *freopen(const char * __restrict__, const char * __restrict__,
    FILE * __restrict__);
int fscanf(FILE * __restrict__, const char * __restrict__, ...)
 __attribute__((__format__ (__scanf__, 2, 3)));
int fseek(FILE *, long, int);
long ftell(FILE *);
size_t fwrite(const void * __restrict__, size_t, size_t, FILE * __restrict__);
int getc(FILE *);
int getchar(void);
void perror(const char *);
int printf(const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 1, 2)));
int putc(int, FILE *);
int putchar(int);
int puts(const char *);
int remove(const char *);
void rewind(FILE *);
int scanf(const char * __restrict__, ...)
 __attribute__((__format__ (__scanf__, 1, 2)));
void setbuf(FILE * __restrict__, char * __restrict__);
int setvbuf(FILE * __restrict__, char * __restrict__, int, size_t);
int sscanf(const char * __restrict__, const char * __restrict__, ...)
 __attribute__((__format__ (__scanf__, 2, 3)));
FILE *tmpfile(void);
int ungetc(int, FILE *);
int vfprintf(FILE * __restrict__, const char * __restrict__, __va_list)
 __attribute__((__format__ (__printf__, 2, 0)));
int vprintf(const char * __restrict__, __va_list)
 __attribute__((__format__ (__printf__, 1, 0)));


char *gets(char *);
int sprintf(char * __restrict__, const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 2, 3)));
char *tmpnam(char *);
int vsprintf(char * __restrict__, const char * __restrict__,
   __va_list)
 __attribute__((__format__ (__printf__, 2, 0)));





int rename (const char *, const char *);

}
# 281 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 281 "/usr/include/stdio.h" 3 4



int fgetpos(FILE * __restrict__, fpos_t * __restrict__) __asm("__fgetpos50");
int fsetpos(FILE *, const fpos_t *) __asm("__fsetpos50");
# 295 "/usr/include/stdio.h" 3 4

# 295 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 295 "/usr/include/stdio.h" 3 4
extern "C" {
char *ctermid(char *);



char *cuserid(char *);

FILE *fdopen(int, const char *);
int fileno(FILE *);
}
# 304 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 304 "/usr/include/stdio.h" 3 4









# 312 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 312 "/usr/include/stdio.h" 3 4
extern "C" {
void flockfile(FILE *);
int ftrylockfile(FILE *);
void funlockfile(FILE *);
int getc_unlocked(FILE *);
int getchar_unlocked(void);
int putc_unlocked(int, FILE *);
int putchar_unlocked(int);
}
# 320 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 320 "/usr/include/stdio.h" 3 4









# 328 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 328 "/usr/include/stdio.h" 3 4
extern "C" {
int pclose(FILE *);
FILE *popen(const char *, const char *);
}
# 331 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 331 "/usr/include/stdio.h" 3 4




# 334 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 334 "/usr/include/stdio.h" 3 4
extern "C" {
FILE *popenve(const char *, char *const *, char *const *, const char *);
}
# 336 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 336 "/usr/include/stdio.h" 3 4

# 347 "/usr/include/stdio.h" 3 4

# 347 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 347 "/usr/include/stdio.h" 3 4
extern "C" {
int snprintf(char * __restrict__, size_t, const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 3, 4)));
int vsnprintf(char * __restrict__, size_t, const char * __restrict__,
    __va_list)
 __attribute__((__format__ (__printf__, 3, 0)));
}
# 353 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 353 "/usr/include/stdio.h" 3 4








# 360 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 360 "/usr/include/stdio.h" 3 4
extern "C" {
int getw(FILE *);
int putw(int, FILE *);


char *tempnam(const char *, const char *);

}
# 367 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 367 "/usr/include/stdio.h" 3 4

# 376 "/usr/include/stdio.h" 3 4
typedef __off_t off_t;




# 380 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 380 "/usr/include/stdio.h" 3 4
extern "C" {
int fseeko(FILE *, __off_t, int);
__off_t ftello(FILE *);
}
# 383 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 383 "/usr/include/stdio.h" 3 4









# 391 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 391 "/usr/include/stdio.h" 3 4
extern "C" {
int vscanf(const char * __restrict__, __va_list)
 __attribute__((__format__ (__scanf__, 1, 0)));
int vfscanf(FILE * __restrict__, const char * __restrict__, __va_list)
 __attribute__((__format__ (__scanf__, 2, 0)));
int vsscanf(const char * __restrict__, const char * __restrict__,
   __va_list)
   __attribute__((__format__ (__scanf__, 2, 0)));
}
# 399 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 399 "/usr/include/stdio.h" 3 4

# 413 "/usr/include/stdio.h" 3 4

# 413 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 413 "/usr/include/stdio.h" 3 4
extern "C" {
int asprintf(char ** __restrict__, const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 2, 3)));
char *fgetln(FILE * __restrict__, size_t * __restrict__);
char *fparseln(FILE *, size_t *, size_t *, const char[3], int);
int fpurge(FILE *);
void setbuffer(FILE *, char *, int);
int setlinebuf(FILE *);
int vasprintf(char ** __restrict__, const char * __restrict__,
   __va_list)
 __attribute__((__format__ (__printf__, 2, 0)));
const char *fmtcheck(const char *, const char *)
 __attribute__((__format_arg__ (2)));
}
# 426 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 426 "/usr/include/stdio.h" 3 4






# 431 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 431 "/usr/include/stdio.h" 3 4
extern "C" {
FILE *funopen(const void *,
   int (*)(void *, char *, int),
   int (*)(void *, const char *, int),
   __off_t (*)(void *, __off_t, int),
   int (*)(void *));
FILE *funopen2(const void *,
   ssize_t (*)(void *, void *, size_t),
   ssize_t (*)(void *, const void *, size_t),
   __off_t (*)(void *, __off_t, int),
   int (*)(void *),
   int (*)(void *));
}
# 443 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 443 "/usr/include/stdio.h" 3 4

# 453 "/usr/include/stdio.h" 3 4

# 453 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 453 "/usr/include/stdio.h" 3 4
extern "C" {
int __srget(FILE *);
int __swbuf(int, FILE *);
}
# 456 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 456 "/usr/include/stdio.h" 3 4








static inline int __sputc(int _c, FILE *_p) {
if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n'))
 return *_p->_p++ = (unsigned char)_c;
else
 return __swbuf(_c, _p);
}
# 513 "/usr/include/stdio.h" 3 4

# 513 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 513 "/usr/include/stdio.h" 3 4
extern "C" {
int vdprintf(int, const char * __restrict__, __va_list)
 __attribute__((__format__ (__printf__, 2, 0)));
int dprintf(int, const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 2, 3)));
}
# 518 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 518 "/usr/include/stdio.h" 3 4

# 532 "/usr/include/stdio.h" 3 4

# 532 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 532 "/usr/include/stdio.h" 3 4
extern "C" {
FILE *fmemopen(void * __restrict__, size_t, const char * __restrict__);
FILE *open_memstream(char **, size_t *);
ssize_t getdelim(char ** __restrict__, size_t * __restrict__, int,
    FILE * __restrict__);
ssize_t getline(char ** __restrict__, size_t * __restrict__, FILE * __restrict__);
}
# 538 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 538 "/usr/include/stdio.h" 3 4





typedef struct _locale *locale_t;



# 546 "/usr/include/stdio.h" 3 4
#pragma GCC visibility push(default)
# 546 "/usr/include/stdio.h" 3 4
extern "C" {
int fprintf_l(FILE * __restrict__, locale_t, const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 3, 4)));
int vfprintf_l(FILE * __restrict__, locale_t, const char * __restrict__,
 __va_list) __attribute__((__format__ (__printf__, 3, 0)));
int printf_l(locale_t, const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 2, 3)));
int vprintf_l(locale_t, const char * __restrict__, __va_list)
 __attribute__((__format__ (__printf__, 2, 0)));
int asprintf_l(char ** __restrict__, locale_t, const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 3, 4)));
int vasprintf_l(char ** __restrict__, locale_t, const char * __restrict__,
   __va_list)
 __attribute__((__format__ (__printf__, 3, 0)));
int vdprintf_l(int, locale_t, const char * __restrict__, __va_list)
 __attribute__((__format__ (__printf__, 3, 0)));
int dprintf_l(int, locale_t, const char * __restrict__, ...)
 __attribute__((__format__ (__printf__, 3, 4)));
int snprintf_l(char * __restrict__, size_t, locale_t,
     const char * __restrict__, ...) __attribute__((__format__ (__printf__, 4, 5)));
int vsnprintf_l(char * __restrict__, size_t, locale_t,
      const char * __restrict__, __va_list) __attribute__((__format__ (__printf__, 4, 0)));

int sprintf_l(char * __restrict__, locale_t, const char * __restrict__, ...)
    __attribute__((__format__ (__printf__, 3, 4)));
int vsprintf_l(char * __restrict__, locale_t, const char * __restrict__,
     __va_list) __attribute__((__format__ (__printf__, 3, 0)));


int fscanf_l(FILE * __restrict__, locale_t, const char * __restrict__, ...)
   __attribute__((__format__ (__scanf__, 3, 4)));
int scanf_l(locale_t, const char * __restrict__, ...)
   __attribute__((__format__ (__scanf__, 2, 3)));
int sscanf_l(const char * __restrict__, locale_t,
   const char * __restrict__, ...) __attribute__((__format__ (__scanf__, 3, 4)));
int vscanf_l(locale_t, const char * __restrict__, __va_list)
   __attribute__((__format__ (__scanf__, 2, 0)));
int vfscanf_l(FILE * __restrict__, locale_t, const char * __restrict__,
   __va_list) __attribute__((__format__ (__scanf__, 3, 0)));
int vsscanf_l(const char * __restrict__, locale_t, const char * __restrict__,
   __va_list) __attribute__((__format__ (__scanf__, 3, 0)));

int snprintf_ss(char *restrict, size_t, const char * __restrict__, ...)
   __attribute__((__format__ (__printf__, 3, 4)));
int vsnprintf_ss(char *restrict, size_t, const char * __restrict__, __va_list)
   __attribute__((__format__ (__printf__, 3, 0)));

}
# 593 "/usr/include/stdio.h" 3 4
#pragma GCC visibility pop
# 593 "/usr/include/stdio.h" 3 4

# 68 "/usr/include/wchar.h" 2 3 4







typedef __mbstate_t mbstate_t;




typedef int wint_t;
# 96 "/usr/include/wchar.h" 3 4
struct tm;


# 98 "/usr/include/wchar.h" 3 4
#pragma GCC visibility push(default)
# 98 "/usr/include/wchar.h" 3 4
extern "C" {
wint_t btowc(int);
size_t mbrlen(const char * __restrict__, size_t, mbstate_t * __restrict__);
size_t mbrtowc(wchar_t * __restrict__, const char * __restrict__, size_t,
    mbstate_t * __restrict__);
int mbsinit(const mbstate_t *);
size_t mbsrtowcs(wchar_t * __restrict__, const char ** __restrict__, size_t,
    mbstate_t * __restrict__);
size_t wcrtomb(char * __restrict__, wchar_t, mbstate_t * __restrict__);
wchar_t *wcscat(wchar_t * __restrict__, const wchar_t * __restrict__);
wchar_t *wcschr(const wchar_t *, wchar_t);
int wcscmp(const wchar_t *, const wchar_t *);
int wcscoll(const wchar_t *, const wchar_t *);
wchar_t *wcscpy(wchar_t * __restrict__, const wchar_t * __restrict__);
size_t wcscspn(const wchar_t *, const wchar_t *);
size_t wcsftime(wchar_t * __restrict__, size_t, const wchar_t * __restrict__,
    const struct tm * __restrict__);
size_t wcslen(const wchar_t *);
wchar_t *wcsncat(wchar_t * __restrict__, const wchar_t * __restrict__, size_t);
int wcsncmp(const wchar_t *, const wchar_t *, size_t);
wchar_t *wcsncpy(wchar_t * __restrict__ , const wchar_t * __restrict__, size_t);
wchar_t *wcspbrk(const wchar_t *, const wchar_t *);
wchar_t *wcsrchr(const wchar_t *, wchar_t);
size_t wcsrtombs(char * __restrict__, const wchar_t ** __restrict__, size_t,
    mbstate_t * __restrict__);
size_t wcsspn(const wchar_t *, const wchar_t *);
wchar_t *wcsstr(const wchar_t *, const wchar_t *);
wchar_t *wcstok(wchar_t * __restrict__, const wchar_t * __restrict__,
      wchar_t ** __restrict__);
size_t wcsxfrm(wchar_t *, const wchar_t *, size_t);
wchar_t *wcswcs(const wchar_t *, const wchar_t *);
wchar_t *wmemchr(const wchar_t *, wchar_t, size_t);
int wmemcmp(const wchar_t *, const wchar_t *, size_t);
wchar_t *wmemcpy(wchar_t * __restrict__, const wchar_t * __restrict__, size_t);
wchar_t *wmemmove(wchar_t *, const wchar_t *, size_t);
wchar_t *wmemset(wchar_t *, wchar_t, size_t);

size_t wcslcat(wchar_t *, const wchar_t *, size_t);
size_t wcslcpy(wchar_t *, const wchar_t *, size_t);
int wcswidth(const wchar_t *, size_t);
int wctob(wint_t);
int wcwidth(wchar_t);

unsigned long int wcstoul(const wchar_t * __restrict__,
wchar_t ** __restrict__, int);
long int wcstol(const wchar_t * __restrict__,
wchar_t ** __restrict__, int);
double wcstod(const wchar_t * __restrict__, wchar_t ** __restrict__);




float wcstof(const wchar_t * __restrict__, wchar_t ** __restrict__);
long double wcstold(const wchar_t * __restrict__, wchar_t ** __restrict__);


long long int wcstoll(const wchar_t * __restrict__,
wchar_t ** __restrict__, int);

unsigned long long int wcstoull(const wchar_t * __restrict__,
wchar_t ** __restrict__, int);




FILE *open_wmemstream(wchar_t **, size_t *);


wint_t ungetwc(wint_t, FILE *);
wint_t fgetwc(FILE *);
wchar_t *fgetws(wchar_t * __restrict__, int, FILE * __restrict__);
wint_t getwc(FILE *);
wint_t getwchar(void);
wint_t fputwc(wchar_t, FILE *);
int fputws(const wchar_t * __restrict__, FILE * __restrict__);
wint_t putwc(wchar_t, FILE *);
wint_t putwchar(wchar_t);

int fwide(FILE *, int);

wchar_t *fgetwln(FILE * __restrict__, size_t * __restrict__);
int fwprintf(FILE * __restrict__, const wchar_t * __restrict__, ...);
int fwscanf(FILE * __restrict__, const wchar_t * __restrict__, ...);
int swprintf(wchar_t * __restrict__, size_t n, const wchar_t * __restrict__, ...);
int swscanf(const wchar_t * __restrict__, const wchar_t * __restrict__, ...);
int vfwprintf(FILE * __restrict__, const wchar_t * __restrict__, __va_list);
int vswprintf(wchar_t * __restrict__, size_t, const wchar_t * __restrict__,
   __va_list);
int vwprintf(const wchar_t * __restrict__, __va_list);
int wprintf(const wchar_t * __restrict__, ...);
int wscanf(const wchar_t * __restrict__, ...);



int vfwscanf(FILE * __restrict__, const wchar_t * __restrict__, __va_list);
int vswscanf(const wchar_t * __restrict__, const wchar_t * __restrict__,
   __va_list);
int vwscanf(const wchar_t * __restrict__, __va_list);


struct tinfo;
int t_putws(struct tinfo *, const wchar_t *, int, void (*)(wchar_t, void *),
   void *);
wchar_t *wcsdup (const wchar_t *);
int wcsncasecmp (const wchar_t *, const wchar_t *, size_t);
int wcscasecmp(const wchar_t *, const wchar_t *);

}
# 205 "/usr/include/wchar.h" 3 4
#pragma GCC visibility pop
# 205 "/usr/include/wchar.h" 3 4

# 221 "/usr/include/wchar.h" 3 4

# 221 "/usr/include/wchar.h" 3 4
#pragma GCC visibility push(default)
# 221 "/usr/include/wchar.h" 3 4
extern "C" {
size_t mbsnrtowcs(wchar_t * __restrict__, const char ** __restrict__, size_t,
    size_t, mbstate_t * __restrict__);
size_t wcsnrtombs(char * __restrict__, const wchar_t ** __restrict__, size_t,
    size_t, mbstate_t * __restrict__);

int wcscoll_l(const wchar_t *, const wchar_t *, locale_t);
size_t wcsxfrm_l(wchar_t *, const wchar_t *, size_t, locale_t);
int wcsncasecmp_l(const wchar_t *, const wchar_t *, size_t, locale_t);
int wcscasecmp_l(const wchar_t *, const wchar_t *, locale_t);

size_t wcsftime_l(wchar_t * __restrict__, size_t, const wchar_t * __restrict__,
    const struct tm * __restrict__, locale_t);

float wcstof_l(const wchar_t * __restrict__, wchar_t ** __restrict__, locale_t);
double wcstod_l(const wchar_t * __restrict__, wchar_t ** __restrict__, locale_t);
long double wcstold_l(const wchar_t * __restrict__, wchar_t ** __restrict__,
   locale_t);
long int wcstol_l(const wchar_t * __restrict__, wchar_t ** __restrict__, int,
   locale_t);
unsigned long int wcstoul_l(const wchar_t * __restrict__,
wchar_t ** __restrict__, int, locale_t);

long long int wcstoll_l(const wchar_t * __restrict__, wchar_t ** __restrict__, int,
  locale_t);

unsigned long long int wcstoull_l(const wchar_t * __restrict__,
     wchar_t ** __restrict__, int, locale_t);
int wcwidth_l(wchar_t, locale_t);
int wcswidth_l(const wchar_t *, size_t, locale_t);
}
# 251 "/usr/include/wchar.h" 3 4
#pragma GCC visibility pop
# 251 "/usr/include/wchar.h" 3 4





# 255 "/usr/include/wchar.h" 3 4
#pragma GCC visibility push(default)
# 255 "/usr/include/wchar.h" 3 4
extern "C" {
wint_t btowc_l(int, locale_t);
size_t mbrlen_l(const char * __restrict__, size_t, mbstate_t * __restrict__,
 locale_t);
size_t mbrtowc_l(wchar_t * __restrict__, const char * __restrict__, size_t,
    mbstate_t * __restrict__, locale_t);
int mbsinit_l(const mbstate_t *, locale_t);
size_t mbsrtowcs_l(wchar_t * __restrict__, const char ** __restrict__, size_t,
    mbstate_t * __restrict__, locale_t);
size_t mbsnrtowcs_l(wchar_t * __restrict__, const char ** __restrict__, size_t,
    size_t, mbstate_t * __restrict__, locale_t);
size_t wcrtomb_l(char * __restrict__, wchar_t, mbstate_t * __restrict__, locale_t);
size_t wcsrtombs_l(char * __restrict__, const wchar_t ** __restrict__, size_t,
    mbstate_t * __restrict__, locale_t);
size_t wcsnrtombs_l(char * __restrict__, const wchar_t ** __restrict__, size_t,
    size_t, mbstate_t * __restrict__, locale_t);
int wctob_l(wint_t, locale_t);

int fwprintf_l(FILE * __restrict__, locale_t, const wchar_t * __restrict__, ...);
int swprintf_l(wchar_t * __restrict__, size_t n, locale_t,
   const wchar_t * __restrict__, ...);
int vfwprintf_l(FILE * __restrict__, locale_t,
   const wchar_t * __restrict__, __va_list);
int vswprintf_l(wchar_t * __restrict__, size_t, locale_t,
   const wchar_t * __restrict__, __va_list);
int vwprintf_l(locale_t, const wchar_t * __restrict__, __va_list);
int wprintf_l(locale_t, const wchar_t * __restrict__, ...);

int fwscanf_l(FILE * __restrict__, locale_t, const wchar_t * __restrict__, ...);
int swscanf_l(const wchar_t * __restrict__, locale_t, const wchar_t *
   __restrict__, ...);
int wscanf_l(locale_t, const wchar_t * __restrict__, ...);
int vfwscanf_l(FILE * __restrict__, locale_t, const wchar_t * __restrict__,
   __va_list);
int vswscanf_l(const wchar_t * __restrict__, locale_t, const wchar_t * __restrict__,
   __va_list);
int vwscanf_l(locale_t, const wchar_t * __restrict__, __va_list);
}
# 292 "/usr/include/wchar.h" 3 4
#pragma GCC visibility pop
# 292 "/usr/include/wchar.h" 3 4

# 45 "/usr/include/g++/cwchar" 2 3
# 62 "/usr/include/g++/cwchar" 3
namespace std
{
 using ::mbstate_t;
}
# 135 "/usr/include/g++/cwchar" 3
namespace std __attribute__ ((__visibility__ ("default")))
{


 using ::wint_t;

 using ::btowc;
 using ::fgetwc;
 using ::fgetws;
 using ::fputwc;
 using ::fputws;
 using ::fwide;
 using ::fwprintf;
 using ::fwscanf;
 using ::getwc;
 using ::getwchar;
 using ::mbrlen;
 using ::mbrtowc;
 using ::mbsinit;
 using ::mbsrtowcs;
 using ::putwc;
 using ::putwchar;

 using ::swprintf;

 using ::swscanf;
 using ::ungetwc;
 using ::vfwprintf;

 using ::vfwscanf;


 using ::vswprintf;


 using ::vswscanf;

 using ::vwprintf;

 using ::vwscanf;

 using ::wcrtomb;
 using ::wcscat;
 using ::wcscmp;
 using ::wcscoll;
 using ::wcscpy;
 using ::wcscspn;
 using ::wcsftime;
 using ::wcslen;
 using ::wcsncat;
 using ::wcsncmp;
 using ::wcsncpy;
 using ::wcsrtombs;
 using ::wcsspn;
 using ::wcstod;

 using ::wcstof;

 using ::wcstok;
 using ::wcstol;
 using ::wcstoul;
 using ::wcsxfrm;
 using ::wctob;
 using ::wmemcmp;
 using ::wmemcpy;
 using ::wmemmove;
 using ::wmemset;
 using ::wprintf;
 using ::wscanf;
 using ::wcschr;
 using ::wcspbrk;
 using ::wcsrchr;
 using ::wcsstr;
 using ::wmemchr;


 inline wchar_t*
 wcschr(wchar_t* __p, wchar_t __c)
 { return wcschr(const_cast<const wchar_t*>(__p), __c); }

 inline wchar_t*
 wcspbrk(wchar_t* __s1, const wchar_t* __s2)
 { return wcspbrk(const_cast<const wchar_t*>(__s1), __s2); }

 inline wchar_t*
 wcsrchr(wchar_t* __p, wchar_t __c)
 { return wcsrchr(const_cast<const wchar_t*>(__p), __c); }

 inline wchar_t*
 wcsstr(wchar_t* __s1, const wchar_t* __s2)
 { return wcsstr(const_cast<const wchar_t*>(__s1), __s2); }

 inline wchar_t*
 wmemchr(wchar_t* __p, wchar_t __c, size_t __n)
 { return wmemchr(const_cast<const wchar_t*>(__p), __c, __n); }



}







namespace __gnu_cxx
{





 using ::wcstold;
# 257 "/usr/include/g++/cwchar" 3
 using ::wcstoll;
 using ::wcstoull;

}

namespace std
{
 using ::__gnu_cxx::wcstold;
 using ::__gnu_cxx::wcstoll;
 using ::__gnu_cxx::wcstoull;
}
# 41 "/usr/include/g++/bits/postypes.h" 2 3
# 68 "/usr/include/g++/bits/postypes.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{

# 88 "/usr/include/g++/bits/postypes.h" 3
 typedef long streamoff;
# 98 "/usr/include/g++/bits/postypes.h" 3
 typedef ptrdiff_t streamsize;
# 111 "/usr/include/g++/bits/postypes.h" 3
 template<typename _StateT>
   class fpos
   {
   private:
     streamoff _M_off;
     _StateT _M_state;

   public:




     fpos()
     : _M_off(0), _M_state() { }
# 133 "/usr/include/g++/bits/postypes.h" 3
     fpos(streamoff __off)
     : _M_off(__off), _M_state() { }


     operator streamoff() const { return _M_off; }


     void
     state(_StateT __st)
     { _M_state = __st; }


     _StateT
     state() const
     { return _M_state; }





     fpos&
     operator+=(streamoff __off)
     {
_M_off += __off;
return *this;
     }





     fpos&
     operator-=(streamoff __off)
     {
_M_off -= __off;
return *this;
     }







     fpos
     operator+(streamoff __off) const
     {
fpos __pos(*this);
__pos += __off;
return __pos;
     }







     fpos
     operator-(streamoff __off) const
     {
fpos __pos(*this);
__pos -= __off;
return __pos;
     }






     streamoff
     operator-(const fpos& __other) const
     { return _M_off - __other._M_off; }
   };






 template<typename _StateT>
   inline bool
   operator==(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs)
   { return streamoff(__lhs) == streamoff(__rhs); }

 template<typename _StateT>
   inline bool
   operator!=(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs)
   { return streamoff(__lhs) != streamoff(__rhs); }





 typedef fpos<mbstate_t> streampos;

 typedef fpos<mbstate_t> wstreampos;
# 239 "/usr/include/g++/bits/postypes.h" 3

}
# 41 "/usr/include/g++/bits/char_traits.h" 2 3
# 1 "/usr/include/g++/cwchar" 1 3
# 39 "/usr/include/g++/cwchar" 3

# 40 "/usr/include/g++/cwchar" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cwchar" 2 3
# 42 "/usr/include/g++/bits/char_traits.h" 2 3

namespace __gnu_cxx __attribute__ ((__visibility__ ("default")))
{

# 57 "/usr/include/g++/bits/char_traits.h" 3
 template<typename _CharT>
   struct _Char_types
   {
     typedef unsigned long int_type;
     typedef std::streampos pos_type;
     typedef std::streamoff off_type;
     typedef std::mbstate_t state_type;
   };
# 82 "/usr/include/g++/bits/char_traits.h" 3
 template<typename _CharT>
   struct char_traits
   {
     typedef _CharT char_type;
     typedef typename _Char_types<_CharT>::int_type int_type;
     typedef typename _Char_types<_CharT>::pos_type pos_type;
     typedef typename _Char_types<_CharT>::off_type off_type;
     typedef typename _Char_types<_CharT>::state_type state_type;

     static void
     assign(char_type& __c1, const char_type& __c2)
     { __c1 = __c2; }

     static bool
     eq(const char_type& __c1, const char_type& __c2)
     { return __c1 == __c2; }

     static bool
     lt(const char_type& __c1, const char_type& __c2)
     { return __c1 < __c2; }

     static int
     compare(const char_type* __s1, const char_type* __s2, std::size_t __n);

     static std::size_t
     length(const char_type* __s);

     static const char_type*
     find(const char_type* __s, std::size_t __n, const char_type& __a);

     static char_type*
     move(char_type* __s1, const char_type* __s2, std::size_t __n);

     static char_type*
     copy(char_type* __s1, const char_type* __s2, std::size_t __n);

     static char_type*
     assign(char_type* __s, std::size_t __n, char_type __a);

     static char_type
     to_char_type(const int_type& __c)
     { return static_cast<char_type>(__c); }

     static int_type
     to_int_type(const char_type& __c)
     { return static_cast<int_type>(__c); }

     static bool
     eq_int_type(const int_type& __c1, const int_type& __c2)
     { return __c1 == __c2; }

     static int_type
     eof()
     { return static_cast<int_type>(-1); }

     static int_type
     not_eof(const int_type& __c)
     { return !eq_int_type(__c, eof()) ? __c : to_int_type(char_type()); }
   };

 template<typename _CharT>
   int
   char_traits<_CharT>::
   compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
   {
     for (std::size_t __i = 0; __i < __n; ++__i)
if (lt(__s1[__i], __s2[__i]))
  return -1;
else if (lt(__s2[__i], __s1[__i]))
  return 1;
     return 0;
   }

 template<typename _CharT>
   std::size_t
   char_traits<_CharT>::
   length(const char_type* __p)
   {
     std::size_t __i = 0;
     while (!eq(__p[__i], char_type()))
       ++__i;
     return __i;
   }

 template<typename _CharT>
   const typename char_traits<_CharT>::char_type*
   char_traits<_CharT>::
   find(const char_type* __s, std::size_t __n, const char_type& __a)
   {
     for (std::size_t __i = 0; __i < __n; ++__i)
       if (eq(__s[__i], __a))
         return __s + __i;
     return 0;
   }

 template<typename _CharT>
   typename char_traits<_CharT>::char_type*
   char_traits<_CharT>::
   move(char_type* __s1, const char_type* __s2, std::size_t __n)
   {
     return static_cast<_CharT*>(__builtin_memmove(__s1, __s2,
         __n * sizeof(char_type)));
   }

 template<typename _CharT>
   typename char_traits<_CharT>::char_type*
   char_traits<_CharT>::
   copy(char_type* __s1, const char_type* __s2, std::size_t __n)
   {

     std::copy(__s2, __s2 + __n, __s1);
     return __s1;
   }

 template<typename _CharT>
   typename char_traits<_CharT>::char_type*
   char_traits<_CharT>::
   assign(char_type* __s, std::size_t __n, char_type __a)
   {

     std::fill_n(__s, __n, __a);
     return __s;
   }


}

namespace std __attribute__ ((__visibility__ ("default")))
{

# 226 "/usr/include/g++/bits/char_traits.h" 3
 template<class _CharT>
   struct char_traits : public __gnu_cxx::char_traits<_CharT>
   { };



 template<>
   struct char_traits<char>
   {
     typedef char char_type;
     typedef int int_type;
     typedef streampos pos_type;
     typedef streamoff off_type;
     typedef mbstate_t state_type;

     static void
     assign(char_type& __c1, const char_type& __c2)
     { __c1 = __c2; }

     static bool
     eq(const char_type& __c1, const char_type& __c2)
     { return __c1 == __c2; }

     static bool
     lt(const char_type& __c1, const char_type& __c2)
     {

return (static_cast<unsigned char>(__c1)
 < static_cast<unsigned char>(__c2));
     }

     static int
     compare(const char_type* __s1, const char_type* __s2, size_t __n)
     {
if (__n == 0)
  return 0;
return __builtin_memcmp(__s1, __s2, __n);
     }

     static size_t
     length(const char_type* __s)
     { return __builtin_strlen(__s); }

     static const char_type*
     find(const char_type* __s, size_t __n, const char_type& __a)
     {
if (__n == 0)
  return 0;
return static_cast<const char_type*>(__builtin_memchr(__s, __a, __n));
     }

     static char_type*
     move(char_type* __s1, const char_type* __s2, size_t __n)
     {
if (__n == 0)
  return __s1;
return static_cast<char_type*>(__builtin_memmove(__s1, __s2, __n));
     }

     static char_type*
     copy(char_type* __s1, const char_type* __s2, size_t __n)
     {
if (__n == 0)
  return __s1;
return static_cast<char_type*>(__builtin_memcpy(__s1, __s2, __n));
     }

     static char_type*
     assign(char_type* __s, size_t __n, char_type __a)
     {
if (__n == 0)
  return __s;
return static_cast<char_type*>(__builtin_memset(__s, __a, __n));
     }

     static char_type
     to_char_type(const int_type& __c)
     { return static_cast<char_type>(__c); }



     static int_type
     to_int_type(const char_type& __c)
     { return static_cast<int_type>(static_cast<unsigned char>(__c)); }

     static bool
     eq_int_type(const int_type& __c1, const int_type& __c2)
     { return __c1 == __c2; }

     static int_type
     eof()
     { return static_cast<int_type>(-1); }

     static int_type
     not_eof(const int_type& __c)
     { return (__c == eof()) ? 0 : __c; }
 };




 template<>
   struct char_traits<wchar_t>
   {
     typedef wchar_t char_type;
     typedef wint_t int_type;
     typedef streamoff off_type;
     typedef wstreampos pos_type;
     typedef mbstate_t state_type;

     static void
     assign(char_type& __c1, const char_type& __c2)
     { __c1 = __c2; }

     static bool
     eq(const char_type& __c1, const char_type& __c2)
     { return __c1 == __c2; }

     static bool
     lt(const char_type& __c1, const char_type& __c2)
     { return __c1 < __c2; }

     static int
     compare(const char_type* __s1, const char_type* __s2, size_t __n)
     {
if (__n == 0)
  return 0;
return wmemcmp(__s1, __s2, __n);
     }

     static size_t
     length(const char_type* __s)
     { return wcslen(__s); }

     static const char_type*
     find(const char_type* __s, size_t __n, const char_type& __a)
     {
if (__n == 0)
  return 0;
return wmemchr(__s, __a, __n);
     }

     static char_type*
     move(char_type* __s1, const char_type* __s2, size_t __n)
     {
if (__n == 0)
  return __s1;
return wmemmove(__s1, __s2, __n);
     }

     static char_type*
     copy(char_type* __s1, const char_type* __s2, size_t __n)
     {
if (__n == 0)
  return __s1;
return wmemcpy(__s1, __s2, __n);
     }

     static char_type*
     assign(char_type* __s, size_t __n, char_type __a)
     {
if (__n == 0)
  return __s;
return wmemset(__s, __a, __n);
     }

     static char_type
     to_char_type(const int_type& __c)
     { return char_type(__c); }

     static int_type
     to_int_type(const char_type& __c)
     { return int_type(__c); }

     static bool
     eq_int_type(const int_type& __c1, const int_type& __c2)
     { return __c1 == __c2; }

     static int_type
     eof()
     { return static_cast<int_type>(((wint_t)-1)); }

     static int_type
     not_eof(const int_type& __c)
     { return eq_int_type(__c, eof()) ? 0 : __c; }
 };



}
# 41 "/usr/include/g++/string" 2 3
# 1 "/usr/include/g++/bits/allocator.h" 1 3
# 46 "/usr/include/g++/bits/allocator.h" 3
# 1 "/usr/include/g++/bits/c++allocator.h" 1 3
# 33 "/usr/include/g++/bits/c++allocator.h" 3
# 1 "/usr/include/g++/ext/new_allocator.h" 1 3
# 32 "/usr/include/g++/ext/new_allocator.h" 3
# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 33 "/usr/include/g++/ext/new_allocator.h" 2 3
# 1 "/usr/include/g++/new" 1 3
# 37 "/usr/include/g++/new" 3

# 38 "/usr/include/g++/new" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 40 "/usr/include/g++/new" 2 3
# 1 "/usr/include/g++/exception" 1 3
# 33 "/usr/include/g++/exception" 3

# 34 "/usr/include/g++/exception" 3

#pragma GCC visibility push(default)

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 38 "/usr/include/g++/exception" 2 3
# 1 "/usr/include/g++/bits/atomic_lockfree_defines.h" 1 3
# 33 "/usr/include/g++/bits/atomic_lockfree_defines.h" 3

# 34 "/usr/include/g++/bits/atomic_lockfree_defines.h" 3
# 39 "/usr/include/g++/exception" 2 3

extern "C++" {

namespace std
{
# 60 "/usr/include/g++/exception" 3
 class exception
 {
 public:
   exception() throw() { }
   virtual ~exception() throw();



   virtual const char* what() const throw();
 };



 class bad_exception : public exception
 {
 public:
   bad_exception() throw() { }



   virtual ~bad_exception() throw();


   virtual const char* what() const throw();
 };


 typedef void (*terminate_handler) ();


 typedef void (*unexpected_handler) ();


 terminate_handler set_terminate(terminate_handler) throw();
# 102 "/usr/include/g++/exception" 3
 void terminate() throw() __attribute__ ((__noreturn__));


 unexpected_handler set_unexpected(unexpected_handler) throw();
# 114 "/usr/include/g++/exception" 3
 void unexpected() __attribute__ ((__noreturn__));
# 127 "/usr/include/g++/exception" 3
 bool uncaught_exception() throw() __attribute__ ((__pure__));


}

namespace __gnu_cxx
{

# 152 "/usr/include/g++/exception" 3
 void __verbose_terminate_handler();


}

}

#pragma GCC visibility pop
# 41 "/usr/include/g++/new" 2 3

#pragma GCC visibility push(default)

extern "C++" {

namespace std
{






 class bad_alloc : public exception
 {
 public:
   bad_alloc() throw() { }



   virtual ~bad_alloc() throw();


   virtual const char* what() const throw();
 };
# 82 "/usr/include/g++/new" 3
 struct nothrow_t { };

 extern const nothrow_t nothrow;



 typedef void (*new_handler)();



 new_handler set_new_handler(new_handler) throw();





}
# 111 "/usr/include/g++/new" 3
void* operator new(std::size_t) throw(std::bad_alloc)
 __attribute__((__externally_visible__));
void* operator new[](std::size_t) throw(std::bad_alloc)
 __attribute__((__externally_visible__));
void operator delete(void*) throw()
 __attribute__((__externally_visible__));
void operator delete[](void*) throw()
 __attribute__((__externally_visible__));
void* operator new(std::size_t, const std::nothrow_t&) throw()
 __attribute__((__externally_visible__));
void* operator new[](std::size_t, const std::nothrow_t&) throw()
 __attribute__((__externally_visible__));
void operator delete(void*, const std::nothrow_t&) throw()
 __attribute__((__externally_visible__));
void operator delete[](void*, const std::nothrow_t&) throw()
 __attribute__((__externally_visible__));


inline void* operator new(std::size_t, void* __p) throw()
{ return __p; }
inline void* operator new[](std::size_t, void* __p) throw()
{ return __p; }


inline void operator delete (void*, void*) throw() { }
inline void operator delete[](void*, void*) throw() { }

}

#pragma GCC visibility pop
# 34 "/usr/include/g++/ext/new_allocator.h" 2 3






namespace __gnu_cxx __attribute__ ((__visibility__ ("default")))
{


 using std::size_t;
 using std::ptrdiff_t;
# 57 "/usr/include/g++/ext/new_allocator.h" 3
 template<typename _Tp>
   class new_allocator
   {
   public:
     typedef size_t size_type;
     typedef ptrdiff_t difference_type;
     typedef _Tp* pointer;
     typedef const _Tp* const_pointer;
     typedef _Tp& reference;
     typedef const _Tp& const_reference;
     typedef _Tp value_type;

     template<typename _Tp1>
       struct rebind
       { typedef new_allocator<_Tp1> other; };







     new_allocator() throw() { }

     new_allocator(const new_allocator&) throw() { }

     template<typename _Tp1>
       new_allocator(const new_allocator<_Tp1>&) throw() { }

     ~new_allocator() throw() { }

     pointer
     address(reference __x) const
     { return std::__addressof(__x); }

     const_pointer
     address(const_reference __x) const
     { return std::__addressof(__x); }



     pointer
     allocate(size_type __n, const void* = 0)
     {
if (__n > this->max_size())
  std::__throw_bad_alloc();

return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
     }


     void
     deallocate(pointer __p, size_type)
     { ::operator delete(__p); }

     size_type
     max_size() const throw()
     { return size_t(-1) / sizeof(_Tp); }
# 128 "/usr/include/g++/ext/new_allocator.h" 3
     void
     construct(pointer __p, const _Tp& __val)
     { ::new((void *)__p) _Tp(__val); }

     void
     destroy(pointer __p) { __p->~_Tp(); }

   };

 template<typename _Tp>
   inline bool
   operator==(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
   { return true; }

 template<typename _Tp>
   inline bool
   operator!=(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
   { return false; }


}
# 34 "/usr/include/g++/bits/c++allocator.h" 2 3
# 47 "/usr/include/g++/bits/allocator.h" 2 3





namespace std __attribute__ ((__visibility__ ("default")))
{








 template<>
   class allocator<void>
   {
   public:
     typedef size_t size_type;
     typedef ptrdiff_t difference_type;
     typedef void* pointer;
     typedef const void* const_pointer;
     typedef void value_type;

     template<typename _Tp1>
       struct rebind
       { typedef allocator<_Tp1> other; };






   };
# 91 "/usr/include/g++/bits/allocator.h" 3
 template<typename _Tp>
   class allocator: public __gnu_cxx::new_allocator<_Tp>
   {
  public:
     typedef size_t size_type;
     typedef ptrdiff_t difference_type;
     typedef _Tp* pointer;
     typedef const _Tp* const_pointer;
     typedef _Tp& reference;
     typedef const _Tp& const_reference;
     typedef _Tp value_type;

     template<typename _Tp1>
       struct rebind
       { typedef allocator<_Tp1> other; };







     allocator() throw() { }

     allocator(const allocator& __a) throw()
     : __gnu_cxx::new_allocator<_Tp>(__a) { }

     template<typename _Tp1>
       allocator(const allocator<_Tp1>&) throw() { }

     ~allocator() throw() { }


   };

 template<typename _T1, typename _T2>
   inline bool
   operator==(const allocator<_T1>&, const allocator<_T2>&)
   throw()
   { return true; }

 template<typename _Tp>
   inline bool
   operator==(const allocator<_Tp>&, const allocator<_Tp>&)
   throw()
   { return true; }

 template<typename _T1, typename _T2>
   inline bool
   operator!=(const allocator<_T1>&, const allocator<_T2>&)
   throw()
   { return false; }

 template<typename _Tp>
   inline bool
   operator!=(const allocator<_Tp>&, const allocator<_Tp>&)
   throw()
   { return false; }






 extern template class allocator<char>;
 extern template class allocator<wchar_t>;






 template<typename _Alloc, bool = __is_empty(_Alloc)>
   struct __alloc_swap
   { static void _S_do_it(_Alloc&, _Alloc&) { } };

 template<typename _Alloc>
   struct __alloc_swap<_Alloc, false>
   {
     static void
     _S_do_it(_Alloc& __one, _Alloc& __two)
     {

if (__one != __two)
  swap(__one, __two);
     }
   };


 template<typename _Alloc, bool = __is_empty(_Alloc)>
   struct __alloc_neq
   {
     static bool
     _S_do_it(const _Alloc&, const _Alloc&)
     { return false; }
   };

 template<typename _Alloc>
   struct __alloc_neq<_Alloc, false>
   {
     static bool
     _S_do_it(const _Alloc& __one, const _Alloc& __two)
     { return __one != __two; }
   };
# 226 "/usr/include/g++/bits/allocator.h" 3

}
# 42 "/usr/include/g++/string" 2 3

# 1 "/usr/include/g++/bits/localefwd.h" 1 3
# 37 "/usr/include/g++/bits/localefwd.h" 3

# 38 "/usr/include/g++/bits/localefwd.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 40 "/usr/include/g++/bits/localefwd.h" 2 3
# 1 "/usr/include/g++/bits/c++locale.h" 1 3
# 39 "/usr/include/g++/bits/c++locale.h" 3

# 40 "/usr/include/g++/bits/c++locale.h" 3

# 1 "/usr/include/g++/clocale" 1 3
# 39 "/usr/include/g++/clocale" 3

# 40 "/usr/include/g++/clocale" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/clocale" 2 3
# 1 "/usr/include/locale.h" 1 3 4
# 37 "/usr/include/locale.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 38 "/usr/include/locale.h" 2 3 4

struct lconv {
char *decimal_point;
char *thousands_sep;
char *grouping;
char *int_curr_symbol;
char *currency_symbol;
char *mon_decimal_point;
char *mon_thousands_sep;
char *mon_grouping;
char *positive_sign;
char *negative_sign;
char int_frac_digits;
char frac_digits;
char p_cs_precedes;
char p_sep_by_space;
char n_cs_precedes;
char n_sep_by_space;
char p_sign_posn;
char n_sign_posn;
char int_p_cs_precedes;
char int_n_cs_precedes;
char int_p_sep_by_space;
char int_n_sep_by_space;
char int_p_sign_posn;
char int_n_sign_posn;
};
# 88 "/usr/include/locale.h" 3 4

# 88 "/usr/include/locale.h" 3 4
#pragma GCC visibility push(default)
# 88 "/usr/include/locale.h" 3 4
extern "C" {
struct lconv *localeconv(void);
char *setlocale(int, const char *) __asm("__setlocale50");
# 104 "/usr/include/locale.h" 3 4
locale_t duplocale(locale_t);
void freelocale(locale_t);
struct lconv *localeconv_l(locale_t);
locale_t newlocale(int, const char *, locale_t);

extern struct _locale _lc_global_locale;




extern const struct _locale _lc_C_locale;


}
# 117 "/usr/include/locale.h" 3 4
#pragma GCC visibility pop
# 117 "/usr/include/locale.h" 3 4

# 43 "/usr/include/g++/clocale" 2 3
# 51 "/usr/include/g++/clocale" 3
namespace std
{
 using ::lconv;
 using ::setlocale;
 using ::localeconv;
}
# 42 "/usr/include/g++/bits/c++locale.h" 2 3



namespace std __attribute__ ((__visibility__ ("default")))
{


 typedef int* __c_locale;





 inline int
 __convert_from_v(const __c_locale&, char* __out,
    const int __size __attribute__((__unused__)),
    const char* __fmt, ...)
 {
   char* __old = std::setlocale(4, 0);
   char* __sav = 0;
   if (__builtin_strcmp(__old, "C"))
     {
const size_t __len = __builtin_strlen(__old) + 1;
__sav = new char[__len];
__builtin_memcpy(__sav, __old, __len);
std::setlocale(4, "C");
     }

   __builtin_va_list __args;
   __builtin_va_start(__args, __fmt);


   const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args);




   __builtin_va_end(__args);

   if (__sav)
     {
std::setlocale(4, __sav);
delete [] __sav;
     }
   return __ret;
 }


}
# 41 "/usr/include/g++/bits/localefwd.h" 2 3
# 1 "/usr/include/g++/iosfwd" 1 3
# 36 "/usr/include/g++/iosfwd" 3

# 37 "/usr/include/g++/iosfwd" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 39 "/usr/include/g++/iosfwd" 2 3



namespace std __attribute__ ((__visibility__ ("default")))
{

# 74 "/usr/include/g++/iosfwd" 3
 class ios_base;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class basic_ios;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class basic_streambuf;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class basic_istream;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class basic_ostream;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class basic_iostream;


namespace __cxx11 {

 template<typename _CharT, typename _Traits = char_traits<_CharT>,
    typename _Alloc = allocator<_CharT> >
   class basic_stringbuf;

 template<typename _CharT, typename _Traits = char_traits<_CharT>,
   typename _Alloc = allocator<_CharT> >
   class basic_istringstream;

 template<typename _CharT, typename _Traits = char_traits<_CharT>,
   typename _Alloc = allocator<_CharT> >
   class basic_ostringstream;

 template<typename _CharT, typename _Traits = char_traits<_CharT>,
   typename _Alloc = allocator<_CharT> >
   class basic_stringstream;

}

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class basic_filebuf;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class basic_ifstream;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class basic_ofstream;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class basic_fstream;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class istreambuf_iterator;

 template<typename _CharT, typename _Traits = char_traits<_CharT> >
   class ostreambuf_iterator;



 typedef basic_ios<char> ios;


 typedef basic_streambuf<char> streambuf;


 typedef basic_istream<char> istream;


 typedef basic_ostream<char> ostream;


 typedef basic_iostream<char> iostream;


 typedef basic_stringbuf<char> stringbuf;


 typedef basic_istringstream<char> istringstream;


 typedef basic_ostringstream<char> ostringstream;


 typedef basic_stringstream<char> stringstream;


 typedef basic_filebuf<char> filebuf;


 typedef basic_ifstream<char> ifstream;


 typedef basic_ofstream<char> ofstream;


 typedef basic_fstream<char> fstream;



 typedef basic_ios<wchar_t> wios;


 typedef basic_streambuf<wchar_t> wstreambuf;


 typedef basic_istream<wchar_t> wistream;


 typedef basic_ostream<wchar_t> wostream;


 typedef basic_iostream<wchar_t> wiostream;


 typedef basic_stringbuf<wchar_t> wstringbuf;


 typedef basic_istringstream<wchar_t> wistringstream;


 typedef basic_ostringstream<wchar_t> wostringstream;


 typedef basic_stringstream<wchar_t> wstringstream;


 typedef basic_filebuf<wchar_t> wfilebuf;


 typedef basic_ifstream<wchar_t> wifstream;


 typedef basic_ofstream<wchar_t> wofstream;


 typedef basic_fstream<wchar_t> wfstream;




}
# 42 "/usr/include/g++/bits/localefwd.h" 2 3
# 1 "/usr/include/g++/cctype" 1 3
# 39 "/usr/include/g++/cctype" 3

# 40 "/usr/include/g++/cctype" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cctype" 2 3
# 1 "/usr/include/ctype.h" 1 3 4
# 43 "/usr/include/ctype.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 44 "/usr/include/ctype.h" 2 3 4


# 45 "/usr/include/ctype.h" 3 4
#pragma GCC visibility push(default)
# 45 "/usr/include/ctype.h" 3 4
extern "C" {
int isalnum(int);
int isalpha(int);
int iscntrl(int);
int isdigit(int);
int isgraph(int);
int islower(int);
int isprint(int);
int ispunct(int);
int isspace(int);
int isupper(int);
int isxdigit(int);
int tolower(int);
int toupper(int);







int isalnum_l(int, locale_t);
int isalpha_l(int, locale_t);
int isblank_l(int, locale_t);
int iscntrl_l(int, locale_t);
int isdigit_l(int, locale_t);
int isgraph_l(int, locale_t);
int islower_l(int, locale_t);
int isprint_l(int, locale_t);
int ispunct_l(int, locale_t);
int isspace_l(int, locale_t);
int isupper_l(int, locale_t);
int isxdigit_l(int, locale_t);
int tolower_l(int, locale_t);
int toupper_l(int, locale_t);



int isascii(int);
int toascii(int);
int _tolower(int);
int _toupper(int);




int isblank(int);

}
# 93 "/usr/include/ctype.h" 3 4
#pragma GCC visibility pop
# 93 "/usr/include/ctype.h" 3 4






# 1 "/usr/include/sys/ctype_bits.h" 1 3 4
# 60 "/usr/include/sys/ctype_bits.h" 3 4

# 60 "/usr/include/sys/ctype_bits.h" 3 4
#pragma GCC visibility push(default)
# 60 "/usr/include/sys/ctype_bits.h" 3 4
extern "C" {
extern const unsigned short *_ctype_tab_;
extern const short *_tolower_tab_;
extern const short *_toupper_tab_;

extern const unsigned short _C_ctype_tab_[];
extern const short _C_toupper_tab_[];
extern const short _C_tolower_tab_[];
}
# 68 "/usr/include/sys/ctype_bits.h" 3 4
#pragma GCC visibility pop
# 68 "/usr/include/sys/ctype_bits.h" 3 4

# 100 "/usr/include/ctype.h" 2 3 4
# 43 "/usr/include/g++/cctype" 2 3
# 62 "/usr/include/g++/cctype" 3
namespace std
{
 using ::isalnum;
 using ::isalpha;
 using ::iscntrl;
 using ::isdigit;
 using ::isgraph;
 using ::islower;
 using ::isprint;
 using ::ispunct;
 using ::isspace;
 using ::isupper;
 using ::isxdigit;
 using ::tolower;
 using ::toupper;
}
# 43 "/usr/include/g++/bits/localefwd.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{

# 55 "/usr/include/g++/bits/localefwd.h" 3
 class locale;

 template<typename _Facet>
   bool
   has_facet(const locale&) throw();

 template<typename _Facet>
   const _Facet&
   use_facet(const locale&);


 template<typename _CharT>
   bool
   isspace(_CharT, const locale&);

 template<typename _CharT>
   bool
   isprint(_CharT, const locale&);

 template<typename _CharT>
   bool
   iscntrl(_CharT, const locale&);

 template<typename _CharT>
   bool
   isupper(_CharT, const locale&);

 template<typename _CharT>
   bool
   islower(_CharT, const locale&);

 template<typename _CharT>
   bool
   isalpha(_CharT, const locale&);

 template<typename _CharT>
   bool
   isdigit(_CharT, const locale&);

 template<typename _CharT>
   bool
   ispunct(_CharT, const locale&);

 template<typename _CharT>
   bool
   isxdigit(_CharT, const locale&);

 template<typename _CharT>
   bool
   isalnum(_CharT, const locale&);

 template<typename _CharT>
   bool
   isgraph(_CharT, const locale&);







 template<typename _CharT>
   _CharT
   toupper(_CharT, const locale&);

 template<typename _CharT>
   _CharT
   tolower(_CharT, const locale&);


 class ctype_base;
 template<typename _CharT>
   class ctype;
 template<> class ctype<char>;

 template<> class ctype<wchar_t>;

 template<typename _CharT>
   class ctype_byname;


 class codecvt_base;
 template<typename _InternT, typename _ExternT, typename _StateT>
   class codecvt;
 template<> class codecvt<char, char, mbstate_t>;

 template<> class codecvt<wchar_t, char, mbstate_t>;

 template<typename _InternT, typename _ExternT, typename _StateT>
   class codecvt_byname;



 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
   class num_get;
 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
   class num_put;

namespace __cxx11 {
 template<typename _CharT> class numpunct;
 template<typename _CharT> class numpunct_byname;
}

namespace __cxx11 {

 template<typename _CharT>
   class collate;
 template<typename _CharT>
   class collate_byname;
}


 class time_base;
namespace __cxx11 {
 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
   class time_get;
 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
   class time_get_byname;
}
 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
   class time_put;
 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
   class time_put_byname;


 class money_base;
namespace __cxx11 {
 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
   class money_get;
 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
   class money_put;
}
namespace __cxx11 {
 template<typename _CharT, bool _Intl = false>
   class moneypunct;
 template<typename _CharT, bool _Intl = false>
   class moneypunct_byname;
}


 class messages_base;
namespace __cxx11 {
 template<typename _CharT>
   class messages;
 template<typename _CharT>
   class messages_byname;
}


}
# 44 "/usr/include/g++/string" 2 3
# 1 "/usr/include/g++/bits/ostream_insert.h" 1 3
# 33 "/usr/include/g++/bits/ostream_insert.h" 3

# 34 "/usr/include/g++/bits/ostream_insert.h" 3


# 1 "/usr/include/g++/bits/cxxabi_forced.h" 1 3
# 34 "/usr/include/g++/bits/cxxabi_forced.h" 3

# 35 "/usr/include/g++/bits/cxxabi_forced.h" 3

#pragma GCC visibility push(default)


namespace __cxxabiv1
{







 class __forced_unwind
 {
   virtual ~__forced_unwind() throw();


   virtual void __pure_dummy() = 0;
 };
}


#pragma GCC visibility pop
# 37 "/usr/include/g++/bits/ostream_insert.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _CharT, typename _Traits>
   inline void
   __ostream_write(basic_ostream<_CharT, _Traits>& __out,
     const _CharT* __s, streamsize __n)
   {
     typedef basic_ostream<_CharT, _Traits> __ostream_type;
     typedef typename __ostream_type::ios_base __ios_base;

     const streamsize __put = __out.rdbuf()->sputn(__s, __n);
     if (__put != __n)
__out.setstate(__ios_base::badbit);
   }

 template<typename _CharT, typename _Traits>
   inline void
   __ostream_fill(basic_ostream<_CharT, _Traits>& __out, streamsize __n)
   {
     typedef basic_ostream<_CharT, _Traits> __ostream_type;
     typedef typename __ostream_type::ios_base __ios_base;

     const _CharT __c = __out.fill();
     for (; __n > 0; --__n)
{
  const typename _Traits::int_type __put = __out.rdbuf()->sputc(__c);
  if (_Traits::eq_int_type(__put, _Traits::eof()))
    {
      __out.setstate(__ios_base::badbit);
      break;
    }
}
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   __ostream_insert(basic_ostream<_CharT, _Traits>& __out,
      const _CharT* __s, streamsize __n)
   {
     typedef basic_ostream<_CharT, _Traits> __ostream_type;
     typedef typename __ostream_type::ios_base __ios_base;

     typename __ostream_type::sentry __cerb(__out);
     if (__cerb)
{
  try
    {
      const streamsize __w = __out.width();
      if (__w > __n)
 {
   const bool __left = ((__out.flags()
    & __ios_base::adjustfield)
          == __ios_base::left);
   if (!__left)
     __ostream_fill(__out, __w - __n);
   if (__out.good())
     __ostream_write(__out, __s, __n);
   if (__left && __out.good())
     __ostream_fill(__out, __w - __n);
 }
      else
 __ostream_write(__out, __s, __n);
      __out.width(0);
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      __out._M_setstate(__ios_base::badbit);
      throw;
    }
  catch(...)
    { __out._M_setstate(__ios_base::badbit); }
}
     return __out;
   }




 extern template ostream& __ostream_insert(ostream&, const char*, streamsize);


 extern template wostream& __ostream_insert(wostream&, const wchar_t*,
         streamsize);




}
# 45 "/usr/include/g++/string" 2 3



# 1 "/usr/include/g++/bits/stl_function.h" 1 3
# 63 "/usr/include/g++/bits/stl_function.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{

# 104 "/usr/include/g++/bits/stl_function.h" 3
 template<typename _Arg, typename _Result>
   struct unary_function
   {

     typedef _Arg argument_type;


     typedef _Result result_type;
   };




 template<typename _Arg1, typename _Arg2, typename _Result>
   struct binary_function
   {

     typedef _Arg1 first_argument_type;


     typedef _Arg2 second_argument_type;


     typedef _Result result_type;
   };
# 166 "/usr/include/g++/bits/stl_function.h" 3
 template<typename _Tp>
   struct plus : public binary_function<_Tp, _Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x + __y; }
   };


 template<typename _Tp>
   struct minus : public binary_function<_Tp, _Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x - __y; }
   };


 template<typename _Tp>
   struct multiplies : public binary_function<_Tp, _Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x * __y; }
   };


 template<typename _Tp>
   struct divides : public binary_function<_Tp, _Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x / __y; }
   };


 template<typename _Tp>
   struct modulus : public binary_function<_Tp, _Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x % __y; }
   };


 template<typename _Tp>
   struct negate : public unary_function<_Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x) const
     { return -__x; }
   };
# 351 "/usr/include/g++/bits/stl_function.h" 3
 template<typename _Tp>
   struct equal_to : public binary_function<_Tp, _Tp, bool>
   {

     bool
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x == __y; }
   };


 template<typename _Tp>
   struct not_equal_to : public binary_function<_Tp, _Tp, bool>
   {

     bool
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x != __y; }
   };


 template<typename _Tp>
   struct greater : public binary_function<_Tp, _Tp, bool>
   {

     bool
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x > __y; }
   };


 template<typename _Tp>
   struct less : public binary_function<_Tp, _Tp, bool>
   {

     bool
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x < __y; }
   };


 template<typename _Tp>
   struct greater_equal : public binary_function<_Tp, _Tp, bool>
   {

     bool
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x >= __y; }
   };


 template<typename _Tp>
   struct less_equal : public binary_function<_Tp, _Tp, bool>
   {

     bool
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x <= __y; }
   };
# 524 "/usr/include/g++/bits/stl_function.h" 3
 template<typename _Tp>
   struct logical_and : public binary_function<_Tp, _Tp, bool>
   {

     bool
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x && __y; }
   };


 template<typename _Tp>
   struct logical_or : public binary_function<_Tp, _Tp, bool>
   {

     bool
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x || __y; }
   };


 template<typename _Tp>
   struct logical_not : public unary_function<_Tp, bool>
   {

     bool
     operator()(const _Tp& __x) const
     { return !__x; }
   };
# 617 "/usr/include/g++/bits/stl_function.h" 3
 template<typename _Tp>
   struct bit_and : public binary_function<_Tp, _Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x & __y; }
   };

 template<typename _Tp>
   struct bit_or : public binary_function<_Tp, _Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x | __y; }
   };

 template<typename _Tp>
   struct bit_xor : public binary_function<_Tp, _Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x, const _Tp& __y) const
     { return __x ^ __y; }
   };

 template<typename _Tp>
   struct bit_not : public unary_function<_Tp, _Tp>
   {

     _Tp
     operator()(const _Tp& __x) const
     { return ~__x; }
   };
# 741 "/usr/include/g++/bits/stl_function.h" 3
 template<typename _Predicate>
   class unary_negate
   : public unary_function<typename _Predicate::argument_type, bool>
   {
   protected:
     _Predicate _M_pred;

   public:

     explicit
     unary_negate(const _Predicate& __x) : _M_pred(__x) { }


     bool
     operator()(const typename _Predicate::argument_type& __x) const
     { return !_M_pred(__x); }
   };


 template<typename _Predicate>

   inline unary_negate<_Predicate>
   not1(const _Predicate& __pred)
   { return unary_negate<_Predicate>(__pred); }


 template<typename _Predicate>
   class binary_negate
   : public binary_function<typename _Predicate::first_argument_type,
       typename _Predicate::second_argument_type, bool>
   {
   protected:
     _Predicate _M_pred;

   public:

     explicit
     binary_negate(const _Predicate& __x) : _M_pred(__x) { }


     bool
     operator()(const typename _Predicate::first_argument_type& __x,
  const typename _Predicate::second_argument_type& __y) const
     { return !_M_pred(__x, __y); }
   };


 template<typename _Predicate>

   inline binary_negate<_Predicate>
   not2(const _Predicate& __pred)
   { return binary_negate<_Predicate>(__pred); }
# 818 "/usr/include/g++/bits/stl_function.h" 3
 template<typename _Arg, typename _Result>
   class pointer_to_unary_function : public unary_function<_Arg, _Result>
   {
   protected:
     _Result (*_M_ptr)(_Arg);

   public:
     pointer_to_unary_function() { }

     explicit
     pointer_to_unary_function(_Result (*__x)(_Arg))
     : _M_ptr(__x) { }

     _Result
     operator()(_Arg __x) const
     { return _M_ptr(__x); }
   };


 template<typename _Arg, typename _Result>
   inline pointer_to_unary_function<_Arg, _Result>
   ptr_fun(_Result (*__x)(_Arg))
   { return pointer_to_unary_function<_Arg, _Result>(__x); }


 template<typename _Arg1, typename _Arg2, typename _Result>
   class pointer_to_binary_function
   : public binary_function<_Arg1, _Arg2, _Result>
   {
   protected:
     _Result (*_M_ptr)(_Arg1, _Arg2);

   public:
     pointer_to_binary_function() { }

     explicit
     pointer_to_binary_function(_Result (*__x)(_Arg1, _Arg2))
     : _M_ptr(__x) { }

     _Result
     operator()(_Arg1 __x, _Arg2 __y) const
     { return _M_ptr(__x, __y); }
   };


 template<typename _Arg1, typename _Arg2, typename _Result>
   inline pointer_to_binary_function<_Arg1, _Arg2, _Result>
   ptr_fun(_Result (*__x)(_Arg1, _Arg2))
   { return pointer_to_binary_function<_Arg1, _Arg2, _Result>(__x); }


 template<typename _Tp>
   struct _Identity
   : public unary_function<_Tp,_Tp>
   {
     _Tp&
     operator()(_Tp& __x) const
     { return __x; }

     const _Tp&
     operator()(const _Tp& __x) const
     { return __x; }
   };

 template<typename _Pair>
   struct _Select1st
   : public unary_function<_Pair, typename _Pair::first_type>
   {
     typename _Pair::first_type&
     operator()(_Pair& __x) const
     { return __x.first; }

     const typename _Pair::first_type&
     operator()(const _Pair& __x) const
     { return __x.first; }
# 905 "/usr/include/g++/bits/stl_function.h" 3
   };

 template<typename _Pair>
   struct _Select2nd
   : public unary_function<_Pair, typename _Pair::second_type>
   {
     typename _Pair::second_type&
     operator()(_Pair& __x) const
     { return __x.second; }

     const typename _Pair::second_type&
     operator()(const _Pair& __x) const
     { return __x.second; }
   };
# 938 "/usr/include/g++/bits/stl_function.h" 3
 template<typename _Ret, typename _Tp>
   class mem_fun_t : public unary_function<_Tp*, _Ret>
   {
   public:
     explicit
     mem_fun_t(_Ret (_Tp::*__pf)())
     : _M_f(__pf) { }

     _Ret
     operator()(_Tp* __p) const
     { return (__p->*_M_f)(); }

   private:
     _Ret (_Tp::*_M_f)();
   };



 template<typename _Ret, typename _Tp>
   class const_mem_fun_t : public unary_function<const _Tp*, _Ret>
   {
   public:
     explicit
     const_mem_fun_t(_Ret (_Tp::*__pf)() const)
     : _M_f(__pf) { }

     _Ret
     operator()(const _Tp* __p) const
     { return (__p->*_M_f)(); }

   private:
     _Ret (_Tp::*_M_f)() const;
   };



 template<typename _Ret, typename _Tp>
   class mem_fun_ref_t : public unary_function<_Tp, _Ret>
   {
   public:
     explicit
     mem_fun_ref_t(_Ret (_Tp::*__pf)())
     : _M_f(__pf) { }

     _Ret
     operator()(_Tp& __r) const
     { return (__r.*_M_f)(); }

   private:
     _Ret (_Tp::*_M_f)();
 };



 template<typename _Ret, typename _Tp>
   class const_mem_fun_ref_t : public unary_function<_Tp, _Ret>
   {
   public:
     explicit
     const_mem_fun_ref_t(_Ret (_Tp::*__pf)() const)
     : _M_f(__pf) { }

     _Ret
     operator()(const _Tp& __r) const
     { return (__r.*_M_f)(); }

   private:
     _Ret (_Tp::*_M_f)() const;
   };



 template<typename _Ret, typename _Tp, typename _Arg>
   class mem_fun1_t : public binary_function<_Tp*, _Arg, _Ret>
   {
   public:
     explicit
     mem_fun1_t(_Ret (_Tp::*__pf)(_Arg))
     : _M_f(__pf) { }

     _Ret
     operator()(_Tp* __p, _Arg __x) const
     { return (__p->*_M_f)(__x); }

   private:
     _Ret (_Tp::*_M_f)(_Arg);
   };



 template<typename _Ret, typename _Tp, typename _Arg>
   class const_mem_fun1_t : public binary_function<const _Tp*, _Arg, _Ret>
   {
   public:
     explicit
     const_mem_fun1_t(_Ret (_Tp::*__pf)(_Arg) const)
     : _M_f(__pf) { }

     _Ret
     operator()(const _Tp* __p, _Arg __x) const
     { return (__p->*_M_f)(__x); }

   private:
     _Ret (_Tp::*_M_f)(_Arg) const;
   };



 template<typename _Ret, typename _Tp, typename _Arg>
   class mem_fun1_ref_t : public binary_function<_Tp, _Arg, _Ret>
   {
   public:
     explicit
     mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg))
     : _M_f(__pf) { }

     _Ret
     operator()(_Tp& __r, _Arg __x) const
     { return (__r.*_M_f)(__x); }

   private:
     _Ret (_Tp::*_M_f)(_Arg);
   };



 template<typename _Ret, typename _Tp, typename _Arg>
   class const_mem_fun1_ref_t : public binary_function<_Tp, _Arg, _Ret>
   {
   public:
     explicit
     const_mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg) const)
     : _M_f(__pf) { }

     _Ret
     operator()(const _Tp& __r, _Arg __x) const
     { return (__r.*_M_f)(__x); }

   private:
     _Ret (_Tp::*_M_f)(_Arg) const;
   };



 template<typename _Ret, typename _Tp>
   inline mem_fun_t<_Ret, _Tp>
   mem_fun(_Ret (_Tp::*__f)())
   { return mem_fun_t<_Ret, _Tp>(__f); }

 template<typename _Ret, typename _Tp>
   inline const_mem_fun_t<_Ret, _Tp>
   mem_fun(_Ret (_Tp::*__f)() const)
   { return const_mem_fun_t<_Ret, _Tp>(__f); }

 template<typename _Ret, typename _Tp>
   inline mem_fun_ref_t<_Ret, _Tp>
   mem_fun_ref(_Ret (_Tp::*__f)())
   { return mem_fun_ref_t<_Ret, _Tp>(__f); }

 template<typename _Ret, typename _Tp>
   inline const_mem_fun_ref_t<_Ret, _Tp>
   mem_fun_ref(_Ret (_Tp::*__f)() const)
   { return const_mem_fun_ref_t<_Ret, _Tp>(__f); }

 template<typename _Ret, typename _Tp, typename _Arg>
   inline mem_fun1_t<_Ret, _Tp, _Arg>
   mem_fun(_Ret (_Tp::*__f)(_Arg))
   { return mem_fun1_t<_Ret, _Tp, _Arg>(__f); }

 template<typename _Ret, typename _Tp, typename _Arg>
   inline const_mem_fun1_t<_Ret, _Tp, _Arg>
   mem_fun(_Ret (_Tp::*__f)(_Arg) const)
   { return const_mem_fun1_t<_Ret, _Tp, _Arg>(__f); }

 template<typename _Ret, typename _Tp, typename _Arg>
   inline mem_fun1_ref_t<_Ret, _Tp, _Arg>
   mem_fun_ref(_Ret (_Tp::*__f)(_Arg))
   { return mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); }

 template<typename _Ret, typename _Tp, typename _Arg>
   inline const_mem_fun1_ref_t<_Ret, _Tp, _Arg>
   mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
   { return const_mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); }




}


# 1 "/usr/include/g++/backward/binders.h" 1 3
# 60 "/usr/include/g++/backward/binders.h" 3
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"

namespace std __attribute__ ((__visibility__ ("default")))
{

# 107 "/usr/include/g++/backward/binders.h" 3
 template<typename _Operation>
   class binder1st
   : public unary_function<typename _Operation::second_argument_type,
      typename _Operation::result_type>
   {
   protected:
     _Operation op;
     typename _Operation::first_argument_type value;

   public:
     binder1st(const _Operation& __x,
 const typename _Operation::first_argument_type& __y)
     : op(__x), value(__y) { }

     typename _Operation::result_type
     operator()(const typename _Operation::second_argument_type& __x) const
     { return op(value, __x); }



     typename _Operation::result_type
     operator()(typename _Operation::second_argument_type& __x) const
     { return op(value, __x); }
   } ;


 template<typename _Operation, typename _Tp>
   inline binder1st<_Operation>
   bind1st(const _Operation& __fn, const _Tp& __x)
   {
     typedef typename _Operation::first_argument_type _Arg1_type;
     return binder1st<_Operation>(__fn, _Arg1_type(__x));
   }


 template<typename _Operation>
   class binder2nd
   : public unary_function<typename _Operation::first_argument_type,
      typename _Operation::result_type>
   {
   protected:
     _Operation op;
     typename _Operation::second_argument_type value;

   public:
     binder2nd(const _Operation& __x,
 const typename _Operation::second_argument_type& __y)
     : op(__x), value(__y) { }

     typename _Operation::result_type
     operator()(const typename _Operation::first_argument_type& __x) const
     { return op(__x, value); }



     typename _Operation::result_type
     operator()(typename _Operation::first_argument_type& __x) const
     { return op(__x, value); }
   } ;


 template<typename _Operation, typename _Tp>
   inline binder2nd<_Operation>
   bind2nd(const _Operation& __fn, const _Tp& __x)
   {
     typedef typename _Operation::second_argument_type _Arg2_type;
     return binder2nd<_Operation>(__fn, _Arg2_type(__x));
   }



}

#pragma GCC diagnostic pop
# 1129 "/usr/include/g++/bits/stl_function.h" 2 3
# 49 "/usr/include/g++/string" 2 3


# 1 "/usr/include/g++/bits/range_access.h" 1 3
# 33 "/usr/include/g++/bits/range_access.h" 3

# 34 "/usr/include/g++/bits/range_access.h" 3
# 52 "/usr/include/g++/string" 2 3
# 1 "/usr/include/g++/bits/basic_string.h" 1 3
# 37 "/usr/include/g++/bits/basic_string.h" 3

# 38 "/usr/include/g++/bits/basic_string.h" 3

# 1 "/usr/include/g++/ext/atomicity.h" 1 3
# 32 "/usr/include/g++/ext/atomicity.h" 3

# 33 "/usr/include/g++/ext/atomicity.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 35 "/usr/include/g++/ext/atomicity.h" 2 3
# 1 "/usr/include/g++/bits/gthr.h" 1 3
# 34 "/usr/include/g++/bits/gthr.h" 3
#pragma GCC visibility push(default)
# 152 "/usr/include/g++/bits/gthr.h" 3
# 1 "/usr/include/g++/bits/gthr-default.h" 1 3
# 35 "/usr/include/g++/bits/gthr-default.h" 3
# 1 "/usr/include/pthread.h" 1 3 4
# 37 "/usr/include/pthread.h" 3 4
# 1 "/usr/include/time.h" 1 3 4
# 43 "/usr/include/time.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 44 "/usr/include/time.h" 2 3 4





typedef unsigned int clock_t;




typedef __int64_t time_t;
# 64 "/usr/include/time.h" 3 4
typedef int clockid_t;




typedef int timer_t;





struct tm {
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
long tm_gmtoff;
char *tm_zone;
};


# 89 "/usr/include/time.h" 3 4
#pragma GCC visibility push(default)
# 89 "/usr/include/time.h" 3 4
extern "C" {
char *asctime(const struct tm *);
clock_t clock(void);

char *ctime(const time_t *) __asm("__ctime50");
double difftime(time_t, time_t) __asm("__difftime50");
struct tm *gmtime(const time_t *) __asm("__gmtime50");
struct tm *localtime(const time_t *) __asm("__locatime50");
time_t time(time_t *) __asm("__time50");
time_t mktime(struct tm *) __asm("__mktime50");

size_t strftime(char * __restrict__, size_t, const char * __restrict__,
   const struct tm * __restrict__)
   __attribute__((__format__(__strftime__, 3, 0)));
# 112 "/usr/include/time.h" 3 4
long __sysconf(int);




extern char *tzname[2];

void tzset(void) __asm("__tzset50");






extern int daylight;

extern long int timezone __asm("__timezone13");

char *strptime(const char * __restrict__, const char * __restrict__,
   struct tm * __restrict__);




struct tm *getdate(const char *);
extern int getdate_err;



# 1 "/usr/include/sys/timespec.h" 1 3 4
# 47 "/usr/include/sys/timespec.h" 3 4
struct timespec {
time_t tv_sec;
long tv_nsec;
};
# 142 "/usr/include/time.h" 2 3 4



# 1 "/usr/include/sys/time.h" 1 3 4
# 37 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 38 "/usr/include/sys/time.h" 2 3 4
# 1 "/usr/include/sys/types.h" 1 3 4
# 42 "/usr/include/sys/types.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 43 "/usr/include/sys/types.h" 2 3 4


# 1 "/usr/include/amd64/types.h" 1 3 4
# 40 "/usr/include/amd64/types.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 41 "/usr/include/amd64/types.h" 2 3 4
# 70 "/usr/include/amd64/types.h" 3 4
typedef long int __register_t;
typedef unsigned char __cpu_simple_lock_nv_t;
# 46 "/usr/include/sys/types.h" 2 3 4
# 54 "/usr/include/sys/types.h" 3 4
typedef __int8_t int8_t;




typedef __uint8_t uint8_t;




typedef __int16_t int16_t;




typedef __uint16_t uint16_t;




typedef __int32_t int32_t;




typedef __uint32_t uint32_t;




typedef __int64_t int64_t;




typedef __uint64_t uint64_t;



typedef __uint8_t u_int8_t;
typedef __uint16_t u_int16_t;
typedef __uint32_t u_int32_t;
typedef __uint64_t u_int64_t;

# 1 "/usr/include/amd64/endian.h" 1 3 4


# 1 "/usr/include/sys/endian.h" 1 3 4
# 37 "/usr/include/sys/endian.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 38 "/usr/include/sys/endian.h" 2 3 4
# 55 "/usr/include/sys/endian.h" 3 4
# 1 "/usr/include/sys/types.h" 1 3 4
# 56 "/usr/include/sys/endian.h" 2 3 4


typedef __in_addr_t in_addr_t;




typedef __in_port_t in_port_t;




# 67 "/usr/include/sys/endian.h" 3 4
#pragma GCC visibility push(default)
# 67 "/usr/include/sys/endian.h" 3 4
extern "C" {
__uint32_t htonl(__uint32_t) __attribute__((__const__));
__uint16_t htons(__uint16_t) __attribute__((__const__));
__uint32_t ntohl(__uint32_t) __attribute__((__const__));
__uint16_t ntohs(__uint16_t) __attribute__((__const__));
}
# 72 "/usr/include/sys/endian.h" 3 4
#pragma GCC visibility pop
# 72 "/usr/include/sys/endian.h" 3 4






# 1 "/usr/include/amd64/endian_machdep.h" 1 3 4
# 79 "/usr/include/sys/endian.h" 2 3 4
# 107 "/usr/include/sys/endian.h" 3 4
# 1 "/usr/include/amd64/bswap.h" 1 3 4
# 10 "/usr/include/amd64/bswap.h" 3 4
# 1 "/usr/include/amd64/byte_swap.h" 1 3 4
# 43 "/usr/include/amd64/byte_swap.h" 3 4

# 43 "/usr/include/amd64/byte_swap.h" 3 4
#pragma GCC visibility push(default)
# 43 "/usr/include/amd64/byte_swap.h" 3 4
extern "C" {


static inline __uint64_t __byte_swap_u64_variable(__uint64_t);
static inline __uint64_t
__byte_swap_u64_variable(__uint64_t x)
{
__asm volatile ( "bswap %1" : "=r" (x) : "0" (x));
return (x);
}


static inline __uint32_t __byte_swap_u32_variable(__uint32_t);
static inline __uint32_t
__byte_swap_u32_variable(__uint32_t x)
{
__asm volatile ( "bswap %1" : "=r" (x) : "0" (x));
return (x);
}


static inline __uint16_t __byte_swap_u16_variable(__uint16_t);
static inline __uint16_t
__byte_swap_u16_variable(__uint16_t x)
{
__asm volatile ("rorw $8, %w1" : "=r" (x) : "0" (x));
return (x);
}

}
# 72 "/usr/include/amd64/byte_swap.h" 3 4
#pragma GCC visibility pop
# 72 "/usr/include/amd64/byte_swap.h" 3 4

# 11 "/usr/include/amd64/bswap.h" 2 3 4


# 1 "/usr/include/sys/bswap.h" 1 3 4
# 9 "/usr/include/sys/bswap.h" 3 4
# 1 "/usr/include/sys/stdint.h" 1 3 4
# 79 "/usr/include/sys/stdint.h" 3 4
typedef __intptr_t intptr_t;




typedef __uintptr_t uintptr_t;



# 1 "/usr/include/amd64/int_mwgwtypes.h" 1 3 4
# 36 "/usr/include/amd64/int_mwgwtypes.h" 3 4
# 1 "/usr/include/sys/common_int_mwgwtypes.h" 1 3 4
# 45 "/usr/include/sys/common_int_mwgwtypes.h" 3 4
typedef signed char int_least8_t;
typedef unsigned char uint_least8_t;
typedef short int int_least16_t;
typedef short unsigned int uint_least16_t;
typedef int int_least32_t;
typedef unsigned int uint_least32_t;
typedef long int int_least64_t;
typedef long unsigned int uint_least64_t;


typedef int int_fast8_t;
typedef unsigned int uint_fast8_t;
typedef int int_fast16_t;
typedef unsigned int uint_fast16_t;
typedef int int_fast32_t;
typedef unsigned int uint_fast32_t;
typedef long int int_fast64_t;
typedef long unsigned int uint_fast64_t;



typedef long int intmax_t;
typedef long unsigned int uintmax_t;
# 37 "/usr/include/amd64/int_mwgwtypes.h" 2 3 4
# 89 "/usr/include/sys/stdint.h" 2 3 4
# 10 "/usr/include/sys/bswap.h" 2 3 4

# 1 "/usr/include/amd64/bswap.h" 1 3 4
# 12 "/usr/include/sys/bswap.h" 2 3 4


# 13 "/usr/include/sys/bswap.h" 3 4
#pragma GCC visibility push(default)
# 13 "/usr/include/sys/bswap.h" 3 4
extern "C" {





__uint16_t bswap16(__uint16_t) __asm("__bswap16") __attribute__((__const__));
__uint32_t bswap32(__uint32_t) __asm("__bswap32") __attribute__((__const__));

__uint64_t bswap64(__uint64_t) __attribute__((__const__));
}
# 23 "/usr/include/sys/bswap.h" 3 4
#pragma GCC visibility pop
# 23 "/usr/include/sys/bswap.h" 3 4

# 14 "/usr/include/amd64/bswap.h" 2 3 4
# 108 "/usr/include/sys/endian.h" 2 3 4
# 203 "/usr/include/sys/endian.h" 3 4
static inline void __attribute__((__unused__)) be16enc(void *dst, __uint16_t u) { u = static_cast<__uint16_t>(__builtin_constant_p((static_cast<__uint16_t>((u)))) ? (static_cast<__uint16_t>(((((static_cast<__uint16_t>((u))) & 0xff00) >> 8) | (((static_cast<__uint16_t>((u))) & 0x00ff) << 8)))) : __byte_swap_u16_variable(static_cast<__uint16_t>((u)))); __builtin_memcpy(dst, &u, sizeof(u)); }
static inline void __attribute__((__unused__)) be32enc(void *dst, __uint32_t u) { u = static_cast<__uint32_t>(__builtin_constant_p((static_cast<__uint32_t>((u)))) ? (static_cast<__uint32_t>(((((static_cast<__uint32_t>((u))) & 0xff000000) >> 24) | (((static_cast<__uint32_t>((u))) & 0x00ff0000) >> 8) | (((static_cast<__uint32_t>((u))) & 0x0000ff00) << 8) | (((static_cast<__uint32_t>((u))) & 0x000000ff) << 24)))) : __byte_swap_u32_variable(static_cast<__uint32_t>((u)))); __builtin_memcpy(dst, &u, sizeof(u)); }
static inline void __attribute__((__unused__)) be64enc(void *dst, __uint64_t u) { u = static_cast<__uint64_t>(__builtin_constant_p((static_cast<__uint64_t>((u)))) ? (static_cast<__uint64_t>(((((static_cast<__uint64_t>((u))) & 0xff00000000000000ull) >> 56) | (((static_cast<__uint64_t>((u))) & 0x00ff000000000000ull) >> 40) | (((static_cast<__uint64_t>((u))) & 0x0000ff0000000000ull) >> 24) | (((static_cast<__uint64_t>((u))) & 0x000000ff00000000ull) >> 8) | (((static_cast<__uint64_t>((u))) & 0x00000000ff000000ull) << 8) | (((static_cast<__uint64_t>((u))) & 0x0000000000ff0000ull) << 24) | (((static_cast<__uint64_t>((u))) & 0x000000000000ff00ull) << 40) | (((static_cast<__uint64_t>((u))) & 0x00000000000000ffull) << 56)))) : __byte_swap_u64_variable(static_cast<__uint64_t>((u)))); __builtin_memcpy(dst, &u, sizeof(u)); }
static inline void __attribute__((__unused__)) le16enc(void *dst, __uint16_t u) { u = (u); __builtin_memcpy(dst, &u, sizeof(u)); }
static inline void __attribute__((__unused__)) le32enc(void *dst, __uint32_t u) { u = (u); __builtin_memcpy(dst, &u, sizeof(u)); }
static inline void __attribute__((__unused__)) le64enc(void *dst, __uint64_t u) { u = (u); __builtin_memcpy(dst, &u, sizeof(u)); }
# 220 "/usr/include/sys/endian.h" 3 4
static inline __uint16_t __attribute__((__unused__)) be16dec(const void *buf) { __uint16_t u; __builtin_memcpy(&u, buf, sizeof(u)); return static_cast<__uint16_t>(__builtin_constant_p((static_cast<__uint16_t>((u)))) ? (static_cast<__uint16_t>(((((static_cast<__uint16_t>((u))) & 0xff00) >> 8) | (((static_cast<__uint16_t>((u))) & 0x00ff) << 8)))) : __byte_swap_u16_variable(static_cast<__uint16_t>((u)))); }
static inline __uint32_t __attribute__((__unused__)) be32dec(const void *buf) { __uint32_t u; __builtin_memcpy(&u, buf, sizeof(u)); return static_cast<__uint32_t>(__builtin_constant_p((static_cast<__uint32_t>((u)))) ? (static_cast<__uint32_t>(((((static_cast<__uint32_t>((u))) & 0xff000000) >> 24) | (((static_cast<__uint32_t>((u))) & 0x00ff0000) >> 8) | (((static_cast<__uint32_t>((u))) & 0x0000ff00) << 8) | (((static_cast<__uint32_t>((u))) & 0x000000ff) << 24)))) : __byte_swap_u32_variable(static_cast<__uint32_t>((u)))); }
static inline __uint64_t __attribute__((__unused__)) be64dec(const void *buf) { __uint64_t u; __builtin_memcpy(&u, buf, sizeof(u)); return static_cast<__uint64_t>(__builtin_constant_p((static_cast<__uint64_t>((u)))) ? (static_cast<__uint64_t>(((((static_cast<__uint64_t>((u))) & 0xff00000000000000ull) >> 56) | (((static_cast<__uint64_t>((u))) & 0x00ff000000000000ull) >> 40) | (((static_cast<__uint64_t>((u))) & 0x0000ff0000000000ull) >> 24) | (((static_cast<__uint64_t>((u))) & 0x000000ff00000000ull) >> 8) | (((static_cast<__uint64_t>((u))) & 0x00000000ff000000ull) << 8) | (((static_cast<__uint64_t>((u))) & 0x0000000000ff0000ull) << 24) | (((static_cast<__uint64_t>((u))) & 0x000000000000ff00ull) << 40) | (((static_cast<__uint64_t>((u))) & 0x00000000000000ffull) << 56)))) : __byte_swap_u64_variable(static_cast<__uint64_t>((u)))); }
static inline __uint16_t __attribute__((__unused__)) le16dec(const void *buf) { __uint16_t u; __builtin_memcpy(&u, buf, sizeof(u)); return (u); }
static inline __uint32_t __attribute__((__unused__)) le32dec(const void *buf) { __uint32_t u; __builtin_memcpy(&u, buf, sizeof(u)); return (u); }
static inline __uint64_t __attribute__((__unused__)) le64dec(const void *buf) { __uint64_t u; __builtin_memcpy(&u, buf, sizeof(u)); return (u); }
# 3 "/usr/include/amd64/endian.h" 2 3 4
# 99 "/usr/include/sys/types.h" 2 3 4


typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;

typedef unsigned char unchar;
typedef unsigned short ushort;
typedef unsigned int uint;
typedef unsigned long ulong;


typedef __uint64_t u_quad_t;
typedef __int64_t quad_t;
typedef quad_t * qaddr_t;
# 126 "/usr/include/sys/types.h" 3 4
typedef __int64_t longlong_t;
typedef __uint64_t u_longlong_t;

typedef __int64_t blkcnt_t;
typedef __int32_t blksize_t;


typedef __fsblkcnt_t fsblkcnt_t;




typedef __fsfilcnt_t fsfilcnt_t;






typedef __caddr_t caddr_t;
# 154 "/usr/include/sys/types.h" 3 4
typedef __int64_t daddr_t;


typedef __uint64_t dev_t;
typedef __uint32_t fixpt_t;


typedef __gid_t gid_t;



typedef __uint32_t id_t;
typedef __uint64_t ino_t;
typedef long key_t;


typedef __mode_t mode_t;



typedef __uint32_t nlink_t;







typedef __pid_t pid_t;


typedef __int32_t lwpid_t;
typedef __uint64_t rlim_t;
typedef __int32_t segsz_t;
typedef __int32_t swblk_t;


typedef __uid_t uid_t;



typedef int mqd_t;

typedef unsigned long cpuid_t;

typedef int psetid_t;

typedef volatile __cpu_simple_lock_nv_t __cpu_simple_lock_t;
# 244 "/usr/include/sys/types.h" 3 4

# 244 "/usr/include/sys/types.h" 3 4
#pragma GCC visibility push(default)
# 244 "/usr/include/sys/types.h" 3 4
extern "C" {
__off_t lseek(int, __off_t, int);
int ftruncate(int, __off_t);
int truncate(const char *, __off_t);
}
# 248 "/usr/include/sys/types.h" 3 4
#pragma GCC visibility pop
# 248 "/usr/include/sys/types.h" 3 4







typedef __int32_t __devmajor_t, __devminor_t;
# 273 "/usr/include/sys/types.h" 3 4
typedef long ptrdiff_t;
# 304 "/usr/include/sys/types.h" 3 4
typedef int suseconds_t;




typedef unsigned int useconds_t;




# 1 "/usr/include/sys/fd_set.h" 1 3 4
# 38 "/usr/include/sys/fd_set.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 39 "/usr/include/sys/fd_set.h" 2 3 4







typedef __uint32_t __fd_mask;
# 66 "/usr/include/sys/fd_set.h" 3 4
typedef struct fd_set {
__fd_mask fds_bits[(((256) + ((32) - 1)) / (32))];
} fd_set;
# 315 "/usr/include/sys/types.h" 2 3 4



typedef struct kauth_cred *kauth_cred_t;

typedef int pri_t;
# 354 "/usr/include/sys/types.h" 3 4
# 1 "/usr/include/pthread_types.h" 1 3 4
# 43 "/usr/include/pthread_types.h" 3 4
typedef __cpu_simple_lock_t pthread_spin_t;

typedef __cpu_simple_lock_nv_t __pthread_spin_t;
# 61 "/usr/include/pthread_types.h" 3 4
struct pthread_queue_struct_t { struct __pthread_st *ptqh_first; struct __pthread_st **ptqh_last; };
typedef struct pthread_queue_struct_t pthread_queue_t;

struct __pthread_st;
struct __pthread_attr_st;
struct __pthread_mutex_st;
struct __pthread_mutexattr_st;
struct __pthread_cond_st;
struct __pthread_condattr_st;
struct __pthread_spin_st;
struct __pthread_rwlock_st;
struct __pthread_rwlockattr_st;
struct __pthread_barrier_st;
struct __pthread_barrierattr_st;

typedef struct __pthread_st *pthread_t;
typedef struct __pthread_attr_st pthread_attr_t;
typedef struct __pthread_mutex_st pthread_mutex_t;
typedef struct __pthread_mutexattr_st pthread_mutexattr_t;
typedef struct __pthread_cond_st pthread_cond_t;
typedef struct __pthread_condattr_st pthread_condattr_t;
typedef struct __pthread_once_st pthread_once_t;
typedef struct __pthread_spinlock_st pthread_spinlock_t;
typedef struct __pthread_rwlock_st pthread_rwlock_t;
typedef struct __pthread_rwlockattr_st pthread_rwlockattr_t;
typedef struct __pthread_barrier_st pthread_barrier_t;
typedef struct __pthread_barrierattr_st pthread_barrierattr_t;
typedef int pthread_key_t;

struct __pthread_attr_st {
unsigned int pta_magic;

int pta_flags;
void *pta_private;
};
# 112 "/usr/include/pthread_types.h" 3 4
struct __pthread_mutex_st {
unsigned int ptm_magic;
__pthread_spin_t ptm_errorcheck;

__uint8_t ptm_pad1[3];
# 125 "/usr/include/pthread_types.h" 3 4
union {
 unsigned char ptm_ceiling;
 __pthread_spin_t ptm_unused;
};

__uint8_t ptm_pad2[3];

pthread_t ptm_owner;
pthread_t * ptm_waiters;
unsigned int ptm_recursed;
void *ptm_spare2;
};
# 161 "/usr/include/pthread_types.h" 3 4
struct __pthread_mutexattr_st {
unsigned int ptma_magic;
void *ptma_private;
};





struct __pthread_cond_st {
unsigned int ptc_magic;


__pthread_spin_t ptc_lock;
pthread_queue_t ptc_waiters;

pthread_mutex_t *ptc_mutex;
void *ptc_private;
};
# 191 "/usr/include/pthread_types.h" 3 4
struct __pthread_condattr_st {
unsigned int ptca_magic;
void *ptca_private;
};




struct __pthread_once_st {
pthread_mutex_t pto_mutex;
int pto_done;
};



struct __pthread_spinlock_st {
unsigned int pts_magic;
__pthread_spin_t pts_spin;
int pts_flags;
};
# 222 "/usr/include/pthread_types.h" 3 4
struct __pthread_rwlock_st {
unsigned int ptr_magic;


__pthread_spin_t ptr_interlock;

pthread_queue_t ptr_rblocked;
pthread_queue_t ptr_wblocked;
unsigned int ptr_nreaders;
pthread_t ptr_owner;
void *ptr_private;
};
# 247 "/usr/include/pthread_types.h" 3 4
struct __pthread_rwlockattr_st {
unsigned int ptra_magic;
void *ptra_private;
};




struct __pthread_barrier_st {
unsigned int ptb_magic;


pthread_spin_t ptb_lock;

pthread_queue_t ptb_waiters;
unsigned int ptb_initcount;
unsigned int ptb_curcount;
unsigned int ptb_generation;

void *ptb_private;
};




struct __pthread_barrierattr_st {
unsigned int ptba_magic;
void *ptba_private;
};
# 355 "/usr/include/sys/types.h" 2 3 4
# 39 "/usr/include/sys/time.h" 2 3 4





struct timeval {
time_t tv_sec;
suseconds_t tv_usec;
};
# 65 "/usr/include/sys/time.h" 3 4
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
# 102 "/usr/include/sys/time.h" 3 4
struct bintime {
time_t sec;
__uint64_t frac;
};

static inline void
bintime_addx(struct bintime *bt, __uint64_t x)
{
__uint64_t u;

u = bt->frac;
bt->frac += x;
if (u > bt->frac)
 bt->sec++;
}

static inline void
bintime_add(struct bintime *bt, const struct bintime *bt2)
{
__uint64_t u;

u = bt->frac;
bt->frac += bt2->frac;
if (u > bt->frac)
 bt->sec++;
bt->sec += bt2->sec;
}

static inline void
bintime_sub(struct bintime *bt, const struct bintime *bt2)
{
__uint64_t u;

u = bt->frac;
bt->frac -= bt2->frac;
if (u < bt->frac)
 bt->sec--;
bt->sec -= bt2->sec;
}
# 161 "/usr/include/sys/time.h" 3 4
static inline void
bintime2timespec(const struct bintime *bt, struct timespec *ts)
{

ts->tv_sec = bt->sec;
ts->tv_nsec =
    (long)(((__uint64_t)1000000000 * (__uint32_t)(bt->frac >> 32)) >> 32);
}

static inline void
timespec2bintime(const struct timespec *ts, struct bintime *bt)
{

bt->sec = ts->tv_sec;

bt->frac = (__uint64_t)ts->tv_nsec * (__uint64_t)18446744073ULL;
}

static inline void
bintime2timeval(const struct bintime *bt, struct timeval *tv)
{

tv->tv_sec = bt->sec;
tv->tv_usec =
    (suseconds_t)(((__uint64_t)1000000 * (__uint32_t)(bt->frac >> 32)) >> 32);
}

static inline void
timeval2bintime(const struct timeval *tv, struct bintime *bt)
{

bt->sec = tv->tv_sec;

bt->frac = (__uint64_t)tv->tv_usec * (__uint64_t)18446744073709ULL;
}

static inline struct bintime
ms2bintime(__uint64_t ms)
{
struct bintime bt;

bt.sec = (time_t)(ms / 1000U);
bt.frac = (((ms % 1000U) >> 32)/1000U) >> 32;

return bt;
}

static inline struct bintime
us2bintime(__uint64_t us)
{
struct bintime bt;

bt.sec = (time_t)(us / 1000000U);
bt.frac = (((us % 1000000U) >> 32)/1000000U) >> 32;

return bt;
}

static inline struct bintime
ns2bintime(__uint64_t ns)
{
struct bintime bt;

bt.sec = (time_t)(ns / 1000000000U);
bt.frac = (((ns % 1000000000U) >> 32)/1000000000U) >> 32;

return bt;
}
# 269 "/usr/include/sys/time.h" 3 4
struct itimerval {
struct timeval it_interval;
struct timeval it_value;
};





struct itimerspec {
struct timespec it_interval;
struct timespec it_value;
};
# 302 "/usr/include/sys/time.h" 3 4
# 1 "/usr/include/sys/select.h" 1 3 4
# 38 "/usr/include/sys/select.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 39 "/usr/include/sys/select.h" 2 3 4
# 61 "/usr/include/sys/select.h" 3 4
# 1 "/usr/include/sys/sigtypes.h" 1 3 4
# 48 "/usr/include/sys/sigtypes.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 49 "/usr/include/sys/sigtypes.h" 2 3 4
# 60 "/usr/include/sys/sigtypes.h" 3 4
typedef struct {
__uint32_t __bits[4];
} sigset_t;
# 108 "/usr/include/sys/sigtypes.h" 3 4
typedef struct

              sigaltstack

     {
void *ss_sp;
size_t ss_size;
int ss_flags;
} stack_t;
# 62 "/usr/include/sys/select.h" 2 3 4
# 1 "/usr/include/time.h" 1 3 4
# 63 "/usr/include/sys/select.h" 2 3 4


# 64 "/usr/include/sys/select.h" 3 4
#pragma GCC visibility push(default)
# 64 "/usr/include/sys/select.h" 3 4
extern "C" {

int pselect(int, fd_set * __restrict__, fd_set * __restrict__,
   fd_set * __restrict__, const struct timespec * __restrict__,
   const sigset_t * __restrict__) __asm("__pselect50");
int select(int, fd_set * __restrict__, fd_set * __restrict__,
   fd_set * __restrict__, struct timeval * __restrict__) __asm("__select50");

}
# 72 "/usr/include/sys/select.h" 3 4
#pragma GCC visibility pop
# 72 "/usr/include/sys/select.h" 3 4

# 303 "/usr/include/sys/time.h" 2 3 4






# 308 "/usr/include/sys/time.h" 3 4
#pragma GCC visibility push(default)
# 308 "/usr/include/sys/time.h" 3 4
extern "C" {



int getitimer(int, struct itimerval *) __asm("__getitimer50");
int gettimeofday(struct timeval * __restrict__, void *__restrict__)
   __asm("__gettimeofday50");
int setitimer(int, const struct itimerval * __restrict__,
    struct itimerval * __restrict__) __asm("__setitimer50");
int utimes(const char *, const struct timeval [2]) __asm("__utimes50");



int adjtime(const struct timeval *, struct timeval *) __asm("__adjtime50");
int futimes(int, const struct timeval [2]) __asm("__futimes50");
int lutimes(const char *, const struct timeval [2]) __asm("__lutimes50");
int settimeofday(const struct timeval * __restrict__,
    const void *__restrict__) __asm("__settimeofday50");


}
# 328 "/usr/include/sys/time.h" 3 4
#pragma GCC visibility pop
# 328 "/usr/include/sys/time.h" 3 4

# 146 "/usr/include/time.h" 2 3 4
struct sigevent;
struct itimerspec;
int clock_nanosleep(clockid_t, int, const struct timespec *, struct timespec *);

int clock_getres(clockid_t, struct timespec *)
   __asm("__clock_getres50");
int clock_gettime(clockid_t, struct timespec *)
   __asm("__clock_gettime50");
int clock_settime(clockid_t, const struct timespec *)
   __asm("__clock_settime50");
int nanosleep(const struct timespec *, struct timespec *)
   __asm("__nanosleep50");
int timer_gettime(timer_t, struct itimerspec *) __asm("__timer_gettime50");
int timer_settime(timer_t, int, const struct itimerspec * __restrict__,
   struct itimerspec * __restrict__) __asm("__timer_settime50");


# 1 "/usr/include/sys/idtype.h" 1 3 4
# 41 "/usr/include/sys/idtype.h" 3 4
typedef enum {
P_MYID = -1,
P_ALL,
P_PID,
P_LWPID,
P_PPID,
P_PGID,
P_SID,
P_CID,
P_UID,
P_GID,
P_TASKID,
P_PROJID,
P_POOLID,
P_ZONEID,
P_CTID,
P_CPUID,
P_PSETID,
_P_MAXIDTYPE = 0x7fffffff
} idtype_t;
# 164 "/usr/include/time.h" 2 3 4
int clock_getcpuclockid2(idtype_t, id_t, clockid_t *);

int clock_getcpuclockid(__pid_t, clockid_t *);

int timer_create(clockid_t, struct sigevent * __restrict__,
   timer_t * __restrict__);
int timer_delete(timer_t);
int timer_getoverrun(timer_t);




char *asctime_r(const struct tm * __restrict__, char * __restrict__);

char *ctime_r(const time_t *, char *) __asm("__ctime_r50");
struct tm *gmtime_r(const time_t * __restrict__, struct tm * __restrict__)
   __asm("__gmtime_r50");
struct tm *localtime_r(const time_t * __restrict__, struct tm * __restrict__)
   __asm("__localtime_r50");
# 191 "/usr/include/time.h" 3 4
size_t strftime_l(char * __restrict__, size_t, const char * __restrict__,
   const struct tm * __restrict__, locale_t)
   __attribute__((__format__(__strftime__, 3, 0)));




typedef struct __state *timezone_t;


time_t time2posix(time_t) __asm("__time2posix50");
time_t posix2time(time_t) __asm("__posix2time50");
time_t timegm(struct tm *) __asm("__timegm50");
time_t timeoff(struct tm *, long) __asm("__timeoff50");
time_t timelocal(struct tm *) __asm("__timelocal50");
struct tm *offtime(const time_t *, long) __asm("__offtime50");
void tzsetwall(void) __asm("__tzsetwall50");

struct tm *offtime_r(const time_t *, long, struct tm *) __asm("__offtime_r50");
struct tm *localtime_rz(timezone_t __restrict__, const time_t * __restrict__,
   struct tm * __restrict__) __asm("__localtime_rz50");
char *ctime_rz(timezone_t __restrict__, const time_t *, char *)
   __asm("__ctime_rz50");
time_t mktime_z(timezone_t __restrict__, struct tm * __restrict__)
   __asm("__mktime_z50");
time_t timelocal_z(timezone_t __restrict__, struct tm *)
   __asm("__timelocal_z50");
time_t time2posix_z(timezone_t __restrict__, time_t) __asm("__time2posix_z50");
time_t posix2time_z(timezone_t __restrict__, time_t) __asm("__posix2time_z50");
timezone_t tzalloc(const char *) __asm("__tzalloc50");
void tzfree(timezone_t __restrict__) __asm("__tzfree50");
const char *tzgetname(timezone_t __restrict__, int) __asm("__tzgetname50");
long tzgetgmtoff(timezone_t __restrict__, int) __asm("__tzgetgmtoff50");


size_t strftime_lz(timezone_t __restrict__, char * __restrict__, size_t,
   const char * __restrict__, const struct tm * __restrict__, locale_t)
   __attribute__((__format__(__strftime__, 4, 0)));
size_t strftime_z(timezone_t __restrict__, char * __restrict__, size_t,
   const char * __restrict__, const struct tm * __restrict__)
   __attribute__((__format__(__strftime__, 4, 0)));
char *strptime_l(const char * __restrict__, const char * __restrict__,
   struct tm * __restrict__, locale_t);





int timespec_get(struct timespec *ts, int base);

}
# 241 "/usr/include/time.h" 3 4
#pragma GCC visibility pop
# 241 "/usr/include/time.h" 3 4

# 38 "/usr/include/pthread.h" 2 3 4
# 1 "/usr/include/sched.h" 1 3 4
# 36 "/usr/include/sched.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 37 "/usr/include/sched.h" 2 3 4
# 1 "/usr/include/sys/sched.h" 1 3 4
# 72 "/usr/include/sys/sched.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 73 "/usr/include/sys/sched.h" 2 3 4







struct sched_param {
int sched_priority;
};
# 93 "/usr/include/sys/sched.h" 3 4

# 93 "/usr/include/sys/sched.h" 3 4
#pragma GCC visibility push(default)
# 93 "/usr/include/sys/sched.h" 3 4
extern "C" {




typedef struct _cpuset cpuset_t;
# 110 "/usr/include/sys/sched.h" 3 4
cpuset_t *_cpuset_create(void);
void _cpuset_destroy(cpuset_t *);
void _cpuset_zero(cpuset_t *);
int _cpuset_set(cpuid_t, cpuset_t *);
int _cpuset_clr(cpuid_t, cpuset_t *);
int _cpuset_isset(cpuid_t, const cpuset_t *);
size_t _cpuset_size(const cpuset_t *);






int _sched_getaffinity(__pid_t, lwpid_t, size_t, cpuset_t *);
int _sched_setaffinity(__pid_t, lwpid_t, size_t, const cpuset_t *);
int _sched_getparam(__pid_t, lwpid_t, int *, struct sched_param *);
int _sched_setparam(__pid_t, lwpid_t, int, const struct sched_param *);
int _sched_protect(int);
}
# 128 "/usr/include/sys/sched.h" 3 4
#pragma GCC visibility pop
# 128 "/usr/include/sys/sched.h" 3 4

# 38 "/usr/include/sched.h" 2 3 4





# 42 "/usr/include/sched.h" 3 4
#pragma GCC visibility push(default)
# 42 "/usr/include/sched.h" 3 4
extern "C" {
int sched_setparam(__pid_t, const struct sched_param *);
int sched_getparam(__pid_t, struct sched_param *);
int sched_setscheduler(__pid_t, int, const struct sched_param *);
int sched_getscheduler(__pid_t);
int sched_get_priority_max(int);
int sched_get_priority_min(int);

int sched_rr_get_interval(__pid_t, struct timespec *)
   __asm("__sched_rr_get_interval50");


int sched_yield(void);
int __libc_thr_yield(void);
}
# 56 "/usr/include/sched.h" 3 4
#pragma GCC visibility pop
# 56 "/usr/include/sched.h" 3 4









# 64 "/usr/include/sched.h" 3 4
#pragma GCC visibility push(default)
# 64 "/usr/include/sched.h" 3 4
extern "C" {


int sched_getaffinity_np(__pid_t, size_t, cpuset_t *);
int sched_setaffinity_np(__pid_t, size_t, cpuset_t *);


__pid_t clone(int (*)(void *), void *, int, void *);
__pid_t __clone(int (*)(void *), void *, int, void *);

}
# 74 "/usr/include/sched.h" 3 4
#pragma GCC visibility pop
# 74 "/usr/include/sched.h" 3 4

# 39 "/usr/include/pthread.h" 2 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 40 "/usr/include/pthread.h" 2 3 4




# 43 "/usr/include/pthread.h" 3 4
#pragma GCC visibility push(default)
# 43 "/usr/include/pthread.h" 3 4
extern "C" {
int pthread_atfork(void (*)(void), void (*)(void), void (*)(void));
int pthread_create(pthread_t * __restrict__,
    const pthread_attr_t * __restrict__, void *(*)(void *),
    void * __restrict__);
void pthread_exit(void *) __attribute__((__noreturn__));
int pthread_join(pthread_t, void **);
int pthread_equal(pthread_t, pthread_t);
pthread_t pthread_self(void);
int pthread_detach(pthread_t);

int pthread_getrrtimer_np(void);
int pthread_setrrtimer_np(int);

int pthread_attr_init(pthread_attr_t *);
int pthread_attr_destroy(pthread_attr_t *);
int pthread_attr_get_np(pthread_t, pthread_attr_t *);
int pthread_attr_getguardsize(const pthread_attr_t * __restrict__,
    size_t * __restrict__);
int pthread_attr_setguardsize(pthread_attr_t *, size_t);
int pthread_attr_getinheritsched(const pthread_attr_t * __restrict__,
    int * __restrict__);
int pthread_attr_setinheritsched(pthread_attr_t *, int);
int pthread_attr_getschedparam(const pthread_attr_t * __restrict__,
    struct sched_param * __restrict__);
int pthread_attr_setschedparam(pthread_attr_t * __restrict__,
   const struct sched_param * __restrict__);
int pthread_attr_getschedpolicy(const pthread_attr_t * __restrict__,
    int * __restrict__);
int pthread_attr_setschedpolicy(pthread_attr_t *, int);
int pthread_attr_getscope(const pthread_attr_t * __restrict__,
    int * __restrict__);
int pthread_attr_setscope(pthread_attr_t *, int);
int pthread_attr_getstack(const pthread_attr_t * __restrict__,
    void ** __restrict__, size_t * __restrict__);
int pthread_attr_setstack(pthread_attr_t *, void *, size_t);
int pthread_attr_getstacksize(const pthread_attr_t * __restrict__,
    size_t * __restrict__);
int pthread_attr_setstacksize(pthread_attr_t *, size_t);
int pthread_attr_getstackaddr(const pthread_attr_t * __restrict__,
    void ** __restrict__);
int pthread_attr_setstackaddr(pthread_attr_t *, void *);
int pthread_attr_getdetachstate(const pthread_attr_t *, int *);
int pthread_attr_setdetachstate(pthread_attr_t *, int);
int pthread_attr_getname_np(const pthread_attr_t *, char *,
    size_t, void **);
int pthread_attr_setname_np(pthread_attr_t *, const char *, void *);

int pthread_mutex_init(pthread_mutex_t * __restrict__,
    const pthread_mutexattr_t * __restrict__);
int pthread_mutex_destroy(pthread_mutex_t *);
int pthread_mutex_lock(pthread_mutex_t *);
int pthread_mutex_trylock(pthread_mutex_t *);
int pthread_mutex_unlock(pthread_mutex_t *);
int pthread_mutex_timedlock(pthread_mutex_t *,
    const struct timespec * __restrict__);
int pthread_mutex_getprioceiling(const pthread_mutex_t * __restrict__,
    int * __restrict__);
int pthread_mutex_setprioceiling(pthread_mutex_t * __restrict__, int,
    int * __restrict__);
int pthread_mutexattr_init(pthread_mutexattr_t *);
int pthread_mutexattr_destroy(pthread_mutexattr_t *);





int pthread_mutexattr_gettype(const pthread_mutexattr_t * __restrict__,
    int * __restrict__);
int pthread_mutexattr_settype(pthread_mutexattr_t *attr, int);
int pthread_mutexattr_getprotocol(const pthread_mutexattr_t * __restrict__,
    int * __restrict__);
int pthread_mutexattr_setprotocol(pthread_mutexattr_t*,
    int);
int pthread_mutexattr_getprioceiling(const pthread_mutexattr_t * __restrict__,
    int * __restrict__);
int pthread_mutexattr_setprioceiling(pthread_mutexattr_t *,
    int);
int pthread_cond_init(pthread_cond_t * __restrict__,
    const pthread_condattr_t * __restrict__);
int pthread_cond_destroy(pthread_cond_t *);
int pthread_cond_wait(pthread_cond_t * __restrict__,
    pthread_mutex_t * __restrict__);

int pthread_cond_timedwait(pthread_cond_t * __restrict__,
    pthread_mutex_t * __restrict__, const struct timespec * __restrict__);

int pthread_cond_signal(pthread_cond_t *);
int pthread_cond_broadcast(pthread_cond_t *);
int pthread_condattr_init(pthread_condattr_t *);

int pthread_condattr_setclock(pthread_condattr_t *, clockid_t);
int pthread_condattr_getclock(const pthread_condattr_t * __restrict__,
    clockid_t * __restrict__);

int pthread_condattr_destroy(pthread_condattr_t *);





int pthread_once(pthread_once_t *, void (*)(void));

int pthread_key_create(pthread_key_t *, void (*)(void *));
int pthread_key_delete(pthread_key_t);
int pthread_setspecific(pthread_key_t, const void *);
void* pthread_getspecific(pthread_key_t);

int pthread_cancel(pthread_t);
int pthread_setcancelstate(int, int *);
int pthread_setcanceltype(int, int *);
void pthread_testcancel(void);

int pthread_getname_np(pthread_t, char *, size_t);
int pthread_setname_np(pthread_t, const char *, void *);

int pthread_attr_setcreatesuspend_np(pthread_attr_t *);
int pthread_suspend_np(pthread_t);
int pthread_resume_np(pthread_t);

unsigned int pthread_curcpu_np(void);

int pthread_getcpuclockid(pthread_t, clockid_t *);

struct pthread_cleanup_store {
void *pad[4];
};
# 180 "/usr/include/pthread.h" 3 4
void pthread__cleanup_push(void (*)(void *), void *, void *);
void pthread__cleanup_pop(int, void *);

int pthread_spin_init(pthread_spinlock_t *, int);
int pthread_spin_destroy(pthread_spinlock_t *);
int pthread_spin_lock(pthread_spinlock_t *);
int pthread_spin_trylock(pthread_spinlock_t *);
int pthread_spin_unlock(pthread_spinlock_t *);

int pthread_rwlock_init(pthread_rwlock_t * __restrict__,
    const pthread_rwlockattr_t * __restrict__);
int pthread_rwlock_destroy(pthread_rwlock_t *);
int pthread_rwlock_rdlock(pthread_rwlock_t *);
int pthread_rwlock_tryrdlock(pthread_rwlock_t *);
int pthread_rwlock_wrlock(pthread_rwlock_t *);
int pthread_rwlock_trywrlock(pthread_rwlock_t *);

int pthread_rwlock_timedrdlock(pthread_rwlock_t * __restrict__,
    const struct timespec * __restrict__);
int pthread_rwlock_timedwrlock(pthread_rwlock_t * __restrict__,
    const struct timespec * __restrict__);

int pthread_rwlock_unlock(pthread_rwlock_t *);
int pthread_rwlockattr_init(pthread_rwlockattr_t *);
int pthread_rwlockattr_destroy(pthread_rwlockattr_t *);





int pthread_barrier_init(pthread_barrier_t * __restrict__,
    const pthread_barrierattr_t * __restrict__, unsigned int);
int pthread_barrier_wait(pthread_barrier_t *);
int pthread_barrier_destroy(pthread_barrier_t *);
int pthread_barrierattr_init(pthread_barrierattr_t *);
int pthread_barrierattr_destroy(pthread_barrierattr_t *);





int pthread_getschedparam(pthread_t, int * __restrict__,
    struct sched_param * __restrict__);
int pthread_setschedparam(pthread_t, int, const struct sched_param *);
int pthread_setschedprio(pthread_t, int);

int *pthread__errno(void);


int pthread_getaffinity_np(pthread_t, size_t, cpuset_t *);
int pthread_setaffinity_np(pthread_t, size_t, cpuset_t *);
int pthread_getattr_np(pthread_t, pthread_attr_t *);

int pthread_mutex_held_np(pthread_mutex_t *);
pthread_t pthread_mutex_owner_np(pthread_mutex_t *);

int pthread_rwlock_held_np(pthread_rwlock_t *);
int pthread_rwlock_wrheld_np(pthread_rwlock_t *);
int pthread_rwlock_rdheld_np(pthread_rwlock_t *);

int pthread_cond_has_waiters_np(pthread_cond_t *);


}
# 243 "/usr/include/pthread.h" 3 4
#pragma GCC visibility pop
# 243 "/usr/include/pthread.h" 3 4

# 330 "/usr/include/pthread.h" 3 4

# 330 "/usr/include/pthread.h" 3 4
#pragma GCC visibility push(default)
# 330 "/usr/include/pthread.h" 3 4
extern "C" {
int __libc_mutex_init(pthread_mutex_t * __restrict__, const pthread_mutexattr_t * __restrict__);
int __libc_mutex_lock(pthread_mutex_t *);
int __libc_mutex_trylock(pthread_mutex_t *);
int __libc_mutex_unlock(pthread_mutex_t *);
int __libc_mutex_destroy(pthread_mutex_t *);

int __libc_mutexattr_init(pthread_mutexattr_t *);
int __libc_mutexattr_settype(pthread_mutexattr_t *, int);
int __libc_mutexattr_destroy(pthread_mutexattr_t *);
}
# 340 "/usr/include/pthread.h" 3 4
#pragma GCC visibility pop
# 340 "/usr/include/pthread.h" 3 4

# 352 "/usr/include/pthread.h" 3 4

# 352 "/usr/include/pthread.h" 3 4
#pragma GCC visibility push(default)
# 352 "/usr/include/pthread.h" 3 4
extern "C" {
int __libc_cond_init(pthread_cond_t * __restrict__,
    const pthread_condattr_t * __restrict__);
int __libc_cond_signal(pthread_cond_t *);
int __libc_cond_broadcast(pthread_cond_t *);
int __libc_cond_wait(pthread_cond_t * __restrict__,
    pthread_mutex_t * __restrict__);

int __libc_cond_timedwait(pthread_cond_t * __restrict__,
    pthread_mutex_t * __restrict__, const struct timespec * __restrict__);

int __libc_cond_destroy(pthread_cond_t *);
}
# 364 "/usr/include/pthread.h" 3 4
#pragma GCC visibility pop
# 364 "/usr/include/pthread.h" 3 4

# 373 "/usr/include/pthread.h" 3 4

# 373 "/usr/include/pthread.h" 3 4
#pragma GCC visibility push(default)
# 373 "/usr/include/pthread.h" 3 4
extern "C" {
int __libc_rwlock_init(pthread_rwlock_t * __restrict__,
    const pthread_rwlockattr_t * __restrict__);
int __libc_rwlock_rdlock(pthread_rwlock_t *);
int __libc_rwlock_wrlock(pthread_rwlock_t *);
int __libc_rwlock_tryrdlock(pthread_rwlock_t *);
int __libc_rwlock_trywrlock(pthread_rwlock_t *);
int __libc_rwlock_unlock(pthread_rwlock_t *);
int __libc_rwlock_destroy(pthread_rwlock_t *);
}
# 382 "/usr/include/pthread.h" 3 4
#pragma GCC visibility pop
# 382 "/usr/include/pthread.h" 3 4

# 392 "/usr/include/pthread.h" 3 4

# 392 "/usr/include/pthread.h" 3 4
#pragma GCC visibility push(default)
# 392 "/usr/include/pthread.h" 3 4
extern "C" {
int __libc_thr_keycreate(pthread_key_t *, void (*)(void *));
int __libc_thr_setspecific(pthread_key_t, const void *);
void *__libc_thr_getspecific(pthread_key_t);
int __libc_thr_keydelete(pthread_key_t);
}
# 397 "/usr/include/pthread.h" 3 4
#pragma GCC visibility pop
# 397 "/usr/include/pthread.h" 3 4








# 404 "/usr/include/pthread.h" 3 4
#pragma GCC visibility push(default)
# 404 "/usr/include/pthread.h" 3 4
extern "C" {
int __libc_thr_once(pthread_once_t *, void (*)(void));
pthread_t __libc_thr_self(void);
void __libc_thr_exit(void *) __attribute__((__noreturn__));
int __libc_thr_setcancelstate(int, int *);
int __libc_thr_equal(pthread_t, pthread_t);
unsigned int __libc_thr_curcpu(void);
}
# 411 "/usr/include/pthread.h" 3 4
#pragma GCC visibility pop
# 411 "/usr/include/pthread.h" 3 4

# 36 "/usr/include/g++/bits/gthr-default.h" 2 3
# 47 "/usr/include/g++/bits/gthr-default.h" 3
typedef pthread_t __gthread_t;
typedef pthread_key_t __gthread_key_t;
typedef pthread_once_t __gthread_once_t;
typedef pthread_mutex_t __gthread_mutex_t;
typedef pthread_mutex_t __gthread_recursive_mutex_t;
typedef pthread_cond_t __gthread_cond_t;
typedef struct timespec __gthread_time_t;
# 101 "/usr/include/g++/bits/gthr-default.h" 3



































# 298 "/usr/include/g++/bits/gthr-default.h" 3
static inline int
__gthread_active_p (void)
{
 return 1;
}
# 658 "/usr/include/g++/bits/gthr-default.h" 3
static inline int
__gthread_create (__gthread_t *__threadid, void *(*__func) (void*),
   void *__args)
{
 return pthread_create (__threadid, __null, __func, __args);
}

static inline int
__gthread_join (__gthread_t __threadid, void **__value_ptr)
{
 return pthread_join (__threadid, __value_ptr);
}

static inline int
__gthread_detach (__gthread_t __threadid)
{
 return pthread_detach (__threadid);
}

static inline int
__gthread_equal (__gthread_t __t1, __gthread_t __t2)
{
 return __libc_thr_equal (__t1, __t2);
}

static inline __gthread_t
__gthread_self (void)
{
 return __libc_thr_self ();
}

static inline int
__gthread_yield (void)
{
 return __libc_thr_yield ();
}

static inline int
__gthread_once (__gthread_once_t *__once, void (*__func) (void))
{
 if (__gthread_active_p ())
   return __libc_thr_once (__once, __func);
 else
   return -1;
}

static inline int
__gthread_key_create (__gthread_key_t *__key, void (*__dtor) (void *))
{
 return __libc_thr_keycreate (__key, __dtor);
}

static inline int
__gthread_key_delete (__gthread_key_t __key)
{
 return __libc_thr_keydelete (__key);
}

static inline void *
__gthread_getspecific (__gthread_key_t __key)
{
 return __libc_thr_getspecific (__key);
}

static inline int
__gthread_setspecific (__gthread_key_t __key, const void *__ptr)
{
 return __libc_thr_setspecific (__key, __ptr);
}

static inline void
__gthread_mutex_init_function (__gthread_mutex_t *__mutex)
{
 if (__gthread_active_p ())
   __libc_mutex_init (__mutex, __null);
}

static inline int
__gthread_mutex_destroy (__gthread_mutex_t *__mutex)
{
 if (__gthread_active_p ())
   return __libc_mutex_destroy (__mutex);
 else
   return 0;
}

static inline int
__gthread_mutex_lock (__gthread_mutex_t *__mutex)
{
 if (__gthread_active_p ())
   return __libc_mutex_lock (__mutex);
 else
   return 0;
}

static inline int
__gthread_mutex_trylock (__gthread_mutex_t *__mutex)
{
 if (__gthread_active_p ())
   return __libc_mutex_trylock (__mutex);
 else
   return 0;
}
# 774 "/usr/include/g++/bits/gthr-default.h" 3
static inline int
__gthread_mutex_unlock (__gthread_mutex_t *__mutex)
{
 if (__gthread_active_p ())
   return __libc_mutex_unlock (__mutex);
 else
   return 0;
}



static inline int
__gthread_recursive_mutex_init_function (__gthread_recursive_mutex_t *__mutex)
{
 if (__gthread_active_p ())
   {
     pthread_mutexattr_t __attr;
     int __r;

     __r = __libc_mutexattr_init (&__attr);
     if (!__r)
__r = __libc_mutexattr_settype (&__attr,
        2);
     if (!__r)
__r = __libc_mutex_init (__mutex, &__attr);
     if (!__r)
__r = __libc_mutexattr_destroy (&__attr);
     return __r;
   }
 return 0;
}


static inline int
__gthread_recursive_mutex_lock (__gthread_recursive_mutex_t *__mutex)
{
 return __gthread_mutex_lock (__mutex);
}

static inline int
__gthread_recursive_mutex_trylock (__gthread_recursive_mutex_t *__mutex)
{
 return __gthread_mutex_trylock (__mutex);
}
# 828 "/usr/include/g++/bits/gthr-default.h" 3
static inline int
__gthread_recursive_mutex_unlock (__gthread_recursive_mutex_t *__mutex)
{
 return __gthread_mutex_unlock (__mutex);
}

static inline int
__gthread_recursive_mutex_destroy (__gthread_recursive_mutex_t *__mutex)
{
 return __gthread_mutex_destroy (__mutex);
}
# 849 "/usr/include/g++/bits/gthr-default.h" 3
static inline int
__gthread_cond_broadcast (__gthread_cond_t *__cond)
{
 return __libc_cond_broadcast (__cond);
}

static inline int
__gthread_cond_signal (__gthread_cond_t *__cond)
{
 return __libc_cond_signal (__cond);
}

static inline int
__gthread_cond_wait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex)
{
 return __libc_cond_wait (__cond, __mutex);
}

static inline int
__gthread_cond_timedwait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex,
    const __gthread_time_t *__abs_timeout)
{
 return __libc_cond_timedwait (__cond, __mutex, __abs_timeout);
}

static inline int
__gthread_cond_wait_recursive (__gthread_cond_t *__cond,
         __gthread_recursive_mutex_t *__mutex)
{
 return __gthread_cond_wait (__cond, __mutex);
}

static inline int
__gthread_cond_destroy (__gthread_cond_t* __cond)
{
 return __libc_cond_destroy (__cond);
}
# 153 "/usr/include/g++/bits/gthr.h" 2 3


#pragma GCC visibility pop
# 36 "/usr/include/g++/ext/atomicity.h" 2 3
# 1 "/usr/include/g++/bits/atomic_word.h" 1 3
# 32 "/usr/include/g++/bits/atomic_word.h" 3
typedef int _Atomic_word;
# 37 "/usr/include/g++/ext/atomicity.h" 2 3

namespace __gnu_cxx __attribute__ ((__visibility__ ("default")))
{







 static inline _Atomic_word
 __exchange_and_add(volatile _Atomic_word* __mem, int __val)
 { return __atomic_fetch_add(__mem, __val, 4); }

 static inline void
 __atomic_add(volatile _Atomic_word* __mem, int __val)
 { __atomic_fetch_add(__mem, __val, 4); }
# 64 "/usr/include/g++/ext/atomicity.h" 3
 static inline _Atomic_word
 __exchange_and_add_single(_Atomic_word* __mem, int __val)
 {
   _Atomic_word __result = *__mem;
   *__mem += __val;
   return __result;
 }

 static inline void
 __atomic_add_single(_Atomic_word* __mem, int __val)
 { *__mem += __val; }

 static inline _Atomic_word
 __attribute__ ((__unused__))
 __exchange_and_add_dispatch(_Atomic_word* __mem, int __val)
 {

   if (__gthread_active_p())
     return __exchange_and_add(__mem, __val);
   else
     return __exchange_and_add_single(__mem, __val);



 }

 static inline void
 __attribute__ ((__unused__))
 __atomic_add_dispatch(_Atomic_word* __mem, int __val)
 {

   if (__gthread_active_p())
     __atomic_add(__mem, __val);
   else
     __atomic_add_single(__mem, __val);



 }


}
# 40 "/usr/include/g++/bits/basic_string.h" 2 3
# 1 "/usr/include/g++/ext/alloc_traits.h" 1 3
# 32 "/usr/include/g++/ext/alloc_traits.h" 3

# 33 "/usr/include/g++/ext/alloc_traits.h" 3
# 41 "/usr/include/g++/ext/alloc_traits.h" 3
namespace __gnu_cxx __attribute__ ((__visibility__ ("default")))
{

# 94 "/usr/include/g++/ext/alloc_traits.h" 3
template<typename _Alloc>
 struct __alloc_traits



 {
   typedef _Alloc allocator_type;
# 172 "/usr/include/g++/ext/alloc_traits.h" 3
   typedef typename _Alloc::pointer pointer;
   typedef typename _Alloc::const_pointer const_pointer;
   typedef typename _Alloc::value_type value_type;
   typedef typename _Alloc::reference reference;
   typedef typename _Alloc::const_reference const_reference;
   typedef typename _Alloc::size_type size_type;
   typedef typename _Alloc::difference_type difference_type;

   static pointer
   allocate(_Alloc& __a, size_type __n)
   { return __a.allocate(__n); }

   static void deallocate(_Alloc& __a, pointer __p, size_type __n)
   { __a.deallocate(__p, __n); }

   template<typename _Tp>
     static void construct(_Alloc& __a, pointer __p, const _Tp& __arg)
     { __a.construct(__p, __arg); }

   static void destroy(_Alloc& __a, pointer __p)
   { __a.destroy(__p); }

   static size_type max_size(const _Alloc& __a)
   { return __a.max_size(); }

   static const _Alloc& _S_select_on_copy(const _Alloc& __a) { return __a; }

   static void _S_on_swap(_Alloc& __a, _Alloc& __b)
   {


     std::__alloc_swap<_Alloc>::_S_do_it(__a, __b);
   }

   template<typename _Tp>
     struct rebind
     { typedef typename _Alloc::template rebind<_Tp>::other other; };

 };


}
# 41 "/usr/include/g++/bits/basic_string.h" 2 3





namespace std __attribute__ ((__visibility__ ("default")))
{



namespace __cxx11 {
# 70 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   class basic_string
   {
     typedef typename __gnu_cxx::__alloc_traits<_Alloc>::template
rebind<_CharT>::other _Char_alloc_type;
     typedef __gnu_cxx::__alloc_traits<_Char_alloc_type> _Alloc_traits;


   public:
     typedef _Traits traits_type;
     typedef typename _Traits::char_type value_type;
     typedef _Char_alloc_type allocator_type;
     typedef typename _Alloc_traits::size_type size_type;
     typedef typename _Alloc_traits::difference_type difference_type;
     typedef typename _Alloc_traits::reference reference;
     typedef typename _Alloc_traits::const_reference const_reference;
     typedef typename _Alloc_traits::pointer pointer;
     typedef typename _Alloc_traits::const_pointer const_pointer;
     typedef __gnu_cxx::__normal_iterator<pointer, basic_string> iterator;
     typedef __gnu_cxx::__normal_iterator<const_pointer, basic_string>
      const_iterator;
     typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
     typedef std::reverse_iterator<iterator> reverse_iterator;


     static const size_type npos = static_cast<size_type>(-1);

   private:


     typedef iterator __const_iterator;





     struct _Alloc_hider : allocator_type
     {
_Alloc_hider(pointer __dat, const _Alloc& __a = _Alloc())
: allocator_type(__a), _M_p(__dat) { }

pointer _M_p;
     };

     _Alloc_hider _M_dataplus;
     size_type _M_string_length;

     enum { _S_local_capacity = 15 / sizeof(_CharT) };

     union
     {
_CharT _M_local_buf[_S_local_capacity + 1];
size_type _M_allocated_capacity;
     };

     void
     _M_data(pointer __p)
     { _M_dataplus._M_p = __p; }

     void
     _M_length(size_type __length)
     { _M_string_length = __length; }

     pointer
     _M_data() const
     { return _M_dataplus._M_p; }

     pointer
     _M_local_data()
     {



return pointer(_M_local_buf);

     }

     const_pointer
     _M_local_data() const
     {



return const_pointer(_M_local_buf);

     }

     void
     _M_capacity(size_type __capacity)
     { _M_allocated_capacity = __capacity; }

     void
     _M_set_length(size_type __n)
     {
_M_length(__n);
traits_type::assign(_M_data()[__n], _CharT());
     }

     bool
     _M_is_local() const
     { return _M_data() == _M_local_data(); }


     pointer
     _M_create(size_type&, size_type);

     void
     _M_dispose()
     {
if (!_M_is_local())
  _M_destroy(_M_allocated_capacity);
     }

     void
     _M_destroy(size_type __size) throw()
     { _Alloc_traits::deallocate(_M_get_allocator(), _M_data(), __size + 1); }



     template<typename _InIterator>
       void
       _M_construct_aux(_InIterator __beg, _InIterator __end,
   std::__false_type)
{
         typedef typename iterator_traits<_InIterator>::iterator_category _Tag;
         _M_construct(__beg, __end, _Tag());
}



     template<typename _Integer>
       void
       _M_construct_aux(_Integer __beg, _Integer __end, std::__true_type)
{ _M_construct_aux_2(static_cast<size_type>(__beg), __end); }

     void
     _M_construct_aux_2(size_type __req, _CharT __c)
     { _M_construct(__req, __c); }

     template<typename _InIterator>
       void
       _M_construct(_InIterator __beg, _InIterator __end)
{
  typedef typename std::__is_integer<_InIterator>::__type _Integral;
  _M_construct_aux(__beg, __end, _Integral());
       }


     template<typename _InIterator>
       void
       _M_construct(_InIterator __beg, _InIterator __end,
      std::input_iterator_tag);



     template<typename _FwdIterator>
       void
       _M_construct(_FwdIterator __beg, _FwdIterator __end,
      std::forward_iterator_tag);

     void
     _M_construct(size_type __req, _CharT __c);

     allocator_type&
     _M_get_allocator()
     { return _M_dataplus; }

     const allocator_type&
     _M_get_allocator() const
     { return _M_dataplus; }

   private:
# 257 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     _M_check(size_type __pos, const char* __s) const
     {
if (__pos > this->size())
  __throw_out_of_range_fmt(("%s: __pos (which is %zu) > " "this->size() (which is %zu)")
                                        ,
      __s, __pos, this->size());
return __pos;
     }

     void
     _M_check_length(size_type __n1, size_type __n2, const char* __s) const
     {
if (this->max_size() - (this->size() - __n1) < __n2)
  __throw_length_error((__s));
     }



     size_type
     _M_limit(size_type __pos, size_type __off) const
     {
const bool __testoff = __off < this->size() - __pos;
return __testoff ? __off : this->size() - __pos;
     }


     bool
     _M_disjunct(const _CharT* __s) const
     {
return (less<const _CharT*>()(__s, _M_data())
 || less<const _CharT*>()(_M_data() + this->size(), __s));
     }



     static void
     _S_copy(_CharT* __d, const _CharT* __s, size_type __n)
     {
if (__n == 1)
  traits_type::assign(*__d, *__s);
else
  traits_type::copy(__d, __s, __n);
     }

     static void
     _S_move(_CharT* __d, const _CharT* __s, size_type __n)
     {
if (__n == 1)
  traits_type::assign(*__d, *__s);
else
  traits_type::move(__d, __s, __n);
     }

     static void
     _S_assign(_CharT* __d, size_type __n, _CharT __c)
     {
if (__n == 1)
  traits_type::assign(*__d, __c);
else
  traits_type::assign(__d, __n, __c);
     }



     template<class _Iterator>
       static void
       _S_copy_chars(_CharT* __p, _Iterator __k1, _Iterator __k2)
       {
  for (; __k1 != __k2; ++__k1, ++__p)
    traits_type::assign(*__p, *__k1);
}

     static void
     _S_copy_chars(_CharT* __p, iterator __k1, iterator __k2)
     { _S_copy_chars(__p, __k1.base(), __k2.base()); }

     static void
     _S_copy_chars(_CharT* __p, const_iterator __k1, const_iterator __k2)

     { _S_copy_chars(__p, __k1.base(), __k2.base()); }

     static void
     _S_copy_chars(_CharT* __p, _CharT* __k1, _CharT* __k2)
     { _S_copy(__p, __k1, __k2 - __k1); }

     static void
     _S_copy_chars(_CharT* __p, const _CharT* __k1, const _CharT* __k2)

     { _S_copy(__p, __k1, __k2 - __k1); }

     static int
     _S_compare(size_type __n1, size_type __n2)
     {
const difference_type __d = difference_type(__n1 - __n2);

if (__d > __gnu_cxx::__numeric_traits<int>::__max)
  return __gnu_cxx::__numeric_traits<int>::__max;
else if (__d < __gnu_cxx::__numeric_traits<int>::__min)
  return __gnu_cxx::__numeric_traits<int>::__min;
else
  return int(__d);
     }

     void
     _M_assign(const basic_string& __rcs);

     void
     _M_mutate(size_type __pos, size_type __len1, const _CharT* __s,
 size_type __len2);

     void
     _M_erase(size_type __pos, size_type __n);

   public:







     basic_string()



     : _M_dataplus(_M_local_data())
     { _M_set_length(0); }




     explicit
     basic_string(const _Alloc& __a)
     : _M_dataplus(_M_local_data(), __a)
     { _M_set_length(0); }





     basic_string(const basic_string& __str)
     : _M_dataplus(_M_local_data(), __str._M_get_allocator())
     { _M_construct(__str._M_data(), __str._M_data() + __str.length()); }
# 410 "/usr/include/g++/bits/basic_string.h" 3
     basic_string(const basic_string& __str, size_type __pos,
    size_type __n = npos)
     : _M_dataplus(_M_local_data())
     {
const _CharT* __start = __str._M_data()
  + __str._M_check(__pos, "basic_string::basic_string");
_M_construct(__start, __start + __str._M_limit(__pos, __n));
     }
# 426 "/usr/include/g++/bits/basic_string.h" 3
     basic_string(const basic_string& __str, size_type __pos,
    size_type __n, const _Alloc& __a)
     : _M_dataplus(_M_local_data(), __a)
     {
const _CharT* __start
  = __str._M_data() + __str._M_check(__pos, "string::string");
_M_construct(__start, __start + __str._M_limit(__pos, __n));
     }
# 444 "/usr/include/g++/bits/basic_string.h" 3
     basic_string(const _CharT* __s, size_type __n,
    const _Alloc& __a = _Alloc())
     : _M_dataplus(_M_local_data(), __a)
     { _M_construct(__s, __s + __n); }






     basic_string(const _CharT* __s, const _Alloc& __a = _Alloc())
     : _M_dataplus(_M_local_data(), __a)
     { _M_construct(__s, __s ? __s + traits_type::length(__s) : __s+npos); }







     basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc())
     : _M_dataplus(_M_local_data(), __a)
     { _M_construct(__n, __c); }
# 532 "/usr/include/g++/bits/basic_string.h" 3
     template<typename _InputIterator>

       basic_string(_InputIterator __beg, _InputIterator __end,
      const _Alloc& __a = _Alloc())
: _M_dataplus(_M_local_data(), __a)
{ _M_construct(__beg, __end); }




     ~basic_string()
     { _M_dispose(); }





     basic_string&
     operator=(const basic_string& __str)
     { return this->assign(__str); }





     basic_string&
     operator=(const _CharT* __s)
     { return this->assign(__s); }
# 568 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     operator=(_CharT __c)
     {
this->assign(1, __c);
return *this;
     }
# 610 "/usr/include/g++/bits/basic_string.h" 3
     iterator
     begin()
     { return iterator(_M_data()); }





     const_iterator
     begin() const
     { return const_iterator(_M_data()); }





     iterator
     end()
     { return iterator(_M_data() + this->size()); }





     const_iterator
     end() const
     { return const_iterator(_M_data() + this->size()); }






     reverse_iterator
     rbegin()
     { return reverse_iterator(this->end()); }






     const_reverse_iterator
     rbegin() const
     { return const_reverse_iterator(this->end()); }






     reverse_iterator
     rend()
     { return reverse_iterator(this->begin()); }






     const_reverse_iterator
     rend() const
     { return const_reverse_iterator(this->begin()); }
# 710 "/usr/include/g++/bits/basic_string.h" 3
   public:



     size_type
     size() const
     { return _M_string_length; }



     size_type
     length() const
     { return _M_string_length; }


     size_type
     max_size() const
     { return (_Alloc_traits::max_size(_M_get_allocator()) - 1) / 2; }
# 739 "/usr/include/g++/bits/basic_string.h" 3
     void
     resize(size_type __n, _CharT __c);
# 752 "/usr/include/g++/bits/basic_string.h" 3
     void
     resize(size_type __n)
     { this->resize(__n, _CharT()); }
# 777 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     capacity() const
     {
return _M_is_local() ? size_type(_S_local_capacity)
                     : _M_allocated_capacity;
     }
# 801 "/usr/include/g++/bits/basic_string.h" 3
     void
     reserve(size_type __res_arg = 0);




     void
     clear()
     { _M_set_length(0); }





     bool
     empty() const
     { return this->size() == 0; }
# 830 "/usr/include/g++/bits/basic_string.h" 3
     const_reference
     operator[] (size_type __pos) const
     {
;
return _M_data()[__pos];
     }
# 847 "/usr/include/g++/bits/basic_string.h" 3
     reference
     operator[](size_type __pos)
     {


;

;
return _M_data()[__pos];
     }
# 868 "/usr/include/g++/bits/basic_string.h" 3
     const_reference
     at(size_type __n) const
     {
if (__n >= this->size())
  __throw_out_of_range_fmt(("basic_string::at: __n " "(which is %zu) >= this->size() " "(which is %zu)")

                           ,
      __n, this->size());
return _M_data()[__n];
     }
# 889 "/usr/include/g++/bits/basic_string.h" 3
     reference
     at(size_type __n)
     {
if (__n >= size())
  __throw_out_of_range_fmt(("basic_string::at: __n " "(which is %zu) >= this->size() " "(which is %zu)")

                           ,
      __n, this->size());
return _M_data()[__n];
     }
# 940 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     operator+=(const basic_string& __str)
     { return this->append(__str); }






     basic_string&
     operator+=(const _CharT* __s)
     { return this->append(__s); }






     basic_string&
     operator+=(_CharT __c)
     {
this->push_back(__c);
return *this;
     }
# 981 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     append(const basic_string& __str)
     { return _M_append(__str._M_data(), __str.size()); }
# 998 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     append(const basic_string& __str, size_type __pos, size_type __n)
     { return _M_append(__str._M_data()
   + __str._M_check(__pos, "basic_string::append"),
   __str._M_limit(__pos, __n)); }







     basic_string&
     append(const _CharT* __s, size_type __n)
     {
;
_M_check_length(size_type(0), __n, "basic_string::append");
return _M_append(__s, __n);
     }






     basic_string&
     append(const _CharT* __s)
     {
;
const size_type __n = traits_type::length(__s);
_M_check_length(size_type(0), __n, "basic_string::append");
return _M_append(__s, __n);
     }
# 1040 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     append(size_type __n, _CharT __c)
     { return _M_replace_aux(this->size(), size_type(0), __n, __c); }
# 1067 "/usr/include/g++/bits/basic_string.h" 3
     template<class _InputIterator>

       basic_string&
       append(_InputIterator __first, _InputIterator __last)
       { return this->replace(end(), end(), __first, __last); }





     void
     push_back(_CharT __c)
     {
const size_type __size = this->size();
if (__size + 1 > this->capacity())
  this->_M_mutate(__size, size_type(0), 0, size_type(1));
traits_type::assign(this->_M_data()[__size], __c);
this->_M_set_length(__size + 1);
     }






     basic_string&
     assign(const basic_string& __str)
     {
this->_M_assign(__str);
return *this;
     }
# 1130 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     assign(const basic_string& __str, size_type __pos, size_type __n)
     { return _M_replace(size_type(0), this->size(), __str._M_data()
    + __str._M_check(__pos, "basic_string::assign"),
    __str._M_limit(__pos, __n)); }
# 1146 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     assign(const _CharT* __s, size_type __n)
     {
;
return _M_replace(size_type(0), this->size(), __s, __n);
     }
# 1162 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     assign(const _CharT* __s)
     {
;
return _M_replace(size_type(0), this->size(), __s,
    traits_type::length(__s));
     }
# 1179 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     assign(size_type __n, _CharT __c)
     { return _M_replace_aux(size_type(0), this->size(), __n, __c); }
# 1195 "/usr/include/g++/bits/basic_string.h" 3
     template<class _InputIterator>

       basic_string&
       assign(_InputIterator __first, _InputIterator __last)
       { return this->replace(begin(), end(), __first, __last); }
# 1250 "/usr/include/g++/bits/basic_string.h" 3
     void
     insert(iterator __p, size_type __n, _CharT __c)
     { this->replace(__p, __p, __n, __c); }
# 1293 "/usr/include/g++/bits/basic_string.h" 3
     template<class _InputIterator>
       void
       insert(iterator __p, _InputIterator __beg, _InputIterator __end)
       { this->replace(__p, __p, __beg, __end); }
# 1326 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     insert(size_type __pos1, const basic_string& __str)
     { return this->replace(__pos1, size_type(0),
       __str._M_data(), __str.size()); }
# 1349 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     insert(size_type __pos1, const basic_string& __str,
     size_type __pos2, size_type __n)
     { return this->replace(__pos1, size_type(0), __str._M_data()
       + __str._M_check(__pos2, "basic_string::insert"),
       __str._M_limit(__pos2, __n)); }
# 1372 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     insert(size_type __pos, const _CharT* __s, size_type __n)
     { return this->replace(__pos, size_type(0), __s, __n); }
# 1391 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     insert(size_type __pos, const _CharT* __s)
     {
;
return this->replace(__pos, size_type(0), __s,
       traits_type::length(__s));
     }
# 1415 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     insert(size_type __pos, size_type __n, _CharT __c)
     { return _M_replace_aux(_M_check(__pos, "basic_string::insert"),
        size_type(0), __n, __c); }
# 1433 "/usr/include/g++/bits/basic_string.h" 3
     iterator
     insert(__const_iterator __p, _CharT __c)
     {
;
const size_type __pos = __p - begin();
_M_replace_aux(__pos, size_type(0), size_type(1), __c);
return iterator(_M_data() + __pos);
     }
# 1457 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     erase(size_type __pos = 0, size_type __n = npos)
     {
this->_M_erase(_M_check(__pos, "basic_string::erase"),
        _M_limit(__pos, __n));
return *this;
     }
# 1473 "/usr/include/g++/bits/basic_string.h" 3
     iterator
     erase(__const_iterator __position)
     {

                          ;
const size_type __pos = __position - begin();
this->_M_erase(__pos, size_type(1));
return iterator(_M_data() + __pos);
     }
# 1492 "/usr/include/g++/bits/basic_string.h" 3
     iterator
     erase(__const_iterator __first, __const_iterator __last)
     {

                       ;
       const size_type __pos = __first - begin();
this->_M_erase(__pos, __last - __first);
return iterator(this->_M_data() + __pos);
     }
# 1530 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     replace(size_type __pos, size_type __n, const basic_string& __str)
     { return this->replace(__pos, __n, __str._M_data(), __str.size()); }
# 1552 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     replace(size_type __pos1, size_type __n1, const basic_string& __str,
      size_type __pos2, size_type __n2)
     { return this->replace(__pos1, __n1, __str._M_data()
       + __str._M_check(__pos2, "basic_string::replace"),
       __str._M_limit(__pos2, __n2)); }
# 1577 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     replace(size_type __pos, size_type __n1, const _CharT* __s,
      size_type __n2)
     {
;
return _M_replace(_M_check(__pos, "basic_string::replace"),
    _M_limit(__pos, __n1), __s, __n2);
     }
# 1602 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     replace(size_type __pos, size_type __n1, const _CharT* __s)
     {
;
return this->replace(__pos, __n1, __s, traits_type::length(__s));
     }
# 1626 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     replace(size_type __pos, size_type __n1, size_type __n2, _CharT __c)
     { return _M_replace_aux(_M_check(__pos, "basic_string::replace"),
        _M_limit(__pos, __n1), __n2, __c); }
# 1644 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     replace(__const_iterator __i1, __const_iterator __i2,
      const basic_string& __str)
     { return this->replace(__i1, __i2, __str._M_data(), __str.size()); }
# 1664 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     replace(__const_iterator __i1, __const_iterator __i2,
      const _CharT* __s, size_type __n)
     {

                     ;
return this->replace(__i1 - begin(), __i2 - __i1, __s, __n);
     }
# 1686 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     replace(__const_iterator __i1, __const_iterator __i2, const _CharT* __s)
     {
;
return this->replace(__i1, __i2, __s, traits_type::length(__s));
     }
# 1707 "/usr/include/g++/bits/basic_string.h" 3
     basic_string&
     replace(__const_iterator __i1, __const_iterator __i2, size_type __n,
      _CharT __c)
     {

                     ;
return _M_replace_aux(__i1 - begin(), __i2 - __i1, __n, __c);
     }
# 1745 "/usr/include/g++/bits/basic_string.h" 3
     template<class _InputIterator>



       basic_string&

       replace(iterator __i1, iterator __i2,
 _InputIterator __k1, _InputIterator __k2)
       {

                       ;
  ;
  typedef typename std::__is_integer<_InputIterator>::__type _Integral;
  return _M_replace_dispatch(__i1, __i2, __k1, __k2, _Integral());
}




     basic_string&
     replace(__const_iterator __i1, __const_iterator __i2,
      _CharT* __k1, _CharT* __k2)
     {

                     ;
;
return this->replace(__i1 - begin(), __i2 - __i1,
       __k1, __k2 - __k1);
     }

     basic_string&
     replace(__const_iterator __i1, __const_iterator __i2,
      const _CharT* __k1, const _CharT* __k2)
     {

                     ;
;
return this->replace(__i1 - begin(), __i2 - __i1,
       __k1, __k2 - __k1);
     }

     basic_string&
     replace(__const_iterator __i1, __const_iterator __i2,
      iterator __k1, iterator __k2)
     {

                     ;
;
return this->replace(__i1 - begin(), __i2 - __i1,
       __k1.base(), __k2 - __k1);
     }

     basic_string&
     replace(__const_iterator __i1, __const_iterator __i2,
      const_iterator __k1, const_iterator __k2)
     {

                     ;
;
return this->replace(__i1 - begin(), __i2 - __i1,
       __k1.base(), __k2 - __k1);
     }
# 1828 "/usr/include/g++/bits/basic_string.h" 3
   private:
     template<class _Integer>
basic_string&
_M_replace_dispatch(const_iterator __i1, const_iterator __i2,
      _Integer __n, _Integer __val, __true_type)
       { return _M_replace_aux(__i1 - begin(), __i2 - __i1, __n, __val); }

     template<class _InputIterator>
basic_string&
_M_replace_dispatch(const_iterator __i1, const_iterator __i2,
      _InputIterator __k1, _InputIterator __k2,
      __false_type);

     basic_string&
     _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
      _CharT __c);

     basic_string&
     _M_replace(size_type __pos, size_type __len1, const _CharT* __s,
  const size_type __len2);

     basic_string&
     _M_append(const _CharT* __s, size_type __n);

   public:
# 1866 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     copy(_CharT* __s, size_type __n, size_type __pos = 0) const;
# 1876 "/usr/include/g++/bits/basic_string.h" 3
     void
     swap(basic_string& __s) ;
# 1886 "/usr/include/g++/bits/basic_string.h" 3
     const _CharT*
     c_str() const
     { return _M_data(); }







     const _CharT*
     data() const
     { return _M_data(); }




     allocator_type
     get_allocator() const
     { return _M_get_allocator(); }
# 1919 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find(const _CharT* __s, size_type __pos, size_type __n) const;
# 1932 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find(const basic_string& __str, size_type __pos = 0) const

     { return this->find(__str.data(), __pos, __str.size()); }
# 1947 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find(const _CharT* __s, size_type __pos = 0) const
     {
;
return this->find(__s, __pos, traits_type::length(__s));
     }
# 1964 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find(_CharT __c, size_type __pos = 0) const ;
# 1977 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     rfind(const basic_string& __str, size_type __pos = npos) const

     { return this->rfind(__str.data(), __pos, __str.size()); }
# 1994 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     rfind(const _CharT* __s, size_type __pos, size_type __n) const;
# 2007 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     rfind(const _CharT* __s, size_type __pos = npos) const
     {
;
return this->rfind(__s, __pos, traits_type::length(__s));
     }
# 2024 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     rfind(_CharT __c, size_type __pos = npos) const ;
# 2038 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_first_of(const basic_string& __str, size_type __pos = 0) const

     { return this->find_first_of(__str.data(), __pos, __str.size()); }
# 2055 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_first_of(const _CharT* __s, size_type __pos, size_type __n) const;
# 2068 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_first_of(const _CharT* __s, size_type __pos = 0) const
     {
;
return this->find_first_of(__s, __pos, traits_type::length(__s));
     }
# 2087 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_first_of(_CharT __c, size_type __pos = 0) const
     { return this->find(__c, __pos); }
# 2102 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_last_of(const basic_string& __str, size_type __pos = npos) const

     { return this->find_last_of(__str.data(), __pos, __str.size()); }
# 2119 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_last_of(const _CharT* __s, size_type __pos, size_type __n) const;
# 2132 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_last_of(const _CharT* __s, size_type __pos = npos) const
     {
;
return this->find_last_of(__s, __pos, traits_type::length(__s));
     }
# 2151 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_last_of(_CharT __c, size_type __pos = npos) const
     { return this->rfind(__c, __pos); }
# 2165 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_first_not_of(const basic_string& __str, size_type __pos = 0) const

     { return this->find_first_not_of(__str.data(), __pos, __str.size()); }
# 2182 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_first_not_of(const _CharT* __s, size_type __pos,
  size_type __n) const;
# 2196 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_first_not_of(const _CharT* __s, size_type __pos = 0) const
     {
;
return this->find_first_not_of(__s, __pos, traits_type::length(__s));
     }
# 2213 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_first_not_of(_CharT __c, size_type __pos = 0) const
;
# 2228 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_last_not_of(const basic_string& __str, size_type __pos = npos) const

     { return this->find_last_not_of(__str.data(), __pos, __str.size()); }
# 2245 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_last_not_of(const _CharT* __s, size_type __pos,
        size_type __n) const;
# 2259 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_last_not_of(const _CharT* __s, size_type __pos = npos) const
     {
;
return this->find_last_not_of(__s, __pos, traits_type::length(__s));
     }
# 2276 "/usr/include/g++/bits/basic_string.h" 3
     size_type
     find_last_not_of(_CharT __c, size_type __pos = npos) const
;
# 2292 "/usr/include/g++/bits/basic_string.h" 3
     basic_string
     substr(size_type __pos = 0, size_type __n = npos) const
     { return basic_string(*this,
      _M_check(__pos, "basic_string::substr"), __n); }
# 2311 "/usr/include/g++/bits/basic_string.h" 3
     int
     compare(const basic_string& __str) const
     {
const size_type __size = this->size();
const size_type __osize = __str.size();
const size_type __len = std::min(__size, __osize);

int __r = traits_type::compare(_M_data(), __str.data(), __len);
if (!__r)
  __r = _S_compare(__size, __osize);
return __r;
     }
# 2343 "/usr/include/g++/bits/basic_string.h" 3
     int
     compare(size_type __pos, size_type __n, const basic_string& __str) const;
# 2369 "/usr/include/g++/bits/basic_string.h" 3
     int
     compare(size_type __pos1, size_type __n1, const basic_string& __str,
      size_type __pos2, size_type __n2) const;
# 2387 "/usr/include/g++/bits/basic_string.h" 3
     int
     compare(const _CharT* __s) const;
# 2411 "/usr/include/g++/bits/basic_string.h" 3
     int
     compare(size_type __pos, size_type __n1, const _CharT* __s) const;
# 2438 "/usr/include/g++/bits/basic_string.h" 3
     int
     compare(size_type __pos, size_type __n1, const _CharT* __s,
      size_type __n2) const;
 };
}
# 4781 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_string<_CharT, _Traits, _Alloc>
   operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   {
     basic_string<_CharT, _Traits, _Alloc> __str(__lhs);
     __str.append(__rhs);
     return __str;
   }







 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_string<_CharT,_Traits,_Alloc>
   operator+(const _CharT* __lhs,
      const basic_string<_CharT,_Traits,_Alloc>& __rhs);







 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_string<_CharT,_Traits,_Alloc>
   operator+(_CharT __lhs, const basic_string<_CharT,_Traits,_Alloc>& __rhs);







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline basic_string<_CharT, _Traits, _Alloc>
   operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      const _CharT* __rhs)
   {
     basic_string<_CharT, _Traits, _Alloc> __str(__lhs);
     __str.append(__rhs);
     return __str;
   }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline basic_string<_CharT, _Traits, _Alloc>
   operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs, _CharT __rhs)
   {
     typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
     typedef typename __string_type::size_type __size_type;
     __string_type __str(__lhs);
     __str.append(__size_type(1), __rhs);
     return __str;
   }
# 4902 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
       const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __lhs.compare(__rhs) == 0; }

 template<typename _CharT>
   inline
   typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value, bool>::__type
   operator==(const basic_string<_CharT>& __lhs,
       const basic_string<_CharT>& __rhs)
   { return (__lhs.size() == __rhs.size()
      && !std::char_traits<_CharT>::compare(__lhs.data(), __rhs.data(),
         __lhs.size())); }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator==(const _CharT* __lhs,
       const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __rhs.compare(__lhs) == 0; }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
       const _CharT* __rhs)
   { return __lhs.compare(__rhs) == 0; }
# 4948 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
       const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return !(__lhs == __rhs); }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator!=(const _CharT* __lhs,
       const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return !(__lhs == __rhs); }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
       const _CharT* __rhs)
   { return !(__lhs == __rhs); }
# 4985 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator<(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __lhs.compare(__rhs) < 0; }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator<(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      const _CharT* __rhs)
   { return __lhs.compare(__rhs) < 0; }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator<(const _CharT* __lhs,
      const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __rhs.compare(__lhs) > 0; }
# 5022 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator>(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __lhs.compare(__rhs) > 0; }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator>(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
      const _CharT* __rhs)
   { return __lhs.compare(__rhs) > 0; }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator>(const _CharT* __lhs,
      const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __rhs.compare(__lhs) < 0; }
# 5059 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator<=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
       const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __lhs.compare(__rhs) <= 0; }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator<=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
       const _CharT* __rhs)
   { return __lhs.compare(__rhs) <= 0; }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator<=(const _CharT* __lhs,
       const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __rhs.compare(__lhs) >= 0; }
# 5096 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
       const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __lhs.compare(__rhs) >= 0; }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
       const _CharT* __rhs)
   { return __lhs.compare(__rhs) >= 0; }







 template<typename _CharT, typename _Traits, typename _Alloc>
   inline bool
   operator>=(const _CharT* __lhs,
     const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { return __rhs.compare(__lhs) <= 0; }
# 5133 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   inline void
   swap(basic_string<_CharT, _Traits, _Alloc>& __lhs,
 basic_string<_CharT, _Traits, _Alloc>& __rhs)
   { __lhs.swap(__rhs); }
# 5152 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __is,
       basic_string<_CharT, _Traits, _Alloc>& __str);

 template<>
   basic_istream<char>&
   operator>>(basic_istream<char>& __is, basic_string<char>& __str);
# 5170 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __os,
       const basic_string<_CharT, _Traits, _Alloc>& __str)
   {


     return __ostream_insert(__os, __str.data(), __str.size());
   }
# 5193 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_istream<_CharT, _Traits>&
   getline(basic_istream<_CharT, _Traits>& __is,
    basic_string<_CharT, _Traits, _Alloc>& __str, _CharT __delim);
# 5210 "/usr/include/g++/bits/basic_string.h" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   inline basic_istream<_CharT, _Traits>&
   getline(basic_istream<_CharT, _Traits>& __is,
    basic_string<_CharT, _Traits, _Alloc>& __str)
   { return std::getline(__is, __str, __is.widen('\n')); }
# 5232 "/usr/include/g++/bits/basic_string.h" 3
 template<>
   basic_istream<char>&
   getline(basic_istream<char>& __in, basic_string<char>& __str,
    char __delim);


 template<>
   basic_istream<wchar_t>&
   getline(basic_istream<wchar_t>& __in, basic_string<wchar_t>& __str,
    wchar_t __delim);



}
# 53 "/usr/include/g++/string" 2 3
# 1 "/usr/include/g++/bits/basic_string.tcc" 1 3
# 42 "/usr/include/g++/bits/basic_string.tcc" 3

# 43 "/usr/include/g++/bits/basic_string.tcc" 3



namespace std __attribute__ ((__visibility__ ("default")))
{




 template<typename _CharT, typename _Traits, typename _Alloc>
   const typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::npos;

 template<typename _CharT, typename _Traits, typename _Alloc>
   void
   basic_string<_CharT, _Traits, _Alloc>::
   swap(basic_string& __s)
   {
     if (this == &__s)
return;




     std::__alloc_swap<allocator_type>::_S_do_it(_M_get_allocator(),
       __s._M_get_allocator());

     if (_M_is_local())
if (__s._M_is_local())
  {
    if (length() && __s.length())
      {
 _CharT __tmp_data[_S_local_capacity + 1];
 traits_type::copy(__tmp_data, __s._M_local_buf,
     _S_local_capacity + 1);
 traits_type::copy(__s._M_local_buf, _M_local_buf,
     _S_local_capacity + 1);
 traits_type::copy(_M_local_buf, __tmp_data,
     _S_local_capacity + 1);
      }
    else if (__s.length())
      {
 traits_type::copy(_M_local_buf, __s._M_local_buf,
     _S_local_capacity + 1);
 _M_length(__s.length());
 __s._M_set_length(0);
 return;
      }
    else if (length())
      {
 traits_type::copy(__s._M_local_buf, _M_local_buf,
     _S_local_capacity + 1);
 __s._M_length(length());
 _M_set_length(0);
 return;
      }
  }
else
  {
    const size_type __tmp_capacity = __s._M_allocated_capacity;
    traits_type::copy(__s._M_local_buf, _M_local_buf,
        _S_local_capacity + 1);
    _M_data(__s._M_data());
    __s._M_data(__s._M_local_buf);
    _M_capacity(__tmp_capacity);
  }
     else
{
  const size_type __tmp_capacity = _M_allocated_capacity;
  if (__s._M_is_local())
    {
      traits_type::copy(_M_local_buf, __s._M_local_buf,
   _S_local_capacity + 1);
      __s._M_data(_M_data());
      _M_data(_M_local_buf);
    }
  else
    {
      pointer __tmp_ptr = _M_data();
      _M_data(__s._M_data());
      __s._M_data(__tmp_ptr);
      _M_capacity(__s._M_allocated_capacity);
    }
  __s._M_capacity(__tmp_capacity);
}

     const size_type __tmp_length = length();
     _M_length(__s.length());
     __s._M_length(__tmp_length);
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::pointer
   basic_string<_CharT, _Traits, _Alloc>::
   _M_create(size_type& __capacity, size_type __old_capacity)
   {


     if (__capacity > max_size())
std::__throw_length_error(("basic_string::_M_create"));




     if (__capacity > __old_capacity && __capacity < 2 * __old_capacity)
{
  __capacity = 2 * __old_capacity;

  if (__capacity > max_size())
    __capacity = max_size();
}



     return _Alloc_traits::allocate(_M_get_allocator(), __capacity + 1);
   }





 template<typename _CharT, typename _Traits, typename _Alloc>
   template<typename _InIterator>
     void
     basic_string<_CharT, _Traits, _Alloc>::
     _M_construct(_InIterator __beg, _InIterator __end,
    std::input_iterator_tag)
     {
size_type __len = 0;
size_type __capacity = size_type(_S_local_capacity);

while (__beg != __end && __len < __capacity)
  {
    _M_data()[__len++] = *__beg;
    ++__beg;
  }

try
  {
    while (__beg != __end)
      {
 if (__len == __capacity)
   {

     __capacity = __len + 1;
     pointer __another = _M_create(__capacity, __len);
     this->_S_copy(__another, _M_data(), __len);
     _M_dispose();
     _M_data(__another);
     _M_capacity(__capacity);
   }
 _M_data()[__len++] = *__beg;
 ++__beg;
      }
  }
catch(...)
  {
    _M_dispose();
    throw;
  }

_M_set_length(__len);
     }

 template<typename _CharT, typename _Traits, typename _Alloc>
   template<typename _InIterator>
     void
     basic_string<_CharT, _Traits, _Alloc>::
     _M_construct(_InIterator __beg, _InIterator __end,
    std::forward_iterator_tag)
     {

if (__gnu_cxx::__is_null_pointer(__beg) && __beg != __end)
  std::__throw_logic_error(("basic_string::" "_M_construct null not valid")
                                        );

size_type __dnew = static_cast<size_type>(std::distance(__beg, __end));

if (__dnew > size_type(_S_local_capacity))
  {
    _M_data(_M_create(__dnew, size_type(0)));
    _M_capacity(__dnew);
  }


try
  { this->_S_copy_chars(_M_data(), __beg, __end); }
catch(...)
  {
    _M_dispose();
    throw;
  }

_M_set_length(__dnew);
     }

 template<typename _CharT, typename _Traits, typename _Alloc>
   void
   basic_string<_CharT, _Traits, _Alloc>::
   _M_construct(size_type __n, _CharT __c)
   {
     if (__n > size_type(_S_local_capacity))
{
  _M_data(_M_create(__n, size_type(0)));
  _M_capacity(__n);
}

     if (__n)
this->_S_assign(_M_data(), __n, __c);

     _M_set_length(__n);
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   void
   basic_string<_CharT, _Traits, _Alloc>::
   _M_assign(const basic_string& __str)
   {
     if (this != &__str)
{
  const size_type __rsize = __str.length();
  const size_type __capacity = capacity();

  if (__rsize > __capacity)
    {
      size_type __new_capacity = __rsize;
      pointer __tmp = _M_create(__new_capacity, __capacity);
      _M_dispose();
      _M_data(__tmp);
      _M_capacity(__new_capacity);
    }

  if (__rsize)
    this->_S_copy(_M_data(), __str._M_data(), __rsize);

  _M_set_length(__rsize);
}
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   void
   basic_string<_CharT, _Traits, _Alloc>::
   reserve(size_type __res)
   {

     if (__res < length())
__res = length();

     const size_type __capacity = capacity();
     if (__res != __capacity)
{
  if (__res > __capacity
      || __res > size_type(_S_local_capacity))
    {
      pointer __tmp = _M_create(__res, __capacity);
      this->_S_copy(__tmp, _M_data(), length() + 1);
      _M_dispose();
      _M_data(__tmp);
      _M_capacity(__res);
    }
  else if (!_M_is_local())
    {
      this->_S_copy(_M_local_data(), _M_data(), length() + 1);
      _M_destroy(__capacity);
      _M_data(_M_local_data());
    }
}
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   void
   basic_string<_CharT, _Traits, _Alloc>::
   _M_mutate(size_type __pos, size_type __len1, const _CharT* __s,
      size_type __len2)
   {
     const size_type __how_much = length() - __pos - __len1;

     size_type __new_capacity = length() + __len2 - __len1;
     pointer __r = _M_create(__new_capacity, capacity());

     if (__pos)
this->_S_copy(__r, _M_data(), __pos);
     if (__s && __len2)
this->_S_copy(__r + __pos, __s, __len2);
     if (__how_much)
this->_S_copy(__r + __pos + __len2,
       _M_data() + __pos + __len1, __how_much);

     _M_dispose();
     _M_data(__r);
     _M_capacity(__new_capacity);
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   void
   basic_string<_CharT, _Traits, _Alloc>::
   _M_erase(size_type __pos, size_type __n)
   {
     const size_type __how_much = length() - __pos - __n;

     if (__how_much && __n)
this->_S_move(_M_data() + __pos, _M_data() + __pos + __n, __how_much);

     _M_set_length(length() - __n);
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   void
   basic_string<_CharT, _Traits, _Alloc>::
   resize(size_type __n, _CharT __c)
   {
     const size_type __size = this->size();
     if (__size < __n)
this->append(__n - __size, __c);
     else if (__n < __size)
this->_M_erase(__n, __size - __n);
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_string<_CharT, _Traits, _Alloc>&
   basic_string<_CharT, _Traits, _Alloc>::
   _M_append(const _CharT* __s, size_type __n)
   {
     const size_type __len = __n + this->size();

     if (__len <= this->capacity())
{
  if (__n)
    this->_S_copy(this->_M_data() + this->size(), __s, __n);
}
     else
this->_M_mutate(this->size(), size_type(0), __s, __n);

     this->_M_set_length(__len);
     return *this;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   template<typename _InputIterator>
     basic_string<_CharT, _Traits, _Alloc>&
     basic_string<_CharT, _Traits, _Alloc>::
     _M_replace_dispatch(const_iterator __i1, const_iterator __i2,
    _InputIterator __k1, _InputIterator __k2,
    std::__false_type)
     {
const basic_string __s(__k1, __k2);
const size_type __n1 = __i2 - __i1;
return _M_replace(__i1 - begin(), __n1, __s._M_data(),
    __s.size());
     }

 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_string<_CharT, _Traits, _Alloc>&
   basic_string<_CharT, _Traits, _Alloc>::
   _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
    _CharT __c)
   {
     _M_check_length(__n1, __n2, "basic_string::_M_replace_aux");

     const size_type __old_size = this->size();
     const size_type __new_size = __old_size + __n2 - __n1;

     if (__new_size <= this->capacity())
{
  _CharT* __p = this->_M_data() + __pos1;

  const size_type __how_much = __old_size - __pos1 - __n1;
  if (__how_much && __n1 != __n2)
    this->_S_move(__p + __n2, __p + __n1, __how_much);
}
     else
this->_M_mutate(__pos1, __n1, 0, __n2);

     if (__n2)
this->_S_assign(this->_M_data() + __pos1, __n2, __c);

     this->_M_set_length(__new_size);
     return *this;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_string<_CharT, _Traits, _Alloc>&
   basic_string<_CharT, _Traits, _Alloc>::
   _M_replace(size_type __pos, size_type __len1, const _CharT* __s,
       const size_type __len2)
   {
     _M_check_length(__len1, __len2, "basic_string::_M_replace");

     const size_type __old_size = this->size();
     const size_type __new_size = __old_size + __len2 - __len1;

     if (__new_size <= this->capacity())
{
  _CharT* __p = this->_M_data() + __pos;

  const size_type __how_much = __old_size - __pos - __len1;
  if (_M_disjunct(__s))
    {
      if (__how_much && __len1 != __len2)
 this->_S_move(__p + __len2, __p + __len1, __how_much);
      if (__len2)
 this->_S_copy(__p, __s, __len2);
    }
  else
    {

      if (__len2 && __len2 <= __len1)
 this->_S_move(__p, __s, __len2);
      if (__how_much && __len1 != __len2)
 this->_S_move(__p + __len2, __p + __len1, __how_much);
      if (__len2 > __len1)
 {
   if (__s + __len2 <= __p + __len1)
     this->_S_move(__p, __s, __len2);
   else if (__s >= __p + __len1)
     this->_S_copy(__p, __s + __len2 - __len1, __len2);
   else
     {
       const size_type __nleft = (__p + __len1) - __s;
       this->_S_move(__p, __s, __nleft);
       this->_S_copy(__p + __nleft, __p + __len2,
       __len2 - __nleft);
     }
 }
    }
}
     else
this->_M_mutate(__pos, __len1, __s, __len2);

     this->_M_set_length(__new_size);
     return *this;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   copy(_CharT* __s, size_type __n, size_type __pos) const
   {
     _M_check(__pos, "basic_string::copy");
     __n = _M_limit(__pos, __n);
     ;
     if (__n)
_S_copy(__s, _M_data() + __pos, __n);

     return __n;
   }
# 1149 "/usr/include/g++/bits/basic_string.tcc" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_string<_CharT, _Traits, _Alloc>
   operator+(const _CharT* __lhs,
      const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   {
     ;
     typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
     typedef typename __string_type::size_type __size_type;
     const __size_type __len = _Traits::length(__lhs);
     __string_type __str;
     __str.reserve(__len + __rhs.size());
     __str.append(__lhs, __len);
     __str.append(__rhs);
     return __str;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_string<_CharT, _Traits, _Alloc>
   operator+(_CharT __lhs, const basic_string<_CharT, _Traits, _Alloc>& __rhs)
   {
     typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
     typedef typename __string_type::size_type __size_type;
     __string_type __str;
     const __size_type __len = __rhs.size();
     __str.reserve(__len + 1);
     __str.append(__size_type(1), __lhs);
     __str.append(__rhs);
     return __str;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   find(const _CharT* __s, size_type __pos, size_type __n) const
   {
     ;
     const size_type __size = this->size();
     const _CharT* __data = _M_data();

     if (__n == 0)
return __pos <= __size ? __pos : npos;

     if (__n <= __size)
{
  for (; __pos <= __size - __n; ++__pos)
    if (traits_type::eq(__data[__pos], __s[0])
 && traits_type::compare(__data + __pos + 1,
    __s + 1, __n - 1) == 0)
      return __pos;
}
     return npos;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   find(_CharT __c, size_type __pos) const
   {
     size_type __ret = npos;
     const size_type __size = this->size();
     if (__pos < __size)
{
  const _CharT* __data = _M_data();
  const size_type __n = __size - __pos;
  const _CharT* __p = traits_type::find(__data + __pos, __n, __c);
  if (__p)
    __ret = __p - __data;
}
     return __ret;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   rfind(const _CharT* __s, size_type __pos, size_type __n) const
   {
     ;
     const size_type __size = this->size();
     if (__n <= __size)
{
  __pos = std::min(size_type(__size - __n), __pos);
  const _CharT* __data = _M_data();
  do
    {
      if (traits_type::compare(__data + __pos, __s, __n) == 0)
 return __pos;
    }
  while (__pos-- > 0);
}
     return npos;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   rfind(_CharT __c, size_type __pos) const
   {
     size_type __size = this->size();
     if (__size)
{
  if (--__size > __pos)
    __size = __pos;
  for (++__size; __size-- > 0; )
    if (traits_type::eq(_M_data()[__size], __c))
      return __size;
}
     return npos;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   find_first_of(const _CharT* __s, size_type __pos, size_type __n) const
   {
     ;
     for (; __n && __pos < this->size(); ++__pos)
{
  const _CharT* __p = traits_type::find(__s, __n, _M_data()[__pos]);
  if (__p)
    return __pos;
}
     return npos;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   find_last_of(const _CharT* __s, size_type __pos, size_type __n) const
   {
     ;
     size_type __size = this->size();
     if (__size && __n)
{
  if (--__size > __pos)
    __size = __pos;
  do
    {
      if (traits_type::find(__s, __n, _M_data()[__size]))
 return __size;
    }
  while (__size-- != 0);
}
     return npos;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   find_first_not_of(const _CharT* __s, size_type __pos, size_type __n) const
   {
     ;
     for (; __pos < this->size(); ++__pos)
if (!traits_type::find(__s, __n, _M_data()[__pos]))
  return __pos;
     return npos;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   find_first_not_of(_CharT __c, size_type __pos) const
   {
     for (; __pos < this->size(); ++__pos)
if (!traits_type::eq(_M_data()[__pos], __c))
  return __pos;
     return npos;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   find_last_not_of(const _CharT* __s, size_type __pos, size_type __n) const
   {
     ;
     size_type __size = this->size();
     if (__size)
{
  if (--__size > __pos)
    __size = __pos;
  do
    {
      if (!traits_type::find(__s, __n, _M_data()[__size]))
 return __size;
    }
  while (__size--);
}
     return npos;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   typename basic_string<_CharT, _Traits, _Alloc>::size_type
   basic_string<_CharT, _Traits, _Alloc>::
   find_last_not_of(_CharT __c, size_type __pos) const
   {
     size_type __size = this->size();
     if (__size)
{
  if (--__size > __pos)
    __size = __pos;
  do
    {
      if (!traits_type::eq(_M_data()[__size], __c))
 return __size;
    }
  while (__size--);
}
     return npos;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   int
   basic_string<_CharT, _Traits, _Alloc>::
   compare(size_type __pos, size_type __n, const basic_string& __str) const
   {
     _M_check(__pos, "basic_string::compare");
     __n = _M_limit(__pos, __n);
     const size_type __osize = __str.size();
     const size_type __len = std::min(__n, __osize);
     int __r = traits_type::compare(_M_data() + __pos, __str.data(), __len);
     if (!__r)
__r = _S_compare(__n, __osize);
     return __r;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   int
   basic_string<_CharT, _Traits, _Alloc>::
   compare(size_type __pos1, size_type __n1, const basic_string& __str,
    size_type __pos2, size_type __n2) const
   {
     _M_check(__pos1, "basic_string::compare");
     __str._M_check(__pos2, "basic_string::compare");
     __n1 = _M_limit(__pos1, __n1);
     __n2 = __str._M_limit(__pos2, __n2);
     const size_type __len = std::min(__n1, __n2);
     int __r = traits_type::compare(_M_data() + __pos1,
        __str.data() + __pos2, __len);
     if (!__r)
__r = _S_compare(__n1, __n2);
     return __r;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   int
   basic_string<_CharT, _Traits, _Alloc>::
   compare(const _CharT* __s) const
   {
     ;
     const size_type __size = this->size();
     const size_type __osize = traits_type::length(__s);
     const size_type __len = std::min(__size, __osize);
     int __r = traits_type::compare(_M_data(), __s, __len);
     if (!__r)
__r = _S_compare(__size, __osize);
     return __r;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   int
   basic_string <_CharT, _Traits, _Alloc>::
   compare(size_type __pos, size_type __n1, const _CharT* __s) const
   {
     ;
     _M_check(__pos, "basic_string::compare");
     __n1 = _M_limit(__pos, __n1);
     const size_type __osize = traits_type::length(__s);
     const size_type __len = std::min(__n1, __osize);
     int __r = traits_type::compare(_M_data() + __pos, __s, __len);
     if (!__r)
__r = _S_compare(__n1, __osize);
     return __r;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   int
   basic_string <_CharT, _Traits, _Alloc>::
   compare(size_type __pos, size_type __n1, const _CharT* __s,
    size_type __n2) const
   {
     ;
     _M_check(__pos, "basic_string::compare");
     __n1 = _M_limit(__pos, __n1);
     const size_type __len = std::min(__n1, __n2);
     int __r = traits_type::compare(_M_data() + __pos, __s, __len);
     if (!__r)
__r = _S_compare(__n1, __n2);
     return __r;
   }


 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __in,
       basic_string<_CharT, _Traits, _Alloc>& __str)
   {
     typedef basic_istream<_CharT, _Traits> __istream_type;
     typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
     typedef typename __istream_type::ios_base __ios_base;
     typedef typename __istream_type::int_type __int_type;
     typedef typename __string_type::size_type __size_type;
     typedef ctype<_CharT> __ctype_type;
     typedef typename __ctype_type::ctype_base __ctype_base;

     __size_type __extracted = 0;
     typename __ios_base::iostate __err = __ios_base::goodbit;
     typename __istream_type::sentry __cerb(__in, false);
     if (__cerb)
{
  try
    {

      __str.erase();
      _CharT __buf[128];
      __size_type __len = 0;
      const streamsize __w = __in.width();
      const __size_type __n = __w > 0 ? static_cast<__size_type>(__w)
                               : __str.max_size();
      const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
      const __int_type __eof = _Traits::eof();
      __int_type __c = __in.rdbuf()->sgetc();

      while (__extracted < __n
      && !_Traits::eq_int_type(__c, __eof)
      && !__ct.is(__ctype_base::space,
    _Traits::to_char_type(__c)))
 {
   if (__len == sizeof(__buf) / sizeof(_CharT))
     {
       __str.append(__buf, sizeof(__buf) / sizeof(_CharT));
       __len = 0;
     }
   __buf[__len++] = _Traits::to_char_type(__c);
   ++__extracted;
   __c = __in.rdbuf()->snextc();
 }
      __str.append(__buf, __len);

      if (_Traits::eq_int_type(__c, __eof))
 __err |= __ios_base::eofbit;
      __in.width(0);
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      __in._M_setstate(__ios_base::badbit);
      throw;
    }
  catch(...)
    {



      __in._M_setstate(__ios_base::badbit);
    }
}

     if (!__extracted)
__err |= __ios_base::failbit;
     if (__err)
__in.setstate(__err);
     return __in;
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   basic_istream<_CharT, _Traits>&
   getline(basic_istream<_CharT, _Traits>& __in,
    basic_string<_CharT, _Traits, _Alloc>& __str, _CharT __delim)
   {
     typedef basic_istream<_CharT, _Traits> __istream_type;
     typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
     typedef typename __istream_type::ios_base __ios_base;
     typedef typename __istream_type::int_type __int_type;
     typedef typename __string_type::size_type __size_type;

     __size_type __extracted = 0;
     const __size_type __n = __str.max_size();
     typename __ios_base::iostate __err = __ios_base::goodbit;
     typename __istream_type::sentry __cerb(__in, true);
     if (__cerb)
{
  try
    {
      __str.erase();
      const __int_type __idelim = _Traits::to_int_type(__delim);
      const __int_type __eof = _Traits::eof();
      __int_type __c = __in.rdbuf()->sgetc();

      while (__extracted < __n
      && !_Traits::eq_int_type(__c, __eof)
      && !_Traits::eq_int_type(__c, __idelim))
 {
   __str += _Traits::to_char_type(__c);
   ++__extracted;
   __c = __in.rdbuf()->snextc();
 }

      if (_Traits::eq_int_type(__c, __eof))
 __err |= __ios_base::eofbit;
      else if (_Traits::eq_int_type(__c, __idelim))
 {
   ++__extracted;
   __in.rdbuf()->sbumpc();
 }
      else
 __err |= __ios_base::failbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      __in._M_setstate(__ios_base::badbit);
      throw;
    }
  catch(...)
    {



      __in._M_setstate(__ios_base::badbit);
    }
}
     if (!__extracted)
__err |= __ios_base::failbit;
     if (__err)
__in.setstate(__err);
     return __in;
   }




 extern template class basic_string<char>;
 extern template
   basic_istream<char>&
   operator>>(basic_istream<char>&, string&);
 extern template
   basic_ostream<char>&
   operator<<(basic_ostream<char>&, const string&);
 extern template
   basic_istream<char>&
   getline(basic_istream<char>&, string&, char);
 extern template
   basic_istream<char>&
   getline(basic_istream<char>&, string&);


 extern template class basic_string<wchar_t>;
 extern template
   basic_istream<wchar_t>&
   operator>>(basic_istream<wchar_t>&, wstring&);
 extern template
   basic_ostream<wchar_t>&
   operator<<(basic_ostream<wchar_t>&, const wstring&);
 extern template
   basic_istream<wchar_t>&
   getline(basic_istream<wchar_t>&, wstring&, wchar_t);
 extern template
   basic_istream<wchar_t>&
   getline(basic_istream<wchar_t>&, wstring&);




}
# 54 "/usr/include/g++/string" 2 3
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/version.hpp" 2
# 1 "/usr/include/g++/vector" 1 3
# 58 "/usr/include/g++/vector" 3

# 59 "/usr/include/g++/vector" 3



# 1 "/usr/include/g++/bits/stl_construct.h" 1 3
# 63 "/usr/include/g++/bits/stl_construct.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{

# 77 "/usr/include/g++/bits/stl_construct.h" 3
 template<typename _T1, typename _T2>
   inline void
   _Construct(_T1* __p, const _T2& __value)
   {


     ::new(static_cast<void*>(__p)) _T1(__value);
   }





 template<typename _Tp>
   inline void
   _Destroy(_Tp* __pointer)
   { __pointer->~_Tp(); }

 template<bool>
   struct _Destroy_aux
   {
     template<typename _ForwardIterator>
       static void
       __destroy(_ForwardIterator __first, _ForwardIterator __last)
{
  for (; __first != __last; ++__first)
    std::_Destroy(std::__addressof(*__first));
}
   };

 template<>
   struct _Destroy_aux<true>
   {
     template<typename _ForwardIterator>
       static void
       __destroy(_ForwardIterator, _ForwardIterator) { }
   };






 template<typename _ForwardIterator>
   inline void
   _Destroy(_ForwardIterator __first, _ForwardIterator __last)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
                      _Value_type;
     std::_Destroy_aux<__has_trivial_destructor(_Value_type)>::
__destroy(__first, __last);
   }







 template<typename _ForwardIterator, typename _Allocator>
   void
   _Destroy(_ForwardIterator __first, _ForwardIterator __last,
     _Allocator& __alloc)
   {
     typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
     for (; __first != __last; ++__first)
__traits::destroy(__alloc, std::__addressof(*__first));
   }

 template<typename _ForwardIterator, typename _Tp>
   inline void
   _Destroy(_ForwardIterator __first, _ForwardIterator __last,
     allocator<_Tp>&)
   {
     _Destroy(__first, __last);
   }


}
# 63 "/usr/include/g++/vector" 2 3
# 1 "/usr/include/g++/bits/stl_uninitialized.h" 1 3
# 59 "/usr/include/g++/bits/stl_uninitialized.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{


 template<bool _TrivialValueTypes>
   struct __uninitialized_copy
   {
     template<typename _InputIterator, typename _ForwardIterator>
       static _ForwardIterator
       __uninit_copy(_InputIterator __first, _InputIterator __last,
       _ForwardIterator __result)
       {
  _ForwardIterator __cur = __result;
  try
    {
      for (; __first != __last; ++__first, ++__cur)
 std::_Construct(std::__addressof(*__cur), *__first);
      return __cur;
    }
  catch(...)
    {
      std::_Destroy(__result, __cur);
      throw;
    }
}
   };

 template<>
   struct __uninitialized_copy<true>
   {
     template<typename _InputIterator, typename _ForwardIterator>
       static _ForwardIterator
       __uninit_copy(_InputIterator __first, _InputIterator __last,
       _ForwardIterator __result)
       { return std::copy(__first, __last, __result); }
   };
# 105 "/usr/include/g++/bits/stl_uninitialized.h" 3
 template<typename _InputIterator, typename _ForwardIterator>
   inline _ForwardIterator
   uninitialized_copy(_InputIterator __first, _InputIterator __last,
        _ForwardIterator __result)
   {
     typedef typename iterator_traits<_InputIterator>::value_type
_ValueType1;
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType2;

     const bool __assignable = true;







     return std::__uninitialized_copy<__is_trivial(_ValueType1)
          && __is_trivial(_ValueType2)
          && __assignable>::
__uninit_copy(__first, __last, __result);
   }


 template<bool _TrivialValueType>
   struct __uninitialized_fill
   {
     template<typename _ForwardIterator, typename _Tp>
       static void
       __uninit_fill(_ForwardIterator __first, _ForwardIterator __last,
       const _Tp& __x)
       {
  _ForwardIterator __cur = __first;
  try
    {
      for (; __cur != __last; ++__cur)
 std::_Construct(std::__addressof(*__cur), __x);
    }
  catch(...)
    {
      std::_Destroy(__first, __cur);
      throw;
    }
}
   };

 template<>
   struct __uninitialized_fill<true>
   {
     template<typename _ForwardIterator, typename _Tp>
       static void
       __uninit_fill(_ForwardIterator __first, _ForwardIterator __last,
       const _Tp& __x)
       { std::fill(__first, __last, __x); }
   };
# 171 "/usr/include/g++/bits/stl_uninitialized.h" 3
 template<typename _ForwardIterator, typename _Tp>
   inline void
   uninitialized_fill(_ForwardIterator __first, _ForwardIterator __last,
        const _Tp& __x)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;

     const bool __assignable = true;





     std::__uninitialized_fill<__is_trivial(_ValueType) && __assignable>::
__uninit_fill(__first, __last, __x);
   }


 template<bool _TrivialValueType>
   struct __uninitialized_fill_n
   {
     template<typename _ForwardIterator, typename _Size, typename _Tp>
       static _ForwardIterator
       __uninit_fill_n(_ForwardIterator __first, _Size __n,
  const _Tp& __x)
       {
  _ForwardIterator __cur = __first;
  try
    {
      for (; __n > 0; --__n, ++__cur)
 std::_Construct(std::__addressof(*__cur), __x);
      return __cur;
    }
  catch(...)
    {
      std::_Destroy(__first, __cur);
      throw;
    }
}
   };

 template<>
   struct __uninitialized_fill_n<true>
   {
     template<typename _ForwardIterator, typename _Size, typename _Tp>
       static _ForwardIterator
       __uninit_fill_n(_ForwardIterator __first, _Size __n,
  const _Tp& __x)
       { return std::fill_n(__first, __n, __x); }
   };
# 234 "/usr/include/g++/bits/stl_uninitialized.h" 3
 template<typename _ForwardIterator, typename _Size, typename _Tp>
   inline _ForwardIterator
   uninitialized_fill_n(_ForwardIterator __first, _Size __n, const _Tp& __x)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;

     const bool __assignable = true;




     return __uninitialized_fill_n<__is_trivial(_ValueType) && __assignable>::
__uninit_fill_n(__first, __n, __x);
   }







 template<typename _InputIterator, typename _ForwardIterator,
   typename _Allocator>
   _ForwardIterator
   __uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
     _ForwardIterator __result, _Allocator& __alloc)
   {
     _ForwardIterator __cur = __result;
     try
{
  typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
  for (; __first != __last; ++__first, ++__cur)
    __traits::construct(__alloc, std::__addressof(*__cur), *__first);
  return __cur;
}
     catch(...)
{
  std::_Destroy(__result, __cur, __alloc);
  throw;
}
   }

 template<typename _InputIterator, typename _ForwardIterator, typename _Tp>
   inline _ForwardIterator
   __uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
     _ForwardIterator __result, allocator<_Tp>&)
   { return std::uninitialized_copy(__first, __last, __result); }

 template<typename _InputIterator, typename _ForwardIterator,
   typename _Allocator>
   inline _ForwardIterator
   __uninitialized_move_a(_InputIterator __first, _InputIterator __last,
     _ForwardIterator __result, _Allocator& __alloc)
   {
     return std::__uninitialized_copy_a((__first),
     (__last),
     __result, __alloc);
   }

 template<typename _InputIterator, typename _ForwardIterator,
   typename _Allocator>
   inline _ForwardIterator
   __uninitialized_move_if_noexcept_a(_InputIterator __first,
          _InputIterator __last,
          _ForwardIterator __result,
          _Allocator& __alloc)
   {
     return std::__uninitialized_copy_a
((__first),
 (__last), __result, __alloc);
   }

 template<typename _ForwardIterator, typename _Tp, typename _Allocator>
   void
   __uninitialized_fill_a(_ForwardIterator __first, _ForwardIterator __last,
     const _Tp& __x, _Allocator& __alloc)
   {
     _ForwardIterator __cur = __first;
     try
{
  typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
  for (; __cur != __last; ++__cur)
    __traits::construct(__alloc, std::__addressof(*__cur), __x);
}
     catch(...)
{
  std::_Destroy(__first, __cur, __alloc);
  throw;
}
   }

 template<typename _ForwardIterator, typename _Tp, typename _Tp2>
   inline void
   __uninitialized_fill_a(_ForwardIterator __first, _ForwardIterator __last,
     const _Tp& __x, allocator<_Tp2>&)
   { std::uninitialized_fill(__first, __last, __x); }

 template<typename _ForwardIterator, typename _Size, typename _Tp,
   typename _Allocator>
   _ForwardIterator
   __uninitialized_fill_n_a(_ForwardIterator __first, _Size __n,
       const _Tp& __x, _Allocator& __alloc)
   {
     _ForwardIterator __cur = __first;
     try
{
  typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
  for (; __n > 0; --__n, ++__cur)
    __traits::construct(__alloc, std::__addressof(*__cur), __x);
  return __cur;
}
     catch(...)
{
  std::_Destroy(__first, __cur, __alloc);
  throw;
}
   }

 template<typename _ForwardIterator, typename _Size, typename _Tp,
   typename _Tp2>
   inline _ForwardIterator
   __uninitialized_fill_n_a(_ForwardIterator __first, _Size __n,
       const _Tp& __x, allocator<_Tp2>&)
   { return std::uninitialized_fill_n(__first, __n, __x); }
# 370 "/usr/include/g++/bits/stl_uninitialized.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _ForwardIterator, typename _Allocator>
   inline _ForwardIterator
   __uninitialized_copy_move(_InputIterator1 __first1,
        _InputIterator1 __last1,
        _InputIterator2 __first2,
        _InputIterator2 __last2,
        _ForwardIterator __result,
        _Allocator& __alloc)
   {
     _ForwardIterator __mid = std::__uninitialized_copy_a(__first1, __last1,
         __result,
         __alloc);
     try
{
  return std::__uninitialized_move_a(__first2, __last2, __mid, __alloc);
}
     catch(...)
{
  std::_Destroy(__result, __mid, __alloc);
  throw;
}
   }





 template<typename _InputIterator1, typename _InputIterator2,
   typename _ForwardIterator, typename _Allocator>
   inline _ForwardIterator
   __uninitialized_move_copy(_InputIterator1 __first1,
        _InputIterator1 __last1,
        _InputIterator2 __first2,
        _InputIterator2 __last2,
        _ForwardIterator __result,
        _Allocator& __alloc)
   {
     _ForwardIterator __mid = std::__uninitialized_move_a(__first1, __last1,
         __result,
         __alloc);
     try
{
  return std::__uninitialized_copy_a(__first2, __last2, __mid, __alloc);
}
     catch(...)
{
  std::_Destroy(__result, __mid, __alloc);
  throw;
}
   }




 template<typename _ForwardIterator, typename _Tp, typename _InputIterator,
   typename _Allocator>
   inline _ForwardIterator
   __uninitialized_fill_move(_ForwardIterator __result, _ForwardIterator __mid,
        const _Tp& __x, _InputIterator __first,
        _InputIterator __last, _Allocator& __alloc)
   {
     std::__uninitialized_fill_a(__result, __mid, __x, __alloc);
     try
{
  return std::__uninitialized_move_a(__first, __last, __mid, __alloc);
}
     catch(...)
{
  std::_Destroy(__result, __mid, __alloc);
  throw;
}
   }




 template<typename _InputIterator, typename _ForwardIterator, typename _Tp,
   typename _Allocator>
   inline void
   __uninitialized_move_fill(_InputIterator __first1, _InputIterator __last1,
        _ForwardIterator __first2,
        _ForwardIterator __last2, const _Tp& __x,
        _Allocator& __alloc)
   {
     _ForwardIterator __mid2 = std::__uninitialized_move_a(__first1, __last1,
          __first2,
          __alloc);
     try
{
  std::__uninitialized_fill_a(__mid2, __last2, __x, __alloc);
}
     catch(...)
{
  std::_Destroy(__first2, __mid2, __alloc);
  throw;
}
   }
# 685 "/usr/include/g++/bits/stl_uninitialized.h" 3

}
# 64 "/usr/include/g++/vector" 2 3
# 1 "/usr/include/g++/bits/stl_vector.h" 1 3
# 66 "/usr/include/g++/bits/stl_vector.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{



 template<typename _Tp, typename _Alloc>
   struct _Vector_base
   {
     typedef typename __gnu_cxx::__alloc_traits<_Alloc>::template
       rebind<_Tp>::other _Tp_alloc_type;
     typedef typename __gnu_cxx::__alloc_traits<_Tp_alloc_type>::pointer
       pointer;

     struct _Vector_impl
     : public _Tp_alloc_type
     {
pointer _M_start;
pointer _M_finish;
pointer _M_end_of_storage;

_Vector_impl()
: _Tp_alloc_type(), _M_start(), _M_finish(), _M_end_of_storage()
{ }

_Vector_impl(_Tp_alloc_type const& __a)
: _Tp_alloc_type(__a), _M_start(), _M_finish(), _M_end_of_storage()
{ }
# 101 "/usr/include/g++/bits/stl_vector.h" 3
void _M_swap_data(_Vector_impl& __x)
{
  std::swap(_M_start, __x._M_start);
  std::swap(_M_finish, __x._M_finish);
  std::swap(_M_end_of_storage, __x._M_end_of_storage);
}
     };

   public:
     typedef _Alloc allocator_type;

     _Tp_alloc_type&
     _M_get_Tp_allocator()
     { return *static_cast<_Tp_alloc_type*>(&this->_M_impl); }

     const _Tp_alloc_type&
     _M_get_Tp_allocator() const
     { return *static_cast<const _Tp_alloc_type*>(&this->_M_impl); }

     allocator_type
     get_allocator() const
     { return allocator_type(_M_get_Tp_allocator()); }

     _Vector_base()
     : _M_impl() { }

     _Vector_base(const allocator_type& __a)
     : _M_impl(__a) { }

     _Vector_base(size_t __n)
     : _M_impl()
     { _M_create_storage(__n); }

     _Vector_base(size_t __n, const allocator_type& __a)
     : _M_impl(__a)
     { _M_create_storage(__n); }
# 159 "/usr/include/g++/bits/stl_vector.h" 3
     ~_Vector_base()
     { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
       - this->_M_impl._M_start); }

   public:
     _Vector_impl _M_impl;

     pointer
     _M_allocate(size_t __n)
     {
typedef __gnu_cxx::__alloc_traits<_Tp_alloc_type> _Tr;
return __n != 0 ? _Tr::allocate(_M_impl, __n) : pointer();
     }

     void
     _M_deallocate(pointer __p, size_t __n)
     {
typedef __gnu_cxx::__alloc_traits<_Tp_alloc_type> _Tr;
if (__p)
  _Tr::deallocate(_M_impl, __p, __n);
     }

   private:
     void
     _M_create_storage(size_t __n)
     {
this->_M_impl._M_start = this->_M_allocate(__n);
this->_M_impl._M_finish = this->_M_impl._M_start;
this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
     }
   };
# 213 "/usr/include/g++/bits/stl_vector.h" 3
 template<typename _Tp, typename _Alloc = std::allocator<_Tp> >
   class vector : protected _Vector_base<_Tp, _Alloc>
   {

     typedef typename _Alloc::value_type _Alloc_value_type;



     typedef _Vector_base<_Tp, _Alloc> _Base;
     typedef typename _Base::_Tp_alloc_type _Tp_alloc_type;
     typedef __gnu_cxx::__alloc_traits<_Tp_alloc_type> _Alloc_traits;

   public:
     typedef _Tp value_type;
     typedef typename _Base::pointer pointer;
     typedef typename _Alloc_traits::const_pointer const_pointer;
     typedef typename _Alloc_traits::reference reference;
     typedef typename _Alloc_traits::const_reference const_reference;
     typedef __gnu_cxx::__normal_iterator<pointer, vector> iterator;
     typedef __gnu_cxx::__normal_iterator<const_pointer, vector>
     const_iterator;
     typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
     typedef std::reverse_iterator<iterator> reverse_iterator;
     typedef size_t size_type;
     typedef ptrdiff_t difference_type;
     typedef _Alloc allocator_type;

   protected:
     using _Base::_M_allocate;
     using _Base::_M_deallocate;
     using _Base::_M_impl;
     using _Base::_M_get_Tp_allocator;

   public:






     vector()



     : _Base() { }





     explicit
     vector(const allocator_type& __a)
     : _Base(__a) { }
# 302 "/usr/include/g++/bits/stl_vector.h" 3
     explicit
     vector(size_type __n, const value_type& __value = value_type(),
     const allocator_type& __a = allocator_type())
     : _Base(__n, __a)
     { _M_fill_initialize(__n, __value); }
# 318 "/usr/include/g++/bits/stl_vector.h" 3
     vector(const vector& __x)
     : _Base(__x.size(),
       _Alloc_traits::_S_select_on_copy(__x._M_get_Tp_allocator()))
     { this->_M_impl._M_finish =
  std::__uninitialized_copy_a(__x.begin(), __x.end(),
         this->_M_impl._M_start,
         _M_get_Tp_allocator());
     }
# 406 "/usr/include/g++/bits/stl_vector.h" 3
     template<typename _InputIterator>
       vector(_InputIterator __first, _InputIterator __last,
       const allocator_type& __a = allocator_type())
: _Base(__a)
       {

  typedef typename std::__is_integer<_InputIterator>::__type _Integral;
  _M_initialize_dispatch(__first, __last, _Integral());
}
# 423 "/usr/include/g++/bits/stl_vector.h" 3
     ~vector()
     { std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
       _M_get_Tp_allocator()); }
# 435 "/usr/include/g++/bits/stl_vector.h" 3
     vector&
     operator=(const vector& __x);
# 487 "/usr/include/g++/bits/stl_vector.h" 3
     void
     assign(size_type __n, const value_type& __val)
     { _M_fill_assign(__n, __val); }
# 510 "/usr/include/g++/bits/stl_vector.h" 3
     template<typename _InputIterator>
       void
       assign(_InputIterator __first, _InputIterator __last)
       {

  typedef typename std::__is_integer<_InputIterator>::__type _Integral;
  _M_assign_dispatch(__first, __last, _Integral());
}
# 538 "/usr/include/g++/bits/stl_vector.h" 3
     using _Base::get_allocator;







     iterator
     begin()
     { return iterator(this->_M_impl._M_start); }






     const_iterator
     begin() const
     { return const_iterator(this->_M_impl._M_start); }






     iterator
     end()
     { return iterator(this->_M_impl._M_finish); }






     const_iterator
     end() const
     { return const_iterator(this->_M_impl._M_finish); }






     reverse_iterator
     rbegin()
     { return reverse_iterator(end()); }






     const_reverse_iterator
     rbegin() const
     { return const_reverse_iterator(end()); }






     reverse_iterator
     rend()
     { return reverse_iterator(begin()); }






     const_reverse_iterator
     rend() const
     { return const_reverse_iterator(begin()); }
# 653 "/usr/include/g++/bits/stl_vector.h" 3
     size_type
     size() const
     { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); }


     size_type
     max_size() const
     { return _Alloc_traits::max_size(_M_get_Tp_allocator()); }
# 712 "/usr/include/g++/bits/stl_vector.h" 3
     void
     resize(size_type __new_size, value_type __x = value_type())
     {
if (__new_size > size())
  insert(end(), __new_size - size(), __x);
else if (__new_size < size())
  _M_erase_at_end(this->_M_impl._M_start + __new_size);
     }
# 733 "/usr/include/g++/bits/stl_vector.h" 3
     size_type
     capacity() const
     { return size_type(this->_M_impl._M_end_of_storage
   - this->_M_impl._M_start); }





     bool
     empty() const
     { return begin() == end(); }
# 763 "/usr/include/g++/bits/stl_vector.h" 3
     void
     reserve(size_type __n);
# 778 "/usr/include/g++/bits/stl_vector.h" 3
     reference
     operator[](size_type __n)
     { return *(this->_M_impl._M_start + __n); }
# 793 "/usr/include/g++/bits/stl_vector.h" 3
     const_reference
     operator[](size_type __n) const
     { return *(this->_M_impl._M_start + __n); }

   protected:

     void
     _M_range_check(size_type __n) const
     {
if (__n >= this->size())
  __throw_out_of_range_fmt(("vector::_M_range_check: __n " "(which is %zu) >= this->size() " "(which is %zu)")

                           ,
      __n, this->size());
     }

   public:
# 821 "/usr/include/g++/bits/stl_vector.h" 3
     reference
     at(size_type __n)
     {
_M_range_check(__n);
return (*this)[__n];
     }
# 839 "/usr/include/g++/bits/stl_vector.h" 3
     const_reference
     at(size_type __n) const
     {
_M_range_check(__n);
return (*this)[__n];
     }





     reference
     front()
     { return *begin(); }





     const_reference
     front() const
     { return *begin(); }





     reference
     back()
     { return *(end() - 1); }





     const_reference
     back() const
     { return *(end() - 1); }
# 888 "/usr/include/g++/bits/stl_vector.h" 3
     pointer

     data()
     { return _M_data_ptr(this->_M_impl._M_start); }




     const_pointer

     data() const
     { return _M_data_ptr(this->_M_impl._M_start); }
# 912 "/usr/include/g++/bits/stl_vector.h" 3
     void
     push_back(const value_type& __x)
     {
if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage)
  {
    _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish,
                             __x);
    ++this->_M_impl._M_finish;
  }
else



  _M_insert_aux(end(), __x);

     }
# 948 "/usr/include/g++/bits/stl_vector.h" 3
     void
     pop_back()
     {
--this->_M_impl._M_finish;
_Alloc_traits::destroy(this->_M_impl, this->_M_impl._M_finish);
     }
# 997 "/usr/include/g++/bits/stl_vector.h" 3
     iterator
     insert(iterator __position, const value_type& __x);
# 1071 "/usr/include/g++/bits/stl_vector.h" 3
     void
     insert(iterator __position, size_type __n, const value_type& __x)
     { _M_fill_insert(__position, __n, __x); }
# 1118 "/usr/include/g++/bits/stl_vector.h" 3
     template<typename _InputIterator>
       void
       insert(iterator __position, _InputIterator __first,
       _InputIterator __last)
       {

  typedef typename std::__is_integer<_InputIterator>::__type _Integral;
  _M_insert_dispatch(__position, __first, __last, _Integral());
}
# 1144 "/usr/include/g++/bits/stl_vector.h" 3
     iterator




     erase(iterator __position)
     { return _M_erase(__position); }
# 1171 "/usr/include/g++/bits/stl_vector.h" 3
     iterator
# 1180 "/usr/include/g++/bits/stl_vector.h" 3
     erase(iterator __first, iterator __last)
     { return _M_erase(__first, __last); }
# 1193 "/usr/include/g++/bits/stl_vector.h" 3
     void
     swap(vector& __x)



     {
this->_M_impl._M_swap_data(__x._M_impl);
_Alloc_traits::_S_on_swap(_M_get_Tp_allocator(),
                          __x._M_get_Tp_allocator());
     }







     void
     clear()
     { _M_erase_at_end(this->_M_impl._M_start); }

   protected:




     template<typename _ForwardIterator>
       pointer
       _M_allocate_and_copy(size_type __n,
       _ForwardIterator __first, _ForwardIterator __last)
       {
  pointer __result = this->_M_allocate(__n);
  try
    {
      std::__uninitialized_copy_a(__first, __last, __result,
      _M_get_Tp_allocator());
      return __result;
    }
  catch(...)
    {
      _M_deallocate(__result, __n);
      throw;
    }
}
# 1245 "/usr/include/g++/bits/stl_vector.h" 3
     template<typename _Integer>
       void
       _M_initialize_dispatch(_Integer __n, _Integer __value, __true_type)
       {
  this->_M_impl._M_start = _M_allocate(static_cast<size_type>(__n));
  this->_M_impl._M_end_of_storage =
    this->_M_impl._M_start + static_cast<size_type>(__n);
  _M_fill_initialize(static_cast<size_type>(__n), __value);
}


     template<typename _InputIterator>
       void
       _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
         __false_type)
       {
  typedef typename std::iterator_traits<_InputIterator>::
    iterator_category _IterCategory;
  _M_range_initialize(__first, __last, _IterCategory());
}


     template<typename _InputIterator>
       void
       _M_range_initialize(_InputIterator __first,
      _InputIterator __last, std::input_iterator_tag)
       {
  for (; __first != __last; ++__first)



    push_back(*__first);

}


     template<typename _ForwardIterator>
       void
       _M_range_initialize(_ForwardIterator __first,
      _ForwardIterator __last, std::forward_iterator_tag)
       {
  const size_type __n = std::distance(__first, __last);
  this->_M_impl._M_start = this->_M_allocate(__n);
  this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
  this->_M_impl._M_finish =
    std::__uninitialized_copy_a(__first, __last,
    this->_M_impl._M_start,
    _M_get_Tp_allocator());
}



     void
     _M_fill_initialize(size_type __n, const value_type& __value)
     {
this->_M_impl._M_finish =
  std::__uninitialized_fill_n_a(this->_M_impl._M_start, __n, __value,
    _M_get_Tp_allocator());
     }
# 1323 "/usr/include/g++/bits/stl_vector.h" 3
     template<typename _Integer>
       void
       _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
       { _M_fill_assign(__n, __val); }


     template<typename _InputIterator>
       void
       _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
     __false_type)
       {
  typedef typename std::iterator_traits<_InputIterator>::
    iterator_category _IterCategory;
  _M_assign_aux(__first, __last, _IterCategory());
}


     template<typename _InputIterator>
       void
       _M_assign_aux(_InputIterator __first, _InputIterator __last,
       std::input_iterator_tag);


     template<typename _ForwardIterator>
       void
       _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
       std::forward_iterator_tag);



     void
     _M_fill_assign(size_type __n, const value_type& __val);
# 1363 "/usr/include/g++/bits/stl_vector.h" 3
     template<typename _Integer>
       void
       _M_insert_dispatch(iterator __pos, _Integer __n, _Integer __val,
     __true_type)
       { _M_fill_insert(__pos, __n, __val); }


     template<typename _InputIterator>
       void
       _M_insert_dispatch(iterator __pos, _InputIterator __first,
     _InputIterator __last, __false_type)
       {
  typedef typename std::iterator_traits<_InputIterator>::
    iterator_category _IterCategory;
  _M_range_insert(__pos, __first, __last, _IterCategory());
}


     template<typename _InputIterator>
       void
       _M_range_insert(iterator __pos, _InputIterator __first,
  _InputIterator __last, std::input_iterator_tag);


     template<typename _ForwardIterator>
       void
       _M_range_insert(iterator __pos, _ForwardIterator __first,
  _ForwardIterator __last, std::forward_iterator_tag);



     void
     _M_fill_insert(iterator __pos, size_type __n, const value_type& __x);
# 1408 "/usr/include/g++/bits/stl_vector.h" 3
     void
     _M_insert_aux(iterator __position, const value_type& __x);
# 1421 "/usr/include/g++/bits/stl_vector.h" 3
     size_type
     _M_check_len(size_type __n, const char* __s) const
     {
if (max_size() - size() < __n)
  __throw_length_error((__s));

const size_type __len = size() + std::max(size(), __n);
return (__len < size() || __len > max_size()) ? max_size() : __len;
     }





     void
     _M_erase_at_end(pointer __pos)
     {
std::_Destroy(__pos, this->_M_impl._M_finish, _M_get_Tp_allocator());
this->_M_impl._M_finish = __pos;
     }

     iterator
     _M_erase(iterator __position);

     iterator
     _M_erase(iterator __first, iterator __last);
# 1491 "/usr/include/g++/bits/stl_vector.h" 3
     template<typename _Ptr>
_Ptr
_M_data_ptr(_Ptr __ptr) const
{ return __ptr; }

   };
# 1509 "/usr/include/g++/bits/stl_vector.h" 3
 template<typename _Tp, typename _Alloc>
   inline bool
   operator==(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
   { return (__x.size() == __y.size()
      && std::equal(__x.begin(), __x.end(), __y.begin())); }
# 1526 "/usr/include/g++/bits/stl_vector.h" 3
 template<typename _Tp, typename _Alloc>
   inline bool
   operator<(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
   { return std::lexicographical_compare(__x.begin(), __x.end(),
      __y.begin(), __y.end()); }


 template<typename _Tp, typename _Alloc>
   inline bool
   operator!=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
   { return !(__x == __y); }


 template<typename _Tp, typename _Alloc>
   inline bool
   operator>(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
   { return __y < __x; }


 template<typename _Tp, typename _Alloc>
   inline bool
   operator<=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
   { return !(__y < __x); }


 template<typename _Tp, typename _Alloc>
   inline bool
   operator>=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
   { return !(__x < __y); }


 template<typename _Tp, typename _Alloc>
   inline void
   swap(vector<_Tp, _Alloc>& __x, vector<_Tp, _Alloc>& __y)
   { __x.swap(__y); }


}
# 65 "/usr/include/g++/vector" 2 3
# 1 "/usr/include/g++/bits/stl_bvector.h" 1 3
# 63 "/usr/include/g++/bits/stl_bvector.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{


 typedef unsigned long _Bit_type;
 enum { _S_word_bit = int(8 * sizeof(_Bit_type)) };

 struct _Bit_reference
 {
   _Bit_type * _M_p;
   _Bit_type _M_mask;

   _Bit_reference(_Bit_type * __x, _Bit_type __y)
   : _M_p(__x), _M_mask(__y) { }

   _Bit_reference() : _M_p(0), _M_mask(0) { }

   operator bool() const
   { return !!(*_M_p & _M_mask); }

   _Bit_reference&
   operator=(bool __x)
   {
     if (__x)
*_M_p |= _M_mask;
     else
*_M_p &= ~_M_mask;
     return *this;
   }

   _Bit_reference&
   operator=(const _Bit_reference& __x)
   { return *this = bool(__x); }

   bool
   operator==(const _Bit_reference& __x) const
   { return bool(*this) == bool(__x); }

   bool
   operator<(const _Bit_reference& __x) const
   { return !bool(*this) && bool(__x); }

   void
   flip()
   { *_M_p ^= _M_mask; }
 };
# 136 "/usr/include/g++/bits/stl_bvector.h" 3
 struct _Bit_iterator_base
 : public std::iterator<std::random_access_iterator_tag, bool>
 {
   _Bit_type * _M_p;
   unsigned int _M_offset;

   _Bit_iterator_base(_Bit_type * __x, unsigned int __y)
   : _M_p(__x), _M_offset(__y) { }

   void
   _M_bump_up()
   {
     if (_M_offset++ == int(_S_word_bit) - 1)
{
  _M_offset = 0;
  ++_M_p;
}
   }

   void
   _M_bump_down()
   {
     if (_M_offset-- == 0)
{
  _M_offset = int(_S_word_bit) - 1;
  --_M_p;
}
   }

   void
   _M_incr(ptrdiff_t __i)
   {
     difference_type __n = __i + _M_offset;
     _M_p += __n / int(_S_word_bit);
     __n = __n % int(_S_word_bit);
     if (__n < 0)
{
  __n += int(_S_word_bit);
  --_M_p;
}
     _M_offset = static_cast<unsigned int>(__n);
   }

   bool
   operator==(const _Bit_iterator_base& __i) const
   { return _M_p == __i._M_p && _M_offset == __i._M_offset; }

   bool
   operator<(const _Bit_iterator_base& __i) const
   {
     return _M_p < __i._M_p
     || (_M_p == __i._M_p && _M_offset < __i._M_offset);
   }

   bool
   operator!=(const _Bit_iterator_base& __i) const
   { return !(*this == __i); }

   bool
   operator>(const _Bit_iterator_base& __i) const
   { return __i < *this; }

   bool
   operator<=(const _Bit_iterator_base& __i) const
   { return !(__i < *this); }

   bool
   operator>=(const _Bit_iterator_base& __i) const
   { return !(*this < __i); }
 };

 inline ptrdiff_t
 operator-(const _Bit_iterator_base& __x, const _Bit_iterator_base& __y)
 {
   return (int(_S_word_bit) * (__x._M_p - __y._M_p)
    + __x._M_offset - __y._M_offset);
 }

 struct _Bit_iterator : public _Bit_iterator_base
 {
   typedef _Bit_reference reference;
   typedef _Bit_reference* pointer;
   typedef _Bit_iterator iterator;

   _Bit_iterator() : _Bit_iterator_base(0, 0) { }

   _Bit_iterator(_Bit_type * __x, unsigned int __y)
   : _Bit_iterator_base(__x, __y) { }

   iterator
   _M_const_cast() const
   { return *this; }

   reference
   operator*() const
   { return reference(_M_p, 1UL << _M_offset); }

   iterator&
   operator++()
   {
     _M_bump_up();
     return *this;
   }

   iterator
   operator++(int)
   {
     iterator __tmp = *this;
     _M_bump_up();
     return __tmp;
   }

   iterator&
   operator--()
   {
     _M_bump_down();
     return *this;
   }

   iterator
   operator--(int)
   {
     iterator __tmp = *this;
     _M_bump_down();
     return __tmp;
   }

   iterator&
   operator+=(difference_type __i)
   {
     _M_incr(__i);
     return *this;
   }

   iterator&
   operator-=(difference_type __i)
   {
     *this += -__i;
     return *this;
   }

   iterator
   operator+(difference_type __i) const
   {
     iterator __tmp = *this;
     return __tmp += __i;
   }

   iterator
   operator-(difference_type __i) const
   {
     iterator __tmp = *this;
     return __tmp -= __i;
   }

   reference
   operator[](difference_type __i) const
   { return *(*this + __i); }
 };

 inline _Bit_iterator
 operator+(ptrdiff_t __n, const _Bit_iterator& __x)
 { return __x + __n; }

 struct _Bit_const_iterator : public _Bit_iterator_base
 {
   typedef bool reference;
   typedef bool const_reference;
   typedef const bool* pointer;
   typedef _Bit_const_iterator const_iterator;

   _Bit_const_iterator() : _Bit_iterator_base(0, 0) { }

   _Bit_const_iterator(_Bit_type * __x, unsigned int __y)
   : _Bit_iterator_base(__x, __y) { }

   _Bit_const_iterator(const _Bit_iterator& __x)
   : _Bit_iterator_base(__x._M_p, __x._M_offset) { }

   _Bit_iterator
   _M_const_cast() const
   { return _Bit_iterator(_M_p, _M_offset); }

   const_reference
   operator*() const
   { return _Bit_reference(_M_p, 1UL << _M_offset); }

   const_iterator&
   operator++()
   {
     _M_bump_up();
     return *this;
   }

   const_iterator
   operator++(int)
   {
     const_iterator __tmp = *this;
     _M_bump_up();
     return __tmp;
   }

   const_iterator&
   operator--()
   {
     _M_bump_down();
     return *this;
   }

   const_iterator
   operator--(int)
   {
     const_iterator __tmp = *this;
     _M_bump_down();
     return __tmp;
   }

   const_iterator&
   operator+=(difference_type __i)
   {
     _M_incr(__i);
     return *this;
   }

   const_iterator&
   operator-=(difference_type __i)
   {
     *this += -__i;
     return *this;
   }

   const_iterator
   operator+(difference_type __i) const
   {
     const_iterator __tmp = *this;
     return __tmp += __i;
   }

   const_iterator
   operator-(difference_type __i) const
   {
     const_iterator __tmp = *this;
     return __tmp -= __i;
   }

   const_reference
   operator[](difference_type __i) const
   { return *(*this + __i); }
 };

 inline _Bit_const_iterator
 operator+(ptrdiff_t __n, const _Bit_const_iterator& __x)
 { return __x + __n; }

 inline void
 __fill_bvector(_Bit_iterator __first, _Bit_iterator __last, bool __x)
 {
   for (; __first != __last; ++__first)
     *__first = __x;
 }

 inline void
 fill(_Bit_iterator __first, _Bit_iterator __last, const bool& __x)
 {
   if (__first._M_p != __last._M_p)
     {
std::fill(__first._M_p + 1, __last._M_p, __x ? ~0 : 0);
__fill_bvector(__first, _Bit_iterator(__first._M_p + 1, 0), __x);
__fill_bvector(_Bit_iterator(__last._M_p, 0), __last, __x);
     }
   else
     __fill_bvector(__first, __last, __x);
 }

 template<typename _Alloc>
   struct _Bvector_base
   {
     typedef typename __gnu_cxx::__alloc_traits<_Alloc>::template
       rebind<_Bit_type>::other _Bit_alloc_type;
     typedef typename __gnu_cxx::__alloc_traits<_Bit_alloc_type>
_Bit_alloc_traits;
     typedef typename _Bit_alloc_traits::pointer _Bit_pointer;

     struct _Bvector_impl
     : public _Bit_alloc_type
     {
_Bit_iterator _M_start;
_Bit_iterator _M_finish;
_Bit_pointer _M_end_of_storage;

_Bvector_impl()
: _Bit_alloc_type(), _M_start(), _M_finish(), _M_end_of_storage()
{ }

_Bvector_impl(const _Bit_alloc_type& __a)
: _Bit_alloc_type(__a), _M_start(), _M_finish(), _M_end_of_storage()
{ }
# 441 "/usr/include/g++/bits/stl_bvector.h" 3
_Bit_type*
_M_end_addr() const
{
  if (_M_end_of_storage)
    return std::__addressof(_M_end_of_storage[-1]) + 1;
  return 0;
}
     };

   public:
     typedef _Alloc allocator_type;

     _Bit_alloc_type&
     _M_get_Bit_allocator()
     { return *static_cast<_Bit_alloc_type*>(&this->_M_impl); }

     const _Bit_alloc_type&
     _M_get_Bit_allocator() const
     { return *static_cast<const _Bit_alloc_type*>(&this->_M_impl); }

     allocator_type
     get_allocator() const
     { return allocator_type(_M_get_Bit_allocator()); }

     _Bvector_base()
     : _M_impl() { }

     _Bvector_base(const allocator_type& __a)
     : _M_impl(__a) { }
# 484 "/usr/include/g++/bits/stl_bvector.h" 3
     ~_Bvector_base()
     { this->_M_deallocate(); }

   protected:
     _Bvector_impl _M_impl;

     _Bit_pointer
     _M_allocate(size_t __n)
     { return _Bit_alloc_traits::allocate(_M_impl, _S_nword(__n)); }

     void
     _M_deallocate()
     {
if (_M_impl._M_start._M_p)
  {
    const size_t __n = _M_impl._M_end_addr() - _M_impl._M_start._M_p;
    _Bit_alloc_traits::deallocate(_M_impl,
      _M_impl._M_end_of_storage - __n,
      __n);
  }
     }

     static size_t
     _S_nword(size_t __n)
     { return (__n + int(_S_word_bit) - 1) / int(_S_word_bit); }
   };


}




namespace std __attribute__ ((__visibility__ ("default")))
{

# 540 "/usr/include/g++/bits/stl_bvector.h" 3
template<typename _Alloc>
 class vector<bool, _Alloc> : protected _Bvector_base<_Alloc>
 {
   typedef _Bvector_base<_Alloc> _Base;
   typedef typename _Base::_Bit_pointer _Bit_pointer;
   typedef typename _Base::_Bit_alloc_traits _Bit_alloc_traits;





 public:
   typedef bool value_type;
   typedef size_t size_type;
   typedef ptrdiff_t difference_type;
   typedef _Bit_reference reference;
   typedef bool const_reference;
   typedef _Bit_reference* pointer;
   typedef const bool* const_pointer;
   typedef _Bit_iterator iterator;
   typedef _Bit_const_iterator const_iterator;
   typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
   typedef std::reverse_iterator<iterator> reverse_iterator;
   typedef _Alloc allocator_type;

   allocator_type get_allocator() const
   { return _Base::get_allocator(); }

 protected:
   using _Base::_M_allocate;
   using _Base::_M_deallocate;
   using _Base::_S_nword;
   using _Base::_M_get_Bit_allocator;

 public:
   vector()



   : _Base() { }

   explicit
   vector(const allocator_type& __a)
   : _Base(__a) { }
# 600 "/usr/include/g++/bits/stl_bvector.h" 3
   explicit
   vector(size_type __n, const bool& __value = bool(),
   const allocator_type& __a = allocator_type())
   : _Base(__a)
   {
     _M_initialize(__n);
     std::fill(this->_M_impl._M_start._M_p, this->_M_impl._M_end_addr(),
 __value ? ~0 : 0);
   }


   vector(const vector& __x)
   : _Base(_Bit_alloc_traits::_S_select_on_copy(__x._M_get_Bit_allocator()))
   {
     _M_initialize(__x.size());
     _M_copy_aligned(__x.begin(), __x.end(), this->_M_impl._M_start);
   }
# 667 "/usr/include/g++/bits/stl_bvector.h" 3
   template<typename _InputIterator>
     vector(_InputIterator __first, _InputIterator __last,
     const allocator_type& __a = allocator_type())
     : _Base(__a)
     {
typedef typename std::__is_integer<_InputIterator>::__type _Integral;
_M_initialize_dispatch(__first, __last, _Integral());
     }


   ~vector() { }

   vector&
   operator=(const vector& __x)
   {
     if (&__x == this)
return *this;
# 699 "/usr/include/g++/bits/stl_bvector.h" 3
     if (__x.size() > capacity())
{
  this->_M_deallocate();
  _M_initialize(__x.size());
}
     this->_M_impl._M_finish = _M_copy_aligned(__x.begin(), __x.end(),
     begin());
     return *this;
   }
# 752 "/usr/include/g++/bits/stl_bvector.h" 3
   void
   assign(size_type __n, const bool& __x)
   { _M_fill_assign(__n, __x); }
# 763 "/usr/include/g++/bits/stl_bvector.h" 3
   template<typename _InputIterator>
     void
     assign(_InputIterator __first, _InputIterator __last)
     {
typedef typename std::__is_integer<_InputIterator>::__type _Integral;
_M_assign_dispatch(__first, __last, _Integral());
     }
# 778 "/usr/include/g++/bits/stl_bvector.h" 3
   iterator
   begin()
   { return this->_M_impl._M_start; }

   const_iterator
   begin() const
   { return this->_M_impl._M_start; }

   iterator
   end()
   { return this->_M_impl._M_finish; }

   const_iterator
   end() const
   { return this->_M_impl._M_finish; }

   reverse_iterator
   rbegin()
   { return reverse_iterator(end()); }

   const_reverse_iterator
   rbegin() const
   { return const_reverse_iterator(end()); }

   reverse_iterator
   rend()
   { return reverse_iterator(begin()); }

   const_reverse_iterator
   rend() const
   { return const_reverse_iterator(begin()); }
# 828 "/usr/include/g++/bits/stl_bvector.h" 3
   size_type
   size() const
   { return size_type(end() - begin()); }

   size_type
   max_size() const
   {
     const size_type __isize =
__gnu_cxx::__numeric_traits<difference_type>::__max
- int(_S_word_bit) + 1;
     const size_type __asize
= _Bit_alloc_traits::max_size(_M_get_Bit_allocator());
     return (__asize <= __isize / int(_S_word_bit)
      ? __asize * int(_S_word_bit) : __isize);
   }

   size_type
   capacity() const
   { return size_type(const_iterator(this->_M_impl._M_end_addr(), 0)
        - begin()); }

   bool
   empty() const
   { return begin() == end(); }

   reference
   operator[](size_type __n)
   {
     return *iterator(this->_M_impl._M_start._M_p
        + __n / int(_S_word_bit), __n % int(_S_word_bit));
   }

   const_reference
   operator[](size_type __n) const
   {
     return *const_iterator(this->_M_impl._M_start._M_p
       + __n / int(_S_word_bit), __n % int(_S_word_bit));
   }

 protected:
   void
   _M_range_check(size_type __n) const
   {
     if (__n >= this->size())
__throw_out_of_range_fmt(("vector<bool>::_M_range_check: __n " "(which is %zu) >= this->size() " "(which is %zu)")

                         ,
    __n, this->size());
   }

 public:
   reference
   at(size_type __n)
   { _M_range_check(__n); return (*this)[__n]; }

   const_reference
   at(size_type __n) const
   { _M_range_check(__n); return (*this)[__n]; }

   void
   reserve(size_type __n)
   {
     if (__n > max_size())
__throw_length_error(("vector::reserve"));
     if (capacity() < __n)
_M_reallocate(__n);
   }

   reference
   front()
   { return *begin(); }

   const_reference
   front() const
   { return *begin(); }

   reference
   back()
   { return *(end() - 1); }

   const_reference
   back() const
   { return *(end() - 1); }






   void
   data() { }

   void
   push_back(bool __x)
   {
     if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_addr())
       *this->_M_impl._M_finish++ = __x;
     else
       _M_insert_aux(end(), __x);
   }

   void
   swap(vector& __x)



   {
     std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
     std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
     std::swap(this->_M_impl._M_end_of_storage,
 __x._M_impl._M_end_of_storage);
     _Bit_alloc_traits::_S_on_swap(_M_get_Bit_allocator(),
       __x._M_get_Bit_allocator());
   }


   static void
   swap(reference __x, reference __y)
   {
     bool __tmp = __x;
     __x = __y;
     __y = __tmp;
   }

   iterator



   insert(iterator __position, const bool& __x = bool())

   {
     const difference_type __n = __position - begin();
     if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_addr()
  && __position == end())
       *this->_M_impl._M_finish++ = __x;
     else
       _M_insert_aux(__position._M_const_cast(), __x);
     return begin() + __n;
   }
# 981 "/usr/include/g++/bits/stl_bvector.h" 3
   template<typename _InputIterator>
     void
     insert(iterator __position,
     _InputIterator __first, _InputIterator __last)
     {
typedef typename std::__is_integer<_InputIterator>::__type _Integral;
_M_insert_dispatch(__position, __first, __last, _Integral());
     }
# 1000 "/usr/include/g++/bits/stl_bvector.h" 3
   void
   insert(iterator __position, size_type __n, const bool& __x)
   { _M_fill_insert(__position, __n, __x); }
# 1011 "/usr/include/g++/bits/stl_bvector.h" 3
   void
   pop_back()
   { --this->_M_impl._M_finish; }

   iterator



   erase(iterator __position)

   { return _M_erase(__position._M_const_cast()); }

   iterator



   erase(iterator __first, iterator __last)

   { return _M_erase(__first._M_const_cast(), __last._M_const_cast()); }

   void
   resize(size_type __new_size, bool __x = bool())
   {
     if (__new_size < size())
       _M_erase_at_end(begin() + difference_type(__new_size));
     else
       insert(end(), __new_size - size(), __x);
   }







   void
   flip()
   {
     _Bit_type * const __end = this->_M_impl._M_end_addr();
     for (_Bit_type * __p = this->_M_impl._M_start._M_p; __p != __end; ++__p)
       *__p = ~*__p;
   }

   void
   clear()
   { _M_erase_at_end(begin()); }
# 1070 "/usr/include/g++/bits/stl_bvector.h" 3
 protected:

   iterator
   _M_copy_aligned(const_iterator __first, const_iterator __last,
     iterator __result)
   {
     _Bit_type* __q = std::copy(__first._M_p, __last._M_p, __result._M_p);
     return std::copy(const_iterator(__last._M_p, 0), __last,
        iterator(__q, 0));
   }

   void
   _M_initialize(size_type __n)
   {
     _Bit_pointer __q = this->_M_allocate(__n);
     this->_M_impl._M_end_of_storage = __q + _S_nword(__n);
     this->_M_impl._M_start = iterator(std::__addressof(*__q), 0);
     this->_M_impl._M_finish = this->_M_impl._M_start + difference_type(__n);
   }

   void
   _M_reallocate(size_type __n);
# 1102 "/usr/include/g++/bits/stl_bvector.h" 3
   template<typename _Integer>
     void
     _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
     {
_M_initialize(static_cast<size_type>(__n));
std::fill(this->_M_impl._M_start._M_p,
   this->_M_impl._M_end_addr(), __x ? ~0 : 0);
     }

   template<typename _InputIterator>
     void
     _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
       __false_type)
     { _M_initialize_range(__first, __last,
      std::__iterator_category(__first)); }

   template<typename _InputIterator>
     void
     _M_initialize_range(_InputIterator __first, _InputIterator __last,
    std::input_iterator_tag)
     {
for (; __first != __last; ++__first)
  push_back(*__first);
     }

   template<typename _ForwardIterator>
     void
     _M_initialize_range(_ForwardIterator __first, _ForwardIterator __last,
    std::forward_iterator_tag)
     {
const size_type __n = std::distance(__first, __last);
_M_initialize(__n);
std::copy(__first, __last, this->_M_impl._M_start);
     }



   template<typename _Integer>
     void
     _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
     { _M_fill_assign(__n, __val); }

   template<class _InputIterator>
     void
     _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
   __false_type)
     { _M_assign_aux(__first, __last, std::__iterator_category(__first)); }

   void
   _M_fill_assign(size_t __n, bool __x)
   {
     if (__n > size())
{
  std::fill(this->_M_impl._M_start._M_p,
     this->_M_impl._M_end_addr(), __x ? ~0 : 0);
  insert(end(), __n - size(), __x);
}
     else
{
  _M_erase_at_end(begin() + __n);
  std::fill(this->_M_impl._M_start._M_p,
     this->_M_impl._M_end_addr(), __x ? ~0 : 0);
}
   }

   template<typename _InputIterator>
     void
     _M_assign_aux(_InputIterator __first, _InputIterator __last,
     std::input_iterator_tag)
     {
iterator __cur = begin();
for (; __first != __last && __cur != end(); ++__cur, ++__first)
  *__cur = *__first;
if (__first == __last)
  _M_erase_at_end(__cur);
else
  insert(end(), __first, __last);
     }

   template<typename _ForwardIterator>
     void
     _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
     std::forward_iterator_tag)
     {
const size_type __len = std::distance(__first, __last);
if (__len < size())
  _M_erase_at_end(std::copy(__first, __last, begin()));
else
  {
    _ForwardIterator __mid = __first;
    std::advance(__mid, size());
    std::copy(__first, __mid, begin());
    insert(end(), __mid, __last);
  }
     }





   template<typename _Integer>
     void
     _M_insert_dispatch(iterator __pos, _Integer __n, _Integer __x,
   __true_type)
     { _M_fill_insert(__pos, __n, __x); }

   template<typename _InputIterator>
     void
     _M_insert_dispatch(iterator __pos,
   _InputIterator __first, _InputIterator __last,
   __false_type)
     { _M_insert_range(__pos, __first, __last,
  std::__iterator_category(__first)); }

   void
   _M_fill_insert(iterator __position, size_type __n, bool __x);

   template<typename _InputIterator>
     void
     _M_insert_range(iterator __pos, _InputIterator __first,
       _InputIterator __last, std::input_iterator_tag)
     {
for (; __first != __last; ++__first)
  {
    __pos = insert(__pos, *__first);
    ++__pos;
  }
     }

   template<typename _ForwardIterator>
     void
     _M_insert_range(iterator __position, _ForwardIterator __first,
       _ForwardIterator __last, std::forward_iterator_tag);

   void
   _M_insert_aux(iterator __position, bool __x);

   size_type
   _M_check_len(size_type __n, const char* __s) const
   {
     if (max_size() - size() < __n)
__throw_length_error((__s));

     const size_type __len = size() + std::max(size(), __n);
     return (__len < size() || __len > max_size()) ? max_size() : __len;
   }

   void
   _M_erase_at_end(iterator __pos)
   { this->_M_impl._M_finish = __pos; }

   iterator
   _M_erase(iterator __pos);

   iterator
   _M_erase(iterator __first, iterator __last);
 };


}
# 66 "/usr/include/g++/vector" 2 3



# 1 "/usr/include/g++/bits/vector.tcc" 1 3
# 59 "/usr/include/g++/bits/vector.tcc" 3
namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _Tp, typename _Alloc>
   void
   vector<_Tp, _Alloc>::
   reserve(size_type __n)
   {
     if (__n > this->max_size())
__throw_length_error(("vector::reserve"));
     if (this->capacity() < __n)
{
  const size_type __old_size = size();
  pointer __tmp = _M_allocate_and_copy(__n,
    (this->_M_impl._M_start),
    (this->_M_impl._M_finish));
  std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
  _M_get_Tp_allocator());
  _M_deallocate(this->_M_impl._M_start,
  this->_M_impl._M_end_of_storage
  - this->_M_impl._M_start);
  this->_M_impl._M_start = __tmp;
  this->_M_impl._M_finish = __tmp + __old_size;
  this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
}
   }
# 105 "/usr/include/g++/bits/vector.tcc" 3
 template<typename _Tp, typename _Alloc>
   typename vector<_Tp, _Alloc>::iterator
   vector<_Tp, _Alloc>::



   insert(iterator __position, const value_type& __x)

   {
     const size_type __n = __position - begin();
     if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage
  && __position == end())
{
  _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, __x);
  ++this->_M_impl._M_finish;
}
     else
{
# 133 "/usr/include/g++/bits/vector.tcc" 3
    _M_insert_aux(__position, __x);

}
     return iterator(this->_M_impl._M_start + __n);
   }

 template<typename _Tp, typename _Alloc>
   typename vector<_Tp, _Alloc>::iterator
   vector<_Tp, _Alloc>::
   _M_erase(iterator __position)
   {
     if (__position + 1 != end())
std::copy(__position + 1, end(), __position);
     --this->_M_impl._M_finish;
     _Alloc_traits::destroy(this->_M_impl, this->_M_impl._M_finish);
     return __position;
   }

 template<typename _Tp, typename _Alloc>
   typename vector<_Tp, _Alloc>::iterator
   vector<_Tp, _Alloc>::
   _M_erase(iterator __first, iterator __last)
   {
     if (__first != __last)
{
  if (__last != end())
    std::copy(__last, end(), __first);
  _M_erase_at_end(__first.base() + (end() - __last));
}
     return __first;
   }

 template<typename _Tp, typename _Alloc>
   vector<_Tp, _Alloc>&
   vector<_Tp, _Alloc>::
   operator=(const vector<_Tp, _Alloc>& __x)
   {
     if (&__x != this)
{
# 191 "/usr/include/g++/bits/vector.tcc" 3
  const size_type __xlen = __x.size();
  if (__xlen > capacity())
    {
      pointer __tmp = _M_allocate_and_copy(__xlen, __x.begin(),
        __x.end());
      std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
      _M_get_Tp_allocator());
      _M_deallocate(this->_M_impl._M_start,
      this->_M_impl._M_end_of_storage
      - this->_M_impl._M_start);
      this->_M_impl._M_start = __tmp;
      this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __xlen;
    }
  else if (size() >= __xlen)
    {
      std::_Destroy(std::copy(__x.begin(), __x.end(), begin()),
      end(), _M_get_Tp_allocator());
    }
  else
    {
      std::copy(__x._M_impl._M_start, __x._M_impl._M_start + size(),
  this->_M_impl._M_start);
      std::__uninitialized_copy_a(__x._M_impl._M_start + size(),
      __x._M_impl._M_finish,
      this->_M_impl._M_finish,
      _M_get_Tp_allocator());
    }
  this->_M_impl._M_finish = this->_M_impl._M_start + __xlen;
}
     return *this;
   }

 template<typename _Tp, typename _Alloc>
   void
   vector<_Tp, _Alloc>::
   _M_fill_assign(size_t __n, const value_type& __val)
   {
     if (__n > capacity())
{
  vector __tmp(__n, __val, _M_get_Tp_allocator());
  __tmp._M_impl._M_swap_data(this->_M_impl);
}
     else if (__n > size())
{
  std::fill(begin(), end(), __val);
  this->_M_impl._M_finish =
    std::__uninitialized_fill_n_a(this->_M_impl._M_finish,
      __n - size(), __val,
      _M_get_Tp_allocator());
}
     else
       _M_erase_at_end(std::fill_n(this->_M_impl._M_start, __n, __val));
   }

 template<typename _Tp, typename _Alloc>
   template<typename _InputIterator>
     void
     vector<_Tp, _Alloc>::
     _M_assign_aux(_InputIterator __first, _InputIterator __last,
     std::input_iterator_tag)
     {
pointer __cur(this->_M_impl._M_start);
for (; __first != __last && __cur != this->_M_impl._M_finish;
     ++__cur, ++__first)
  *__cur = *__first;
if (__first == __last)
  _M_erase_at_end(__cur);
else
  insert(end(), __first, __last);
     }

 template<typename _Tp, typename _Alloc>
   template<typename _ForwardIterator>
     void
     vector<_Tp, _Alloc>::
     _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
     std::forward_iterator_tag)
     {
const size_type __len = std::distance(__first, __last);

if (__len > capacity())
  {
    pointer __tmp(_M_allocate_and_copy(__len, __first, __last));
    std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
    _M_get_Tp_allocator());
    _M_deallocate(this->_M_impl._M_start,
    this->_M_impl._M_end_of_storage
    - this->_M_impl._M_start);
    this->_M_impl._M_start = __tmp;
    this->_M_impl._M_finish = this->_M_impl._M_start + __len;
    this->_M_impl._M_end_of_storage = this->_M_impl._M_finish;
  }
else if (size() >= __len)
  _M_erase_at_end(std::copy(__first, __last, this->_M_impl._M_start));
else
  {
    _ForwardIterator __mid = __first;
    std::advance(__mid, size());
    std::copy(__first, __mid, this->_M_impl._M_start);
    this->_M_impl._M_finish =
      std::__uninitialized_copy_a(__mid, __last,
      this->_M_impl._M_finish,
      _M_get_Tp_allocator());
  }
     }
# 324 "/usr/include/g++/bits/vector.tcc" 3
 template<typename _Tp, typename _Alloc>
   void
   vector<_Tp, _Alloc>::
   _M_insert_aux(iterator __position, const _Tp& __x)

   {
     if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage)
{
  _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish,
             (*(this->_M_impl._M_finish - 1))
                           );
  ++this->_M_impl._M_finish;

  _Tp __x_copy = __x;

  std::copy_backward(__position.base(), this->_M_impl._M_finish - 2, this->_M_impl._M_finish - 1)

                                 ;

  *__position = __x_copy;



}
     else
{
  const size_type __len =
    _M_check_len(size_type(1), "vector::_M_insert_aux");
  const size_type __elems_before = __position - begin();
  pointer __new_start(this->_M_allocate(__len));
  pointer __new_finish(__new_start);
  try
    {




      _Alloc_traits::construct(this->_M_impl,
                        __new_start + __elems_before,



                               __x);

      __new_finish = pointer();

      __new_finish
 = std::__uninitialized_move_if_noexcept_a
 (this->_M_impl._M_start, __position.base(),
  __new_start, _M_get_Tp_allocator());

      ++__new_finish;

      __new_finish
 = std::__uninitialized_move_if_noexcept_a
 (__position.base(), this->_M_impl._M_finish,
  __new_finish, _M_get_Tp_allocator());
    }
         catch(...)
    {
      if (!__new_finish)
 _Alloc_traits::destroy(this->_M_impl,
                        __new_start + __elems_before);
      else
 std::_Destroy(__new_start, __new_finish, _M_get_Tp_allocator());
      _M_deallocate(__new_start, __len);
      throw;
    }
  std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
  _M_get_Tp_allocator());
  _M_deallocate(this->_M_impl._M_start,
  this->_M_impl._M_end_of_storage
  - this->_M_impl._M_start);
  this->_M_impl._M_start = __new_start;
  this->_M_impl._M_finish = __new_finish;
  this->_M_impl._M_end_of_storage = __new_start + __len;
}
   }
# 447 "/usr/include/g++/bits/vector.tcc" 3
 template<typename _Tp, typename _Alloc>
   void
   vector<_Tp, _Alloc>::
   _M_fill_insert(iterator __position, size_type __n, const value_type& __x)
   {
     if (__n != 0)
{
  if (size_type(this->_M_impl._M_end_of_storage
  - this->_M_impl._M_finish) >= __n)
    {
      value_type __x_copy = __x;
      const size_type __elems_after = end() - __position;
      pointer __old_finish(this->_M_impl._M_finish);
      if (__elems_after > __n)
 {
   std::__uninitialized_move_a(this->_M_impl._M_finish - __n,
          this->_M_impl._M_finish,
          this->_M_impl._M_finish,
          _M_get_Tp_allocator());
   this->_M_impl._M_finish += __n;
   std::copy_backward(__position.base(), __old_finish - __n, __old_finish)
                                       ;
   std::fill(__position.base(), __position.base() + __n,
      __x_copy);
 }
      else
 {
   this->_M_impl._M_finish =
     std::__uninitialized_fill_n_a(this->_M_impl._M_finish,
       __n - __elems_after,
       __x_copy,
       _M_get_Tp_allocator());
   std::__uninitialized_move_a(__position.base(), __old_finish,
          this->_M_impl._M_finish,
          _M_get_Tp_allocator());
   this->_M_impl._M_finish += __elems_after;
   std::fill(__position.base(), __old_finish, __x_copy);
 }
    }
  else
    {
      const size_type __len =
 _M_check_len(__n, "vector::_M_fill_insert");
      const size_type __elems_before = __position - begin();
      pointer __new_start(this->_M_allocate(__len));
      pointer __new_finish(__new_start);
      try
 {

   std::__uninitialized_fill_n_a(__new_start + __elems_before,
     __n, __x,
     _M_get_Tp_allocator());
   __new_finish = pointer();

   __new_finish
     = std::__uninitialized_move_if_noexcept_a
     (this->_M_impl._M_start, __position.base(),
      __new_start, _M_get_Tp_allocator());

   __new_finish += __n;

   __new_finish
     = std::__uninitialized_move_if_noexcept_a
     (__position.base(), this->_M_impl._M_finish,
      __new_finish, _M_get_Tp_allocator());
 }
      catch(...)
 {
   if (!__new_finish)
     std::_Destroy(__new_start + __elems_before,
     __new_start + __elems_before + __n,
     _M_get_Tp_allocator());
   else
     std::_Destroy(__new_start, __new_finish,
     _M_get_Tp_allocator());
   _M_deallocate(__new_start, __len);
   throw;
 }
      std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
      _M_get_Tp_allocator());
      _M_deallocate(this->_M_impl._M_start,
      this->_M_impl._M_end_of_storage
      - this->_M_impl._M_start);
      this->_M_impl._M_start = __new_start;
      this->_M_impl._M_finish = __new_finish;
      this->_M_impl._M_end_of_storage = __new_start + __len;
    }
}
   }
# 599 "/usr/include/g++/bits/vector.tcc" 3
 template<typename _Tp, typename _Alloc>
   template<typename _InputIterator>
     void
     vector<_Tp, _Alloc>::
     _M_range_insert(iterator __pos, _InputIterator __first,
       _InputIterator __last, std::input_iterator_tag)
     {
for (; __first != __last; ++__first)
  {
    __pos = insert(__pos, *__first);
    ++__pos;
  }
     }

 template<typename _Tp, typename _Alloc>
   template<typename _ForwardIterator>
     void
     vector<_Tp, _Alloc>::
     _M_range_insert(iterator __position, _ForwardIterator __first,
       _ForwardIterator __last, std::forward_iterator_tag)
     {
if (__first != __last)
  {
    const size_type __n = std::distance(__first, __last);
    if (size_type(this->_M_impl._M_end_of_storage
    - this->_M_impl._M_finish) >= __n)
      {
 const size_type __elems_after = end() - __position;
 pointer __old_finish(this->_M_impl._M_finish);
 if (__elems_after > __n)
   {
     std::__uninitialized_move_a(this->_M_impl._M_finish - __n,
     this->_M_impl._M_finish,
     this->_M_impl._M_finish,
     _M_get_Tp_allocator());
     this->_M_impl._M_finish += __n;
     std::copy_backward(__position.base(), __old_finish - __n, __old_finish)
                                         ;
     std::copy(__first, __last, __position);
   }
 else
   {
     _ForwardIterator __mid = __first;
     std::advance(__mid, __elems_after);
     std::__uninitialized_copy_a(__mid, __last,
     this->_M_impl._M_finish,
     _M_get_Tp_allocator());
     this->_M_impl._M_finish += __n - __elems_after;
     std::__uninitialized_move_a(__position.base(),
     __old_finish,
     this->_M_impl._M_finish,
     _M_get_Tp_allocator());
     this->_M_impl._M_finish += __elems_after;
     std::copy(__first, __mid, __position);
   }
      }
    else
      {
 const size_type __len =
   _M_check_len(__n, "vector::_M_range_insert");
 pointer __new_start(this->_M_allocate(__len));
 pointer __new_finish(__new_start);
 try
   {
     __new_finish
       = std::__uninitialized_move_if_noexcept_a
       (this->_M_impl._M_start, __position.base(),
        __new_start, _M_get_Tp_allocator());
     __new_finish
       = std::__uninitialized_copy_a(__first, __last,
         __new_finish,
         _M_get_Tp_allocator());
     __new_finish
       = std::__uninitialized_move_if_noexcept_a
       (__position.base(), this->_M_impl._M_finish,
        __new_finish, _M_get_Tp_allocator());
   }
 catch(...)
   {
     std::_Destroy(__new_start, __new_finish,
     _M_get_Tp_allocator());
     _M_deallocate(__new_start, __len);
     throw;
   }
 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
        _M_get_Tp_allocator());
 _M_deallocate(this->_M_impl._M_start,
        this->_M_impl._M_end_of_storage
        - this->_M_impl._M_start);
 this->_M_impl._M_start = __new_start;
 this->_M_impl._M_finish = __new_finish;
 this->_M_impl._M_end_of_storage = __new_start + __len;
      }
  }
     }



 template<typename _Alloc>
   void
   vector<bool, _Alloc>::
   _M_reallocate(size_type __n)
   {
     _Bit_pointer __q = this->_M_allocate(__n);
     iterator __start(std::__addressof(*__q), 0);
     this->_M_impl._M_finish = _M_copy_aligned(begin(), end(), __start);
     this->_M_deallocate();
     this->_M_impl._M_start = __start;
     this->_M_impl._M_end_of_storage = __q + _S_nword(__n);
   }

 template<typename _Alloc>
   void
   vector<bool, _Alloc>::
   _M_fill_insert(iterator __position, size_type __n, bool __x)
   {
     if (__n == 0)
return;
     if (capacity() - size() >= __n)
{
  std::copy_backward(__position, end(),
       this->_M_impl._M_finish + difference_type(__n));
  std::fill(__position, __position + difference_type(__n), __x);
  this->_M_impl._M_finish += difference_type(__n);
}
     else
{
  const size_type __len =
    _M_check_len(__n, "vector<bool>::_M_fill_insert");
  _Bit_pointer __q = this->_M_allocate(__len);
  iterator __start(std::__addressof(*__q), 0);
  iterator __i = _M_copy_aligned(begin(), __position, __start);
  std::fill(__i, __i + difference_type(__n), __x);
  this->_M_impl._M_finish = std::copy(__position, end(),
          __i + difference_type(__n));
  this->_M_deallocate();
  this->_M_impl._M_end_of_storage = __q + _S_nword(__len);
  this->_M_impl._M_start = __start;
}
   }

 template<typename _Alloc>
   template<typename _ForwardIterator>
     void
     vector<bool, _Alloc>::
     _M_insert_range(iterator __position, _ForwardIterator __first,
       _ForwardIterator __last, std::forward_iterator_tag)
     {
if (__first != __last)
  {
    size_type __n = std::distance(__first, __last);
    if (capacity() - size() >= __n)
      {
 std::copy_backward(__position, end(),
      this->_M_impl._M_finish
      + difference_type(__n));
 std::copy(__first, __last, __position);
 this->_M_impl._M_finish += difference_type(__n);
      }
    else
      {
 const size_type __len =
   _M_check_len(__n, "vector<bool>::_M_insert_range");
 _Bit_pointer __q = this->_M_allocate(__len);
 iterator __start(std::__addressof(*__q), 0);
 iterator __i = _M_copy_aligned(begin(), __position, __start);
 __i = std::copy(__first, __last, __i);
 this->_M_impl._M_finish = std::copy(__position, end(), __i);
 this->_M_deallocate();
 this->_M_impl._M_end_of_storage = __q + _S_nword(__len);
 this->_M_impl._M_start = __start;
      }
  }
     }

 template<typename _Alloc>
   void
   vector<bool, _Alloc>::
   _M_insert_aux(iterator __position, bool __x)
   {
     if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_addr())
{
  std::copy_backward(__position, this->_M_impl._M_finish,
       this->_M_impl._M_finish + 1);
  *__position = __x;
  ++this->_M_impl._M_finish;
}
     else
{
  const size_type __len =
    _M_check_len(size_type(1), "vector<bool>::_M_insert_aux");
  _Bit_pointer __q = this->_M_allocate(__len);
  iterator __start(std::__addressof(*__q), 0);
  iterator __i = _M_copy_aligned(begin(), __position, __start);
  *__i++ = __x;
  this->_M_impl._M_finish = std::copy(__position, end(), __i);
  this->_M_deallocate();
  this->_M_impl._M_end_of_storage = __q + _S_nword(__len);
  this->_M_impl._M_start = __start;
}
   }

 template<typename _Alloc>
   typename vector<bool, _Alloc>::iterator
   vector<bool, _Alloc>::
   _M_erase(iterator __position)
   {
     if (__position + 1 != end())
       std::copy(__position + 1, end(), __position);
     --this->_M_impl._M_finish;
     return __position;
   }

 template<typename _Alloc>
   typename vector<bool, _Alloc>::iterator
   vector<bool, _Alloc>::
   _M_erase(iterator __first, iterator __last)
   {
     if (__first != __last)
_M_erase_at_end(std::copy(__last, end(), __first));
     return __first;
   }
# 840 "/usr/include/g++/bits/vector.tcc" 3

}
# 70 "/usr/include/g++/vector" 2 3
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/version.hpp" 2

# 1 "/usr/include/regex.h" 1 3 4
# 81 "/usr/include/regex.h" 3 4
typedef __off_t regoff_t;

typedef struct {
int re_magic;
size_t re_nsub;
const char *re_endp;
struct re_guts *re_g;
} regex_t;

typedef struct {
regoff_t rm_so;
regoff_t rm_eo;
} regmatch_t;
# 134 "/usr/include/regex.h" 3 4

# 134 "/usr/include/regex.h" 3 4
#pragma GCC visibility push(default)
# 134 "/usr/include/regex.h" 3 4
extern "C" {
int regcomp(regex_t * __restrict__, const char * __restrict__, int);
size_t regerror(int, const regex_t * __restrict__, char * __restrict__, size_t);
int regexec(const regex_t * __restrict__,
    const char * __restrict__, size_t, regmatch_t [], int);
void regfree(regex_t *);

ssize_t regnsub(char *, size_t, const char *, const regmatch_t *, const char *);
ssize_t regasub(char **buf, const char *, const regmatch_t *, const char *);

}
# 144 "/usr/include/regex.h" 3 4
#pragma GCC visibility pop
# 144 "/usr/include/regex.h" 3 4

# 42 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/version.hpp" 2

# 42 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/version.hpp"
typedef std::vector<regex_t> exv_grep_keys_t ;
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/version.hpp"
namespace Exiv2 {



   int versionNumber();



   std::string versionString();



   std::string versionNumberHexString();



   const char* version();
# 185 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/version.hpp"
   bool testVersion(int major, int minor, int patch);





   void dumpLibraryInfo(std::ostream& os,const exv_grep_keys_t& keys);
}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 2





# 1 "/usr/include/g++/utility" 1 3
# 58 "/usr/include/g++/utility" 3

# 59 "/usr/include/g++/utility" 3
# 68 "/usr/include/g++/utility" 3
# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 69 "/usr/include/g++/utility" 2 3
# 1 "/usr/include/g++/bits/stl_relops.h" 1 3
# 67 "/usr/include/g++/bits/stl_relops.h" 3

# 67 "/usr/include/g++/bits/stl_relops.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{
 namespace rel_ops
 {

# 85 "/usr/include/g++/bits/stl_relops.h" 3
   template <class _Tp>
     inline bool
     operator!=(const _Tp& __x, const _Tp& __y)
     { return !(__x == __y); }
# 98 "/usr/include/g++/bits/stl_relops.h" 3
   template <class _Tp>
     inline bool
     operator>(const _Tp& __x, const _Tp& __y)
     { return __y < __x; }
# 111 "/usr/include/g++/bits/stl_relops.h" 3
   template <class _Tp>
     inline bool
     operator<=(const _Tp& __x, const _Tp& __y)
     { return !(__y < __x); }
# 124 "/usr/include/g++/bits/stl_relops.h" 3
   template <class _Tp>
     inline bool
     operator>=(const _Tp& __x, const _Tp& __y)
     { return !(__x < __y); }


 }

}
# 70 "/usr/include/g++/utility" 2 3
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 2
# 1 "/usr/include/g++/algorithm" 1 3
# 58 "/usr/include/g++/algorithm" 3

# 59 "/usr/include/g++/algorithm" 3



# 1 "/usr/include/g++/bits/stl_algo.h" 1 3
# 59 "/usr/include/g++/bits/stl_algo.h" 3
# 1 "/usr/include/g++/cstdlib" 1 3
# 39 "/usr/include/g++/cstdlib" 3

# 40 "/usr/include/g++/cstdlib" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cstdlib" 2 3
# 72 "/usr/include/g++/cstdlib" 3
# 1 "/usr/include/stdlib.h" 1 3 4
# 38 "/usr/include/stdlib.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 39 "/usr/include/stdlib.h" 2 3 4
# 56 "/usr/include/stdlib.h" 3 4
typedef struct {
int quot;
int rem;
} div_t;

typedef struct {
long quot;
long rem;
} ldiv_t;




typedef struct {

long long int quot;

long long int rem;
} lldiv_t;



typedef struct {
quad_t quot;
quad_t rem;
} qdiv_t;
# 92 "/usr/include/stdlib.h" 3 4
extern size_t __mb_cur_max;



# 95 "/usr/include/stdlib.h" 3 4
#pragma GCC visibility push(default)
# 95 "/usr/include/stdlib.h" 3 4
extern "C" {
__attribute__((__noreturn__)) void _Exit(int);
__attribute__((__noreturn__)) void abort(void);
__attribute__((__pure__)) int abs(int);
int atexit(void (*)(void));
double atof(const char *);
int atoi(const char *);
long atol(const char *);



void *bsearch(const void *, const void *, size_t, size_t,
   int (*)(const void *, const void *));

void *calloc(size_t, size_t);
div_t div(int, int);
__attribute__((__noreturn__)) void exit(int);
void free(void *);
char *getenv(const char *);
__attribute__((__pure__)) long
 labs(long);
ldiv_t ldiv(long, long);
void *malloc(size_t);
void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
int rand(void);
void *realloc(void *, size_t);
void srand(unsigned);
double strtod(const char * __restrict__, char ** __restrict__);
long strtol(const char * __restrict__, char ** __restrict__, int);
unsigned long
 strtoul(const char * __restrict__, char ** __restrict__, int);




int system(const char *);


int mblen(const char *, size_t);
size_t mbstowcs(wchar_t * __restrict__, const char * __restrict__, size_t);
int wctomb(char *, wchar_t);
int mbtowc(wchar_t * __restrict__, const char * __restrict__, size_t);
size_t wcstombs(char * __restrict__, const wchar_t * __restrict__, size_t);
# 148 "/usr/include/stdlib.h" 3 4
int rand_r(unsigned int *);







double drand48(void);
double erand48(unsigned short[3]);
long jrand48(unsigned short[3]);
void lcong48(unsigned short[7]);
long lrand48(void);
long mrand48(void);
long nrand48(unsigned short[3]);
unsigned short *
 seed48(unsigned short[3]);
void srand48(long);


int putenv(char *) __asm("__putenv50");
# 178 "/usr/include/stdlib.h" 3 4
long a64l(const char *);
char *l64a(long);

long random(void);
char *setstate(char *);

char *initstate(unsigned int, char *, size_t) __asm("__initstate60");
void srandom(unsigned int) __asm("__srandom60");



int mkostemp(char *, int);
int mkostemps(char *, int, int);


char *mkdtemp(char *);
int mkstemp(char *);
char *mktemp(char *)



;

int setkey(const char *);

char *realpath(const char * __restrict__, char * __restrict__);

int ttyslot(void);

void *valloc(size_t);

int grantpt(int);
int unlockpt(int);
char *ptsname(int);
# 221 "/usr/include/stdlib.h" 3 4
long long int atoll(const char *);

long long int llabs(long long int);

lldiv_t lldiv(long long int, long long int);

long long int strtoll(const char * __restrict__, char ** __restrict__, int);

unsigned long long int
 strtoull(const char * __restrict__, char ** __restrict__, int);
float strtof(const char * __restrict__, char ** __restrict__);
long double strtold(const char * __restrict__, char ** __restrict__);




void *aligned_alloc(size_t, size_t);
int at_quick_exit(void (*)(void));
__attribute__((__noreturn__)) void quick_exit(int);







int setenv(const char *, const char *, int);

int unsetenv(const char *) __asm("__unsetenv13");


int posix_openpt(int);
int posix_memalign(void **, size_t, size_t);
# 266 "/usr/include/stdlib.h" 3 4
void *alloca(size_t);


__uint32_t arc4random(void);
void arc4random_stir(void);
void arc4random_buf(void *, size_t);
__uint32_t arc4random_uniform(__uint32_t);
void arc4random_addrandom(u_char *, int);
char *getbsize(int *, long *);
char *cgetcap(char *, const char *, int);
int cgetclose(void);
int cgetent(char **, const char * const *, const char *);
int cgetfirst(char **, const char * const *);
int cgetmatch(const char *, const char *);
int cgetnext(char **, const char * const *);
int cgetnum(char *, const char *, long *);
int cgetset(const char *);
int cgetstr(char *, const char *, char **);
int cgetustr(char *, const char *, char **);
void csetexpandtc(int);

int daemon(int, int);
int devname_r(dev_t, __mode_t, char *, size_t);

char *devname(dev_t, __mode_t) __asm("__devname50");
# 301 "/usr/include/stdlib.h" 3 4
int humanize_number(char *, size_t, __int64_t, const char *, int, int);
int dehumanize_number(const char *, __int64_t *);
ssize_t hmac(const char *, const void *, size_t, const void *, size_t, void *,
  size_t);

__devmajor_t getdevmajor(const char *, __mode_t);
int getloadavg(double [], int);

int getenv_r(const char *, char *, size_t);

void cfree(void *);

int heapsort(void *, size_t, size_t, int (*)(const void *, const void *));
int mergesort(void *, size_t, size_t,
    int (*)(const void *, const void *));
int ptsname_r(int, char *, size_t);
int radixsort(const unsigned char **, int, const unsigned char *,
    unsigned);
int sradixsort(const unsigned char **, int, const unsigned char *,
    unsigned);

void mi_vector_hash(const void * __restrict__, size_t, __uint32_t,
    __uint32_t[3]);

void setproctitle(const char *, ...)
    __attribute__((__format__ (__printf__, 1, 2)));
const char *getprogname(void) __attribute__((__const__));
void setprogname(const char *);

quad_t qabs(quad_t);
quad_t strtoq(const char * __restrict__, char ** __restrict__, int);
u_quad_t strtouq(const char * __restrict__, char ** __restrict__, int);


long long strsuftoll(const char *, const char *, long long, long long);

long long strsuftollx(const char *, const char *, long long, long long,
      char *, size_t);

int l64a_r(long, char *, int);

size_t shquote(const char *, char *, size_t);
size_t shquotev(int, char * const *, char *, size_t);

int reallocarr(void *, size_t, size_t);




qdiv_t qdiv(quad_t, quad_t);







double strtod_l(const char * __restrict__, char ** __restrict__, locale_t);
float strtof_l(const char * __restrict__, char ** __restrict__, locale_t);
long double strtold_l(const char * __restrict__, char ** __restrict__,
    locale_t);
long strtol_l(const char * __restrict__, char ** __restrict__, int, locale_t);
unsigned long
 strtoul_l(const char * __restrict__, char ** __restrict__, int, locale_t);

long long int
strtoll_l(const char * __restrict__, char ** __restrict__, int, locale_t);

unsigned long long int
strtoull_l(const char * __restrict__, char ** __restrict__, int, locale_t);


quad_t strtoq_l(const char * __restrict__, char ** __restrict__, int, locale_t);
u_quad_t strtouq_l(const char * __restrict__, char ** __restrict__, int, locale_t);

size_t _mb_cur_max_l(locale_t);

int mblen_l(const char *, size_t, locale_t);
size_t mbstowcs_l(wchar_t * __restrict__, const char * __restrict__, size_t,
     locale_t);
int wctomb_l(char *, wchar_t, locale_t);
int mbtowc_l(wchar_t * __restrict__, const char * __restrict__, size_t,
          locale_t);
size_t wcstombs_l(char * __restrict__, const wchar_t * __restrict__, size_t,
     locale_t);




}
# 390 "/usr/include/stdlib.h" 3 4
#pragma GCC visibility pop
# 390 "/usr/include/stdlib.h" 3 4

# 73 "/usr/include/g++/cstdlib" 2 3
# 114 "/usr/include/g++/cstdlib" 3
namespace std __attribute__ ((__visibility__ ("default")))
{


 using ::div_t;
 using ::ldiv_t;

 using ::abort;
 using ::abs;
 using ::atexit;





 using ::atof;
 using ::atoi;
 using ::atol;
 using ::bsearch;
 using ::calloc;
 using ::div;
 using ::exit;
 using ::free;
 using ::getenv;
 using ::labs;
 using ::ldiv;
 using ::malloc;

 using ::mblen;
 using ::mbstowcs;
 using ::mbtowc;

 using ::qsort;





 using ::rand;
 using ::realloc;
 using ::srand;
 using ::strtod;
 using ::strtol;
 using ::strtoul;
 using ::system;

 using ::wcstombs;
 using ::wctomb;



 inline long
 abs(long __i) { return __builtin_labs(__i); }

 inline ldiv_t
 div(long __i, long __j) { return ldiv(__i, __j); }



 inline long long
 abs(long long __x) { return __builtin_llabs (__x); }



 inline __int128
 abs(__int128 __x) { return __x >= 0 ? __x : -__x; }
# 195 "/usr/include/g++/cstdlib" 3

}
# 209 "/usr/include/g++/cstdlib" 3
namespace __gnu_cxx __attribute__ ((__visibility__ ("default")))
{



 using ::lldiv_t;





 using ::_Exit;



 using ::llabs;

 inline lldiv_t
 div(long long __n, long long __d)
 { lldiv_t __q; __q.quot = __n / __d; __q.rem = __n % __d; return __q; }

 using ::lldiv;
# 241 "/usr/include/g++/cstdlib" 3
 using ::atoll;
 using ::strtoll;
 using ::strtoull;

 using ::strtof;
 using ::strtold;


}

namespace std
{

 using ::__gnu_cxx::lldiv_t;

 using ::__gnu_cxx::_Exit;

 using ::__gnu_cxx::llabs;
 using ::__gnu_cxx::div;
 using ::__gnu_cxx::lldiv;

 using ::__gnu_cxx::atoll;
 using ::__gnu_cxx::strtof;
 using ::__gnu_cxx::strtoll;
 using ::__gnu_cxx::strtoull;
 using ::__gnu_cxx::strtold;
}
# 60 "/usr/include/g++/bits/stl_algo.h" 2 3
# 1 "/usr/include/g++/bits/algorithmfwd.h" 1 3
# 33 "/usr/include/g++/bits/algorithmfwd.h" 3

# 34 "/usr/include/g++/bits/algorithmfwd.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 36 "/usr/include/g++/bits/algorithmfwd.h" 2 3






namespace std __attribute__ ((__visibility__ ("default")))
{

# 203 "/usr/include/g++/bits/algorithmfwd.h" 3
 template<typename _FIter, typename _Tp>
   bool
   binary_search(_FIter, _FIter, const _Tp&);

 template<typename _FIter, typename _Tp, typename _Compare>
   bool
   binary_search(_FIter, _FIter, const _Tp&, _Compare);

 template<typename _IIter, typename _OIter>
   _OIter
   copy(_IIter, _IIter, _OIter);

 template<typename _BIter1, typename _BIter2>
   _BIter2
   copy_backward(_BIter1, _BIter1, _BIter2);
# 232 "/usr/include/g++/bits/algorithmfwd.h" 3
 template<typename _FIter, typename _Tp>
   pair<_FIter, _FIter>
   equal_range(_FIter, _FIter, const _Tp&);

 template<typename _FIter, typename _Tp, typename _Compare>
   pair<_FIter, _FIter>
   equal_range(_FIter, _FIter, const _Tp&, _Compare);

 template<typename _FIter, typename _Tp>
   void
   fill(_FIter, _FIter, const _Tp&);

 template<typename _OIter, typename _Size, typename _Tp>
   _OIter
   fill_n(_OIter, _Size, const _Tp&);



 template<typename _FIter1, typename _FIter2>
   _FIter1
   find_end(_FIter1, _FIter1, _FIter2, _FIter2);

 template<typename _FIter1, typename _FIter2, typename _BinaryPredicate>
   _FIter1
   find_end(_FIter1, _FIter1, _FIter2, _FIter2, _BinaryPredicate);
# 271 "/usr/include/g++/bits/algorithmfwd.h" 3
 template<typename _IIter1, typename _IIter2>
   bool
   includes(_IIter1, _IIter1, _IIter2, _IIter2);

 template<typename _IIter1, typename _IIter2, typename _Compare>
   bool
   includes(_IIter1, _IIter1, _IIter2, _IIter2, _Compare);

 template<typename _BIter>
   void
   inplace_merge(_BIter, _BIter, _BIter);

 template<typename _BIter, typename _Compare>
   void
   inplace_merge(_BIter, _BIter, _BIter, _Compare);
# 334 "/usr/include/g++/bits/algorithmfwd.h" 3
 template<typename _FIter1, typename _FIter2>
   void
   iter_swap(_FIter1, _FIter2);

 template<typename _FIter, typename _Tp>
   _FIter
   lower_bound(_FIter, _FIter, const _Tp&);

 template<typename _FIter, typename _Tp, typename _Compare>
   _FIter
   lower_bound(_FIter, _FIter, const _Tp&, _Compare);

 template<typename _RAIter>
   void
   make_heap(_RAIter, _RAIter);

 template<typename _RAIter, typename _Compare>
   void
   make_heap(_RAIter, _RAIter, _Compare);

 template<typename _Tp>

   const _Tp&
   max(const _Tp&, const _Tp&);

 template<typename _Tp, typename _Compare>

   const _Tp&
   max(const _Tp&, const _Tp&, _Compare);




 template<typename _Tp>

   const _Tp&
   min(const _Tp&, const _Tp&);

 template<typename _Tp, typename _Compare>

   const _Tp&
   min(const _Tp&, const _Tp&, _Compare);
# 433 "/usr/include/g++/bits/algorithmfwd.h" 3
 template<typename _BIter>
   bool
   next_permutation(_BIter, _BIter);

 template<typename _BIter, typename _Compare>
   bool
   next_permutation(_BIter, _BIter, _Compare);
# 450 "/usr/include/g++/bits/algorithmfwd.h" 3
 template<typename _IIter, typename _RAIter>
   _RAIter
   partial_sort_copy(_IIter, _IIter, _RAIter, _RAIter);

 template<typename _IIter, typename _RAIter, typename _Compare>
   _RAIter
   partial_sort_copy(_IIter, _IIter, _RAIter, _RAIter, _Compare);
# 471 "/usr/include/g++/bits/algorithmfwd.h" 3
 template<typename _RAIter>
   void
   pop_heap(_RAIter, _RAIter);

 template<typename _RAIter, typename _Compare>
   void
   pop_heap(_RAIter, _RAIter, _Compare);

 template<typename _BIter>
   bool
   prev_permutation(_BIter, _BIter);

 template<typename _BIter, typename _Compare>
   bool
   prev_permutation(_BIter, _BIter, _Compare);

 template<typename _RAIter>
   void
   push_heap(_RAIter, _RAIter);

 template<typename _RAIter, typename _Compare>
   void
   push_heap(_RAIter, _RAIter, _Compare);



 template<typename _FIter, typename _Tp>
   _FIter
   remove(_FIter, _FIter, const _Tp&);

 template<typename _FIter, typename _Predicate>
   _FIter
   remove_if(_FIter, _FIter, _Predicate);

 template<typename _IIter, typename _OIter, typename _Tp>
   _OIter
   remove_copy(_IIter, _IIter, _OIter, const _Tp&);

 template<typename _IIter, typename _OIter, typename _Predicate>
   _OIter
   remove_copy_if(_IIter, _IIter, _OIter, _Predicate);



 template<typename _IIter, typename _OIter, typename _Tp>
   _OIter
   replace_copy(_IIter, _IIter, _OIter, const _Tp&, const _Tp&);

 template<typename _Iter, typename _OIter, typename _Predicate, typename _Tp>
   _OIter
   replace_copy_if(_Iter, _Iter, _OIter, _Predicate, const _Tp&);



 template<typename _BIter>
   void
   reverse(_BIter, _BIter);

 template<typename _BIter, typename _OIter>
   _OIter
   reverse_copy(_BIter, _BIter, _OIter);

 inline namespace _V2
 {
   template<typename _FIter>
     _FIter
     rotate(_FIter, _FIter, _FIter);
 }

 template<typename _FIter, typename _OIter>
   _OIter
   rotate_copy(_FIter, _FIter, _FIter, _OIter);
# 557 "/usr/include/g++/bits/algorithmfwd.h" 3
 template<typename _RAIter>
   void
   sort_heap(_RAIter, _RAIter);

 template<typename _RAIter, typename _Compare>
   void
   sort_heap(_RAIter, _RAIter, _Compare);

 template<typename _BIter, typename _Predicate>
   _BIter
   stable_partition(_BIter, _BIter, _Predicate);

 template<typename _Tp>
   void
   swap(_Tp&, _Tp&)




   ;

 template<typename _Tp, size_t _Nm>
   void
   swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])



   ;

 template<typename _FIter1, typename _FIter2>
   _FIter2
   swap_ranges(_FIter1, _FIter1, _FIter2);



 template<typename _FIter>
   _FIter
   unique(_FIter, _FIter);

 template<typename _FIter, typename _BinaryPredicate>
   _FIter
   unique(_FIter, _FIter, _BinaryPredicate);



 template<typename _FIter, typename _Tp>
   _FIter
   upper_bound(_FIter, _FIter, const _Tp&);

 template<typename _FIter, typename _Tp, typename _Compare>
   _FIter
   upper_bound(_FIter, _FIter, const _Tp&, _Compare);





 template<typename _FIter>
   _FIter
   adjacent_find(_FIter, _FIter);

 template<typename _FIter, typename _BinaryPredicate>
   _FIter
   adjacent_find(_FIter, _FIter, _BinaryPredicate);

 template<typename _IIter, typename _Tp>
   typename iterator_traits<_IIter>::difference_type
   count(_IIter, _IIter, const _Tp&);

 template<typename _IIter, typename _Predicate>
   typename iterator_traits<_IIter>::difference_type
   count_if(_IIter, _IIter, _Predicate);

 template<typename _IIter1, typename _IIter2>
   bool
   equal(_IIter1, _IIter1, _IIter2);

 template<typename _IIter1, typename _IIter2, typename _BinaryPredicate>
   bool
   equal(_IIter1, _IIter1, _IIter2, _BinaryPredicate);

 template<typename _IIter, typename _Tp>
   _IIter
   find(_IIter, _IIter, const _Tp&);

 template<typename _FIter1, typename _FIter2>
   _FIter1
   find_first_of(_FIter1, _FIter1, _FIter2, _FIter2);

 template<typename _FIter1, typename _FIter2, typename _BinaryPredicate>
   _FIter1
   find_first_of(_FIter1, _FIter1, _FIter2, _FIter2, _BinaryPredicate);

 template<typename _IIter, typename _Predicate>
   _IIter
   find_if(_IIter, _IIter, _Predicate);

 template<typename _IIter, typename _Funct>
   _Funct
   for_each(_IIter, _IIter, _Funct);

 template<typename _FIter, typename _Generator>
   void
   generate(_FIter, _FIter, _Generator);

 template<typename _OIter, typename _Size, typename _Generator>
   _OIter
   generate_n(_OIter, _Size, _Generator);

 template<typename _IIter1, typename _IIter2>
   bool
   lexicographical_compare(_IIter1, _IIter1, _IIter2, _IIter2);

 template<typename _IIter1, typename _IIter2, typename _Compare>
   bool
   lexicographical_compare(_IIter1, _IIter1, _IIter2, _IIter2, _Compare);

 template<typename _FIter>

   _FIter
   max_element(_FIter, _FIter);

 template<typename _FIter, typename _Compare>

   _FIter
   max_element(_FIter, _FIter, _Compare);

 template<typename _IIter1, typename _IIter2, typename _OIter>
   _OIter
   merge(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);

 template<typename _IIter1, typename _IIter2, typename _OIter,
   typename _Compare>
   _OIter
   merge(_IIter1, _IIter1, _IIter2, _IIter2, _OIter, _Compare);

 template<typename _FIter>

   _FIter
   min_element(_FIter, _FIter);

 template<typename _FIter, typename _Compare>

   _FIter
   min_element(_FIter, _FIter, _Compare);

 template<typename _IIter1, typename _IIter2>
   pair<_IIter1, _IIter2>
   mismatch(_IIter1, _IIter1, _IIter2);

 template<typename _IIter1, typename _IIter2, typename _BinaryPredicate>
   pair<_IIter1, _IIter2>
   mismatch(_IIter1, _IIter1, _IIter2, _BinaryPredicate);

 template<typename _RAIter>
   void
   nth_element(_RAIter, _RAIter, _RAIter);

 template<typename _RAIter, typename _Compare>
   void
   nth_element(_RAIter, _RAIter, _RAIter, _Compare);

 template<typename _RAIter>
   void
   partial_sort(_RAIter, _RAIter, _RAIter);

 template<typename _RAIter, typename _Compare>
   void
   partial_sort(_RAIter, _RAIter, _RAIter, _Compare);

 template<typename _BIter, typename _Predicate>
   _BIter
   partition(_BIter, _BIter, _Predicate);

 template<typename _RAIter>
   void
   random_shuffle(_RAIter, _RAIter);

 template<typename _RAIter, typename _Generator>
   void
   random_shuffle(_RAIter, _RAIter,



    _Generator&);


 template<typename _FIter, typename _Tp>
   void
   replace(_FIter, _FIter, const _Tp&, const _Tp&);

 template<typename _FIter, typename _Predicate, typename _Tp>
   void
   replace_if(_FIter, _FIter, _Predicate, const _Tp&);

 template<typename _FIter1, typename _FIter2>
   _FIter1
   search(_FIter1, _FIter1, _FIter2, _FIter2);

 template<typename _FIter1, typename _FIter2, typename _BinaryPredicate>
   _FIter1
   search(_FIter1, _FIter1, _FIter2, _FIter2, _BinaryPredicate);

 template<typename _FIter, typename _Size, typename _Tp>
   _FIter
   search_n(_FIter, _FIter, _Size, const _Tp&);

 template<typename _FIter, typename _Size, typename _Tp,
   typename _BinaryPredicate>
   _FIter
   search_n(_FIter, _FIter, _Size, const _Tp&, _BinaryPredicate);

 template<typename _IIter1, typename _IIter2, typename _OIter>
   _OIter
   set_difference(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);

 template<typename _IIter1, typename _IIter2, typename _OIter,
   typename _Compare>
   _OIter
   set_difference(_IIter1, _IIter1, _IIter2, _IIter2, _OIter, _Compare);

 template<typename _IIter1, typename _IIter2, typename _OIter>
   _OIter
   set_intersection(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);

 template<typename _IIter1, typename _IIter2, typename _OIter,
   typename _Compare>
   _OIter
   set_intersection(_IIter1, _IIter1, _IIter2, _IIter2, _OIter, _Compare);

 template<typename _IIter1, typename _IIter2, typename _OIter>
   _OIter
   set_symmetric_difference(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);

 template<typename _IIter1, typename _IIter2, typename _OIter,
   typename _Compare>
   _OIter
   set_symmetric_difference(_IIter1, _IIter1, _IIter2, _IIter2,
       _OIter, _Compare);

 template<typename _IIter1, typename _IIter2, typename _OIter>
   _OIter
   set_union(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);

 template<typename _IIter1, typename _IIter2, typename _OIter,
   typename _Compare>
   _OIter
   set_union(_IIter1, _IIter1, _IIter2, _IIter2, _OIter, _Compare);

 template<typename _RAIter>
   void
   sort(_RAIter, _RAIter);

 template<typename _RAIter, typename _Compare>
   void
   sort(_RAIter, _RAIter, _Compare);

 template<typename _RAIter>
   void
   stable_sort(_RAIter, _RAIter);

 template<typename _RAIter, typename _Compare>
   void
   stable_sort(_RAIter, _RAIter, _Compare);

 template<typename _IIter, typename _OIter, typename _UnaryOperation>
   _OIter
   transform(_IIter, _IIter, _OIter, _UnaryOperation);

 template<typename _IIter1, typename _IIter2, typename _OIter,
   typename _BinaryOperation>
   _OIter
   transform(_IIter1, _IIter1, _IIter2, _OIter, _BinaryOperation);

 template<typename _IIter, typename _OIter>
   _OIter
   unique_copy(_IIter, _IIter, _OIter);

 template<typename _IIter, typename _OIter, typename _BinaryPredicate>
   _OIter
   unique_copy(_IIter, _IIter, _OIter, _BinaryPredicate);


}
# 61 "/usr/include/g++/bits/stl_algo.h" 2 3
# 1 "/usr/include/g++/bits/stl_heap.h" 1 3
# 62 "/usr/include/g++/bits/stl_heap.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{







 template<typename _RandomAccessIterator, typename _Distance,
   typename _Compare>
   _Distance
   __is_heap_until(_RandomAccessIterator __first, _Distance __n,
     _Compare __comp)
   {
     _Distance __parent = 0;
     for (_Distance __child = 1; __child < __n; ++__child)
{
  if (__comp(__first + __parent, __first + __child))
    return __child;
  if ((__child & 1) == 0)
    ++__parent;
}
     return __n;
   }



 template<typename _RandomAccessIterator, typename _Distance>
   inline bool
   __is_heap(_RandomAccessIterator __first, _Distance __n)
   {
     return std::__is_heap_until(__first, __n,
  __gnu_cxx::__ops::__iter_less_iter()) == __n;
   }

 template<typename _RandomAccessIterator, typename _Compare,
   typename _Distance>
   inline bool
   __is_heap(_RandomAccessIterator __first, _Compare __comp, _Distance __n)
   {
     return std::__is_heap_until(__first, __n,
__gnu_cxx::__ops::__iter_comp_iter(__comp)) == __n;
   }

 template<typename _RandomAccessIterator>
   inline bool
   __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
   { return std::__is_heap(__first, std::distance(__first, __last)); }

 template<typename _RandomAccessIterator, typename _Compare>
   inline bool
   __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
      _Compare __comp)
   { return std::__is_heap(__first, __comp, std::distance(__first, __last)); }




 template<typename _RandomAccessIterator, typename _Distance, typename _Tp,
   typename _Compare>
   void
   __push_heap(_RandomAccessIterator __first,
 _Distance __holeIndex, _Distance __topIndex, _Tp __value,
 _Compare __comp)
   {
     _Distance __parent = (__holeIndex - 1) / 2;
     while (__holeIndex > __topIndex && __comp(__first + __parent, __value))
{
  *(__first + __holeIndex) = (*(__first + __parent));
  __holeIndex = __parent;
  __parent = (__holeIndex - 1) / 2;
}
     *(__first + __holeIndex) = (__value);
   }
# 148 "/usr/include/g++/bits/stl_heap.h" 3
 template<typename _RandomAccessIterator>
   inline void
   push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
   {
     typedef typename iterator_traits<_RandomAccessIterator>::value_type
  _ValueType;
     typedef typename iterator_traits<_RandomAccessIterator>::difference_type
  _DistanceType;





     ;
     ;

     _ValueType __value = (*(__last - 1));
     std::__push_heap(__first, _DistanceType((__last - __first) - 1),
        _DistanceType(0), (__value),
        __gnu_cxx::__ops::__iter_less_val());
   }
# 182 "/usr/include/g++/bits/stl_heap.h" 3
 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
      _Compare __comp)
   {
     typedef typename iterator_traits<_RandomAccessIterator>::value_type
  _ValueType;
     typedef typename iterator_traits<_RandomAccessIterator>::difference_type
  _DistanceType;




     ;
     ;

     _ValueType __value = (*(__last - 1));
     std::__push_heap(__first, _DistanceType((__last - __first) - 1),
        _DistanceType(0), (__value),
        __gnu_cxx::__ops::__iter_comp_val(__comp));
   }

 template<typename _RandomAccessIterator, typename _Distance,
   typename _Tp, typename _Compare>
   void
   __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
   _Distance __len, _Tp __value, _Compare __comp)
   {
     const _Distance __topIndex = __holeIndex;
     _Distance __secondChild = __holeIndex;
     while (__secondChild < (__len - 1) / 2)
{
  __secondChild = 2 * (__secondChild + 1);
  if (__comp(__first + __secondChild,
      __first + (__secondChild - 1)))
    __secondChild--;
  *(__first + __holeIndex) = (*(__first + __secondChild));
  __holeIndex = __secondChild;
}
     if ((__len & 1) == 0 && __secondChild == (__len - 2) / 2)
{
  __secondChild = 2 * (__secondChild + 1);
  *(__first + __holeIndex) = (*(__first + (__secondChild - 1)))
                                 ;
  __holeIndex = __secondChild - 1;
}
     std::__push_heap(__first, __holeIndex, __topIndex,
        (__value),
        __gnu_cxx::__ops::__iter_comp_val(__comp));
   }

 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   __pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
       _RandomAccessIterator __result, _Compare __comp)
   {
     typedef typename iterator_traits<_RandomAccessIterator>::value_type
_ValueType;
     typedef typename iterator_traits<_RandomAccessIterator>::difference_type
_DistanceType;

     _ValueType __value = (*__result);
     *__result = (*__first);
     std::__adjust_heap(__first, _DistanceType(0),
   _DistanceType(__last - __first),
   (__value), __comp);
   }
# 261 "/usr/include/g++/bits/stl_heap.h" 3
 template<typename _RandomAccessIterator>
   inline void
   pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
   {
     typedef typename iterator_traits<_RandomAccessIterator>::value_type
_ValueType;





     ;
     ;
     ;

     if (__last - __first > 1)
{
  --__last;
  std::__pop_heap(__first, __last, __last,
    __gnu_cxx::__ops::__iter_less_iter());
}
   }
# 295 "/usr/include/g++/bits/stl_heap.h" 3
 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   pop_heap(_RandomAccessIterator __first,
     _RandomAccessIterator __last, _Compare __comp)
   {



     ;
     ;
     ;

     if (__last - __first > 1)
{
  --__last;
  std::__pop_heap(__first, __last, __last,
    __gnu_cxx::__ops::__iter_comp_iter(__comp));
}
   }

 template<typename _RandomAccessIterator, typename _Compare>
   void
   __make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
 _Compare __comp)
   {
     typedef typename iterator_traits<_RandomAccessIterator>::value_type
  _ValueType;
     typedef typename iterator_traits<_RandomAccessIterator>::difference_type
  _DistanceType;

     if (__last - __first < 2)
return;

     const _DistanceType __len = __last - __first;
     _DistanceType __parent = (__len - 2) / 2;
     while (true)
{
  _ValueType __value = (*(__first + __parent));
  std::__adjust_heap(__first, __parent, __len, (__value),
       __comp);
  if (__parent == 0)
    return;
  __parent--;
}
   }
# 349 "/usr/include/g++/bits/stl_heap.h" 3
 template<typename _RandomAccessIterator>
   inline void
   make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
   {





     ;

     std::__make_heap(__first, __last,
        __gnu_cxx::__ops::__iter_less_iter());
   }
# 374 "/usr/include/g++/bits/stl_heap.h" 3
 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
      _Compare __comp)
   {



     ;

     std::__make_heap(__first, __last,
        __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _RandomAccessIterator, typename _Compare>
   void
   __sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
 _Compare __comp)
   {
     while (__last - __first > 1)
{
  --__last;
  std::__pop_heap(__first, __last, __last, __comp);
}
   }
# 408 "/usr/include/g++/bits/stl_heap.h" 3
 template<typename _RandomAccessIterator>
   inline void
   sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
   {





     ;
     ;

     std::__sort_heap(__first, __last,
        __gnu_cxx::__ops::__iter_less_iter());
   }
# 434 "/usr/include/g++/bits/stl_heap.h" 3
 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
      _Compare __comp)
   {



     ;
     ;

     std::__sort_heap(__first, __last,
        __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }
# 529 "/usr/include/g++/bits/stl_heap.h" 3

}
# 62 "/usr/include/g++/bits/stl_algo.h" 2 3
# 1 "/usr/include/g++/bits/stl_tempbuf.h" 1 3
# 62 "/usr/include/g++/bits/stl_tempbuf.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{

# 83 "/usr/include/g++/bits/stl_tempbuf.h" 3
 template<typename _Tp>
   pair<_Tp*, ptrdiff_t>
   get_temporary_buffer(ptrdiff_t __len)
   {
     const ptrdiff_t __max =
__gnu_cxx::__numeric_traits<ptrdiff_t>::__max / sizeof(_Tp);
     if (__len > __max)
__len = __max;

     while (__len > 0)
{
  _Tp* __tmp = static_cast<_Tp*>(::operator new(__len * sizeof(_Tp),
      std::nothrow));
  if (__tmp != 0)
    return std::pair<_Tp*, ptrdiff_t>(__tmp, __len);
  __len /= 2;
}
     return std::pair<_Tp*, ptrdiff_t>(static_cast<_Tp*>(0), 0);
   }
# 110 "/usr/include/g++/bits/stl_tempbuf.h" 3
 template<typename _Tp>
   inline void
   return_temporary_buffer(_Tp* __p)
   { ::operator delete(__p, std::nothrow); }







 template<typename _ForwardIterator, typename _Tp>
   class _Temporary_buffer
   {



   public:
     typedef _Tp value_type;
     typedef value_type* pointer;
     typedef pointer iterator;
     typedef ptrdiff_t size_type;

   protected:
     size_type _M_original_len;
     size_type _M_len;
     pointer _M_buffer;

   public:

     size_type
     size() const
     { return _M_len; }


     size_type
     requested_size() const
     { return _M_original_len; }


     iterator
     begin()
     { return _M_buffer; }


     iterator
     end()
     { return _M_buffer + _M_len; }





     _Temporary_buffer(_ForwardIterator __first, _ForwardIterator __last);

     ~_Temporary_buffer()
     {
std::_Destroy(_M_buffer, _M_buffer + _M_len);
std::return_temporary_buffer(_M_buffer);
     }

   private:

     _Temporary_buffer(const _Temporary_buffer&);

     void
     operator=(const _Temporary_buffer&);
   };


 template<bool>
   struct __uninitialized_construct_buf_dispatch
   {
     template<typename _Pointer, typename _ForwardIterator>
       static void
       __ucr(_Pointer __first, _Pointer __last,
      _ForwardIterator __seed)
       {
  if(__first == __last)
    return;

  _Pointer __cur = __first;
  try
    {
      std::_Construct(std::__addressof(*__first),
        (*__seed));
      _Pointer __prev = __cur;
      ++__cur;
      for(; __cur != __last; ++__cur, ++__prev)
 std::_Construct(std::__addressof(*__cur),
   (*__prev));
      *__seed = (*__prev);
    }
  catch(...)
    {
      std::_Destroy(__first, __cur);
      throw;
    }
}
   };

 template<>
   struct __uninitialized_construct_buf_dispatch<true>
   {
     template<typename _Pointer, typename _ForwardIterator>
       static void
       __ucr(_Pointer, _Pointer, _ForwardIterator) { }
   };
# 229 "/usr/include/g++/bits/stl_tempbuf.h" 3
 template<typename _Pointer, typename _ForwardIterator>
   inline void
   __uninitialized_construct_buf(_Pointer __first, _Pointer __last,
     _ForwardIterator __seed)
   {
     typedef typename std::iterator_traits<_Pointer>::value_type
_ValueType;

     std::__uninitialized_construct_buf_dispatch<
       __has_trivial_constructor(_ValueType)>::
  __ucr(__first, __last, __seed);
   }

 template<typename _ForwardIterator, typename _Tp>
   _Temporary_buffer<_ForwardIterator, _Tp>::
   _Temporary_buffer(_ForwardIterator __first, _ForwardIterator __last)
   : _M_original_len(std::distance(__first, __last)),
     _M_len(0), _M_buffer(0)
   {
     try
{
  std::pair<pointer, size_type> __p(std::get_temporary_buffer<
        value_type>(_M_original_len));
  _M_buffer = __p.first;
  _M_len = __p.second;
  if (_M_buffer)
    std::__uninitialized_construct_buf(_M_buffer, _M_buffer + _M_len,
           __first);
}
     catch(...)
{
  std::return_temporary_buffer(_M_buffer);
  _M_buffer = 0;
  _M_len = 0;
  throw;
}
   }


}
# 63 "/usr/include/g++/bits/stl_algo.h" 2 3
# 71 "/usr/include/g++/bits/stl_algo.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{



 template<typename _Iterator, typename _Compare>
   void
   __move_median_to_first(_Iterator __result,_Iterator __a, _Iterator __b,
     _Iterator __c, _Compare __comp)
   {
     if (__comp(__a, __b))
{
  if (__comp(__b, __c))
    std::iter_swap(__result, __b);
  else if (__comp(__a, __c))
    std::iter_swap(__result, __c);
  else
    std::iter_swap(__result, __a);
}
     else if (__comp(__a, __c))
std::iter_swap(__result, __a);
     else if (__comp(__b, __c))
std::iter_swap(__result, __c);
     else
std::iter_swap(__result, __b);
   }


 template<typename _InputIterator, typename _Predicate>
   inline _InputIterator
   __find_if(_InputIterator __first, _InputIterator __last,
      _Predicate __pred, input_iterator_tag)
   {
     while (__first != __last && !__pred(__first))
++__first;
     return __first;
   }


 template<typename _RandomAccessIterator, typename _Predicate>
   _RandomAccessIterator
   __find_if(_RandomAccessIterator __first, _RandomAccessIterator __last,
      _Predicate __pred, random_access_iterator_tag)
   {
     typename iterator_traits<_RandomAccessIterator>::difference_type
__trip_count = (__last - __first) >> 2;

     for (; __trip_count > 0; --__trip_count)
{
  if (__pred(__first))
    return __first;
  ++__first;

  if (__pred(__first))
    return __first;
  ++__first;

  if (__pred(__first))
    return __first;
  ++__first;

  if (__pred(__first))
    return __first;
  ++__first;
}

     switch (__last - __first)
{
case 3:
  if (__pred(__first))
    return __first;
  ++__first;
case 2:
  if (__pred(__first))
    return __first;
  ++__first;
case 1:
  if (__pred(__first))
    return __first;
  ++__first;
case 0:
default:
  return __last;
}
   }

 template<typename _Iterator, typename _Predicate>
   inline _Iterator
   __find_if(_Iterator __first, _Iterator __last, _Predicate __pred)
   {
     return __find_if(__first, __last, __pred,
        std::__iterator_category(__first));
   }


 template<typename _InputIterator, typename _Predicate>
   inline _InputIterator
   __find_if_not(_InputIterator __first, _InputIterator __last,
   _Predicate __pred)
   {
     return std::__find_if(__first, __last,
      __gnu_cxx::__ops::__negate(__pred),
      std::__iterator_category(__first));
   }




 template<typename _InputIterator, typename _Predicate, typename _Distance>
   _InputIterator
   __find_if_not_n(_InputIterator __first, _Distance& __len, _Predicate __pred)
   {
     for (; __len; --__len, ++__first)
if (!__pred(__first))
  break;
     return __first;
   }
# 202 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator1, typename _ForwardIterator2,
   typename _BinaryPredicate>
   _ForwardIterator1
   __search(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
     _ForwardIterator2 __first2, _ForwardIterator2 __last2,
     _BinaryPredicate __predicate)
   {

     if (__first1 == __last1 || __first2 == __last2)
return __first1;


     _ForwardIterator2 __p1(__first2);
     if (++__p1 == __last2)
return std::__find_if(__first1, __last1,
 __gnu_cxx::__ops::__iter_comp_iter(__predicate, __first2));


     _ForwardIterator2 __p;
     _ForwardIterator1 __current = __first1;

     for (;;)
{
  __first1 =
    std::__find_if(__first1, __last1,
 __gnu_cxx::__ops::__iter_comp_iter(__predicate, __first2));

  if (__first1 == __last1)
    return __last1;

  __p = __p1;
  __current = __first1;
  if (++__current == __last1)
    return __last1;

  while (__predicate(__current, __p))
    {
      if (++__p == __last2)
 return __first1;
      if (++__current == __last1)
 return __last1;
    }
  ++__first1;
}
     return __first1;
   }






 template<typename _ForwardIterator, typename _Integer,
   typename _UnaryPredicate>
   _ForwardIterator
   __search_n_aux(_ForwardIterator __first, _ForwardIterator __last,
    _Integer __count, _UnaryPredicate __unary_pred,
    std::forward_iterator_tag)
   {
     __first = std::__find_if(__first, __last, __unary_pred);
     while (__first != __last)
{
  typename iterator_traits<_ForwardIterator>::difference_type
    __n = __count;
  _ForwardIterator __i = __first;
  ++__i;
  while (__i != __last && __n != 1 && __unary_pred(__i))
    {
      ++__i;
      --__n;
    }
  if (__n == 1)
    return __first;
  if (__i == __last)
    return __last;
  __first = std::__find_if(++__i, __last, __unary_pred);
}
     return __last;
   }





 template<typename _RandomAccessIter, typename _Integer,
   typename _UnaryPredicate>
   _RandomAccessIter
   __search_n_aux(_RandomAccessIter __first, _RandomAccessIter __last,
    _Integer __count, _UnaryPredicate __unary_pred,
    std::random_access_iterator_tag)
   {
     typedef typename std::iterator_traits<_RandomAccessIter>::difference_type
_DistanceType;

     _DistanceType __tailSize = __last - __first;
     _DistanceType __remainder = __count;

     while (__remainder <= __tailSize)
{
  __first += __remainder;
  __tailSize -= __remainder;


  _RandomAccessIter __backTrack = __first;
  while (__unary_pred(--__backTrack))
    {
      if (--__remainder == 0)
        return (__first - __count);
    }
  __remainder = __count + 1 - (__first - __backTrack);
}
     return __last;
   }

 template<typename _ForwardIterator, typename _Integer,
          typename _UnaryPredicate>
   _ForwardIterator
   __search_n(_ForwardIterator __first, _ForwardIterator __last,
       _Integer __count,
       _UnaryPredicate __unary_pred)
   {
     if (__count <= 0)
return __first;

     if (__count == 1)
return std::__find_if(__first, __last, __unary_pred);

     return std::__search_n_aux(__first, __last, __count, __unary_pred,
    std::__iterator_category(__first));
   }


 template<typename _ForwardIterator1, typename _ForwardIterator2,
   typename _BinaryPredicate>
   _ForwardIterator1
   __find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
       _ForwardIterator2 __first2, _ForwardIterator2 __last2,
       forward_iterator_tag, forward_iterator_tag,
       _BinaryPredicate __comp)
   {
     if (__first2 == __last2)
return __last1;

     _ForwardIterator1 __result = __last1;
     while (1)
{
  _ForwardIterator1 __new_result
    = std::__search(__first1, __last1, __first2, __last2, __comp);
  if (__new_result == __last1)
    return __result;
  else
    {
      __result = __new_result;
      __first1 = __new_result;
      ++__first1;
    }
}
   }


 template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
   typename _BinaryPredicate>
   _BidirectionalIterator1
   __find_end(_BidirectionalIterator1 __first1,
       _BidirectionalIterator1 __last1,
       _BidirectionalIterator2 __first2,
       _BidirectionalIterator2 __last2,
       bidirectional_iterator_tag, bidirectional_iterator_tag,
       _BinaryPredicate __comp)
   {






     typedef reverse_iterator<_BidirectionalIterator1> _RevIterator1;
     typedef reverse_iterator<_BidirectionalIterator2> _RevIterator2;

     _RevIterator1 __rlast1(__first1);
     _RevIterator2 __rlast2(__first2);
     _RevIterator1 __rresult = std::__search(_RevIterator1(__last1), __rlast1,
          _RevIterator2(__last2), __rlast2,
          __comp);

     if (__rresult == __rlast1)
return __last1;
     else
{
  _BidirectionalIterator1 __result = __rresult.base();
  std::advance(__result, -std::distance(__first2, __last2));
  return __result;
}
   }
# 423 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator1, typename _ForwardIterator2>
   inline _ForwardIterator1
   find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
     _ForwardIterator2 __first2, _ForwardIterator2 __last2)
   {






     ;
     ;

     return std::__find_end(__first1, __last1, __first2, __last2,
       std::__iterator_category(__first1),
       std::__iterator_category(__first2),
       __gnu_cxx::__ops::__iter_equal_to_iter());
   }
# 471 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator1, typename _ForwardIterator2,
   typename _BinaryPredicate>
   inline _ForwardIterator1
   find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
     _ForwardIterator2 __first2, _ForwardIterator2 __last2,
     _BinaryPredicate __comp)
   {






     ;
     ;

     return std::__find_end(__first1, __last1, __first2, __last2,
       std::__iterator_category(__first1),
       std::__iterator_category(__first2),
       __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }
# 636 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _OutputIterator,
   typename _Predicate>
   _OutputIterator
   __remove_copy_if(_InputIterator __first, _InputIterator __last,
      _OutputIterator __result, _Predicate __pred)
   {
     for (; __first != __last; ++__first)
if (!__pred(__first))
  {
    *__result = *__first;
    ++__result;
  }
     return __result;
   }
# 665 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _OutputIterator, typename _Tp>
   inline _OutputIterator
   remove_copy(_InputIterator __first, _InputIterator __last,
 _OutputIterator __result, const _Tp& __value)
   {






     ;

     return std::__remove_copy_if(__first, __last, __result,
__gnu_cxx::__ops::__iter_equals_val(__value));
   }
# 697 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _OutputIterator,
   typename _Predicate>
   inline _OutputIterator
   remove_copy_if(_InputIterator __first, _InputIterator __last,
    _OutputIterator __result, _Predicate __pred)
   {






     ;

     return std::__remove_copy_if(__first, __last, __result,
      __gnu_cxx::__ops::__pred_iter(__pred));
   }
# 855 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Predicate>
   _ForwardIterator
   __remove_if(_ForwardIterator __first, _ForwardIterator __last,
 _Predicate __pred)
   {
     __first = std::__find_if(__first, __last, __pred);
     if (__first == __last)
       return __first;
     _ForwardIterator __result = __first;
     ++__first;
     for (; __first != __last; ++__first)
       if (!__pred(__first))
         {
           *__result = (*__first);
           ++__result;
         }
     return __result;
   }
# 891 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Tp>
   inline _ForwardIterator
   remove(_ForwardIterator __first, _ForwardIterator __last,
   const _Tp& __value)
   {





     ;

     return std::__remove_if(__first, __last,
 __gnu_cxx::__ops::__iter_equals_val(__value));
   }
# 924 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Predicate>
   inline _ForwardIterator
   remove_if(_ForwardIterator __first, _ForwardIterator __last,
      _Predicate __pred)
   {





     ;

     return std::__remove_if(__first, __last,
        __gnu_cxx::__ops::__pred_iter(__pred));
   }

 template<typename _ForwardIterator, typename _BinaryPredicate>
   _ForwardIterator
   __adjacent_find(_ForwardIterator __first, _ForwardIterator __last,
     _BinaryPredicate __binary_pred)
   {
     if (__first == __last)
return __last;
     _ForwardIterator __next = __first;
     while (++__next != __last)
{
  if (__binary_pred(__first, __next))
    return __first;
  __first = __next;
}
     return __last;
   }

 template<typename _ForwardIterator, typename _BinaryPredicate>
   _ForwardIterator
   __unique(_ForwardIterator __first, _ForwardIterator __last,
     _BinaryPredicate __binary_pred)
   {

     __first = std::__adjacent_find(__first, __last, __binary_pred);
     if (__first == __last)
return __last;


     _ForwardIterator __dest = __first;
     ++__first;
     while (++__first != __last)
if (!__binary_pred(__dest, __first))
  *++__dest = (*__first);
     return ++__dest;
   }
# 990 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator>
   inline _ForwardIterator
   unique(_ForwardIterator __first, _ForwardIterator __last)
   {





     ;

     return std::__unique(__first, __last,
     __gnu_cxx::__ops::__iter_equal_to_iter());
   }
# 1020 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _BinaryPredicate>
   inline _ForwardIterator
   unique(_ForwardIterator __first, _ForwardIterator __last,
          _BinaryPredicate __binary_pred)
   {






     ;

     return std::__unique(__first, __last,
     __gnu_cxx::__ops::__iter_comp_iter(__binary_pred));
   }







 template<typename _ForwardIterator, typename _OutputIterator,
   typename _BinaryPredicate>
   _OutputIterator
   __unique_copy(_ForwardIterator __first, _ForwardIterator __last,
   _OutputIterator __result, _BinaryPredicate __binary_pred,
   forward_iterator_tag, output_iterator_tag)
   {





     _ForwardIterator __next = __first;
     *__result = *__first;
     while (++__next != __last)
if (!__binary_pred(__first, __next))
  {
    __first = __next;
    *++__result = *__first;
  }
     return ++__result;
   }







 template<typename _InputIterator, typename _OutputIterator,
   typename _BinaryPredicate>
   _OutputIterator
   __unique_copy(_InputIterator __first, _InputIterator __last,
   _OutputIterator __result, _BinaryPredicate __binary_pred,
   input_iterator_tag, output_iterator_tag)
   {





     typename iterator_traits<_InputIterator>::value_type __value = *__first;
     __decltype(__gnu_cxx::__ops::__iter_comp_val(__binary_pred))
__rebound_pred
= __gnu_cxx::__ops::__iter_comp_val(__binary_pred);
     *__result = __value;
     while (++__first != __last)
if (!__rebound_pred(__first, __value))
  {
    __value = *__first;
    *++__result = __value;
  }
     return ++__result;
   }







 template<typename _InputIterator, typename _ForwardIterator,
   typename _BinaryPredicate>
   _ForwardIterator
   __unique_copy(_InputIterator __first, _InputIterator __last,
   _ForwardIterator __result, _BinaryPredicate __binary_pred,
   input_iterator_tag, forward_iterator_tag)
   {




     *__result = *__first;
     while (++__first != __last)
if (!__binary_pred(__result, __first))
  *++__result = *__first;
     return ++__result;
   }






 template<typename _BidirectionalIterator>
   void
   __reverse(_BidirectionalIterator __first, _BidirectionalIterator __last,
      bidirectional_iterator_tag)
   {
     while (true)
if (__first == __last || __first == --__last)
  return;
else
  {
    std::iter_swap(__first, __last);
    ++__first;
  }
   }






 template<typename _RandomAccessIterator>
   void
   __reverse(_RandomAccessIterator __first, _RandomAccessIterator __last,
      random_access_iterator_tag)
   {
     if (__first == __last)
return;
     --__last;
     while (__first < __last)
{
  std::iter_swap(__first, __last);
  ++__first;
  --__last;
}
   }
# 1175 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _BidirectionalIterator>
   inline void
   reverse(_BidirectionalIterator __first, _BidirectionalIterator __last)
   {



     ;
     std::__reverse(__first, __last, std::__iterator_category(__first));
   }
# 1202 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _BidirectionalIterator, typename _OutputIterator>
   _OutputIterator
   reverse_copy(_BidirectionalIterator __first, _BidirectionalIterator __last,
  _OutputIterator __result)
   {





     ;

     while (__first != __last)
{
  --__last;
  *__result = *__last;
  ++__result;
}
     return __result;
   }





 template<typename _EuclideanRingElement>
   _EuclideanRingElement
   __gcd(_EuclideanRingElement __m, _EuclideanRingElement __n)
   {
     while (__n != 0)
{
  _EuclideanRingElement __t = __m % __n;
  __m = __n;
  __n = __t;
}
     return __m;
   }

 inline namespace _V2
 {


 template<typename _ForwardIterator>
   _ForwardIterator
   __rotate(_ForwardIterator __first,
     _ForwardIterator __middle,
     _ForwardIterator __last,
     forward_iterator_tag)
   {
     if (__first == __middle)
return __last;
     else if (__last == __middle)
return __first;

     _ForwardIterator __first2 = __middle;
     do
{
  std::iter_swap(__first, __first2);
  ++__first;
  ++__first2;
  if (__first == __middle)
    __middle = __first2;
}
     while (__first2 != __last);

     _ForwardIterator __ret = __first;

     __first2 = __middle;

     while (__first2 != __last)
{
  std::iter_swap(__first, __first2);
  ++__first;
  ++__first2;
  if (__first == __middle)
    __middle = __first2;
  else if (__first2 == __last)
    __first2 = __middle;
}
     return __ret;
   }


 template<typename _BidirectionalIterator>
   _BidirectionalIterator
   __rotate(_BidirectionalIterator __first,
     _BidirectionalIterator __middle,
     _BidirectionalIterator __last,
      bidirectional_iterator_tag)
   {




     if (__first == __middle)
return __last;
     else if (__last == __middle)
return __first;

     std::__reverse(__first, __middle, bidirectional_iterator_tag());
     std::__reverse(__middle, __last, bidirectional_iterator_tag());

     while (__first != __middle && __middle != __last)
{
  std::iter_swap(__first, --__last);
  ++__first;
}

     if (__first == __middle)
{
  std::__reverse(__middle, __last, bidirectional_iterator_tag());
  return __last;
}
     else
{
  std::__reverse(__first, __middle, bidirectional_iterator_tag());
  return __first;
}
   }


 template<typename _RandomAccessIterator>
   _RandomAccessIterator
   __rotate(_RandomAccessIterator __first,
     _RandomAccessIterator __middle,
     _RandomAccessIterator __last,
     random_access_iterator_tag)
   {




     if (__first == __middle)
return __last;
     else if (__last == __middle)
return __first;

     typedef typename iterator_traits<_RandomAccessIterator>::difference_type
_Distance;
     typedef typename iterator_traits<_RandomAccessIterator>::value_type
_ValueType;

     _Distance __n = __last - __first;
     _Distance __k = __middle - __first;

     if (__k == __n - __k)
{
  std::swap_ranges(__first, __middle, __middle);
  return __middle;
}

     _RandomAccessIterator __p = __first;
     _RandomAccessIterator __ret = __first + (__last - __middle);

     for (;;)
{
  if (__k < __n - __k)
    {
      if (__is_pod(_ValueType) && __k == 1)
 {
   _ValueType __t = (*__p);
   std::copy(__p + 1, __p + __n, __p);
   *(__p + __n - 1) = (__t);
   return __ret;
 }
      _RandomAccessIterator __q = __p + __k;
      for (_Distance __i = 0; __i < __n - __k; ++ __i)
 {
   std::iter_swap(__p, __q);
   ++__p;
   ++__q;
 }
      __n %= __k;
      if (__n == 0)
 return __ret;
      std::swap(__n, __k);
      __k = __n - __k;
    }
  else
    {
      __k = __n - __k;
      if (__is_pod(_ValueType) && __k == 1)
 {
   _ValueType __t = (*(__p + __n - 1));
   std::copy_backward(__p, __p + __n - 1, __p + __n);
   *__p = (__t);
   return __ret;
 }
      _RandomAccessIterator __q = __p + __n;
      __p = __q - __k;
      for (_Distance __i = 0; __i < __n - __k; ++ __i)
 {
   --__p;
   --__q;
   std::iter_swap(__p, __q);
 }
      __n %= __k;
      if (__n == 0)
 return __ret;
      std::swap(__n, __k);
    }
}
   }
# 1429 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator>
   inline _ForwardIterator
   rotate(_ForwardIterator __first, _ForwardIterator __middle,
   _ForwardIterator __last)
   {



     ;
     ;

     return std::__rotate(__first, __middle, __last,
     std::__iterator_category(__first));
   }

 }
# 1466 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _OutputIterator>
   inline _OutputIterator
   rotate_copy(_ForwardIterator __first, _ForwardIterator __middle,
               _ForwardIterator __last, _OutputIterator __result)
   {




     ;
     ;

     return std::copy(__first, __middle,
                      std::copy(__middle, __last, __result));
   }


 template<typename _ForwardIterator, typename _Predicate>
   _ForwardIterator
   __partition(_ForwardIterator __first, _ForwardIterator __last,
 _Predicate __pred, forward_iterator_tag)
   {
     if (__first == __last)
return __first;

     while (__pred(*__first))
if (++__first == __last)
  return __first;

     _ForwardIterator __next = __first;

     while (++__next != __last)
if (__pred(*__next))
  {
    std::iter_swap(__first, __next);
    ++__first;
  }

     return __first;
   }


 template<typename _BidirectionalIterator, typename _Predicate>
   _BidirectionalIterator
   __partition(_BidirectionalIterator __first, _BidirectionalIterator __last,
 _Predicate __pred, bidirectional_iterator_tag)
   {
     while (true)
{
  while (true)
    if (__first == __last)
      return __first;
    else if (__pred(*__first))
      ++__first;
    else
      break;
  --__last;
  while (true)
    if (__first == __last)
      return __first;
    else if (!bool(__pred(*__last)))
      --__last;
    else
      break;
  std::iter_swap(__first, __last);
  ++__first;
}
   }
# 1543 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Pointer, typename _Predicate,
   typename _Distance>
   _ForwardIterator
   __stable_partition_adaptive(_ForwardIterator __first,
   _ForwardIterator __last,
   _Predicate __pred, _Distance __len,
   _Pointer __buffer,
   _Distance __buffer_size)
   {
     if (__len == 1)
return __first;

     if (__len <= __buffer_size)
{
  _ForwardIterator __result1 = __first;
  _Pointer __result2 = __buffer;




  *__result2 = (*__first);
  ++__result2;
  ++__first;
  for (; __first != __last; ++__first)
    if (__pred(__first))
      {
 *__result1 = (*__first);
 ++__result1;
      }
    else
      {
 *__result2 = (*__first);
 ++__result2;
      }

  std::copy(__buffer, __result2, __result1);
  return __result1;
}

     _ForwardIterator __middle = __first;
     std::advance(__middle, __len / 2);
     _ForwardIterator __left_split =
std::__stable_partition_adaptive(__first, __middle, __pred,
     __len / 2, __buffer,
     __buffer_size);



     _Distance __right_len = __len - __len / 2;
     _ForwardIterator __right_split =
std::__find_if_not_n(__middle, __right_len, __pred);

     if (__right_len)
__right_split =
  std::__stable_partition_adaptive(__right_split, __last, __pred,
       __right_len,
       __buffer, __buffer_size);

     std::rotate(__left_split, __middle, __right_split);
     std::advance(__left_split, std::distance(__middle, __right_split));
     return __left_split;
   }

 template<typename _ForwardIterator, typename _Predicate>
   _ForwardIterator
   __stable_partition(_ForwardIterator __first, _ForwardIterator __last,
        _Predicate __pred)
   {
     __first = std::__find_if_not(__first, __last, __pred);

     if (__first == __last)
return __first;

     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;
     typedef typename iterator_traits<_ForwardIterator>::difference_type
_DistanceType;

     _Temporary_buffer<_ForwardIterator, _ValueType> __buf(__first, __last);
     return
std::__stable_partition_adaptive(__first, __last, __pred,
     _DistanceType(__buf.requested_size()),
     __buf.begin(),
     _DistanceType(__buf.size()));
   }
# 1646 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Predicate>
   inline _ForwardIterator
   stable_partition(_ForwardIterator __first, _ForwardIterator __last,
      _Predicate __pred)
   {





     ;

     return std::__stable_partition(__first, __last,
        __gnu_cxx::__ops::__pred_iter(__pred));
   }


 template<typename _RandomAccessIterator, typename _Compare>
   void
   __heap_select(_RandomAccessIterator __first,
   _RandomAccessIterator __middle,
   _RandomAccessIterator __last, _Compare __comp)
   {
     std::__make_heap(__first, __middle, __comp);
     for (_RandomAccessIterator __i = __middle; __i < __last; ++__i)
if (__comp(__i, __first))
  std::__pop_heap(__first, __middle, __i, __comp);
   }



 template<typename _InputIterator, typename _RandomAccessIterator,
   typename _Compare>
   _RandomAccessIterator
   __partial_sort_copy(_InputIterator __first, _InputIterator __last,
  _RandomAccessIterator __result_first,
  _RandomAccessIterator __result_last,
  _Compare __comp)
   {
     typedef typename iterator_traits<_InputIterator>::value_type
_InputValueType;
     typedef iterator_traits<_RandomAccessIterator> _RItTraits;
     typedef typename _RItTraits::difference_type _DistanceType;

     if (__result_first == __result_last)
return __result_last;
     _RandomAccessIterator __result_real_last = __result_first;
     while (__first != __last && __result_real_last != __result_last)
{
  *__result_real_last = *__first;
  ++__result_real_last;
  ++__first;
}

     std::__make_heap(__result_first, __result_real_last, __comp);
     while (__first != __last)
{
  if (__comp(__first, __result_first))
    std::__adjust_heap(__result_first, _DistanceType(0),
         _DistanceType(__result_real_last
         - __result_first),
         _InputValueType(*__first), __comp);
  ++__first;
}
     std::__sort_heap(__result_first, __result_real_last, __comp);
     return __result_real_last;
   }
# 1732 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _RandomAccessIterator>
   inline _RandomAccessIterator
   partial_sort_copy(_InputIterator __first, _InputIterator __last,
       _RandomAccessIterator __result_first,
       _RandomAccessIterator __result_last)
   {
     typedef typename iterator_traits<_InputIterator>::value_type
_InputValueType;
     typedef typename iterator_traits<_RandomAccessIterator>::value_type
_OutputValueType;
     typedef typename iterator_traits<_RandomAccessIterator>::difference_type
_DistanceType;








     ;
     ;

     return std::__partial_sort_copy(__first, __last,
         __result_first, __result_last,
         __gnu_cxx::__ops::__iter_less_iter());
   }
# 1780 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _RandomAccessIterator,
   typename _Compare>
   inline _RandomAccessIterator
   partial_sort_copy(_InputIterator __first, _InputIterator __last,
       _RandomAccessIterator __result_first,
       _RandomAccessIterator __result_last,
       _Compare __comp)
   {
     typedef typename iterator_traits<_InputIterator>::value_type
_InputValueType;
     typedef typename iterator_traits<_RandomAccessIterator>::value_type
_OutputValueType;
     typedef typename iterator_traits<_RandomAccessIterator>::difference_type
_DistanceType;











     ;
     ;

     return std::__partial_sort_copy(__first, __last,
         __result_first, __result_last,
   __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }


 template<typename _RandomAccessIterator, typename _Compare>
   void
   __unguarded_linear_insert(_RandomAccessIterator __last,
        _Compare __comp)
   {
     typename iterator_traits<_RandomAccessIterator>::value_type
__val = (*__last);
     _RandomAccessIterator __next = __last;
     --__next;
     while (__comp(__val, __next))
{
  *__last = (*__next);
  __last = __next;
  --__next;
}
     *__last = (__val);
   }


 template<typename _RandomAccessIterator, typename _Compare>
   void
   __insertion_sort(_RandomAccessIterator __first,
      _RandomAccessIterator __last, _Compare __comp)
   {
     if (__first == __last) return;

     for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
{
  if (__comp(__i, __first))
    {
      typename iterator_traits<_RandomAccessIterator>::value_type
 __val = (*__i);
      std::copy_backward(__first, __i, __i + 1);
      *__first = (__val);
    }
  else
    std::__unguarded_linear_insert(__i,
   __gnu_cxx::__ops::__val_comp_iter(__comp));
}
   }


 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   __unguarded_insertion_sort(_RandomAccessIterator __first,
         _RandomAccessIterator __last, _Compare __comp)
   {
     for (_RandomAccessIterator __i = __first; __i != __last; ++__i)
std::__unguarded_linear_insert(__i,
   __gnu_cxx::__ops::__val_comp_iter(__comp));
   }





 enum { _S_threshold = 16 };


 template<typename _RandomAccessIterator, typename _Compare>
   void
   __final_insertion_sort(_RandomAccessIterator __first,
     _RandomAccessIterator __last, _Compare __comp)
   {
     if (__last - __first > int(_S_threshold))
{
  std::__insertion_sort(__first, __first + int(_S_threshold), __comp);
  std::__unguarded_insertion_sort(__first + int(_S_threshold), __last,
      __comp);
}
     else
std::__insertion_sort(__first, __last, __comp);
   }


 template<typename _RandomAccessIterator, typename _Compare>
   _RandomAccessIterator
   __unguarded_partition(_RandomAccessIterator __first,
    _RandomAccessIterator __last,
    _RandomAccessIterator __pivot, _Compare __comp)
   {
     while (true)
{
  while (__comp(__first, __pivot))
    ++__first;
  --__last;
  while (__comp(__pivot, __last))
    --__last;
  if (!(__first < __last))
    return __first;
  std::iter_swap(__first, __last);
  ++__first;
}
   }


 template<typename _RandomAccessIterator, typename _Compare>
   inline _RandomAccessIterator
   __unguarded_partition_pivot(_RandomAccessIterator __first,
   _RandomAccessIterator __last, _Compare __comp)
   {
     _RandomAccessIterator __mid = __first + (__last - __first) / 2;
     std::__move_median_to_first(__first, __first + 1, __mid, __last - 1,
     __comp);
     return std::__unguarded_partition(__first + 1, __last, __first, __comp);
   }

 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   __partial_sort(_RandomAccessIterator __first,
    _RandomAccessIterator __middle,
    _RandomAccessIterator __last,
    _Compare __comp)
   {
     std::__heap_select(__first, __middle, __last, __comp);
     std::__sort_heap(__first, __middle, __comp);
   }


 template<typename _RandomAccessIterator, typename _Size, typename _Compare>
   void
   __introsort_loop(_RandomAccessIterator __first,
      _RandomAccessIterator __last,
      _Size __depth_limit, _Compare __comp)
   {
     while (__last - __first > int(_S_threshold))
{
  if (__depth_limit == 0)
    {
      std::__partial_sort(__first, __last, __last, __comp);
      return;
    }
  --__depth_limit;
  _RandomAccessIterator __cut =
    std::__unguarded_partition_pivot(__first, __last, __comp);
  std::__introsort_loop(__cut, __last, __depth_limit, __comp);
  __last = __cut;
}
   }



 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   __sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
   _Compare __comp)
   {
     if (__first != __last)
{
  std::__introsort_loop(__first, __last,
   std::__lg(__last - __first) * 2,
   __comp);
  std::__final_insertion_sort(__first, __last, __comp);
}
   }

 template<typename _RandomAccessIterator, typename _Size, typename _Compare>
   void
   __introselect(_RandomAccessIterator __first, _RandomAccessIterator __nth,
   _RandomAccessIterator __last, _Size __depth_limit,
   _Compare __comp)
   {
     while (__last - __first > 3)
{
  if (__depth_limit == 0)
    {
      std::__heap_select(__first, __nth + 1, __last, __comp);

      std::iter_swap(__first, __nth);
      return;
    }
  --__depth_limit;
  _RandomAccessIterator __cut =
    std::__unguarded_partition_pivot(__first, __last, __comp);
  if (__cut <= __nth)
    __first = __cut;
  else
    __last = __cut;
}
     std::__insertion_sort(__first, __last, __comp);
   }
# 2016 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Tp, typename _Compare>
   inline _ForwardIterator
   lower_bound(_ForwardIterator __first, _ForwardIterator __last,
 const _Tp& __val, _Compare __comp)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;






                   ;

     return std::__lower_bound(__first, __last, __val,
   __gnu_cxx::__ops::__iter_comp_val(__comp));
   }

 template<typename _ForwardIterator, typename _Tp, typename _Compare>
   _ForwardIterator
   __upper_bound(_ForwardIterator __first, _ForwardIterator __last,
   const _Tp& __val, _Compare __comp)
   {
     typedef typename iterator_traits<_ForwardIterator>::difference_type
_DistanceType;

     _DistanceType __len = std::distance(__first, __last);

     while (__len > 0)
{
  _DistanceType __half = __len >> 1;
  _ForwardIterator __middle = __first;
  std::advance(__middle, __half);
  if (__comp(__val, __middle))
    __len = __half;
  else
    {
      __first = __middle;
      ++__first;
      __len = __len - __half - 1;
    }
}
     return __first;
   }
# 2073 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Tp>
   inline _ForwardIterator
   upper_bound(_ForwardIterator __first, _ForwardIterator __last,
 const _Tp& __val)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;




     ;

     return std::__upper_bound(__first, __last, __val,
   __gnu_cxx::__ops::__val_less_iter());
   }
# 2105 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Tp, typename _Compare>
   inline _ForwardIterator
   upper_bound(_ForwardIterator __first, _ForwardIterator __last,
 const _Tp& __val, _Compare __comp)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;






                   ;

     return std::__upper_bound(__first, __last, __val,
   __gnu_cxx::__ops::__val_comp_iter(__comp));
   }

 template<typename _ForwardIterator, typename _Tp,
   typename _CompareItTp, typename _CompareTpIt>
   pair<_ForwardIterator, _ForwardIterator>
   __equal_range(_ForwardIterator __first, _ForwardIterator __last,
   const _Tp& __val,
   _CompareItTp __comp_it_val, _CompareTpIt __comp_val_it)
   {
     typedef typename iterator_traits<_ForwardIterator>::difference_type
_DistanceType;

     _DistanceType __len = std::distance(__first, __last);

     while (__len > 0)
{
  _DistanceType __half = __len >> 1;
  _ForwardIterator __middle = __first;
  std::advance(__middle, __half);
  if (__comp_it_val(__middle, __val))
    {
      __first = __middle;
      ++__first;
      __len = __len - __half - 1;
    }
  else if (__comp_val_it(__val, __middle))
    __len = __half;
  else
    {
      _ForwardIterator __left
 = std::__lower_bound(__first, __middle, __val, __comp_it_val);
      std::advance(__first, __len);
      _ForwardIterator __right
 = std::__upper_bound(++__middle, __first, __val, __comp_val_it);
      return pair<_ForwardIterator, _ForwardIterator>(__left, __right);
    }
}
     return pair<_ForwardIterator, _ForwardIterator>(__first, __first);
   }
# 2179 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Tp>
   inline pair<_ForwardIterator, _ForwardIterator>
   equal_range(_ForwardIterator __first, _ForwardIterator __last,
 const _Tp& __val)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;





     ;
     ;

     return std::__equal_range(__first, __last, __val,
   __gnu_cxx::__ops::__iter_less_val(),
   __gnu_cxx::__ops::__val_less_iter());
   }
# 2216 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Tp, typename _Compare>
   inline pair<_ForwardIterator, _ForwardIterator>
   equal_range(_ForwardIterator __first, _ForwardIterator __last,
 const _Tp& __val, _Compare __comp)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;








                   ;

                   ;

     return std::__equal_range(__first, __last, __val,
   __gnu_cxx::__ops::__iter_comp_val(__comp),
   __gnu_cxx::__ops::__val_comp_iter(__comp));
   }
# 2252 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Tp>
   bool
   binary_search(_ForwardIterator __first, _ForwardIterator __last,
                 const _Tp& __val)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;




     ;
     ;

     _ForwardIterator __i
= std::__lower_bound(__first, __last, __val,
       __gnu_cxx::__ops::__iter_less_val());
     return __i != __last && !(__val < *__i);
   }
# 2287 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Tp, typename _Compare>
   bool
   binary_search(_ForwardIterator __first, _ForwardIterator __last,
                 const _Tp& __val, _Compare __comp)
   {
     typedef typename iterator_traits<_ForwardIterator>::value_type
_ValueType;






                   ;

                   ;

     _ForwardIterator __i
= std::__lower_bound(__first, __last, __val,
       __gnu_cxx::__ops::__iter_comp_val(__comp));
     return __i != __last && !bool(__comp(__val, *__i));
   }




 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator, typename _Compare>
   void
   __move_merge_adaptive(_InputIterator1 __first1, _InputIterator1 __last1,
    _InputIterator2 __first2, _InputIterator2 __last2,
    _OutputIterator __result, _Compare __comp)
   {
     while (__first1 != __last1 && __first2 != __last2)
{
  if (__comp(__first2, __first1))
    {
      *__result = (*__first2);
      ++__first2;
    }
  else
    {
      *__result = (*__first1);
      ++__first1;
    }
  ++__result;
}
     if (__first1 != __last1)
std::copy(__first1, __last1, __result);
   }


 template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
   typename _BidirectionalIterator3, typename _Compare>
   void
   __move_merge_adaptive_backward(_BidirectionalIterator1 __first1,
      _BidirectionalIterator1 __last1,
      _BidirectionalIterator2 __first2,
      _BidirectionalIterator2 __last2,
      _BidirectionalIterator3 __result,
      _Compare __comp)
   {
     if (__first1 == __last1)
{
  std::copy_backward(__first2, __last2, __result);
  return;
}
     else if (__first2 == __last2)
return;

     --__last1;
     --__last2;
     while (true)
{
  if (__comp(__last2, __last1))
    {
      *--__result = (*__last1);
      if (__first1 == __last1)
 {
   std::copy_backward(__first2, ++__last2, __result);
   return;
 }
      --__last1;
    }
  else
    {
      *--__result = (*__last2);
      if (__first2 == __last2)
 return;
      --__last2;
    }
}
   }


 template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
   typename _Distance>
   _BidirectionalIterator1
   __rotate_adaptive(_BidirectionalIterator1 __first,
       _BidirectionalIterator1 __middle,
       _BidirectionalIterator1 __last,
       _Distance __len1, _Distance __len2,
       _BidirectionalIterator2 __buffer,
       _Distance __buffer_size)
   {
     _BidirectionalIterator2 __buffer_end;
     if (__len1 > __len2 && __len2 <= __buffer_size)
{
  if (__len2)
    {
      __buffer_end = std::copy(__middle, __last, __buffer);
      std::copy_backward(__first, __middle, __last);
      return std::copy(__buffer, __buffer_end, __first);
    }
  else
    return __first;
}
     else if (__len1 <= __buffer_size)
{
  if (__len1)
    {
      __buffer_end = std::copy(__first, __middle, __buffer);
      std::copy(__middle, __last, __first);
      return std::copy_backward(__buffer, __buffer_end, __last);
    }
  else
    return __last;
}
     else
{
  std::rotate(__first, __middle, __last);
  std::advance(__first, std::distance(__middle, __last));
  return __first;
}
   }


 template<typename _BidirectionalIterator, typename _Distance,
   typename _Pointer, typename _Compare>
   void
   __merge_adaptive(_BidirectionalIterator __first,
                    _BidirectionalIterator __middle,
      _BidirectionalIterator __last,
      _Distance __len1, _Distance __len2,
      _Pointer __buffer, _Distance __buffer_size,
      _Compare __comp)
   {
     if (__len1 <= __len2 && __len1 <= __buffer_size)
{
  _Pointer __buffer_end = std::copy(__first, __middle, __buffer);
  std::__move_merge_adaptive(__buffer, __buffer_end, __middle, __last,
        __first, __comp);
}
     else if (__len2 <= __buffer_size)
{
  _Pointer __buffer_end = std::copy(__middle, __last, __buffer);
  std::__move_merge_adaptive_backward(__first, __middle, __buffer,
          __buffer_end, __last, __comp);
}
     else
{
  _BidirectionalIterator __first_cut = __first;
  _BidirectionalIterator __second_cut = __middle;
  _Distance __len11 = 0;
  _Distance __len22 = 0;
  if (__len1 > __len2)
    {
      __len11 = __len1 / 2;
      std::advance(__first_cut, __len11);
      __second_cut
 = std::__lower_bound(__middle, __last, *__first_cut,
        __gnu_cxx::__ops::__iter_comp_val(__comp));
      __len22 = std::distance(__middle, __second_cut);
    }
  else
    {
      __len22 = __len2 / 2;
      std::advance(__second_cut, __len22);
      __first_cut
 = std::__upper_bound(__first, __middle, *__second_cut,
        __gnu_cxx::__ops::__val_comp_iter(__comp));
      __len11 = std::distance(__first, __first_cut);
    }

  _BidirectionalIterator __new_middle
    = std::__rotate_adaptive(__first_cut, __middle, __second_cut,
        __len1 - __len11, __len22, __buffer,
        __buffer_size);
  std::__merge_adaptive(__first, __first_cut, __new_middle, __len11,
   __len22, __buffer, __buffer_size, __comp);
  std::__merge_adaptive(__new_middle, __second_cut, __last,
   __len1 - __len11,
   __len2 - __len22, __buffer,
   __buffer_size, __comp);
}
   }


 template<typename _BidirectionalIterator, typename _Distance,
   typename _Compare>
   void
   __merge_without_buffer(_BidirectionalIterator __first,
                          _BidirectionalIterator __middle,
     _BidirectionalIterator __last,
     _Distance __len1, _Distance __len2,
     _Compare __comp)
   {
     if (__len1 == 0 || __len2 == 0)
return;

     if (__len1 + __len2 == 2)
{
  if (__comp(__middle, __first))
    std::iter_swap(__first, __middle);
  return;
}

     _BidirectionalIterator __first_cut = __first;
     _BidirectionalIterator __second_cut = __middle;
     _Distance __len11 = 0;
     _Distance __len22 = 0;
     if (__len1 > __len2)
{
  __len11 = __len1 / 2;
  std::advance(__first_cut, __len11);
  __second_cut
    = std::__lower_bound(__middle, __last, *__first_cut,
    __gnu_cxx::__ops::__iter_comp_val(__comp));
  __len22 = std::distance(__middle, __second_cut);
}
     else
{
  __len22 = __len2 / 2;
  std::advance(__second_cut, __len22);
  __first_cut
    = std::__upper_bound(__first, __middle, *__second_cut,
    __gnu_cxx::__ops::__val_comp_iter(__comp));
  __len11 = std::distance(__first, __first_cut);
}

     std::rotate(__first_cut, __middle, __second_cut);
     _BidirectionalIterator __new_middle = __first_cut;
     std::advance(__new_middle, std::distance(__middle, __second_cut));
     std::__merge_without_buffer(__first, __first_cut, __new_middle,
     __len11, __len22, __comp);
     std::__merge_without_buffer(__new_middle, __second_cut, __last,
     __len1 - __len11, __len2 - __len22, __comp);
   }

 template<typename _BidirectionalIterator, typename _Compare>
   void
   __inplace_merge(_BidirectionalIterator __first,
     _BidirectionalIterator __middle,
     _BidirectionalIterator __last,
     _Compare __comp)
   {
     typedef typename iterator_traits<_BidirectionalIterator>::value_type
         _ValueType;
     typedef typename iterator_traits<_BidirectionalIterator>::difference_type
         _DistanceType;

     if (__first == __middle || __middle == __last)
return;

     const _DistanceType __len1 = std::distance(__first, __middle);
     const _DistanceType __len2 = std::distance(__middle, __last);

     typedef _Temporary_buffer<_BidirectionalIterator, _ValueType> _TmpBuf;
     _TmpBuf __buf(__first, __last);

     if (__buf.begin() == 0)
std::__merge_without_buffer
  (__first, __middle, __last, __len1, __len2, __comp);
     else
std::__merge_adaptive
  (__first, __middle, __last, __len1, __len2, __buf.begin(),
   _DistanceType(__buf.size()), __comp);
   }
# 2584 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _BidirectionalIterator>
   inline void
   inplace_merge(_BidirectionalIterator __first,
   _BidirectionalIterator __middle,
   _BidirectionalIterator __last)
   {





     ;
     ;

     std::__inplace_merge(__first, __middle, __last,
     __gnu_cxx::__ops::__iter_less_iter());
   }
# 2624 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _BidirectionalIterator, typename _Compare>
   inline void
   inplace_merge(_BidirectionalIterator __first,
   _BidirectionalIterator __middle,
   _BidirectionalIterator __last,
   _Compare __comp)
   {






     ;
     ;

     std::__inplace_merge(__first, __middle, __last,
     __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }



 template<typename _InputIterator, typename _OutputIterator,
   typename _Compare>
   _OutputIterator
   __move_merge(_InputIterator __first1, _InputIterator __last1,
  _InputIterator __first2, _InputIterator __last2,
  _OutputIterator __result, _Compare __comp)
   {
     while (__first1 != __last1 && __first2 != __last2)
{
  if (__comp(__first2, __first1))
    {
      *__result = (*__first2);
      ++__first2;
    }
  else
    {
      *__result = (*__first1);
      ++__first1;
    }
  ++__result;
}
     return std::copy(__first2, __last2, std::copy(__first1, __last1, __result))

                 ;
   }

 template<typename _RandomAccessIterator1, typename _RandomAccessIterator2,
   typename _Distance, typename _Compare>
   void
   __merge_sort_loop(_RandomAccessIterator1 __first,
       _RandomAccessIterator1 __last,
       _RandomAccessIterator2 __result, _Distance __step_size,
       _Compare __comp)
   {
     const _Distance __two_step = 2 * __step_size;

     while (__last - __first >= __two_step)
{
  __result = std::__move_merge(__first, __first + __step_size,
          __first + __step_size,
          __first + __two_step,
          __result, __comp);
  __first += __two_step;
}
     __step_size = std::min(_Distance(__last - __first), __step_size);

     std::__move_merge(__first, __first + __step_size,
  __first + __step_size, __last, __result, __comp);
   }

 template<typename _RandomAccessIterator, typename _Distance,
   typename _Compare>
   void
   __chunk_insertion_sort(_RandomAccessIterator __first,
     _RandomAccessIterator __last,
     _Distance __chunk_size, _Compare __comp)
   {
     while (__last - __first >= __chunk_size)
{
  std::__insertion_sort(__first, __first + __chunk_size, __comp);
  __first += __chunk_size;
}
     std::__insertion_sort(__first, __last, __comp);
   }

 enum { _S_chunk_size = 7 };

 template<typename _RandomAccessIterator, typename _Pointer, typename _Compare>
   void
   __merge_sort_with_buffer(_RandomAccessIterator __first,
       _RandomAccessIterator __last,
                            _Pointer __buffer, _Compare __comp)
   {
     typedef typename iterator_traits<_RandomAccessIterator>::difference_type
_Distance;

     const _Distance __len = __last - __first;
     const _Pointer __buffer_last = __buffer + __len;

     _Distance __step_size = _S_chunk_size;
     std::__chunk_insertion_sort(__first, __last, __step_size, __comp);

     while (__step_size < __len)
{
  std::__merge_sort_loop(__first, __last, __buffer,
    __step_size, __comp);
  __step_size *= 2;
  std::__merge_sort_loop(__buffer, __buffer_last, __first,
    __step_size, __comp);
  __step_size *= 2;
}
   }

 template<typename _RandomAccessIterator, typename _Pointer,
   typename _Distance, typename _Compare>
   void
   __stable_sort_adaptive(_RandomAccessIterator __first,
     _RandomAccessIterator __last,
                          _Pointer __buffer, _Distance __buffer_size,
                          _Compare __comp)
   {
     const _Distance __len = (__last - __first + 1) / 2;
     const _RandomAccessIterator __middle = __first + __len;
     if (__len > __buffer_size)
{
  std::__stable_sort_adaptive(__first, __middle, __buffer,
         __buffer_size, __comp);
  std::__stable_sort_adaptive(__middle, __last, __buffer,
         __buffer_size, __comp);
}
     else
{
  std::__merge_sort_with_buffer(__first, __middle, __buffer, __comp);
  std::__merge_sort_with_buffer(__middle, __last, __buffer, __comp);
}
     std::__merge_adaptive(__first, __middle, __last,
      _Distance(__middle - __first),
      _Distance(__last - __middle),
      __buffer, __buffer_size,
      __comp);
   }


 template<typename _RandomAccessIterator, typename _Compare>
   void
   __inplace_stable_sort(_RandomAccessIterator __first,
    _RandomAccessIterator __last, _Compare __comp)
   {
     if (__last - __first < 15)
{
  std::__insertion_sort(__first, __last, __comp);
  return;
}
     _RandomAccessIterator __middle = __first + (__last - __first) / 2;
     std::__inplace_stable_sort(__first, __middle, __comp);
     std::__inplace_stable_sort(__middle, __last, __comp);
     std::__merge_without_buffer(__first, __middle, __last,
     __middle - __first,
     __last - __middle,
     __comp);
   }
# 2795 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _Compare>
   bool
   __includes(_InputIterator1 __first1, _InputIterator1 __last1,
       _InputIterator2 __first2, _InputIterator2 __last2,
       _Compare __comp)
   {
     while (__first1 != __last1 && __first2 != __last2)
if (__comp(__first2, __first1))
  return false;
else if (__comp(__first1, __first2))
  ++__first1;
else
  ++__first1, ++__first2;

     return __first2 == __last2;
   }
# 2831 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2>
   inline bool
   includes(_InputIterator1 __first1, _InputIterator1 __last1,
     _InputIterator2 __first2, _InputIterator2 __last2)
   {









     ;
     ;

     return std::__includes(__first1, __last1, __first2, __last2,
       __gnu_cxx::__ops::__iter_less_iter());
   }
# 2873 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _Compare>
   inline bool
   includes(_InputIterator1 __first1, _InputIterator1 __last1,
     _InputIterator2 __first2, _InputIterator2 __last2,
     _Compare __comp)
   {









     ;
     ;

     return std::__includes(__first1, __last1, __first2, __last2,
       __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }
# 2906 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _BidirectionalIterator, typename _Compare>
   bool
   __next_permutation(_BidirectionalIterator __first,
        _BidirectionalIterator __last, _Compare __comp)
   {
     if (__first == __last)
return false;
     _BidirectionalIterator __i = __first;
     ++__i;
     if (__i == __last)
return false;
     __i = __last;
     --__i;

     for(;;)
{
  _BidirectionalIterator __ii = __i;
  --__i;
  if (__comp(__i, __ii))
    {
      _BidirectionalIterator __j = __last;
      while (!__comp(__i, --__j))
 {}
      std::iter_swap(__i, __j);
      std::__reverse(__ii, __last,
       std::__iterator_category(__first));
      return true;
    }
  if (__i == __first)
    {
      std::__reverse(__first, __last,
       std::__iterator_category(__first));
      return false;
    }
}
   }
# 2955 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _BidirectionalIterator>
   inline bool
   next_permutation(_BidirectionalIterator __first,
      _BidirectionalIterator __last)
   {





     ;

     return std::__next_permutation
(__first, __last, __gnu_cxx::__ops::__iter_less_iter());
   }
# 2986 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _BidirectionalIterator, typename _Compare>
   inline bool
   next_permutation(_BidirectionalIterator __first,
      _BidirectionalIterator __last, _Compare __comp)
   {






     ;

     return std::__next_permutation
(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _BidirectionalIterator, typename _Compare>
   bool
   __prev_permutation(_BidirectionalIterator __first,
        _BidirectionalIterator __last, _Compare __comp)
   {
     if (__first == __last)
return false;
     _BidirectionalIterator __i = __first;
     ++__i;
     if (__i == __last)
return false;
     __i = __last;
     --__i;

     for(;;)
{
  _BidirectionalIterator __ii = __i;
  --__i;
  if (__comp(__ii, __i))
    {
      _BidirectionalIterator __j = __last;
      while (!__comp(--__j, __i))
 {}
      std::iter_swap(__i, __j);
      std::__reverse(__ii, __last,
       std::__iterator_category(__first));
      return true;
    }
  if (__i == __first)
    {
      std::__reverse(__first, __last,
       std::__iterator_category(__first));
      return false;
    }
}
   }
# 3053 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _BidirectionalIterator>
   inline bool
   prev_permutation(_BidirectionalIterator __first,
      _BidirectionalIterator __last)
   {





     ;

     return std::__prev_permutation(__first, __last,
        __gnu_cxx::__ops::__iter_less_iter());
   }
# 3084 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _BidirectionalIterator, typename _Compare>
   inline bool
   prev_permutation(_BidirectionalIterator __first,
      _BidirectionalIterator __last, _Compare __comp)
   {






     ;

     return std::__prev_permutation(__first, __last,
   __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }




 template<typename _InputIterator, typename _OutputIterator,
   typename _Predicate, typename _Tp>
   _OutputIterator
   __replace_copy_if(_InputIterator __first, _InputIterator __last,
       _OutputIterator __result,
       _Predicate __pred, const _Tp& __new_value)
   {
     for (; __first != __last; ++__first, ++__result)
if (__pred(__first))
  *__result = __new_value;
else
  *__result = *__first;
     return __result;
   }
# 3133 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _OutputIterator, typename _Tp>
   inline _OutputIterator
   replace_copy(_InputIterator __first, _InputIterator __last,
  _OutputIterator __result,
  const _Tp& __old_value, const _Tp& __new_value)
   {






     ;

     return std::__replace_copy_if(__first, __last, __result,
  __gnu_cxx::__ops::__iter_equals_val(__old_value),
          __new_value);
   }
# 3167 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _OutputIterator,
   typename _Predicate, typename _Tp>
   inline _OutputIterator
   replace_copy_if(_InputIterator __first, _InputIterator __last,
     _OutputIterator __result,
     _Predicate __pred, const _Tp& __new_value)
   {






     ;

     return std::__replace_copy_if(__first, __last, __result,
   __gnu_cxx::__ops::__pred_iter(__pred),
          __new_value);
   }

 template<typename _InputIterator, typename _Predicate>
   typename iterator_traits<_InputIterator>::difference_type
   __count_if(_InputIterator __first, _InputIterator __last, _Predicate __pred)
   {
     typename iterator_traits<_InputIterator>::difference_type __n = 0;
     for (; __first != __last; ++__first)
if (__pred(__first))
  ++__n;
     return __n;
   }
# 3743 "/usr/include/g++/bits/stl_algo.h" 3



# 3759 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _Function>
   _Function
   for_each(_InputIterator __first, _InputIterator __last, _Function __f)
   {


     ;
     for (; __first != __last; ++__first)
__f(*__first);
     return (__f);
   }
# 3780 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _Tp>
   inline _InputIterator
   find(_InputIterator __first, _InputIterator __last,
 const _Tp& __val)
   {




     ;
     return std::__find_if(__first, __last,
      __gnu_cxx::__ops::__iter_equals_val(__val));
   }
# 3804 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _Predicate>
   inline _InputIterator
   find_if(_InputIterator __first, _InputIterator __last,
    _Predicate __pred)
   {




     ;

     return std::__find_if(__first, __last,
      __gnu_cxx::__ops::__pred_iter(__pred));
   }
# 3835 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _ForwardIterator>
   _InputIterator
   find_first_of(_InputIterator __first1, _InputIterator __last1,
   _ForwardIterator __first2, _ForwardIterator __last2)
   {






     ;
     ;

     for (; __first1 != __last1; ++__first1)
for (_ForwardIterator __iter = __first2; __iter != __last2; ++__iter)
  if (*__first1 == *__iter)
    return __first1;
     return __last1;
   }
# 3875 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _ForwardIterator,
   typename _BinaryPredicate>
   _InputIterator
   find_first_of(_InputIterator __first1, _InputIterator __last1,
   _ForwardIterator __first2, _ForwardIterator __last2,
   _BinaryPredicate __comp)
   {






     ;
     ;

     for (; __first1 != __last1; ++__first1)
for (_ForwardIterator __iter = __first2; __iter != __last2; ++__iter)
  if (__comp(*__first1, *__iter))
    return __first1;
     return __last1;
   }
# 3907 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator>
   inline _ForwardIterator
   adjacent_find(_ForwardIterator __first, _ForwardIterator __last)
   {




     ;

     return std::__adjacent_find(__first, __last,
     __gnu_cxx::__ops::__iter_equal_to_iter());
   }
# 3932 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _BinaryPredicate>
   inline _ForwardIterator
   adjacent_find(_ForwardIterator __first, _ForwardIterator __last,
   _BinaryPredicate __binary_pred)
   {





     ;

     return std::__adjacent_find(__first, __last,
  __gnu_cxx::__ops::__iter_comp_iter(__binary_pred));
   }
# 3957 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _Tp>
   inline typename iterator_traits<_InputIterator>::difference_type
   count(_InputIterator __first, _InputIterator __last, const _Tp& __value)
   {




     ;

     return std::__count_if(__first, __last,
       __gnu_cxx::__ops::__iter_equals_val(__value));
   }
# 3980 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _Predicate>
   inline typename iterator_traits<_InputIterator>::difference_type
   count_if(_InputIterator __first, _InputIterator __last, _Predicate __pred)
   {




     ;

     return std::__count_if(__first, __last,
       __gnu_cxx::__ops::__pred_iter(__pred));
   }
# 4020 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator1, typename _ForwardIterator2>
   inline _ForwardIterator1
   search(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
   _ForwardIterator2 __first2, _ForwardIterator2 __last2)
   {






     ;
     ;

     return std::__search(__first1, __last1, __first2, __last2,
     __gnu_cxx::__ops::__iter_equal_to_iter());
   }
# 4059 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator1, typename _ForwardIterator2,
   typename _BinaryPredicate>
   inline _ForwardIterator1
   search(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
   _ForwardIterator2 __first2, _ForwardIterator2 __last2,
   _BinaryPredicate __predicate)
   {






     ;
     ;

     return std::__search(__first1, __last1, __first2, __last2,
     __gnu_cxx::__ops::__iter_comp_iter(__predicate));
   }
# 4094 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Integer, typename _Tp>
   inline _ForwardIterator
   search_n(_ForwardIterator __first, _ForwardIterator __last,
     _Integer __count, const _Tp& __val)
   {




     ;

     return std::__search_n(__first, __last, __count,
       __gnu_cxx::__ops::__iter_equals_val(__val));
   }
# 4127 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Integer, typename _Tp,
          typename _BinaryPredicate>
   inline _ForwardIterator
   search_n(_ForwardIterator __first, _ForwardIterator __last,
     _Integer __count, const _Tp& __val,
     _BinaryPredicate __binary_pred)
   {




     ;

     return std::__search_n(__first, __last, __count,
 __gnu_cxx::__ops::__iter_comp_val(__binary_pred, __val));
   }
# 4161 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _OutputIterator,
   typename _UnaryOperation>
   _OutputIterator
   transform(_InputIterator __first, _InputIterator __last,
      _OutputIterator __result, _UnaryOperation __unary_op)
   {





     ;

     for (; __first != __last; ++__first, ++__result)
*__result = __unary_op(*__first);
     return __result;
   }
# 4198 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator, typename _BinaryOperation>
   _OutputIterator
   transform(_InputIterator1 __first1, _InputIterator1 __last1,
      _InputIterator2 __first2, _OutputIterator __result,
      _BinaryOperation __binary_op)
   {






     ;

     for (; __first1 != __last1; ++__first1, ++__first2, ++__result)
*__result = __binary_op(*__first1, *__first2);
     return __result;
   }
# 4231 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Tp>
   void
   replace(_ForwardIterator __first, _ForwardIterator __last,
    const _Tp& __old_value, const _Tp& __new_value)
   {







     ;

     for (; __first != __last; ++__first)
if (*__first == __old_value)
  *__first = __new_value;
   }
# 4263 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Predicate, typename _Tp>
   void
   replace_if(_ForwardIterator __first, _ForwardIterator __last,
       _Predicate __pred, const _Tp& __new_value)
   {







     ;

     for (; __first != __last; ++__first)
if (__pred(*__first))
  *__first = __new_value;
   }
# 4295 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Generator>
   void
   generate(_ForwardIterator __first, _ForwardIterator __last,
     _Generator __gen)
   {




     ;

     for (; __first != __last; ++__first)
*__first = __gen();
   }
# 4326 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _OutputIterator, typename _Size, typename _Generator>
   _OutputIterator
   generate_n(_OutputIterator __first, _Size __n, _Generator __gen)
   {





     for (__decltype(__n + 0) __niter = __n;
   __niter > 0; --__niter, ++__first)
*__first = __gen();
     return __first;
   }
# 4362 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _OutputIterator>
   inline _OutputIterator
   unique_copy(_InputIterator __first, _InputIterator __last,
 _OutputIterator __result)
   {






     ;

     if (__first == __last)
return __result;
     return std::__unique_copy(__first, __last, __result,
   __gnu_cxx::__ops::__iter_equal_to_iter(),
   std::__iterator_category(__first),
   std::__iterator_category(__result));
   }
# 4402 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator, typename _OutputIterator,
   typename _BinaryPredicate>
   inline _OutputIterator
   unique_copy(_InputIterator __first, _InputIterator __last,
 _OutputIterator __result,
 _BinaryPredicate __binary_pred)
   {




     ;

     if (__first == __last)
return __result;
     return std::__unique_copy(__first, __last, __result,
  __gnu_cxx::__ops::__iter_comp_iter(__binary_pred),
   std::__iterator_category(__first),
   std::__iterator_category(__result));
   }
# 4434 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator>
   inline void
   random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last)
   {



     ;

     if (__first != __last)
for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
  {

    _RandomAccessIterator __j = __first
    + std::rand() % ((__i - __first) + 1);
    if (__i != __j)
      std::iter_swap(__i, __j);
  }
   }
# 4468 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator, typename _RandomNumberGenerator>
   void
   random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last,



    _RandomNumberGenerator& __rand)

   {



     ;

     if (__first == __last)
return;
     for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
{
  _RandomAccessIterator __j = __first + __rand((__i - __first) + 1);
  if (__i != __j)
    std::iter_swap(__i, __j);
}
   }
# 4508 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Predicate>
   inline _ForwardIterator
   partition(_ForwardIterator __first, _ForwardIterator __last,
      _Predicate __pred)
   {





     ;

     return std::__partition(__first, __last, __pred,
        std::__iterator_category(__first));
   }
# 4541 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator>
   inline void
   partial_sort(_RandomAccessIterator __first,
  _RandomAccessIterator __middle,
  _RandomAccessIterator __last)
   {





     ;
     ;

     std::__partial_sort(__first, __middle, __last,
    __gnu_cxx::__ops::__iter_less_iter());
   }
# 4578 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   partial_sort(_RandomAccessIterator __first,
  _RandomAccessIterator __middle,
  _RandomAccessIterator __last,
  _Compare __comp)
   {






     ;
     ;

     std::__partial_sort(__first, __middle, __last,
    __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }
# 4613 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator>
   inline void
   nth_element(_RandomAccessIterator __first, _RandomAccessIterator __nth,
 _RandomAccessIterator __last)
   {





     ;
     ;

     if (__first == __last || __nth == __last)
return;

     std::__introselect(__first, __nth, __last,
   std::__lg(__last - __first) * 2,
   __gnu_cxx::__ops::__iter_less_iter());
   }
# 4651 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   nth_element(_RandomAccessIterator __first, _RandomAccessIterator __nth,
 _RandomAccessIterator __last, _Compare __comp)
   {






     ;
     ;

     if (__first == __last || __nth == __last)
return;

     std::__introselect(__first, __nth, __last,
   std::__lg(__last - __first) * 2,
   __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }
# 4687 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator>
   inline void
   sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
   {





     ;

     std::__sort(__first, __last, __gnu_cxx::__ops::__iter_less_iter());
   }
# 4716 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
 _Compare __comp)
   {






     ;

     std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator, typename _Compare>
   _OutputIterator
   __merge(_InputIterator1 __first1, _InputIterator1 __last1,
    _InputIterator2 __first2, _InputIterator2 __last2,
    _OutputIterator __result, _Compare __comp)
   {
     while (__first1 != __last1 && __first2 != __last2)
{
  if (__comp(__first2, __first1))
    {
      *__result = *__first2;
      ++__first2;
    }
  else
    {
      *__result = *__first1;
      ++__first1;
    }
  ++__result;
}
     return std::copy(__first2, __last2,
        std::copy(__first1, __last1, __result));
   }
# 4776 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator>
   inline _OutputIterator
   merge(_InputIterator1 __first1, _InputIterator1 __last1,
  _InputIterator2 __first2, _InputIterator2 __last2,
  _OutputIterator __result)
   {










     ;
     ;

     return std::__merge(__first1, __last1,
        __first2, __last2, __result,
        __gnu_cxx::__ops::__iter_less_iter());
   }
# 4824 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator, typename _Compare>
   inline _OutputIterator
   merge(_InputIterator1 __first1, _InputIterator1 __last1,
  _InputIterator2 __first2, _InputIterator2 __last2,
  _OutputIterator __result, _Compare __comp)
   {










     ;
     ;

     return std::__merge(__first1, __last1,
   __first2, __last2, __result,
   __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   __stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
   _Compare __comp)
   {
     typedef typename iterator_traits<_RandomAccessIterator>::value_type
_ValueType;
     typedef typename iterator_traits<_RandomAccessIterator>::difference_type
_DistanceType;

     typedef _Temporary_buffer<_RandomAccessIterator, _ValueType> _TmpBuf;
     _TmpBuf __buf(__first, __last);

     if (__buf.begin() == 0)
std::__inplace_stable_sort(__first, __last, __comp);
     else
std::__stable_sort_adaptive(__first, __last, __buf.begin(),
       _DistanceType(__buf.size()), __comp);
   }
# 4886 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator>
   inline void
   stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
   {





     ;

     std::__stable_sort(__first, __last,
       __gnu_cxx::__ops::__iter_less_iter());
   }
# 4919 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _RandomAccessIterator, typename _Compare>
   inline void
   stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
 _Compare __comp)
   {






     ;

     std::__stable_sort(__first, __last,
       __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator,
   typename _Compare>
   _OutputIterator
   __set_union(_InputIterator1 __first1, _InputIterator1 __last1,
 _InputIterator2 __first2, _InputIterator2 __last2,
 _OutputIterator __result, _Compare __comp)
   {
     while (__first1 != __last1 && __first2 != __last2)
{
  if (__comp(__first1, __first2))
    {
      *__result = *__first1;
      ++__first1;
    }
  else if (__comp(__first2, __first1))
    {
      *__result = *__first2;
      ++__first2;
    }
  else
    {
      *__result = *__first1;
      ++__first1;
      ++__first2;
    }
  ++__result;
}
     return std::copy(__first2, __last2,
        std::copy(__first1, __last1, __result));
   }
# 4986 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator>
   inline _OutputIterator
   set_union(_InputIterator1 __first1, _InputIterator1 __last1,
      _InputIterator2 __first2, _InputIterator2 __last2,
      _OutputIterator __result)
   {













     ;
     ;

     return std::__set_union(__first1, __last1,
   __first2, __last2, __result,
   __gnu_cxx::__ops::__iter_less_iter());
   }
# 5033 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator, typename _Compare>
   inline _OutputIterator
   set_union(_InputIterator1 __first1, _InputIterator1 __last1,
      _InputIterator2 __first2, _InputIterator2 __last2,
      _OutputIterator __result, _Compare __comp)
   {













     ;
     ;

     return std::__set_union(__first1, __last1,
   __first2, __last2, __result,
   __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator,
   typename _Compare>
   _OutputIterator
   __set_intersection(_InputIterator1 __first1, _InputIterator1 __last1,
        _InputIterator2 __first2, _InputIterator2 __last2,
        _OutputIterator __result, _Compare __comp)
   {
     while (__first1 != __last1 && __first2 != __last2)
if (__comp(__first1, __first2))
  ++__first1;
else if (__comp(__first2, __first1))
  ++__first2;
else
  {
    *__result = *__first1;
    ++__first1;
    ++__first2;
    ++__result;
  }
     return __result;
   }
# 5101 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator>
   inline _OutputIterator
   set_intersection(_InputIterator1 __first1, _InputIterator1 __last1,
      _InputIterator2 __first2, _InputIterator2 __last2,
      _OutputIterator __result)
   {











     ;
     ;

     return std::__set_intersection(__first1, __last1,
        __first2, __last2, __result,
        __gnu_cxx::__ops::__iter_less_iter());
   }
# 5147 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator, typename _Compare>
   inline _OutputIterator
   set_intersection(_InputIterator1 __first1, _InputIterator1 __last1,
      _InputIterator2 __first2, _InputIterator2 __last2,
      _OutputIterator __result, _Compare __comp)
   {











     ;
     ;

     return std::__set_intersection(__first1, __last1,
   __first2, __last2, __result,
   __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator,
   typename _Compare>
   _OutputIterator
   __set_difference(_InputIterator1 __first1, _InputIterator1 __last1,
      _InputIterator2 __first2, _InputIterator2 __last2,
      _OutputIterator __result, _Compare __comp)
   {
     while (__first1 != __last1 && __first2 != __last2)
if (__comp(__first1, __first2))
  {
    *__result = *__first1;
    ++__first1;
    ++__result;
  }
else if (__comp(__first2, __first1))
  ++__first2;
else
  {
    ++__first1;
    ++__first2;
  }
     return std::copy(__first1, __last1, __result);
   }
# 5217 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator>
   inline _OutputIterator
   set_difference(_InputIterator1 __first1, _InputIterator1 __last1,
    _InputIterator2 __first2, _InputIterator2 __last2,
    _OutputIterator __result)
   {











     ;
     ;

     return std::__set_difference(__first1, __last1,
      __first2, __last2, __result,
      __gnu_cxx::__ops::__iter_less_iter());
   }
# 5265 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator, typename _Compare>
   inline _OutputIterator
   set_difference(_InputIterator1 __first1, _InputIterator1 __last1,
    _InputIterator2 __first2, _InputIterator2 __last2,
    _OutputIterator __result, _Compare __comp)
   {











     ;
     ;

     return std::__set_difference(__first1, __last1,
      __first2, __last2, __result,
      __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator,
   typename _Compare>
   _OutputIterator
   __set_symmetric_difference(_InputIterator1 __first1,
         _InputIterator1 __last1,
         _InputIterator2 __first2,
         _InputIterator2 __last2,
         _OutputIterator __result,
         _Compare __comp)
   {
     while (__first1 != __last1 && __first2 != __last2)
if (__comp(__first1, __first2))
  {
    *__result = *__first1;
    ++__first1;
    ++__result;
  }
else if (__comp(__first2, __first1))
  {
    *__result = *__first2;
    ++__first2;
    ++__result;
  }
else
  {
    ++__first1;
    ++__first2;
  }
     return std::copy(__first2, __last2,
        std::copy(__first1, __last1, __result));
   }
# 5341 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator>
   inline _OutputIterator
   set_symmetric_difference(_InputIterator1 __first1, _InputIterator1 __last1,
       _InputIterator2 __first2, _InputIterator2 __last2,
       _OutputIterator __result)
   {













     ;
     ;

     return std::__set_symmetric_difference(__first1, __last1,
    __first2, __last2, __result,
    __gnu_cxx::__ops::__iter_less_iter());
   }
# 5389 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _InputIterator1, typename _InputIterator2,
   typename _OutputIterator, typename _Compare>
   inline _OutputIterator
   set_symmetric_difference(_InputIterator1 __first1, _InputIterator1 __last1,
       _InputIterator2 __first2, _InputIterator2 __last2,
       _OutputIterator __result,
       _Compare __comp)
   {













     ;
     ;

     return std::__set_symmetric_difference(__first1, __last1,
   __first2, __last2, __result,
   __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _ForwardIterator, typename _Compare>

   _ForwardIterator
   __min_element(_ForwardIterator __first, _ForwardIterator __last,
   _Compare __comp)
   {
     if (__first == __last)
return __first;
     _ForwardIterator __result = __first;
     while (++__first != __last)
if (__comp(__first, __result))
  __result = __first;
     return __result;
   }
# 5440 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator>

   _ForwardIterator
   inline min_element(_ForwardIterator __first, _ForwardIterator __last)
   {




     ;

     return std::__min_element(__first, __last,
   __gnu_cxx::__ops::__iter_less_iter());
   }
# 5464 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Compare>

   inline _ForwardIterator
   min_element(_ForwardIterator __first, _ForwardIterator __last,
 _Compare __comp)
   {





     ;

     return std::__min_element(__first, __last,
   __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }

 template<typename _ForwardIterator, typename _Compare>

   _ForwardIterator
   __max_element(_ForwardIterator __first, _ForwardIterator __last,
   _Compare __comp)
   {
     if (__first == __last) return __first;
     _ForwardIterator __result = __first;
     while (++__first != __last)
if (__comp(__result, __first))
  __result = __first;
     return __result;
   }
# 5502 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator>

   inline _ForwardIterator
   max_element(_ForwardIterator __first, _ForwardIterator __last)
   {




     ;

     return std::__max_element(__first, __last,
   __gnu_cxx::__ops::__iter_less_iter());
   }
# 5526 "/usr/include/g++/bits/stl_algo.h" 3
 template<typename _ForwardIterator, typename _Compare>

   inline _ForwardIterator
   max_element(_ForwardIterator __first, _ForwardIterator __last,
 _Compare __comp)
   {





     ;

     return std::__max_element(__first, __last,
   __gnu_cxx::__ops::__iter_comp_iter(__comp));
   }


}
# 63 "/usr/include/g++/algorithm" 2 3
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 2
# 1 "/usr/include/g++/sstream" 1 3
# 36 "/usr/include/g++/sstream" 3

# 37 "/usr/include/g++/sstream" 3

# 1 "/usr/include/g++/istream" 1 3
# 36 "/usr/include/g++/istream" 3

# 37 "/usr/include/g++/istream" 3

# 1 "/usr/include/g++/ios" 1 3
# 36 "/usr/include/g++/ios" 3

# 37 "/usr/include/g++/ios" 3





# 1 "/usr/include/g++/bits/ios_base.h" 1 3
# 37 "/usr/include/g++/bits/ios_base.h" 3

# 38 "/usr/include/g++/bits/ios_base.h" 3



# 1 "/usr/include/g++/bits/locale_classes.h" 1 3
# 37 "/usr/include/g++/bits/locale_classes.h" 3

# 38 "/usr/include/g++/bits/locale_classes.h" 3





namespace std __attribute__ ((__visibility__ ("default")))
{

# 62 "/usr/include/g++/bits/locale_classes.h" 3
 class locale
 {
 public:


   typedef int category;


   class facet;
   class id;
   class _Impl;

   friend class facet;
   friend class _Impl;

   template<typename _Facet>
     friend bool
     has_facet(const locale&) throw();

   template<typename _Facet>
     friend const _Facet&
     use_facet(const locale&);

   template<typename _Cache>
     friend struct __use_cache;
# 98 "/usr/include/g++/bits/locale_classes.h" 3
   static const category none = 0;
   static const category ctype = 1L << 0;
   static const category numeric = 1L << 1;
   static const category collate = 1L << 2;
   static const category time = 1L << 3;
   static const category monetary = 1L << 4;
   static const category messages = 1L << 5;
   static const category all = (ctype | numeric | collate |
       time | monetary | messages);
# 117 "/usr/include/g++/bits/locale_classes.h" 3
   locale() throw();
# 126 "/usr/include/g++/bits/locale_classes.h" 3
   locale(const locale& __other) throw();
# 136 "/usr/include/g++/bits/locale_classes.h" 3
   explicit
   locale(const char* __s);
# 151 "/usr/include/g++/bits/locale_classes.h" 3
   locale(const locale& __base, const char* __s, category __cat);
# 192 "/usr/include/g++/bits/locale_classes.h" 3
   locale(const locale& __base, const locale& __add, category __cat);
# 205 "/usr/include/g++/bits/locale_classes.h" 3
   template<typename _Facet>
     locale(const locale& __other, _Facet* __f);


   ~locale() throw();
# 219 "/usr/include/g++/bits/locale_classes.h" 3
   const locale&
   operator=(const locale& __other) throw();
# 234 "/usr/include/g++/bits/locale_classes.h" 3
   template<typename _Facet>
     locale
     combine(const locale& __other) const;






   __attribute ((__abi_tag__ ("cxx11")))
   string
   name() const;
# 254 "/usr/include/g++/bits/locale_classes.h" 3
   bool
   operator==(const locale& __other) const throw();







   bool
   operator!=(const locale& __other) const throw()
   { return !(this->operator==(__other)); }
# 282 "/usr/include/g++/bits/locale_classes.h" 3
   template<typename _Char, typename _Traits, typename _Alloc>
     bool
     operator()(const basic_string<_Char, _Traits, _Alloc>& __s1,
  const basic_string<_Char, _Traits, _Alloc>& __s2) const;
# 298 "/usr/include/g++/bits/locale_classes.h" 3
   static locale
   global(const locale& __loc);




   static const locale&
   classic();

 private:

   _Impl* _M_impl;


   static _Impl* _S_classic;


   static _Impl* _S_global;





   static const char* const* const _S_categories;
# 333 "/usr/include/g++/bits/locale_classes.h" 3
   enum { _S_categories_size = 6 + 0 };


   static __gthread_once_t _S_once;


   explicit
   locale(_Impl*) throw();

   static void
   _S_initialize();

   static void
   _S_initialize_once() throw();

   static category
   _S_normalize_category(category);

   void
   _M_coalesce(const locale& __base, const locale& __add, category __cat);


   static const id* const _S_twinned_facets[];

 };
# 371 "/usr/include/g++/bits/locale_classes.h" 3
 class locale::facet
 {
 private:
   friend class locale;
   friend class locale::_Impl;

   mutable _Atomic_word _M_refcount;


   static __c_locale _S_c_locale;


   static const char _S_c_name[2];


   static __gthread_once_t _S_once;


   static void
   _S_initialize_once();

 protected:
# 402 "/usr/include/g++/bits/locale_classes.h" 3
   explicit
   facet(size_t __refs = 0) throw() : _M_refcount(__refs ? 1 : 0)
   { }


   virtual
   ~facet();

   static void
   _S_create_c_locale(__c_locale& __cloc, const char* __s,
        __c_locale __old = 0);

   static __c_locale
   _S_clone_c_locale(__c_locale& __cloc) throw();

   static void
   _S_destroy_c_locale(__c_locale& __cloc);

   static __c_locale
   _S_lc_ctype_c_locale(__c_locale __cloc, const char* __s);



   static __c_locale
   _S_get_c_locale();

   __attribute__ ((__const__)) static const char*
   _S_get_c_name() throw();

 private:
   void
   _M_add_reference() const throw()
   { __gnu_cxx::__atomic_add_dispatch(&_M_refcount, 1); }

   void
   _M_remove_reference() const throw()
   {

     ;
     if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1)
{
         ;
  try
    { delete this; }
  catch(...)
    { }
}
   }

   facet(const facet&);

   facet&
   operator=(const facet&);

   class __shim;

   const facet* _M_sso_shim(const id*) const;
   const facet* _M_cow_shim(const id*) const;
 };
# 474 "/usr/include/g++/bits/locale_classes.h" 3
 class locale::id
 {
 private:
   friend class locale;
   friend class locale::_Impl;

   template<typename _Facet>
     friend const _Facet&
     use_facet(const locale&);

   template<typename _Facet>
     friend bool
     has_facet(const locale&) throw();




   mutable size_t _M_index;


   static _Atomic_word _S_refcount;

   void
   operator=(const id&);

   id(const id&);

 public:



   id() { }

   size_t
   _M_id() const throw();
 };



 class locale::_Impl
 {
 public:

   friend class locale;
   friend class locale::facet;

   template<typename _Facet>
     friend bool
     has_facet(const locale&) throw();

   template<typename _Facet>
     friend const _Facet&
     use_facet(const locale&);

   template<typename _Cache>
     friend struct __use_cache;

 private:

   _Atomic_word _M_refcount;
   const facet** _M_facets;
   size_t _M_facets_size;
   const facet** _M_caches;
   char** _M_names;
   static const locale::id* const _S_id_ctype[];
   static const locale::id* const _S_id_numeric[];
   static const locale::id* const _S_id_collate[];
   static const locale::id* const _S_id_time[];
   static const locale::id* const _S_id_monetary[];
   static const locale::id* const _S_id_messages[];
   static const locale::id* const* const _S_facet_categories[];

   void
   _M_add_reference() throw()
   { __gnu_cxx::__atomic_add_dispatch(&_M_refcount, 1); }

   void
   _M_remove_reference() throw()
   {

     ;
     if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1)
{
         ;
  try
    { delete this; }
  catch(...)
    { }
}
   }

   _Impl(const _Impl&, size_t);
   _Impl(const char*, size_t);
   _Impl(size_t) throw();

  ~_Impl() throw();

   _Impl(const _Impl&);

   void
   operator=(const _Impl&);

   bool
   _M_check_same_name()
   {
     bool __ret = true;
     if (_M_names[1])

for (size_t __i = 0; __ret && __i < _S_categories_size - 1; ++__i)
  __ret = __builtin_strcmp(_M_names[__i], _M_names[__i + 1]) == 0;
     return __ret;
   }

   void
   _M_replace_categories(const _Impl*, category);

   void
   _M_replace_category(const _Impl*, const locale::id* const*);

   void
   _M_replace_facet(const _Impl*, const locale::id*);

   void
   _M_install_facet(const locale::id*, const facet*);

   template<typename _Facet>
     void
     _M_init_facet(_Facet* __facet)
     { _M_install_facet(&_Facet::id, __facet); }

   template<typename _Facet>
     void
     _M_init_facet_unchecked(_Facet* __facet)
     {
__facet->_M_add_reference();
_M_facets[_Facet::id._M_id()] = __facet;
     }

   void
   _M_install_cache(const facet*, size_t);

   void _M_init_extra(facet**);
   void _M_init_extra(void*, void*, const char*, const char*);
 };
# 632 "/usr/include/g++/bits/locale_classes.h" 3
 template<typename _CharT>
   class __cxx11:: collate : public locale::facet
   {
   public:



     typedef _CharT char_type;
     typedef basic_string<_CharT> string_type;


   protected:


     __c_locale _M_c_locale_collate;

   public:

     static locale::id id;
# 659 "/usr/include/g++/bits/locale_classes.h" 3
     explicit
     collate(size_t __refs = 0)
     : facet(__refs), _M_c_locale_collate(_S_get_c_locale())
     { }
# 673 "/usr/include/g++/bits/locale_classes.h" 3
     explicit
     collate(__c_locale __cloc, size_t __refs = 0)
     : facet(__refs), _M_c_locale_collate(_S_clone_c_locale(__cloc))
     { }
# 690 "/usr/include/g++/bits/locale_classes.h" 3
     int
     compare(const _CharT* __lo1, const _CharT* __hi1,
      const _CharT* __lo2, const _CharT* __hi2) const
     { return this->do_compare(__lo1, __hi1, __lo2, __hi2); }
# 709 "/usr/include/g++/bits/locale_classes.h" 3
     string_type
     transform(const _CharT* __lo, const _CharT* __hi) const
     { return this->do_transform(__lo, __hi); }
# 723 "/usr/include/g++/bits/locale_classes.h" 3
     long
     hash(const _CharT* __lo, const _CharT* __hi) const
     { return this->do_hash(__lo, __hi); }


     int
     _M_compare(const _CharT*, const _CharT*) const throw();

     size_t
     _M_transform(_CharT*, const _CharT*, size_t) const throw();

 protected:

     virtual
     ~collate()
     { _S_destroy_c_locale(_M_c_locale_collate); }
# 752 "/usr/include/g++/bits/locale_classes.h" 3
     virtual int
     do_compare(const _CharT* __lo1, const _CharT* __hi1,
  const _CharT* __lo2, const _CharT* __hi2) const;
# 766 "/usr/include/g++/bits/locale_classes.h" 3
     virtual string_type
     do_transform(const _CharT* __lo, const _CharT* __hi) const;
# 779 "/usr/include/g++/bits/locale_classes.h" 3
     virtual long
     do_hash(const _CharT* __lo, const _CharT* __hi) const;
   };

 template<typename _CharT>
   locale::id collate<_CharT>::id;


 template<>
   int
   collate<char>::_M_compare(const char*, const char*) const throw();

 template<>
   size_t
   collate<char>::_M_transform(char*, const char*, size_t) const throw();


 template<>
   int
   collate<wchar_t>::_M_compare(const wchar_t*, const wchar_t*) const throw();

 template<>
   size_t
   collate<wchar_t>::_M_transform(wchar_t*, const wchar_t*, size_t) const throw();



 template<typename _CharT>
   class __cxx11:: collate_byname : public collate<_CharT>
   {
   public:


     typedef _CharT char_type;
     typedef basic_string<_CharT> string_type;


     explicit
     collate_byname(const char* __s, size_t __refs = 0)
     : collate<_CharT>(__refs)
     {
if (__builtin_strcmp(__s, "C") != 0
    && __builtin_strcmp(__s, "POSIX") != 0)
  {
    this->_S_destroy_c_locale(this->_M_c_locale_collate);
    this->_S_create_c_locale(this->_M_c_locale_collate, __s);
  }
     }







   protected:
     virtual
     ~collate_byname() { }
   };


}

# 1 "/usr/include/g++/bits/locale_classes.tcc" 1 3
# 37 "/usr/include/g++/bits/locale_classes.tcc" 3

# 38 "/usr/include/g++/bits/locale_classes.tcc" 3

namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _Facet>
   locale::
   locale(const locale& __other, _Facet* __f)
   {
     _M_impl = new _Impl(*__other._M_impl, 1);

     try
{ _M_impl->_M_install_facet(&_Facet::id, __f); }
     catch(...)
{
  _M_impl->_M_remove_reference();
  throw;
}
     delete [] _M_impl->_M_names[0];
     _M_impl->_M_names[0] = 0;
   }

 template<typename _Facet>
   locale
   locale::
   combine(const locale& __other) const
   {
     _Impl* __tmp = new _Impl(*_M_impl, 1);
     try
{
  __tmp->_M_replace_facet(__other._M_impl, &_Facet::id);
}
     catch(...)
{
  __tmp->_M_remove_reference();
  throw;
}
     return locale(__tmp);
   }

 template<typename _CharT, typename _Traits, typename _Alloc>
   bool
   locale::
   operator()(const basic_string<_CharT, _Traits, _Alloc>& __s1,
       const basic_string<_CharT, _Traits, _Alloc>& __s2) const
   {
     typedef std::collate<_CharT> __collate_type;
     const __collate_type& __collate = use_facet<__collate_type>(*this);
     return (__collate.compare(__s1.data(), __s1.data() + __s1.length(),
   __s2.data(), __s2.data() + __s2.length()) < 0);
   }
# 102 "/usr/include/g++/bits/locale_classes.tcc" 3
 template<typename _Facet>
   bool
   has_facet(const locale& __loc) throw()
   {
     const size_t __i = _Facet::id._M_id();
     const locale::facet** __facets = __loc._M_impl->_M_facets;
     return (__i < __loc._M_impl->_M_facets_size

      && dynamic_cast<const _Facet*>(__facets[__i]));



   }
# 130 "/usr/include/g++/bits/locale_classes.tcc" 3
 template<typename _Facet>
   const _Facet&
   use_facet(const locale& __loc)
   {
     const size_t __i = _Facet::id._M_id();
     const locale::facet** __facets = __loc._M_impl->_M_facets;
     if (__i >= __loc._M_impl->_M_facets_size || !__facets[__i])
       __throw_bad_cast();

     return dynamic_cast<const _Facet&>(*__facets[__i]);



   }



 template<typename _CharT>
   int
   collate<_CharT>::_M_compare(const _CharT*, const _CharT*) const throw ()
   { return 0; }


 template<typename _CharT>
   size_t
   collate<_CharT>::_M_transform(_CharT*, const _CharT*, size_t) const throw ()
   { return 0; }

 template<typename _CharT>
   int
   collate<_CharT>::
   do_compare(const _CharT* __lo1, const _CharT* __hi1,
       const _CharT* __lo2, const _CharT* __hi2) const
   {


     const string_type __one(__lo1, __hi1);
     const string_type __two(__lo2, __hi2);

     const _CharT* __p = __one.c_str();
     const _CharT* __pend = __one.data() + __one.length();
     const _CharT* __q = __two.c_str();
     const _CharT* __qend = __two.data() + __two.length();




     for (;;)
{
  const int __res = _M_compare(__p, __q);
  if (__res)
    return __res;

  __p += char_traits<_CharT>::length(__p);
  __q += char_traits<_CharT>::length(__q);
  if (__p == __pend && __q == __qend)
    return 0;
  else if (__p == __pend)
    return -1;
  else if (__q == __qend)
    return 1;

  __p++;
  __q++;
}
   }

 template<typename _CharT>
   typename collate<_CharT>::string_type
   collate<_CharT>::
   do_transform(const _CharT* __lo, const _CharT* __hi) const
   {
     string_type __ret;


     const string_type __str(__lo, __hi);

     const _CharT* __p = __str.c_str();
     const _CharT* __pend = __str.data() + __str.length();

     size_t __len = (__hi - __lo) * 2;

     _CharT* __c = new _CharT[__len];

     try
{



  for (;;)
    {

      size_t __res = _M_transform(__c, __p, __len);


      if (__res >= __len)
 {
   __len = __res + 1;
   delete [] __c, __c = 0;
   __c = new _CharT[__len];
   __res = _M_transform(__c, __p, __len);
 }

      __ret.append(__c, __res);
      __p += char_traits<_CharT>::length(__p);
      if (__p == __pend)
 break;

      __p++;
      __ret.push_back(_CharT());
    }
}
     catch(...)
{
  delete [] __c;
  throw;
}

     delete [] __c;

     return __ret;
   }

 template<typename _CharT>
   long
   collate<_CharT>::
   do_hash(const _CharT* __lo, const _CharT* __hi) const
   {
     unsigned long __val = 0;
     for (; __lo < __hi; ++__lo)
__val =
  *__lo + ((__val << 7)
    | (__val >> (__gnu_cxx::__numeric_traits<unsigned long>::
   __digits - 7)));
     return static_cast<long>(__val);
   }




 extern template class collate<char>;
 extern template class collate_byname<char>;

 extern template
   const collate<char>&
   use_facet<collate<char> >(const locale&);

 extern template
   bool
   has_facet<collate<char> >(const locale&);


 extern template class collate<wchar_t>;
 extern template class collate_byname<wchar_t>;

 extern template
   const collate<wchar_t>&
   use_facet<collate<wchar_t> >(const locale&);

 extern template
   bool
   has_facet<collate<wchar_t> >(const locale&);




}
# 843 "/usr/include/g++/bits/locale_classes.h" 2 3
# 42 "/usr/include/g++/bits/ios_base.h" 2 3


# 1 "/usr/include/g++/stdexcept" 1 3
# 36 "/usr/include/g++/stdexcept" 3

# 37 "/usr/include/g++/stdexcept" 3




namespace std __attribute__ ((__visibility__ ("default")))
{





 struct __cow_string
 {
   union {
     const char* _M_p;
     char _M_bytes[sizeof(const char*)];
   };

   __cow_string();
   __cow_string(const std::string&);
   __cow_string(const char*, size_t);
   __cow_string(const __cow_string&) throw();
   __cow_string& operator=(const __cow_string&) throw();
   ~__cow_string();




 };

 typedef basic_string<char> __sso_string;
# 113 "/usr/include/g++/stdexcept" 3
 class logic_error : public exception
 {
   __cow_string _M_msg;

 public:

   explicit
   logic_error(const string& __arg);







   logic_error(const logic_error&) throw();
   logic_error& operator=(const logic_error&) throw();


   virtual ~logic_error() throw();



   virtual const char*
   what() const throw();
 };



 class domain_error : public logic_error
 {
 public:
   explicit domain_error(const string& __arg);



   virtual ~domain_error() throw();
 };


 class invalid_argument : public logic_error
 {
 public:
   explicit invalid_argument(const string& __arg);



   virtual ~invalid_argument() throw();
 };



 class length_error : public logic_error
 {
 public:
   explicit length_error(const string& __arg);



   virtual ~length_error() throw();
 };



 class out_of_range : public logic_error
 {
 public:
   explicit out_of_range(const string& __arg);



   virtual ~out_of_range() throw();
 };






 class runtime_error : public exception
 {
   __cow_string _M_msg;

 public:

   explicit
   runtime_error(const string& __arg);







   runtime_error(const runtime_error&) throw();
   runtime_error& operator=(const runtime_error&) throw();


   virtual ~runtime_error() throw();



   virtual const char*
   what() const throw();
 };


 class range_error : public runtime_error
 {
 public:
   explicit range_error(const string& __arg);



   virtual ~range_error() throw();
 };


 class overflow_error : public runtime_error
 {
 public:
   explicit overflow_error(const string& __arg);



   virtual ~overflow_error() throw();
 };


 class underflow_error : public runtime_error
 {
 public:
   explicit underflow_error(const string& __arg);



   virtual ~underflow_error() throw();
 };




}
# 45 "/usr/include/g++/bits/ios_base.h" 2 3




namespace std __attribute__ ((__visibility__ ("default")))
{






 enum _Ios_Fmtflags
   {
     _S_boolalpha = 1L << 0,
     _S_dec = 1L << 1,
     _S_fixed = 1L << 2,
     _S_hex = 1L << 3,
     _S_internal = 1L << 4,
     _S_left = 1L << 5,
     _S_oct = 1L << 6,
     _S_right = 1L << 7,
     _S_scientific = 1L << 8,
     _S_showbase = 1L << 9,
     _S_showpoint = 1L << 10,
     _S_showpos = 1L << 11,
     _S_skipws = 1L << 12,
     _S_unitbuf = 1L << 13,
     _S_uppercase = 1L << 14,
     _S_adjustfield = _S_left | _S_right | _S_internal,
     _S_basefield = _S_dec | _S_oct | _S_hex,
     _S_floatfield = _S_scientific | _S_fixed,
     _S_ios_fmtflags_end = 1L << 16,
     _S_ios_fmtflags_max = 0x7fffffff,
     _S_ios_fmtflags_min = ~0x7fffffff
   };

 inline _Ios_Fmtflags
 operator&(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
 { return _Ios_Fmtflags(static_cast<int>(__a) & static_cast<int>(__b)); }

 inline _Ios_Fmtflags
 operator|(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
 { return _Ios_Fmtflags(static_cast<int>(__a) | static_cast<int>(__b)); }

 inline _Ios_Fmtflags
 operator^(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
 { return _Ios_Fmtflags(static_cast<int>(__a) ^ static_cast<int>(__b)); }

 inline _Ios_Fmtflags
 operator~(_Ios_Fmtflags __a)
 { return _Ios_Fmtflags(~static_cast<int>(__a)); }

 inline const _Ios_Fmtflags&
 operator|=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
 { return __a = __a | __b; }

 inline const _Ios_Fmtflags&
 operator&=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
 { return __a = __a & __b; }

 inline const _Ios_Fmtflags&
 operator^=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
 { return __a = __a ^ __b; }


 enum _Ios_Openmode
   {
     _S_app = 1L << 0,
     _S_ate = 1L << 1,
     _S_bin = 1L << 2,
     _S_in = 1L << 3,
     _S_out = 1L << 4,
     _S_trunc = 1L << 5,
     _S_ios_openmode_end = 1L << 16,
     _S_ios_openmode_max = 0x7fffffff,
     _S_ios_openmode_min = ~0x7fffffff
   };

 inline _Ios_Openmode
 operator&(_Ios_Openmode __a, _Ios_Openmode __b)
 { return _Ios_Openmode(static_cast<int>(__a) & static_cast<int>(__b)); }

 inline _Ios_Openmode
 operator|(_Ios_Openmode __a, _Ios_Openmode __b)
 { return _Ios_Openmode(static_cast<int>(__a) | static_cast<int>(__b)); }

 inline _Ios_Openmode
 operator^(_Ios_Openmode __a, _Ios_Openmode __b)
 { return _Ios_Openmode(static_cast<int>(__a) ^ static_cast<int>(__b)); }

 inline _Ios_Openmode
 operator~(_Ios_Openmode __a)
 { return _Ios_Openmode(~static_cast<int>(__a)); }

 inline const _Ios_Openmode&
 operator|=(_Ios_Openmode& __a, _Ios_Openmode __b)
 { return __a = __a | __b; }

 inline const _Ios_Openmode&
 operator&=(_Ios_Openmode& __a, _Ios_Openmode __b)
 { return __a = __a & __b; }

 inline const _Ios_Openmode&
 operator^=(_Ios_Openmode& __a, _Ios_Openmode __b)
 { return __a = __a ^ __b; }


 enum _Ios_Iostate
   {
     _S_goodbit = 0,
     _S_badbit = 1L << 0,
     _S_eofbit = 1L << 1,
     _S_failbit = 1L << 2,
     _S_ios_iostate_end = 1L << 16,
     _S_ios_iostate_max = 0x7fffffff,
     _S_ios_iostate_min = ~0x7fffffff
   };

 inline _Ios_Iostate
 operator&(_Ios_Iostate __a, _Ios_Iostate __b)
 { return _Ios_Iostate(static_cast<int>(__a) & static_cast<int>(__b)); }

 inline _Ios_Iostate
 operator|(_Ios_Iostate __a, _Ios_Iostate __b)
 { return _Ios_Iostate(static_cast<int>(__a) | static_cast<int>(__b)); }

 inline _Ios_Iostate
 operator^(_Ios_Iostate __a, _Ios_Iostate __b)
 { return _Ios_Iostate(static_cast<int>(__a) ^ static_cast<int>(__b)); }

 inline _Ios_Iostate
 operator~(_Ios_Iostate __a)
 { return _Ios_Iostate(~static_cast<int>(__a)); }

 inline const _Ios_Iostate&
 operator|=(_Ios_Iostate& __a, _Ios_Iostate __b)
 { return __a = __a | __b; }

 inline const _Ios_Iostate&
 operator&=(_Ios_Iostate& __a, _Ios_Iostate __b)
 { return __a = __a & __b; }

 inline const _Ios_Iostate&
 operator^=(_Ios_Iostate& __a, _Ios_Iostate __b)
 { return __a = __a ^ __b; }


 enum _Ios_Seekdir
   {
     _S_beg = 0,
     _S_cur = 1,
     _S_end = 2,
     _S_ios_seekdir_end = 1L << 16
   };
# 228 "/usr/include/g++/bits/ios_base.h" 3
 class ios_base
 {



   struct system_error : std::runtime_error
   {

     struct error_code
     {
error_code() { }
     private:
int _M_value;
const void* _M_cat;
     } _M_code;
   };


 public:
# 255 "/usr/include/g++/bits/ios_base.h" 3
   class __attribute ((__abi_tag__ ("cxx11"))) failure : public system_error
   {
   public:
     explicit
     failure(const string& __str);
# 269 "/usr/include/g++/bits/ios_base.h" 3
     virtual
     ~failure() throw();

     virtual const char*
     what() const throw();
   };
# 323 "/usr/include/g++/bits/ios_base.h" 3
   typedef _Ios_Fmtflags fmtflags;


   static const fmtflags boolalpha = _S_boolalpha;


   static const fmtflags dec = _S_dec;


   static const fmtflags fixed = _S_fixed;


   static const fmtflags hex = _S_hex;




   static const fmtflags internal = _S_internal;



   static const fmtflags left = _S_left;


   static const fmtflags oct = _S_oct;



   static const fmtflags right = _S_right;


   static const fmtflags scientific = _S_scientific;



   static const fmtflags showbase = _S_showbase;



   static const fmtflags showpoint = _S_showpoint;


   static const fmtflags showpos = _S_showpos;


   static const fmtflags skipws = _S_skipws;


   static const fmtflags unitbuf = _S_unitbuf;



   static const fmtflags uppercase = _S_uppercase;


   static const fmtflags adjustfield = _S_adjustfield;


   static const fmtflags basefield = _S_basefield;


   static const fmtflags floatfield = _S_floatfield;
# 398 "/usr/include/g++/bits/ios_base.h" 3
   typedef _Ios_Iostate iostate;



   static const iostate badbit = _S_badbit;


   static const iostate eofbit = _S_eofbit;




   static const iostate failbit = _S_failbit;


   static const iostate goodbit = _S_goodbit;
# 429 "/usr/include/g++/bits/ios_base.h" 3
   typedef _Ios_Openmode openmode;


   static const openmode app = _S_app;


   static const openmode ate = _S_ate;




   static const openmode binary = _S_bin;


   static const openmode in = _S_in;


   static const openmode out = _S_out;


   static const openmode trunc = _S_trunc;
# 461 "/usr/include/g++/bits/ios_base.h" 3
   typedef _Ios_Seekdir seekdir;


   static const seekdir beg = _S_beg;


   static const seekdir cur = _S_cur;


   static const seekdir end = _S_end;


   typedef int io_state;
   typedef int open_mode;
   typedef int seek_dir;

   typedef std::streampos streampos;
   typedef std::streamoff streamoff;
# 487 "/usr/include/g++/bits/ios_base.h" 3
   enum event
   {
     erase_event,
     imbue_event,
     copyfmt_event
   };
# 504 "/usr/include/g++/bits/ios_base.h" 3
   typedef void (*event_callback) (event __e, ios_base& __b, int __i);
# 516 "/usr/include/g++/bits/ios_base.h" 3
   void
   register_callback(event_callback __fn, int __index);

 protected:
   streamsize _M_precision;
   streamsize _M_width;
   fmtflags _M_flags;
   iostate _M_exception;
   iostate _M_streambuf_state;



   struct _Callback_list
   {

     _Callback_list* _M_next;
     ios_base::event_callback _M_fn;
     int _M_index;
     _Atomic_word _M_refcount;

     _Callback_list(ios_base::event_callback __fn, int __index,
      _Callback_list* __cb)
     : _M_next(__cb), _M_fn(__fn), _M_index(__index), _M_refcount(0) { }

     void
     _M_add_reference() { __gnu_cxx::__atomic_add_dispatch(&_M_refcount, 1); }


     int
     _M_remove_reference()
     {

       ;
       int __res = __gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1);
       if (__res == 0)
         {
           ;
         }
       return __res;
     }
   };

    _Callback_list* _M_callbacks;

   void
   _M_call_callbacks(event __ev) throw();

   void
   _M_dispose_callbacks(void) throw();


   struct _Words
   {
     void* _M_pword;
     long _M_iword;
     _Words() : _M_pword(0), _M_iword(0) { }
   };


   _Words _M_word_zero;



   enum { _S_local_word_size = 8 };
   _Words _M_local_word[_S_local_word_size];


   int _M_word_size;
   _Words* _M_word;

   _Words&
   _M_grow_words(int __index, bool __iword);


   locale _M_ios_locale;

   void
   _M_init() throw();

 public:





   class Init
   {
     friend class ios_base;
   public:
     Init();
     ~Init();

   private:
     static _Atomic_word _S_refcount;
     static bool _S_synced_with_stdio;
   };






   fmtflags
   flags() const
   { return _M_flags; }
# 629 "/usr/include/g++/bits/ios_base.h" 3
   fmtflags
   flags(fmtflags __fmtfl)
   {
     fmtflags __old = _M_flags;
     _M_flags = __fmtfl;
     return __old;
   }
# 645 "/usr/include/g++/bits/ios_base.h" 3
   fmtflags
   setf(fmtflags __fmtfl)
   {
     fmtflags __old = _M_flags;
     _M_flags |= __fmtfl;
     return __old;
   }
# 662 "/usr/include/g++/bits/ios_base.h" 3
   fmtflags
   setf(fmtflags __fmtfl, fmtflags __mask)
   {
     fmtflags __old = _M_flags;
     _M_flags &= ~__mask;
     _M_flags |= (__fmtfl & __mask);
     return __old;
   }







   void
   unsetf(fmtflags __mask)
   { _M_flags &= ~__mask; }
# 688 "/usr/include/g++/bits/ios_base.h" 3
   streamsize
   precision() const
   { return _M_precision; }






   streamsize
   precision(streamsize __prec)
   {
     streamsize __old = _M_precision;
     _M_precision = __prec;
     return __old;
   }







   streamsize
   width() const
   { return _M_width; }






   streamsize
   width(streamsize __wide)
   {
     streamsize __old = _M_width;
     _M_width = __wide;
     return __old;
   }
# 739 "/usr/include/g++/bits/ios_base.h" 3
   static bool
   sync_with_stdio(bool __sync = true);
# 751 "/usr/include/g++/bits/ios_base.h" 3
   locale
   imbue(const locale& __loc) throw();
# 762 "/usr/include/g++/bits/ios_base.h" 3
   locale
   getloc() const
   { return _M_ios_locale; }
# 773 "/usr/include/g++/bits/ios_base.h" 3
   const locale&
   _M_getloc() const
   { return _M_ios_locale; }
# 792 "/usr/include/g++/bits/ios_base.h" 3
   static int
   xalloc() throw();
# 808 "/usr/include/g++/bits/ios_base.h" 3
   long&
   iword(int __ix)
   {
     _Words& __word = (__ix < _M_word_size)
  ? _M_word[__ix] : _M_grow_words(__ix, true);
     return __word._M_iword;
   }
# 829 "/usr/include/g++/bits/ios_base.h" 3
   void*&
   pword(int __ix)
   {
     _Words& __word = (__ix < _M_word_size)
  ? _M_word[__ix] : _M_grow_words(__ix, false);
     return __word._M_pword;
   }
# 846 "/usr/include/g++/bits/ios_base.h" 3
   virtual ~ios_base();

 protected:
   ios_base() throw ();




 private:
   ios_base(const ios_base&);

   ios_base&
   operator=(const ios_base&);
# 873 "/usr/include/g++/bits/ios_base.h" 3
 };



 inline ios_base&
 boolalpha(ios_base& __base)
 {
   __base.setf(ios_base::boolalpha);
   return __base;
 }


 inline ios_base&
 noboolalpha(ios_base& __base)
 {
   __base.unsetf(ios_base::boolalpha);
   return __base;
 }


 inline ios_base&
 showbase(ios_base& __base)
 {
   __base.setf(ios_base::showbase);
   return __base;
 }


 inline ios_base&
 noshowbase(ios_base& __base)
 {
   __base.unsetf(ios_base::showbase);
   return __base;
 }


 inline ios_base&
 showpoint(ios_base& __base)
 {
   __base.setf(ios_base::showpoint);
   return __base;
 }


 inline ios_base&
 noshowpoint(ios_base& __base)
 {
   __base.unsetf(ios_base::showpoint);
   return __base;
 }


 inline ios_base&
 showpos(ios_base& __base)
 {
   __base.setf(ios_base::showpos);
   return __base;
 }


 inline ios_base&
 noshowpos(ios_base& __base)
 {
   __base.unsetf(ios_base::showpos);
   return __base;
 }


 inline ios_base&
 skipws(ios_base& __base)
 {
   __base.setf(ios_base::skipws);
   return __base;
 }


 inline ios_base&
 noskipws(ios_base& __base)
 {
   __base.unsetf(ios_base::skipws);
   return __base;
 }


 inline ios_base&
 uppercase(ios_base& __base)
 {
   __base.setf(ios_base::uppercase);
   return __base;
 }


 inline ios_base&
 nouppercase(ios_base& __base)
 {
   __base.unsetf(ios_base::uppercase);
   return __base;
 }


 inline ios_base&
 unitbuf(ios_base& __base)
 {
    __base.setf(ios_base::unitbuf);
    return __base;
 }


 inline ios_base&
 nounitbuf(ios_base& __base)
 {
    __base.unsetf(ios_base::unitbuf);
    return __base;
 }



 inline ios_base&
 internal(ios_base& __base)
 {
    __base.setf(ios_base::internal, ios_base::adjustfield);
    return __base;
 }


 inline ios_base&
 left(ios_base& __base)
 {
   __base.setf(ios_base::left, ios_base::adjustfield);
   return __base;
 }


 inline ios_base&
 right(ios_base& __base)
 {
   __base.setf(ios_base::right, ios_base::adjustfield);
   return __base;
 }



 inline ios_base&
 dec(ios_base& __base)
 {
   __base.setf(ios_base::dec, ios_base::basefield);
   return __base;
 }


 inline ios_base&
 hex(ios_base& __base)
 {
   __base.setf(ios_base::hex, ios_base::basefield);
   return __base;
 }


 inline ios_base&
 oct(ios_base& __base)
 {
   __base.setf(ios_base::oct, ios_base::basefield);
   return __base;
 }



 inline ios_base&
 fixed(ios_base& __base)
 {
   __base.setf(ios_base::fixed, ios_base::floatfield);
   return __base;
 }


 inline ios_base&
 scientific(ios_base& __base)
 {
   __base.setf(ios_base::scientific, ios_base::floatfield);
   return __base;
 }
# 1076 "/usr/include/g++/bits/ios_base.h" 3

}
# 43 "/usr/include/g++/ios" 2 3
# 1 "/usr/include/g++/streambuf" 1 3
# 36 "/usr/include/g++/streambuf" 3

# 37 "/usr/include/g++/streambuf" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 39 "/usr/include/g++/streambuf" 2 3






namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _CharT, typename _Traits>
   streamsize
   __copy_streambufs_eof(basic_streambuf<_CharT, _Traits>*,
    basic_streambuf<_CharT, _Traits>*, bool&);
# 119 "/usr/include/g++/streambuf" 3
 template<typename _CharT, typename _Traits>
   class basic_streambuf
   {
   public:






     typedef _CharT char_type;
     typedef _Traits traits_type;
     typedef typename traits_type::int_type int_type;
     typedef typename traits_type::pos_type pos_type;
     typedef typename traits_type::off_type off_type;




     typedef basic_streambuf<char_type, traits_type> __streambuf_type;


     friend class basic_ios<char_type, traits_type>;
     friend class basic_istream<char_type, traits_type>;
     friend class basic_ostream<char_type, traits_type>;
     friend class istreambuf_iterator<char_type, traits_type>;
     friend class ostreambuf_iterator<char_type, traits_type>;

     friend streamsize
     __copy_streambufs_eof<>(basic_streambuf*, basic_streambuf*, bool&);

     template<bool _IsMove, typename _CharT2>
       friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
           _CharT2*>::__type
       __copy_move_a2(istreambuf_iterator<_CharT2>,
        istreambuf_iterator<_CharT2>, _CharT2*);

     template<typename _CharT2>
       friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
     istreambuf_iterator<_CharT2> >::__type
       find(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
     const _CharT2&);

     template<typename _CharT2, typename _Traits2>
       friend basic_istream<_CharT2, _Traits2>&
       operator>>(basic_istream<_CharT2, _Traits2>&, _CharT2*);

     template<typename _CharT2, typename _Traits2, typename _Alloc>
       friend basic_istream<_CharT2, _Traits2>&
       operator>>(basic_istream<_CharT2, _Traits2>&,
    basic_string<_CharT2, _Traits2, _Alloc>&);

     template<typename _CharT2, typename _Traits2, typename _Alloc>
       friend basic_istream<_CharT2, _Traits2>&
       getline(basic_istream<_CharT2, _Traits2>&,
 basic_string<_CharT2, _Traits2, _Alloc>&, _CharT2);

   protected:







     char_type* _M_in_beg;
     char_type* _M_in_cur;
     char_type* _M_in_end;
     char_type* _M_out_beg;
     char_type* _M_out_cur;
     char_type* _M_out_end;


     locale _M_buf_locale;

 public:

     virtual
     ~basic_streambuf()
     { }
# 208 "/usr/include/g++/streambuf" 3
     locale
     pubimbue(const locale& __loc)
     {
locale __tmp(this->getloc());
this->imbue(__loc);
_M_buf_locale = __loc;
return __tmp;
     }
# 225 "/usr/include/g++/streambuf" 3
     locale
     getloc() const
     { return _M_buf_locale; }
# 238 "/usr/include/g++/streambuf" 3
     basic_streambuf*
     pubsetbuf(char_type* __s, streamsize __n)
     { return this->setbuf(__s, __n); }
# 250 "/usr/include/g++/streambuf" 3
     pos_type
     pubseekoff(off_type __off, ios_base::seekdir __way,
  ios_base::openmode __mode = ios_base::in | ios_base::out)
     { return this->seekoff(__off, __way, __mode); }
# 262 "/usr/include/g++/streambuf" 3
     pos_type
     pubseekpos(pos_type __sp,
  ios_base::openmode __mode = ios_base::in | ios_base::out)
     { return this->seekpos(__sp, __mode); }




     int
     pubsync() { return this->sync(); }
# 283 "/usr/include/g++/streambuf" 3
     streamsize
     in_avail()
     {
const streamsize __ret = this->egptr() - this->gptr();
return __ret ? __ret : this->showmanyc();
     }
# 297 "/usr/include/g++/streambuf" 3
     int_type
     snextc()
     {
int_type __ret = traits_type::eof();
if (__builtin_expect(!traits_type::eq_int_type(this->sbumpc(),
            __ret), true))
  __ret = this->sgetc();
return __ret;
     }
# 315 "/usr/include/g++/streambuf" 3
     int_type
     sbumpc()
     {
int_type __ret;
if (__builtin_expect(this->gptr() < this->egptr(), true))
  {
    __ret = traits_type::to_int_type(*this->gptr());
    this->gbump(1);
  }
else
  __ret = this->uflow();
return __ret;
     }
# 337 "/usr/include/g++/streambuf" 3
     int_type
     sgetc()
     {
int_type __ret;
if (__builtin_expect(this->gptr() < this->egptr(), true))
  __ret = traits_type::to_int_type(*this->gptr());
else
  __ret = this->underflow();
return __ret;
     }
# 356 "/usr/include/g++/streambuf" 3
     streamsize
     sgetn(char_type* __s, streamsize __n)
     { return this->xsgetn(__s, __n); }
# 371 "/usr/include/g++/streambuf" 3
     int_type
     sputbackc(char_type __c)
     {
int_type __ret;
const bool __testpos = this->eback() < this->gptr();
if (__builtin_expect(!__testpos ||
       !traits_type::eq(__c, this->gptr()[-1]), false))
  __ret = this->pbackfail(traits_type::to_int_type(__c));
else
  {
    this->gbump(-1);
    __ret = traits_type::to_int_type(*this->gptr());
  }
return __ret;
     }
# 396 "/usr/include/g++/streambuf" 3
     int_type
     sungetc()
     {
int_type __ret;
if (__builtin_expect(this->eback() < this->gptr(), true))
  {
    this->gbump(-1);
    __ret = traits_type::to_int_type(*this->gptr());
  }
else
  __ret = this->pbackfail();
return __ret;
     }
# 423 "/usr/include/g++/streambuf" 3
     int_type
     sputc(char_type __c)
     {
int_type __ret;
if (__builtin_expect(this->pptr() < this->epptr(), true))
  {
    *this->pptr() = __c;
    this->pbump(1);
    __ret = traits_type::to_int_type(__c);
  }
else
  __ret = this->overflow(traits_type::to_int_type(__c));
return __ret;
     }
# 449 "/usr/include/g++/streambuf" 3
     streamsize
     sputn(const char_type* __s, streamsize __n)
     { return this->xsputn(__s, __n); }

   protected:
# 463 "/usr/include/g++/streambuf" 3
     basic_streambuf()
     : _M_in_beg(0), _M_in_cur(0), _M_in_end(0),
     _M_out_beg(0), _M_out_cur(0), _M_out_end(0),
     _M_buf_locale(locale())
     { }
# 481 "/usr/include/g++/streambuf" 3
     char_type*
     eback() const { return _M_in_beg; }

     char_type*
     gptr() const { return _M_in_cur; }

     char_type*
     egptr() const { return _M_in_end; }
# 497 "/usr/include/g++/streambuf" 3
     void
     gbump(int __n) { _M_in_cur += __n; }
# 508 "/usr/include/g++/streambuf" 3
     void
     setg(char_type* __gbeg, char_type* __gnext, char_type* __gend)
     {
_M_in_beg = __gbeg;
_M_in_cur = __gnext;
_M_in_end = __gend;
     }
# 528 "/usr/include/g++/streambuf" 3
     char_type*
     pbase() const { return _M_out_beg; }

     char_type*
     pptr() const { return _M_out_cur; }

     char_type*
     epptr() const { return _M_out_end; }
# 544 "/usr/include/g++/streambuf" 3
     void
     pbump(int __n) { _M_out_cur += __n; }
# 554 "/usr/include/g++/streambuf" 3
     void
     setp(char_type* __pbeg, char_type* __pend)
     {
_M_out_beg = _M_out_cur = __pbeg;
_M_out_end = __pend;
     }
# 575 "/usr/include/g++/streambuf" 3
     virtual void
     imbue(const locale& __loc)
     { }
# 590 "/usr/include/g++/streambuf" 3
     virtual basic_streambuf<char_type,_Traits>*
     setbuf(char_type*, streamsize)
     { return this; }
# 601 "/usr/include/g++/streambuf" 3
     virtual pos_type
     seekoff(off_type, ios_base::seekdir,
      ios_base::openmode = ios_base::in | ios_base::out)
     { return pos_type(off_type(-1)); }
# 613 "/usr/include/g++/streambuf" 3
     virtual pos_type
     seekpos(pos_type,
      ios_base::openmode = ios_base::in | ios_base::out)
     { return pos_type(off_type(-1)); }
# 626 "/usr/include/g++/streambuf" 3
     virtual int
     sync() { return 0; }
# 648 "/usr/include/g++/streambuf" 3
     virtual streamsize
     showmanyc() { return 0; }
# 664 "/usr/include/g++/streambuf" 3
     virtual streamsize
     xsgetn(char_type* __s, streamsize __n);
# 686 "/usr/include/g++/streambuf" 3
     virtual int_type
     underflow()
     { return traits_type::eof(); }
# 699 "/usr/include/g++/streambuf" 3
     virtual int_type
     uflow()
     {
int_type __ret = traits_type::eof();
const bool __testeof = traits_type::eq_int_type(this->underflow(),
      __ret);
if (!__testeof)
  {
    __ret = traits_type::to_int_type(*this->gptr());
    this->gbump(1);
  }
return __ret;
     }
# 723 "/usr/include/g++/streambuf" 3
     virtual int_type
     pbackfail(int_type __c = traits_type::eof())
     { return traits_type::eof(); }
# 741 "/usr/include/g++/streambuf" 3
     virtual streamsize
     xsputn(const char_type* __s, streamsize __n);
# 767 "/usr/include/g++/streambuf" 3
     virtual int_type
     overflow(int_type __c = traits_type::eof())
     { return traits_type::eof(); }



   public:
# 782 "/usr/include/g++/streambuf" 3
     void
     stossc()
     {
if (this->gptr() < this->egptr())
  this->gbump(1);
else
  this->uflow();
     }



     void
     __safe_gbump(streamsize __n) { _M_in_cur += __n; }

     void
     __safe_pbump(streamsize __n) { _M_out_cur += __n; }


   private:



     basic_streambuf(const basic_streambuf&);

     basic_streambuf&
     operator=(const basic_streambuf&);
# 822 "/usr/include/g++/streambuf" 3
   };
# 836 "/usr/include/g++/streambuf" 3
 template<>
   streamsize
   __copy_streambufs_eof(basic_streambuf<char>* __sbin,
    basic_streambuf<char>* __sbout, bool& __ineof);

 template<>
   streamsize
   __copy_streambufs_eof(basic_streambuf<wchar_t>* __sbin,
    basic_streambuf<wchar_t>* __sbout, bool& __ineof);



}

# 1 "/usr/include/g++/bits/streambuf.tcc" 1 3
# 37 "/usr/include/g++/bits/streambuf.tcc" 3

# 38 "/usr/include/g++/bits/streambuf.tcc" 3

namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _CharT, typename _Traits>
   streamsize
   basic_streambuf<_CharT, _Traits>::
   xsgetn(char_type* __s, streamsize __n)
   {
     streamsize __ret = 0;
     while (__ret < __n)
{
  const streamsize __buf_len = this->egptr() - this->gptr();
  if (__buf_len)
    {
      const streamsize __remaining = __n - __ret;
      const streamsize __len = std::min(__buf_len, __remaining);
      traits_type::copy(__s, this->gptr(), __len);
      __ret += __len;
      __s += __len;
      this->__safe_gbump(__len);
    }

  if (__ret < __n)
    {
      const int_type __c = this->uflow();
      if (!traits_type::eq_int_type(__c, traits_type::eof()))
 {
   traits_type::assign(*__s++, traits_type::to_char_type(__c));
   ++__ret;
 }
      else
 break;
    }
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   streamsize
   basic_streambuf<_CharT, _Traits>::
   xsputn(const char_type* __s, streamsize __n)
   {
     streamsize __ret = 0;
     while (__ret < __n)
{
  const streamsize __buf_len = this->epptr() - this->pptr();
  if (__buf_len)
    {
      const streamsize __remaining = __n - __ret;
      const streamsize __len = std::min(__buf_len, __remaining);
      traits_type::copy(this->pptr(), __s, __len);
      __ret += __len;
      __s += __len;
      this->__safe_pbump(__len);
    }

  if (__ret < __n)
    {
      int_type __c = this->overflow(traits_type::to_int_type(*__s));
      if (!traits_type::eq_int_type(__c, traits_type::eof()))
 {
   ++__ret;
   ++__s;
 }
      else
 break;
    }
}
     return __ret;
   }




 template<typename _CharT, typename _Traits>
   streamsize
   __copy_streambufs_eof(basic_streambuf<_CharT, _Traits>* __sbin,
    basic_streambuf<_CharT, _Traits>* __sbout,
    bool& __ineof)
   {
     streamsize __ret = 0;
     __ineof = true;
     typename _Traits::int_type __c = __sbin->sgetc();
     while (!_Traits::eq_int_type(__c, _Traits::eof()))
{
  __c = __sbout->sputc(_Traits::to_char_type(__c));
  if (_Traits::eq_int_type(__c, _Traits::eof()))
    {
      __ineof = false;
      break;
    }
  ++__ret;
  __c = __sbin->snextc();
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   inline streamsize
   __copy_streambufs(basic_streambuf<_CharT, _Traits>* __sbin,
       basic_streambuf<_CharT, _Traits>* __sbout)
   {
     bool __ineof;
     return __copy_streambufs_eof(__sbin, __sbout, __ineof);
   }




 extern template class basic_streambuf<char>;
 extern template
   streamsize
   __copy_streambufs(basic_streambuf<char>*,
       basic_streambuf<char>*);
 extern template
   streamsize
   __copy_streambufs_eof(basic_streambuf<char>*,
    basic_streambuf<char>*, bool&);


 extern template class basic_streambuf<wchar_t>;
 extern template
   streamsize
   __copy_streambufs(basic_streambuf<wchar_t>*,
       basic_streambuf<wchar_t>*);
 extern template
   streamsize
   __copy_streambufs_eof(basic_streambuf<wchar_t>*,
    basic_streambuf<wchar_t>*, bool&);




}
# 851 "/usr/include/g++/streambuf" 2 3
# 44 "/usr/include/g++/ios" 2 3
# 1 "/usr/include/g++/bits/basic_ios.h" 1 3
# 33 "/usr/include/g++/bits/basic_ios.h" 3

# 34 "/usr/include/g++/bits/basic_ios.h" 3



# 1 "/usr/include/g++/bits/locale_facets.h" 1 3
# 37 "/usr/include/g++/bits/locale_facets.h" 3

# 38 "/usr/include/g++/bits/locale_facets.h" 3

# 1 "/usr/include/g++/cwctype" 1 3
# 39 "/usr/include/g++/cwctype" 3

# 40 "/usr/include/g++/cwctype" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cwctype" 2 3
# 50 "/usr/include/g++/cwctype" 3
# 1 "/usr/include/wctype.h" 1 3 4
# 35 "/usr/include/wctype.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 36 "/usr/include/wctype.h" 2 3 4
# 44 "/usr/include/wctype.h" 3 4
typedef __wctrans_t wctrans_t;




typedef __wctype_t wctype_t;








# 57 "/usr/include/wctype.h" 3 4
#pragma GCC visibility push(default)
# 57 "/usr/include/wctype.h" 3 4
extern "C" {
int iswalnum(wint_t);
int iswalpha(wint_t);
int iswblank(wint_t);
int iswcntrl(wint_t);
int iswdigit(wint_t);
int iswgraph(wint_t);
int iswlower(wint_t);
int iswprint(wint_t);
int iswpunct(wint_t);
int iswspace(wint_t);
int iswupper(wint_t);
int iswxdigit(wint_t);
int iswctype(wint_t, wctype_t);
wint_t towctrans(wint_t, wctrans_t);
wint_t towlower(wint_t);
wint_t towupper(wint_t);
wctrans_t wctrans(const char *);
wctype_t wctype(const char *);






int iswalnum_l(wint_t, locale_t);
int iswalpha_l(wint_t, locale_t);
int iswblank_l(wint_t, locale_t);
int iswcntrl_l(wint_t, locale_t);
int iswdigit_l(wint_t, locale_t);
int iswgraph_l(wint_t, locale_t);
int iswlower_l(wint_t, locale_t);
int iswprint_l(wint_t, locale_t);
int iswpunct_l(wint_t, locale_t);
int iswspace_l(wint_t, locale_t);
int iswupper_l(wint_t, locale_t);
int iswxdigit_l(wint_t, locale_t);
int iswctype_l(wint_t, wctype_t, locale_t);
wint_t towctrans_l(wint_t, wctrans_t, locale_t);
wint_t towlower_l(wint_t, locale_t);
wint_t towupper_l(wint_t, locale_t);
wctrans_t wctrans_l(const char *, locale_t);
wctype_t wctype_l(const char *, locale_t);

}
# 101 "/usr/include/wctype.h" 3 4
#pragma GCC visibility pop
# 101 "/usr/include/wctype.h" 3 4

# 51 "/usr/include/g++/cwctype" 2 3
# 80 "/usr/include/g++/cwctype" 3
namespace std
{
 using ::wctrans_t;
 using ::wctype_t;
 using ::wint_t;

 using ::iswalnum;
 using ::iswalpha;

 using ::iswblank;

 using ::iswcntrl;
 using ::iswctype;
 using ::iswdigit;
 using ::iswgraph;
 using ::iswlower;
 using ::iswprint;
 using ::iswpunct;
 using ::iswspace;
 using ::iswupper;
 using ::iswxdigit;
 using ::towctrans;
 using ::towlower;
 using ::towupper;
 using ::wctrans;
 using ::wctype;
}
# 40 "/usr/include/g++/bits/locale_facets.h" 2 3
# 1 "/usr/include/g++/cctype" 1 3
# 39 "/usr/include/g++/cctype" 3

# 40 "/usr/include/g++/cctype" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cctype" 2 3
# 41 "/usr/include/g++/bits/locale_facets.h" 2 3
# 1 "/usr/include/g++/bits/ctype_base.h" 1 3
# 34 "/usr/include/g++/bits/ctype_base.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{



 struct ctype_base
 {
# 63 "/usr/include/g++/bits/ctype_base.h" 3
   typedef const unsigned short* __to_type;

   typedef unsigned short mask;

   static const mask upper = 0x0080;
   static const mask lower = 0x0010;
   static const mask alpha = 0x0001;
   static const mask digit = 0x0004;
   static const mask xdigit = 0x0100;
   static const mask space = 0x0040;
   static const mask print = 0x0400;
   static const mask graph = 0x0008;
   static const mask cntrl = 0x0002;
   static const mask punct = 0x0020;
   static const mask alnum = 0x0001 | 0x0004;




 };


}
# 42 "/usr/include/g++/bits/locale_facets.h" 2 3






# 1 "/usr/include/g++/bits/streambuf_iterator.h" 1 3
# 33 "/usr/include/g++/bits/streambuf_iterator.h" 3

# 34 "/usr/include/g++/bits/streambuf_iterator.h" 3




namespace std __attribute__ ((__visibility__ ("default")))
{

# 49 "/usr/include/g++/bits/streambuf_iterator.h" 3
 template<typename _CharT, typename _Traits>
   class istreambuf_iterator
   : public iterator<input_iterator_tag, _CharT, typename _Traits::off_type,
                     _CharT*,




       _CharT&>

   {
   public:



     typedef _CharT char_type;
     typedef _Traits traits_type;
     typedef typename _Traits::int_type int_type;
     typedef basic_streambuf<_CharT, _Traits> streambuf_type;
     typedef basic_istream<_CharT, _Traits> istream_type;


     template<typename _CharT2>
friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
                     ostreambuf_iterator<_CharT2> >::__type
copy(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
     ostreambuf_iterator<_CharT2>);

     template<bool _IsMove, typename _CharT2>
friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
           _CharT2*>::__type
__copy_move_a2(istreambuf_iterator<_CharT2>,
        istreambuf_iterator<_CharT2>, _CharT2*);

     template<typename _CharT2>
friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
              istreambuf_iterator<_CharT2> >::__type
find(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
     const _CharT2&);

   private:







     mutable streambuf_type* _M_sbuf;
     mutable int_type _M_c;

   public:

     istreambuf_iterator() throw()
     : _M_sbuf(0), _M_c(traits_type::eof()) { }
# 112 "/usr/include/g++/bits/streambuf_iterator.h" 3
     istreambuf_iterator(istream_type& __s) throw()
     : _M_sbuf(__s.rdbuf()), _M_c(traits_type::eof()) { }


     istreambuf_iterator(streambuf_type* __s) throw()
     : _M_sbuf(__s), _M_c(traits_type::eof()) { }




     char_type
     operator*() const
     {







return traits_type::to_char_type(_M_get());
     }


     istreambuf_iterator&
     operator++()
     {


                       ;
if (_M_sbuf)
  {
    _M_sbuf->sbumpc();
    _M_c = traits_type::eof();
  }
return *this;
     }


     istreambuf_iterator
     operator++(int)
     {


                       ;

istreambuf_iterator __old = *this;
if (_M_sbuf)
  {
    __old._M_c = _M_sbuf->sbumpc();
    _M_c = traits_type::eof();
  }
return __old;
     }





     bool
     equal(const istreambuf_iterator& __b) const
     { return _M_at_eof() == __b._M_at_eof(); }

   private:
     int_type
     _M_get() const
     {
const int_type __eof = traits_type::eof();
int_type __ret = __eof;
if (_M_sbuf)
  {
    if (!traits_type::eq_int_type(_M_c, __eof))
      __ret = _M_c;
    else if (!traits_type::eq_int_type((__ret = _M_sbuf->sgetc()),
           __eof))
      _M_c = __ret;
    else
      _M_sbuf = 0;
  }
return __ret;
     }

     bool
     _M_at_eof() const
     {
const int_type __eof = traits_type::eof();
return traits_type::eq_int_type(_M_get(), __eof);
     }
   };

 template<typename _CharT, typename _Traits>
   inline bool
   operator==(const istreambuf_iterator<_CharT, _Traits>& __a,
       const istreambuf_iterator<_CharT, _Traits>& __b)
   { return __a.equal(__b); }

 template<typename _CharT, typename _Traits>
   inline bool
   operator!=(const istreambuf_iterator<_CharT, _Traits>& __a,
       const istreambuf_iterator<_CharT, _Traits>& __b)
   { return !__a.equal(__b); }


 template<typename _CharT, typename _Traits>
   class ostreambuf_iterator
   : public iterator<output_iterator_tag, void, void, void, void>
   {
   public:



     typedef _CharT char_type;
     typedef _Traits traits_type;
     typedef basic_streambuf<_CharT, _Traits> streambuf_type;
     typedef basic_ostream<_CharT, _Traits> ostream_type;


     template<typename _CharT2>
friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
                     ostreambuf_iterator<_CharT2> >::__type
copy(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
     ostreambuf_iterator<_CharT2>);

   private:
     streambuf_type* _M_sbuf;
     bool _M_failed;

   public:

     ostreambuf_iterator(ostream_type& __s) throw()
     : _M_sbuf(__s.rdbuf()), _M_failed(!_M_sbuf) { }


     ostreambuf_iterator(streambuf_type* __s) throw()
     : _M_sbuf(__s), _M_failed(!_M_sbuf) { }


     ostreambuf_iterator&
     operator=(_CharT __c)
     {
if (!_M_failed &&
    _Traits::eq_int_type(_M_sbuf->sputc(__c), _Traits::eof()))
  _M_failed = true;
return *this;
     }


     ostreambuf_iterator&
     operator*()
     { return *this; }


     ostreambuf_iterator&
     operator++(int)
     { return *this; }


     ostreambuf_iterator&
     operator++()
     { return *this; }


     bool
     failed() const throw()
     { return _M_failed; }

     ostreambuf_iterator&
     _M_put(const _CharT* __ws, streamsize __len)
     {
if (__builtin_expect(!_M_failed, true)
    && __builtin_expect(this->_M_sbuf->sputn(__ws, __len) != __len,
   false))
  _M_failed = true;
return *this;
     }
   };


 template<typename _CharT>
   typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
                          ostreambuf_iterator<_CharT> >::__type
   copy(istreambuf_iterator<_CharT> __first,
 istreambuf_iterator<_CharT> __last,
 ostreambuf_iterator<_CharT> __result)
   {
     if (__first._M_sbuf && !__last._M_sbuf && !__result._M_failed)
{
  bool __ineof;
  __copy_streambufs_eof(__first._M_sbuf, __result._M_sbuf, __ineof);
  if (!__ineof)
    __result._M_failed = true;
}
     return __result;
   }

 template<bool _IsMove, typename _CharT>
   typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
           ostreambuf_iterator<_CharT> >::__type
   __copy_move_a2(_CharT* __first, _CharT* __last,
    ostreambuf_iterator<_CharT> __result)
   {
     const streamsize __num = __last - __first;
     if (__num > 0)
__result._M_put(__first, __num);
     return __result;
   }

 template<bool _IsMove, typename _CharT>
   typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
       ostreambuf_iterator<_CharT> >::__type
   __copy_move_a2(const _CharT* __first, const _CharT* __last,
    ostreambuf_iterator<_CharT> __result)
   {
     const streamsize __num = __last - __first;
     if (__num > 0)
__result._M_put(__first, __num);
     return __result;
   }

 template<bool _IsMove, typename _CharT>
   typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
           _CharT*>::__type
   __copy_move_a2(istreambuf_iterator<_CharT> __first,
    istreambuf_iterator<_CharT> __last, _CharT* __result)
   {
     typedef istreambuf_iterator<_CharT> __is_iterator_type;
     typedef typename __is_iterator_type::traits_type traits_type;
     typedef typename __is_iterator_type::streambuf_type streambuf_type;
     typedef typename traits_type::int_type int_type;

     if (__first._M_sbuf && !__last._M_sbuf)
{
  streambuf_type* __sb = __first._M_sbuf;
  int_type __c = __sb->sgetc();
  while (!traits_type::eq_int_type(__c, traits_type::eof()))
    {
      const streamsize __n = __sb->egptr() - __sb->gptr();
      if (__n > 1)
 {
   traits_type::copy(__result, __sb->gptr(), __n);
   __sb->__safe_gbump(__n);
   __result += __n;
   __c = __sb->underflow();
 }
      else
 {
   *__result++ = traits_type::to_char_type(__c);
   __c = __sb->snextc();
 }
    }
}
     return __result;
   }

 template<typename _CharT>
   typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
         istreambuf_iterator<_CharT> >::__type
   find(istreambuf_iterator<_CharT> __first,
 istreambuf_iterator<_CharT> __last, const _CharT& __val)
   {
     typedef istreambuf_iterator<_CharT> __is_iterator_type;
     typedef typename __is_iterator_type::traits_type traits_type;
     typedef typename __is_iterator_type::streambuf_type streambuf_type;
     typedef typename traits_type::int_type int_type;

     if (__first._M_sbuf && !__last._M_sbuf)
{
  const int_type __ival = traits_type::to_int_type(__val);
  streambuf_type* __sb = __first._M_sbuf;
  int_type __c = __sb->sgetc();
  while (!traits_type::eq_int_type(__c, traits_type::eof())
  && !traits_type::eq_int_type(__c, __ival))
    {
      streamsize __n = __sb->egptr() - __sb->gptr();
      if (__n > 1)
 {
   const _CharT* __p = traits_type::find(__sb->gptr(),
      __n, __val);
   if (__p)
     __n = __p - __sb->gptr();
   __sb->__safe_gbump(__n);
   __c = __sb->sgetc();
 }
      else
 __c = __sb->snextc();
    }

  if (!traits_type::eq_int_type(__c, traits_type::eof()))
    __first._M_c = __c;
  else
    __first._M_sbuf = 0;
}
     return __first;
   }




}
# 49 "/usr/include/g++/bits/locale_facets.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{

# 71 "/usr/include/g++/bits/locale_facets.h" 3
 template<typename _Tp>
   void
   __convert_to_v(const char*, _Tp&, ios_base::iostate&,
    const __c_locale&) throw();


 template<>
   void
   __convert_to_v(const char*, float&, ios_base::iostate&,
    const __c_locale&) throw();

 template<>
   void
   __convert_to_v(const char*, double&, ios_base::iostate&,
    const __c_locale&) throw();

 template<>
   void
   __convert_to_v(const char*, long double&, ios_base::iostate&,
    const __c_locale&) throw();



 template<typename _CharT, typename _Traits>
   struct __pad
   {
     static void
     _S_pad(ios_base& __io, _CharT __fill, _CharT* __news,
     const _CharT* __olds, streamsize __newlen, streamsize __oldlen);
   };






 template<typename _CharT>
   _CharT*
   __add_grouping(_CharT* __s, _CharT __sep,
    const char* __gbeg, size_t __gsize,
    const _CharT* __first, const _CharT* __last);




 template<typename _CharT>
   inline
   ostreambuf_iterator<_CharT>
   __write(ostreambuf_iterator<_CharT> __s, const _CharT* __ws, int __len)
   {
     __s._M_put(__ws, __len);
     return __s;
   }


 template<typename _CharT, typename _OutIter>
   inline
   _OutIter
   __write(_OutIter __s, const _CharT* __ws, int __len)
   {
     for (int __j = 0; __j < __len; __j++, ++__s)
*__s = __ws[__j];
     return __s;
   }
# 149 "/usr/include/g++/bits/locale_facets.h" 3
 template<typename _CharT>
   class __ctype_abstract_base : public locale::facet, public ctype_base
   {
   public:


     typedef _CharT char_type;
# 168 "/usr/include/g++/bits/locale_facets.h" 3
     bool
     is(mask __m, char_type __c) const
     { return this->do_is(__m, __c); }
# 185 "/usr/include/g++/bits/locale_facets.h" 3
     const char_type*
     is(const char_type *__lo, const char_type *__hi, mask *__vec) const
     { return this->do_is(__lo, __hi, __vec); }
# 201 "/usr/include/g++/bits/locale_facets.h" 3
     const char_type*
     scan_is(mask __m, const char_type* __lo, const char_type* __hi) const
     { return this->do_scan_is(__m, __lo, __hi); }
# 217 "/usr/include/g++/bits/locale_facets.h" 3
     const char_type*
     scan_not(mask __m, const char_type* __lo, const char_type* __hi) const
     { return this->do_scan_not(__m, __lo, __hi); }
# 231 "/usr/include/g++/bits/locale_facets.h" 3
     char_type
     toupper(char_type __c) const
     { return this->do_toupper(__c); }
# 246 "/usr/include/g++/bits/locale_facets.h" 3
     const char_type*
     toupper(char_type *__lo, const char_type* __hi) const
     { return this->do_toupper(__lo, __hi); }
# 260 "/usr/include/g++/bits/locale_facets.h" 3
     char_type
     tolower(char_type __c) const
     { return this->do_tolower(__c); }
# 275 "/usr/include/g++/bits/locale_facets.h" 3
     const char_type*
     tolower(char_type* __lo, const char_type* __hi) const
     { return this->do_tolower(__lo, __hi); }
# 292 "/usr/include/g++/bits/locale_facets.h" 3
     char_type
     widen(char __c) const
     { return this->do_widen(__c); }
# 311 "/usr/include/g++/bits/locale_facets.h" 3
     const char*
     widen(const char* __lo, const char* __hi, char_type* __to) const
     { return this->do_widen(__lo, __hi, __to); }
# 330 "/usr/include/g++/bits/locale_facets.h" 3
     char
     narrow(char_type __c, char __dfault) const
     { return this->do_narrow(__c, __dfault); }
# 352 "/usr/include/g++/bits/locale_facets.h" 3
     const char_type*
     narrow(const char_type* __lo, const char_type* __hi,
      char __dfault, char* __to) const
     { return this->do_narrow(__lo, __hi, __dfault, __to); }

   protected:
     explicit
     __ctype_abstract_base(size_t __refs = 0): facet(__refs) { }

     virtual
     ~__ctype_abstract_base() { }
# 377 "/usr/include/g++/bits/locale_facets.h" 3
     virtual bool
     do_is(mask __m, char_type __c) const = 0;
# 396 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_is(const char_type* __lo, const char_type* __hi,
    mask* __vec) const = 0;
# 415 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_scan_is(mask __m, const char_type* __lo,
  const char_type* __hi) const = 0;
# 434 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_scan_not(mask __m, const char_type* __lo,
   const char_type* __hi) const = 0;
# 452 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_toupper(char_type __c) const = 0;
# 469 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_toupper(char_type* __lo, const char_type* __hi) const = 0;
# 485 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_tolower(char_type __c) const = 0;
# 502 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_tolower(char_type* __lo, const char_type* __hi) const = 0;
# 521 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_widen(char __c) const = 0;
# 542 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char*
     do_widen(const char* __lo, const char* __hi, char_type* __to) const = 0;
# 563 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char
     do_narrow(char_type __c, char __dfault) const = 0;
# 588 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_narrow(const char_type* __lo, const char_type* __hi,
 char __dfault, char* __to) const = 0;
   };
# 611 "/usr/include/g++/bits/locale_facets.h" 3
 template<typename _CharT>
   class ctype : public __ctype_abstract_base<_CharT>
   {
   public:

     typedef _CharT char_type;
     typedef typename __ctype_abstract_base<_CharT>::mask mask;


     static locale::id id;

     explicit
     ctype(size_t __refs = 0) : __ctype_abstract_base<_CharT>(__refs) { }

  protected:
     virtual
     ~ctype();

     virtual bool
     do_is(mask __m, char_type __c) const;

     virtual const char_type*
     do_is(const char_type* __lo, const char_type* __hi, mask* __vec) const;

     virtual const char_type*
     do_scan_is(mask __m, const char_type* __lo, const char_type* __hi) const;

     virtual const char_type*
     do_scan_not(mask __m, const char_type* __lo,
   const char_type* __hi) const;

     virtual char_type
     do_toupper(char_type __c) const;

     virtual const char_type*
     do_toupper(char_type* __lo, const char_type* __hi) const;

     virtual char_type
     do_tolower(char_type __c) const;

     virtual const char_type*
     do_tolower(char_type* __lo, const char_type* __hi) const;

     virtual char_type
     do_widen(char __c) const;

     virtual const char*
     do_widen(const char* __lo, const char* __hi, char_type* __dest) const;

     virtual char
     do_narrow(char_type, char __dfault) const;

     virtual const char_type*
     do_narrow(const char_type* __lo, const char_type* __hi,
 char __dfault, char* __to) const;
   };

 template<typename _CharT>
   locale::id ctype<_CharT>::id;
# 680 "/usr/include/g++/bits/locale_facets.h" 3
 template<>
   class ctype<char> : public locale::facet, public ctype_base
   {
   public:


     typedef char char_type;

   protected:

     __c_locale _M_c_locale_ctype;
     bool _M_del;
     __to_type _M_toupper;
     __to_type _M_tolower;
     const mask* _M_table;
     mutable char _M_widen_ok;
     mutable char _M_widen[1 + static_cast<unsigned char>(-1)];
     mutable char _M_narrow[1 + static_cast<unsigned char>(-1)];
     mutable char _M_narrow_ok;


   public:

     static locale::id id;

     static const size_t table_size = 1 + static_cast<unsigned char>(-1);
# 717 "/usr/include/g++/bits/locale_facets.h" 3
     explicit
     ctype(const mask* __table = 0, bool __del = false, size_t __refs = 0);
# 730 "/usr/include/g++/bits/locale_facets.h" 3
     explicit
     ctype(__c_locale __cloc, const mask* __table = 0, bool __del = false,
    size_t __refs = 0);
# 743 "/usr/include/g++/bits/locale_facets.h" 3
     inline bool
     is(mask __m, char __c) const;
# 758 "/usr/include/g++/bits/locale_facets.h" 3
     inline const char*
     is(const char* __lo, const char* __hi, mask* __vec) const;
# 772 "/usr/include/g++/bits/locale_facets.h" 3
     inline const char*
     scan_is(mask __m, const char* __lo, const char* __hi) const;
# 786 "/usr/include/g++/bits/locale_facets.h" 3
     inline const char*
     scan_not(mask __m, const char* __lo, const char* __hi) const;
# 801 "/usr/include/g++/bits/locale_facets.h" 3
     char_type
     toupper(char_type __c) const
     { return this->do_toupper(__c); }
# 818 "/usr/include/g++/bits/locale_facets.h" 3
     const char_type*
     toupper(char_type *__lo, const char_type* __hi) const
     { return this->do_toupper(__lo, __hi); }
# 834 "/usr/include/g++/bits/locale_facets.h" 3
     char_type
     tolower(char_type __c) const
     { return this->do_tolower(__c); }
# 851 "/usr/include/g++/bits/locale_facets.h" 3
     const char_type*
     tolower(char_type* __lo, const char_type* __hi) const
     { return this->do_tolower(__lo, __hi); }
# 871 "/usr/include/g++/bits/locale_facets.h" 3
     char_type
     widen(char __c) const
     {
if (_M_widen_ok)
  return _M_widen[static_cast<unsigned char>(__c)];
this->_M_widen_init();
return this->do_widen(__c);
     }
# 898 "/usr/include/g++/bits/locale_facets.h" 3
     const char*
     widen(const char* __lo, const char* __hi, char_type* __to) const
     {
if (_M_widen_ok == 1)
  {
    __builtin_memcpy(__to, __lo, __hi - __lo);
    return __hi;
  }
if (!_M_widen_ok)
  _M_widen_init();
return this->do_widen(__lo, __hi, __to);
     }
# 929 "/usr/include/g++/bits/locale_facets.h" 3
     char
     narrow(char_type __c, char __dfault) const
     {
if (_M_narrow[static_cast<unsigned char>(__c)])
  return _M_narrow[static_cast<unsigned char>(__c)];
const char __t = do_narrow(__c, __dfault);
if (__t != __dfault)
  _M_narrow[static_cast<unsigned char>(__c)] = __t;
return __t;
     }
# 962 "/usr/include/g++/bits/locale_facets.h" 3
     const char_type*
     narrow(const char_type* __lo, const char_type* __hi,
     char __dfault, char* __to) const
     {
if (__builtin_expect(_M_narrow_ok == 1, true))
  {
    __builtin_memcpy(__to, __lo, __hi - __lo);
    return __hi;
  }
if (!_M_narrow_ok)
  _M_narrow_init();
return this->do_narrow(__lo, __hi, __dfault, __to);
     }





     const mask*
     table() const throw()
     { return _M_table; }


     static const mask*
     classic_table() throw();
   protected:







     virtual
     ~ctype();
# 1011 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_toupper(char_type __c) const;
# 1028 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_toupper(char_type* __lo, const char_type* __hi) const;
# 1044 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_tolower(char_type __c) const;
# 1061 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_tolower(char_type* __lo, const char_type* __hi) const;
# 1081 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_widen(char __c) const
     { return __c; }
# 1104 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char*
     do_widen(const char* __lo, const char* __hi, char_type* __to) const
     {
__builtin_memcpy(__to, __lo, __hi - __lo);
return __hi;
     }
# 1130 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char
     do_narrow(char_type __c, char __dfault) const
     { return __c; }
# 1156 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_narrow(const char_type* __lo, const char_type* __hi,
 char __dfault, char* __to) const
     {
__builtin_memcpy(__to, __lo, __hi - __lo);
return __hi;
     }

   private:
     void _M_narrow_init() const;
     void _M_widen_init() const;
   };
# 1181 "/usr/include/g++/bits/locale_facets.h" 3
 template<>
   class ctype<wchar_t> : public __ctype_abstract_base<wchar_t>
   {
   public:


     typedef wchar_t char_type;
     typedef wctype_t __wmask_type;

   protected:
     __c_locale _M_c_locale_ctype;


     bool _M_narrow_ok;
     char _M_narrow[128];
     wint_t _M_widen[1 + static_cast<unsigned char>(-1)];


     mask _M_bit[16];
     __wmask_type _M_wmask[16];

   public:


     static locale::id id;
# 1214 "/usr/include/g++/bits/locale_facets.h" 3
     explicit
     ctype(size_t __refs = 0);
# 1225 "/usr/include/g++/bits/locale_facets.h" 3
     explicit
     ctype(__c_locale __cloc, size_t __refs = 0);

   protected:
     __wmask_type
     _M_convert_to_wmask(const mask __m) const throw();


     virtual
     ~ctype();
# 1249 "/usr/include/g++/bits/locale_facets.h" 3
     virtual bool
     do_is(mask __m, char_type __c) const;
# 1268 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_is(const char_type* __lo, const char_type* __hi, mask* __vec) const;
# 1286 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_scan_is(mask __m, const char_type* __lo, const char_type* __hi) const;
# 1304 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_scan_not(mask __m, const char_type* __lo,
   const char_type* __hi) const;
# 1321 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_toupper(char_type __c) const;
# 1338 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_toupper(char_type* __lo, const char_type* __hi) const;
# 1354 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_tolower(char_type __c) const;
# 1371 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_tolower(char_type* __lo, const char_type* __hi) const;
# 1391 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_widen(char __c) const;
# 1413 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char*
     do_widen(const char* __lo, const char* __hi, char_type* __to) const;
# 1436 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char
     do_narrow(char_type __c, char __dfault) const;
# 1462 "/usr/include/g++/bits/locale_facets.h" 3
     virtual const char_type*
     do_narrow(const char_type* __lo, const char_type* __hi,
 char __dfault, char* __to) const;


     void
     _M_initialize_ctype() throw();
   };



 template<typename _CharT>
   class ctype_byname : public ctype<_CharT>
   {
   public:
     typedef typename ctype<_CharT>::mask mask;

     explicit
     ctype_byname(const char* __s, size_t __refs = 0);







   protected:
     virtual
     ~ctype_byname() { };
   };


 template<>
   class ctype_byname<char> : public ctype<char>
   {
   public:
     explicit
     ctype_byname(const char* __s, size_t __refs = 0);






   protected:
     virtual
     ~ctype_byname();
   };


 template<>
   class ctype_byname<wchar_t> : public ctype<wchar_t>
   {
   public:
     explicit
     ctype_byname(const char* __s, size_t __refs = 0);






   protected:
     virtual
     ~ctype_byname();
   };



}


# 1 "/usr/include/g++/bits/ctype_inline.h" 1 3
# 37 "/usr/include/g++/bits/ctype_inline.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{


 bool
 ctype<char>::
 is(mask __m, char __c) const
 { return _M_table[(unsigned char)(__c)] & __m; }

 const char*
 ctype<char>::
 is(const char* __low, const char* __high, mask* __vec) const
 {
   while (__low < __high)
     *__vec++ = _M_table[(unsigned char)*__low++];
   return __high;
 }

 const char*
 ctype<char>::
 scan_is(mask __m, const char* __low, const char* __high) const
 {
   while (__low < __high && !this->is(__m, *__low))
     ++__low;
   return __low;
 }

 const char*
 ctype<char>::
 scan_not(mask __m, const char* __low, const char* __high) const
 {
   while (__low < __high && this->is(__m, *__low) != 0)
     ++__low;
   return __low;
 }


}
# 1535 "/usr/include/g++/bits/locale_facets.h" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{



 class __num_base
 {
 public:


   enum
     {
_S_ominus,
_S_oplus,
_S_ox,
_S_oX,
_S_odigits,
_S_odigits_end = _S_odigits + 16,
_S_oudigits = _S_odigits_end,
_S_oudigits_end = _S_oudigits + 16,
_S_oe = _S_odigits + 14,
_S_oE = _S_oudigits + 14,
_S_oend = _S_oudigits_end
     };






   static const char* _S_atoms_out;



   static const char* _S_atoms_in;

   enum
   {
     _S_iminus,
     _S_iplus,
     _S_ix,
     _S_iX,
     _S_izero,
     _S_ie = _S_izero + 14,
     _S_iE = _S_izero + 20,
     _S_iend = 26
   };



   static void
   _S_format_float(const ios_base& __io, char* __fptr, char __mod) throw();
 };

 template<typename _CharT>
   struct __numpunct_cache : public locale::facet
   {
     const char* _M_grouping;
     size_t _M_grouping_size;
     bool _M_use_grouping;
     const _CharT* _M_truename;
     size_t _M_truename_size;
     const _CharT* _M_falsename;
     size_t _M_falsename_size;
     _CharT _M_decimal_point;
     _CharT _M_thousands_sep;





     _CharT _M_atoms_out[__num_base::_S_oend];





     _CharT _M_atoms_in[__num_base::_S_iend];

     bool _M_allocated;

     __numpunct_cache(size_t __refs = 0)
     : facet(__refs), _M_grouping(0), _M_grouping_size(0),
_M_use_grouping(false),
_M_truename(0), _M_truename_size(0), _M_falsename(0),
_M_falsename_size(0), _M_decimal_point(_CharT()),
_M_thousands_sep(_CharT()), _M_allocated(false)
{ }

     ~__numpunct_cache();

     void
     _M_cache(const locale& __loc);

   private:
     __numpunct_cache&
     operator=(const __numpunct_cache&);

     explicit
     __numpunct_cache(const __numpunct_cache&);
   };

 template<typename _CharT>
   __numpunct_cache<_CharT>::~__numpunct_cache()
   {
     if (_M_allocated)
{
  delete [] _M_grouping;
  delete [] _M_truename;
  delete [] _M_falsename;
}
   }

namespace __cxx11 {
# 1665 "/usr/include/g++/bits/locale_facets.h" 3
 template<typename _CharT>
   class numpunct : public locale::facet
   {
   public:



     typedef _CharT char_type;
     typedef basic_string<_CharT> string_type;

     typedef __numpunct_cache<_CharT> __cache_type;

   protected:
     __cache_type* _M_data;

   public:

     static locale::id id;






     explicit
     numpunct(size_t __refs = 0)
     : facet(__refs), _M_data(0)
     { _M_initialize_numpunct(); }
# 1703 "/usr/include/g++/bits/locale_facets.h" 3
     explicit
     numpunct(__cache_type* __cache, size_t __refs = 0)
     : facet(__refs), _M_data(__cache)
     { _M_initialize_numpunct(); }
# 1717 "/usr/include/g++/bits/locale_facets.h" 3
     explicit
     numpunct(__c_locale __cloc, size_t __refs = 0)
     : facet(__refs), _M_data(0)
     { _M_initialize_numpunct(__cloc); }
# 1731 "/usr/include/g++/bits/locale_facets.h" 3
     char_type
     decimal_point() const
     { return this->do_decimal_point(); }
# 1744 "/usr/include/g++/bits/locale_facets.h" 3
     char_type
     thousands_sep() const
     { return this->do_thousands_sep(); }
# 1775 "/usr/include/g++/bits/locale_facets.h" 3
     string
     grouping() const
     { return this->do_grouping(); }
# 1788 "/usr/include/g++/bits/locale_facets.h" 3
     string_type
     truename() const
     { return this->do_truename(); }
# 1801 "/usr/include/g++/bits/locale_facets.h" 3
     string_type
     falsename() const
     { return this->do_falsename(); }

   protected:

     virtual
     ~numpunct();
# 1818 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_decimal_point() const
     { return _M_data->_M_decimal_point; }
# 1830 "/usr/include/g++/bits/locale_facets.h" 3
     virtual char_type
     do_thousands_sep() const
     { return _M_data->_M_thousands_sep; }
# 1843 "/usr/include/g++/bits/locale_facets.h" 3
     virtual string
     do_grouping() const
     { return _M_data->_M_grouping; }
# 1856 "/usr/include/g++/bits/locale_facets.h" 3
     virtual string_type
     do_truename() const
     { return _M_data->_M_truename; }
# 1869 "/usr/include/g++/bits/locale_facets.h" 3
     virtual string_type
     do_falsename() const
     { return _M_data->_M_falsename; }


     void
     _M_initialize_numpunct(__c_locale __cloc = 0);
   };

 template<typename _CharT>
   locale::id numpunct<_CharT>::id;

 template<>
   numpunct<char>::~numpunct();

 template<>
   void
   numpunct<char>::_M_initialize_numpunct(__c_locale __cloc);


 template<>
   numpunct<wchar_t>::~numpunct();

 template<>
   void
   numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc);



 template<typename _CharT>
   class numpunct_byname : public numpunct<_CharT>
   {
   public:
     typedef _CharT char_type;
     typedef basic_string<_CharT> string_type;

     explicit
     numpunct_byname(const char* __s, size_t __refs = 0)
     : numpunct<_CharT>(__refs)
     {
if (__builtin_strcmp(__s, "C") != 0
    && __builtin_strcmp(__s, "POSIX") != 0)
  {
    __c_locale __tmp;
    this->_S_create_c_locale(__tmp, __s);
    this->_M_initialize_numpunct(__tmp);
    this->_S_destroy_c_locale(__tmp);
  }
     }







   protected:
     virtual
     ~numpunct_byname() { }
   };

}


# 1947 "/usr/include/g++/bits/locale_facets.h" 3
 template<typename _CharT, typename _InIter>
   class num_get : public locale::facet
   {
   public:



     typedef _CharT char_type;
     typedef _InIter iter_type;



     static locale::id id;
# 1968 "/usr/include/g++/bits/locale_facets.h" 3
     explicit
     num_get(size_t __refs = 0) : facet(__refs) { }
# 1994 "/usr/include/g++/bits/locale_facets.h" 3
     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, bool& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }
# 2031 "/usr/include/g++/bits/locale_facets.h" 3
     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, long& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }

     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, unsigned short& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }

     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, unsigned int& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }

     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, unsigned long& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }


     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, long long& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }

     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, unsigned long long& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }
# 2091 "/usr/include/g++/bits/locale_facets.h" 3
     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, float& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }

     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, double& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }

     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, long double& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }
# 2134 "/usr/include/g++/bits/locale_facets.h" 3
     iter_type
     get(iter_type __in, iter_type __end, ios_base& __io,
  ios_base::iostate& __err, void*& __v) const
     { return this->do_get(__in, __end, __io, __err, __v); }

   protected:

     virtual ~num_get() { }

     __attribute ((__abi_tag__ ("cxx11")))
     iter_type
     _M_extract_float(iter_type, iter_type, ios_base&, ios_base::iostate&,
        string&) const;

     template<typename _ValueT>
__attribute ((__abi_tag__ ("cxx11")))
iter_type
_M_extract_int(iter_type, iter_type, ios_base&, ios_base::iostate&,
        _ValueT&) const;

     template<typename _CharT2>
     typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value, int>::__type
_M_find(const _CharT2*, size_t __len, _CharT2 __c) const
{
  int __ret = -1;
  if (__len <= 10)
    {
      if (__c >= _CharT2('0') && __c < _CharT2(_CharT2('0') + __len))
 __ret = __c - _CharT2('0');
    }
  else
    {
      if (__c >= _CharT2('0') && __c <= _CharT2('9'))
 __ret = __c - _CharT2('0');
      else if (__c >= _CharT2('a') && __c <= _CharT2('f'))
 __ret = 10 + (__c - _CharT2('a'));
      else if (__c >= _CharT2('A') && __c <= _CharT2('F'))
 __ret = 10 + (__c - _CharT2('A'));
    }
  return __ret;
}

     template<typename _CharT2>
     typename __gnu_cxx::__enable_if<!__is_char<_CharT2>::__value,
         int>::__type
_M_find(const _CharT2* __zero, size_t __len, _CharT2 __c) const
{
  int __ret = -1;
  const char_type* __q = char_traits<_CharT2>::find(__zero, __len, __c);
  if (__q)
    {
      __ret = __q - __zero;
      if (__ret > 15)
 __ret -= 6;
    }
  return __ret;
}
# 2207 "/usr/include/g++/bits/locale_facets.h" 3
     virtual iter_type
     do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, bool&) const;

     virtual iter_type
     do_get(iter_type __beg, iter_type __end, ios_base& __io,
     ios_base::iostate& __err, long& __v) const
     { return _M_extract_int(__beg, __end, __io, __err, __v); }

     virtual iter_type
     do_get(iter_type __beg, iter_type __end, ios_base& __io,
     ios_base::iostate& __err, unsigned short& __v) const
     { return _M_extract_int(__beg, __end, __io, __err, __v); }

     virtual iter_type
     do_get(iter_type __beg, iter_type __end, ios_base& __io,
     ios_base::iostate& __err, unsigned int& __v) const
     { return _M_extract_int(__beg, __end, __io, __err, __v); }

     virtual iter_type
     do_get(iter_type __beg, iter_type __end, ios_base& __io,
     ios_base::iostate& __err, unsigned long& __v) const
     { return _M_extract_int(__beg, __end, __io, __err, __v); }


     virtual iter_type
     do_get(iter_type __beg, iter_type __end, ios_base& __io,
     ios_base::iostate& __err, long long& __v) const
     { return _M_extract_int(__beg, __end, __io, __err, __v); }

     virtual iter_type
     do_get(iter_type __beg, iter_type __end, ios_base& __io,
     ios_base::iostate& __err, unsigned long long& __v) const
     { return _M_extract_int(__beg, __end, __io, __err, __v); }


     virtual iter_type
     do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, float&) const;

     virtual iter_type
     do_get(iter_type, iter_type, ios_base&, ios_base::iostate&,
     double&) const;







     virtual iter_type
     do_get(iter_type, iter_type, ios_base&, ios_base::iostate&,
     long double&) const;


     virtual iter_type
     do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, void*&) const;
# 2270 "/usr/include/g++/bits/locale_facets.h" 3
   };

 template<typename _CharT, typename _InIter>
   locale::id num_get<_CharT, _InIter>::id;
# 2288 "/usr/include/g++/bits/locale_facets.h" 3
 template<typename _CharT, typename _OutIter>
   class num_put : public locale::facet
   {
   public:



     typedef _CharT char_type;
     typedef _OutIter iter_type;



     static locale::id id;
# 2309 "/usr/include/g++/bits/locale_facets.h" 3
     explicit
     num_put(size_t __refs = 0) : facet(__refs) { }
# 2327 "/usr/include/g++/bits/locale_facets.h" 3
     iter_type
     put(iter_type __s, ios_base& __io, char_type __fill, bool __v) const
     { return this->do_put(__s, __io, __fill, __v); }
# 2369 "/usr/include/g++/bits/locale_facets.h" 3
     iter_type
     put(iter_type __s, ios_base& __io, char_type __fill, long __v) const
     { return this->do_put(__s, __io, __fill, __v); }

     iter_type
     put(iter_type __s, ios_base& __io, char_type __fill,
  unsigned long __v) const
     { return this->do_put(__s, __io, __fill, __v); }


     iter_type
     put(iter_type __s, ios_base& __io, char_type __fill, long long __v) const
     { return this->do_put(__s, __io, __fill, __v); }

     iter_type
     put(iter_type __s, ios_base& __io, char_type __fill,
  unsigned long long __v) const
     { return this->do_put(__s, __io, __fill, __v); }
# 2432 "/usr/include/g++/bits/locale_facets.h" 3
     iter_type
     put(iter_type __s, ios_base& __io, char_type __fill, double __v) const
     { return this->do_put(__s, __io, __fill, __v); }

     iter_type
     put(iter_type __s, ios_base& __io, char_type __fill,
  long double __v) const
     { return this->do_put(__s, __io, __fill, __v); }
# 2457 "/usr/include/g++/bits/locale_facets.h" 3
     iter_type
     put(iter_type __s, ios_base& __io, char_type __fill,
  const void* __v) const
     { return this->do_put(__s, __io, __fill, __v); }

   protected:
     template<typename _ValueT>
iter_type
_M_insert_float(iter_type, ios_base& __io, char_type __fill,
  char __mod, _ValueT __v) const;

     void
     _M_group_float(const char* __grouping, size_t __grouping_size,
      char_type __sep, const char_type* __p, char_type* __new,
      char_type* __cs, int& __len) const;

     template<typename _ValueT>
iter_type
_M_insert_int(iter_type, ios_base& __io, char_type __fill,
       _ValueT __v) const;

     void
     _M_group_int(const char* __grouping, size_t __grouping_size,
    char_type __sep, ios_base& __io, char_type* __new,
    char_type* __cs, int& __len) const;

     void
     _M_pad(char_type __fill, streamsize __w, ios_base& __io,
     char_type* __new, const char_type* __cs, int& __len) const;


     virtual
     ~num_put() { };
# 2505 "/usr/include/g++/bits/locale_facets.h" 3
     virtual iter_type
     do_put(iter_type __s, ios_base& __io, char_type __fill, bool __v) const;

     virtual iter_type
     do_put(iter_type __s, ios_base& __io, char_type __fill, long __v) const
     { return _M_insert_int(__s, __io, __fill, __v); }

     virtual iter_type
     do_put(iter_type __s, ios_base& __io, char_type __fill,
     unsigned long __v) const
     { return _M_insert_int(__s, __io, __fill, __v); }


     virtual iter_type
     do_put(iter_type __s, ios_base& __io, char_type __fill,
     long long __v) const
     { return _M_insert_int(__s, __io, __fill, __v); }

     virtual iter_type
     do_put(iter_type __s, ios_base& __io, char_type __fill,
     unsigned long long __v) const
     { return _M_insert_int(__s, __io, __fill, __v); }


     virtual iter_type
     do_put(iter_type, ios_base&, char_type, double) const;






     virtual iter_type
     do_put(iter_type, ios_base&, char_type, long double) const;


     virtual iter_type
     do_put(iter_type, ios_base&, char_type, const void*) const;







   };

 template <typename _CharT, typename _OutIter>
   locale::id num_put<_CharT, _OutIter>::id;









 template<typename _CharT>
   inline bool
   isspace(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::space, __c); }


 template<typename _CharT>
   inline bool
   isprint(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::print, __c); }


 template<typename _CharT>
   inline bool
   iscntrl(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::cntrl, __c); }


 template<typename _CharT>
   inline bool
   isupper(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::upper, __c); }


 template<typename _CharT>
   inline bool
   islower(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::lower, __c); }


 template<typename _CharT>
   inline bool
   isalpha(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::alpha, __c); }


 template<typename _CharT>
   inline bool
   isdigit(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::digit, __c); }


 template<typename _CharT>
   inline bool
   ispunct(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::punct, __c); }


 template<typename _CharT>
   inline bool
   isxdigit(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::xdigit, __c); }


 template<typename _CharT>
   inline bool
   isalnum(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::alnum, __c); }


 template<typename _CharT>
   inline bool
   isgraph(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::graph, __c); }
# 2637 "/usr/include/g++/bits/locale_facets.h" 3
 template<typename _CharT>
   inline _CharT
   toupper(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).toupper(__c); }


 template<typename _CharT>
   inline _CharT
   tolower(_CharT __c, const locale& __loc)
   { return use_facet<ctype<_CharT> >(__loc).tolower(__c); }


}

# 1 "/usr/include/g++/bits/locale_facets.tcc" 1 3
# 33 "/usr/include/g++/bits/locale_facets.tcc" 3

# 34 "/usr/include/g++/bits/locale_facets.tcc" 3

namespace std __attribute__ ((__visibility__ ("default")))
{




 template<typename _Facet>
   struct __use_cache
   {
     const _Facet*
     operator() (const locale& __loc) const;
   };


 template<typename _CharT>
   struct __use_cache<__numpunct_cache<_CharT> >
   {
     const __numpunct_cache<_CharT>*
     operator() (const locale& __loc) const
     {
const size_t __i = numpunct<_CharT>::id._M_id();
const locale::facet** __caches = __loc._M_impl->_M_caches;
if (!__caches[__i])
  {
    __numpunct_cache<_CharT>* __tmp = 0;
    try
      {
 __tmp = new __numpunct_cache<_CharT>;
 __tmp->_M_cache(__loc);
      }
    catch(...)
      {
 delete __tmp;
 throw;
      }
    __loc._M_impl->_M_install_cache(__tmp, __i);
  }
return static_cast<const __numpunct_cache<_CharT>*>(__caches[__i]);
     }
   };

 template<typename _CharT>
   void
   __numpunct_cache<_CharT>::_M_cache(const locale& __loc)
   {
     const numpunct<_CharT>& __np = use_facet<numpunct<_CharT> >(__loc);

     char* __grouping = 0;
     _CharT* __truename = 0;
     _CharT* __falsename = 0;
     try
{
  const string& __g = __np.grouping();
  _M_grouping_size = __g.size();
  __grouping = new char[_M_grouping_size];
  __g.copy(__grouping, _M_grouping_size);
  _M_use_grouping = (_M_grouping_size
       && static_cast<signed char>(__grouping[0]) > 0
       && (__grouping[0]
    != __gnu_cxx::__numeric_traits<char>::__max));

  const basic_string<_CharT>& __tn = __np.truename();
  _M_truename_size = __tn.size();
  __truename = new _CharT[_M_truename_size];
  __tn.copy(__truename, _M_truename_size);

  const basic_string<_CharT>& __fn = __np.falsename();
  _M_falsename_size = __fn.size();
  __falsename = new _CharT[_M_falsename_size];
  __fn.copy(__falsename, _M_falsename_size);

  _M_decimal_point = __np.decimal_point();
  _M_thousands_sep = __np.thousands_sep();

  const ctype<_CharT>& __ct = use_facet<ctype<_CharT> >(__loc);
  __ct.widen(__num_base::_S_atoms_out,
      __num_base::_S_atoms_out
      + __num_base::_S_oend, _M_atoms_out);
  __ct.widen(__num_base::_S_atoms_in,
      __num_base::_S_atoms_in
      + __num_base::_S_iend, _M_atoms_in);

  _M_grouping = __grouping;
  _M_truename = __truename;
  _M_falsename = __falsename;
  _M_allocated = true;
}
     catch(...)
{
  delete [] __grouping;
  delete [] __truename;
  delete [] __falsename;
  throw;
}
   }
# 139 "/usr/include/g++/bits/locale_facets.tcc" 3
 __attribute__ ((__pure__)) bool
 __verify_grouping(const char* __grouping, size_t __grouping_size,
     const string& __grouping_tmp) throw ();



 template<typename _CharT, typename _InIter>
   __attribute ((__abi_tag__ ("cxx11")))
   _InIter
   num_get<_CharT, _InIter>::
   _M_extract_float(_InIter __beg, _InIter __end, ios_base& __io,
      ios_base::iostate& __err, string& __xtrc) const
   {
     typedef char_traits<_CharT> __traits_type;
     typedef __numpunct_cache<_CharT> __cache_type;
     __use_cache<__cache_type> __uc;
     const locale& __loc = __io._M_getloc();
     const __cache_type* __lc = __uc(__loc);
     const _CharT* __lit = __lc->_M_atoms_in;
     char_type __c = char_type();


     bool __testeof = __beg == __end;


     if (!__testeof)
{
  __c = *__beg;
  const bool __plus = __c == __lit[__num_base::_S_iplus];
  if ((__plus || __c == __lit[__num_base::_S_iminus])
      && !(__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
      && !(__c == __lc->_M_decimal_point))
    {
      __xtrc += __plus ? '+' : '-';
      if (++__beg != __end)
 __c = *__beg;
      else
 __testeof = true;
    }
}


     bool __found_mantissa = false;
     int __sep_pos = 0;
     while (!__testeof)
{
  if ((__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
      || __c == __lc->_M_decimal_point)
    break;
  else if (__c == __lit[__num_base::_S_izero])
    {
      if (!__found_mantissa)
 {
   __xtrc += '0';
   __found_mantissa = true;
 }
      ++__sep_pos;

      if (++__beg != __end)
 __c = *__beg;
      else
 __testeof = true;
    }
  else
    break;
}


     bool __found_dec = false;
     bool __found_sci = false;
     string __found_grouping;
     if (__lc->_M_use_grouping)
__found_grouping.reserve(32);
     const char_type* __lit_zero = __lit + __num_base::_S_izero;

     if (!__lc->_M_allocated)

while (!__testeof)
  {
    const int __digit = _M_find(__lit_zero, 10, __c);
    if (__digit != -1)
      {
 __xtrc += '0' + __digit;
 __found_mantissa = true;
      }
    else if (__c == __lc->_M_decimal_point
      && !__found_dec && !__found_sci)
      {
 __xtrc += '.';
 __found_dec = true;
      }
    else if ((__c == __lit[__num_base::_S_ie]
       || __c == __lit[__num_base::_S_iE])
      && !__found_sci && __found_mantissa)
      {

 __xtrc += 'e';
 __found_sci = true;


 if (++__beg != __end)
   {
     __c = *__beg;
     const bool __plus = __c == __lit[__num_base::_S_iplus];
     if (__plus || __c == __lit[__num_base::_S_iminus])
       __xtrc += __plus ? '+' : '-';
     else
       continue;
   }
 else
   {
     __testeof = true;
     break;
   }
      }
    else
      break;

    if (++__beg != __end)
      __c = *__beg;
    else
      __testeof = true;
  }
     else
while (!__testeof)
  {


    if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
      {
 if (!__found_dec && !__found_sci)
   {


     if (__sep_pos)
       {
  __found_grouping += static_cast<char>(__sep_pos);
  __sep_pos = 0;
       }
     else
       {


  __xtrc.clear();
  break;
       }
   }
 else
   break;
      }
    else if (__c == __lc->_M_decimal_point)
      {
 if (!__found_dec && !__found_sci)
   {



     if (__found_grouping.size())
       __found_grouping += static_cast<char>(__sep_pos);
     __xtrc += '.';
     __found_dec = true;
   }
 else
   break;
      }
    else
      {
 const char_type* __q =
   __traits_type::find(__lit_zero, 10, __c);
 if (__q)
   {
     __xtrc += '0' + (__q - __lit_zero);
     __found_mantissa = true;
     ++__sep_pos;
   }
 else if ((__c == __lit[__num_base::_S_ie]
    || __c == __lit[__num_base::_S_iE])
   && !__found_sci && __found_mantissa)
   {

     if (__found_grouping.size() && !__found_dec)
       __found_grouping += static_cast<char>(__sep_pos);
     __xtrc += 'e';
     __found_sci = true;


     if (++__beg != __end)
       {
  __c = *__beg;
  const bool __plus = __c == __lit[__num_base::_S_iplus];
  if ((__plus || __c == __lit[__num_base::_S_iminus])
      && !(__lc->_M_use_grouping
    && __c == __lc->_M_thousands_sep)
      && !(__c == __lc->_M_decimal_point))
       __xtrc += __plus ? '+' : '-';
  else
    continue;
       }
     else
       {
  __testeof = true;
  break;
       }
   }
 else
   break;
      }

    if (++__beg != __end)
      __c = *__beg;
    else
      __testeof = true;
  }



     if (__found_grouping.size())
       {

  if (!__found_dec && !__found_sci)
    __found_grouping += static_cast<char>(__sep_pos);

         if (!std::__verify_grouping(__lc->_M_grouping,
         __lc->_M_grouping_size,
         __found_grouping))
    __err = ios_base::failbit;
       }

     return __beg;
   }

 template<typename _CharT, typename _InIter>
   template<typename _ValueT>
     __attribute ((__abi_tag__ ("cxx11")))
     _InIter
     num_get<_CharT, _InIter>::
     _M_extract_int(_InIter __beg, _InIter __end, ios_base& __io,
      ios_base::iostate& __err, _ValueT& __v) const
     {
       typedef char_traits<_CharT> __traits_type;
using __gnu_cxx::__add_unsigned;
typedef typename __add_unsigned<_ValueT>::__type __unsigned_type;
typedef __numpunct_cache<_CharT> __cache_type;
__use_cache<__cache_type> __uc;
const locale& __loc = __io._M_getloc();
const __cache_type* __lc = __uc(__loc);
const _CharT* __lit = __lc->_M_atoms_in;
char_type __c = char_type();


const ios_base::fmtflags __basefield = __io.flags()
                                       & ios_base::basefield;
const bool __oct = __basefield == ios_base::oct;
int __base = __oct ? 8 : (__basefield == ios_base::hex ? 16 : 10);


bool __testeof = __beg == __end;


bool __negative = false;
if (!__testeof)
  {
    __c = *__beg;
    __negative = __c == __lit[__num_base::_S_iminus];
    if ((__negative || __c == __lit[__num_base::_S_iplus])
 && !(__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
 && !(__c == __lc->_M_decimal_point))
      {
 if (++__beg != __end)
   __c = *__beg;
 else
   __testeof = true;
      }
  }



bool __found_zero = false;
int __sep_pos = 0;
while (!__testeof)
  {
    if ((__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
 || __c == __lc->_M_decimal_point)
      break;
    else if (__c == __lit[__num_base::_S_izero]
      && (!__found_zero || __base == 10))
      {
 __found_zero = true;
 ++__sep_pos;
 if (__basefield == 0)
   __base = 8;
 if (__base == 8)
   __sep_pos = 0;
      }
    else if (__found_zero
      && (__c == __lit[__num_base::_S_ix]
   || __c == __lit[__num_base::_S_iX]))
      {
 if (__basefield == 0)
   __base = 16;
 if (__base == 16)
   {
     __found_zero = false;
     __sep_pos = 0;
   }
 else
   break;
      }
    else
      break;

    if (++__beg != __end)
      {
 __c = *__beg;
 if (!__found_zero)
   break;
      }
    else
      __testeof = true;
  }



const size_t __len = (__base == 16 ? __num_base::_S_iend
        - __num_base::_S_izero : __base);


string __found_grouping;
if (__lc->_M_use_grouping)
  __found_grouping.reserve(32);
bool __testfail = false;
bool __testoverflow = false;
const __unsigned_type __max =
  (__negative && __gnu_cxx::__numeric_traits<_ValueT>::__is_signed_val)
  ? -__gnu_cxx::__numeric_traits<_ValueT>::__min
  : __gnu_cxx::__numeric_traits<_ValueT>::__max;
const __unsigned_type __smax = __max / __base;
__unsigned_type __result = 0;
int __digit = 0;
const char_type* __lit_zero = __lit + __num_base::_S_izero;

if (!__lc->_M_allocated)

  while (!__testeof)
    {
      __digit = _M_find(__lit_zero, __len, __c);
      if (__digit == -1)
 break;

      if (__result > __smax)
 __testoverflow = true;
      else
 {
   __result *= __base;
   __testoverflow |= __result > __max - __digit;
   __result += __digit;
   ++__sep_pos;
 }

      if (++__beg != __end)
 __c = *__beg;
      else
 __testeof = true;
    }
else
  while (!__testeof)
    {


      if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
 {


   if (__sep_pos)
     {
       __found_grouping += static_cast<char>(__sep_pos);
       __sep_pos = 0;
     }
   else
     {
       __testfail = true;
       break;
     }
 }
      else if (__c == __lc->_M_decimal_point)
 break;
      else
 {
   const char_type* __q =
     __traits_type::find(__lit_zero, __len, __c);
   if (!__q)
     break;

   __digit = __q - __lit_zero;
   if (__digit > 15)
     __digit -= 6;
   if (__result > __smax)
     __testoverflow = true;
   else
     {
       __result *= __base;
       __testoverflow |= __result > __max - __digit;
       __result += __digit;
       ++__sep_pos;
     }
 }

      if (++__beg != __end)
 __c = *__beg;
      else
 __testeof = true;
    }



if (__found_grouping.size())
  {

    __found_grouping += static_cast<char>(__sep_pos);

    if (!std::__verify_grouping(__lc->_M_grouping,
    __lc->_M_grouping_size,
    __found_grouping))
      __err = ios_base::failbit;
  }



if ((!__sep_pos && !__found_zero && !__found_grouping.size())
    || __testfail)
  {
    __v = 0;
    __err = ios_base::failbit;
  }
else if (__testoverflow)
  {
    if (__negative
 && __gnu_cxx::__numeric_traits<_ValueT>::__is_signed_val)
      __v = __gnu_cxx::__numeric_traits<_ValueT>::__min;
    else
      __v = __gnu_cxx::__numeric_traits<_ValueT>::__max;
    __err = ios_base::failbit;
  }
else
  __v = __negative ? -__result : __result;

if (__testeof)
  __err |= ios_base::eofbit;
return __beg;
     }



 template<typename _CharT, typename _InIter>
   _InIter
   num_get<_CharT, _InIter>::
   do_get(iter_type __beg, iter_type __end, ios_base& __io,
          ios_base::iostate& __err, bool& __v) const
   {
     if (!(__io.flags() & ios_base::boolalpha))
       {



  long __l = -1;
         __beg = _M_extract_int(__beg, __end, __io, __err, __l);
  if (__l == 0 || __l == 1)
    __v = bool(__l);
  else
    {


      __v = true;
      __err = ios_base::failbit;
      if (__beg == __end)
 __err |= ios_base::eofbit;
    }
       }
     else
       {

  typedef __numpunct_cache<_CharT> __cache_type;
  __use_cache<__cache_type> __uc;
  const locale& __loc = __io._M_getloc();
  const __cache_type* __lc = __uc(__loc);

  bool __testf = true;
  bool __testt = true;
  bool __donef = __lc->_M_falsename_size == 0;
  bool __donet = __lc->_M_truename_size == 0;
  bool __testeof = false;
  size_t __n = 0;
  while (!__donef || !__donet)
    {
      if (__beg == __end)
 {
   __testeof = true;
   break;
 }

      const char_type __c = *__beg;

      if (!__donef)
 __testf = __c == __lc->_M_falsename[__n];

      if (!__testf && __donet)
 break;

      if (!__donet)
 __testt = __c == __lc->_M_truename[__n];

      if (!__testt && __donef)
 break;

      if (!__testt && !__testf)
 break;

      ++__n;
      ++__beg;

      __donef = !__testf || __n >= __lc->_M_falsename_size;
      __donet = !__testt || __n >= __lc->_M_truename_size;
    }
  if (__testf && __n == __lc->_M_falsename_size && __n)
    {
      __v = false;
      if (__testt && __n == __lc->_M_truename_size)
 __err = ios_base::failbit;
      else
 __err = __testeof ? ios_base::eofbit : ios_base::goodbit;
    }
  else if (__testt && __n == __lc->_M_truename_size && __n)
    {
      __v = true;
      __err = __testeof ? ios_base::eofbit : ios_base::goodbit;
    }
  else
    {


      __v = false;
      __err = ios_base::failbit;
      if (__testeof)
 __err |= ios_base::eofbit;
    }
}
     return __beg;
   }

 template<typename _CharT, typename _InIter>
   _InIter
   num_get<_CharT, _InIter>::
   do_get(iter_type __beg, iter_type __end, ios_base& __io,
   ios_base::iostate& __err, float& __v) const
   {
     string __xtrc;
     __xtrc.reserve(32);
     __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
     std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
     if (__beg == __end)
__err |= ios_base::eofbit;
     return __beg;
   }

 template<typename _CharT, typename _InIter>
   _InIter
   num_get<_CharT, _InIter>::
   do_get(iter_type __beg, iter_type __end, ios_base& __io,
          ios_base::iostate& __err, double& __v) const
   {
     string __xtrc;
     __xtrc.reserve(32);
     __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
     std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
     if (__beg == __end)
__err |= ios_base::eofbit;
     return __beg;
   }
# 735 "/usr/include/g++/bits/locale_facets.tcc" 3
 template<typename _CharT, typename _InIter>
   _InIter
   num_get<_CharT, _InIter>::
   do_get(iter_type __beg, iter_type __end, ios_base& __io,
          ios_base::iostate& __err, long double& __v) const
   {
     string __xtrc;
     __xtrc.reserve(32);
     __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
     std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
     if (__beg == __end)
__err |= ios_base::eofbit;
     return __beg;
   }

 template<typename _CharT, typename _InIter>
   _InIter
   num_get<_CharT, _InIter>::
   do_get(iter_type __beg, iter_type __end, ios_base& __io,
          ios_base::iostate& __err, void*& __v) const
   {

     typedef ios_base::fmtflags fmtflags;
     const fmtflags __fmt = __io.flags();
     __io.flags((__fmt & ~ios_base::basefield) | ios_base::hex);

     typedef __gnu_cxx::__conditional_type<(sizeof(void*)
         <= sizeof(unsigned long)),
unsigned long, unsigned long long>::__type _UIntPtrType;

     _UIntPtrType __ul;
     __beg = _M_extract_int(__beg, __end, __io, __err, __ul);


     __io.flags(__fmt);

     __v = reinterpret_cast<void*>(__ul);
     return __beg;
   }



 template<typename _CharT, typename _OutIter>
   void
   num_put<_CharT, _OutIter>::
   _M_pad(_CharT __fill, streamsize __w, ios_base& __io,
   _CharT* __new, const _CharT* __cs, int& __len) const
   {


     __pad<_CharT, char_traits<_CharT> >::_S_pad(__io, __fill, __new,
       __cs, __w, __len);
     __len = static_cast<int>(__w);
   }



 template<typename _CharT, typename _ValueT>
   int
   __int_to_char(_CharT* __bufend, _ValueT __v, const _CharT* __lit,
   ios_base::fmtflags __flags, bool __dec)
   {
     _CharT* __buf = __bufend;
     if (__builtin_expect(__dec, true))
{

  do
    {
      *--__buf = __lit[(__v % 10) + __num_base::_S_odigits];
      __v /= 10;
    }
  while (__v != 0);
}
     else if ((__flags & ios_base::basefield) == ios_base::oct)
{

  do
    {
      *--__buf = __lit[(__v & 0x7) + __num_base::_S_odigits];
      __v >>= 3;
    }
  while (__v != 0);
}
     else
{

  const bool __uppercase = __flags & ios_base::uppercase;
  const int __case_offset = __uppercase ? __num_base::_S_oudigits
                                        : __num_base::_S_odigits;
  do
    {
      *--__buf = __lit[(__v & 0xf) + __case_offset];
      __v >>= 4;
    }
  while (__v != 0);
}
     return __bufend - __buf;
   }



 template<typename _CharT, typename _OutIter>
   void
   num_put<_CharT, _OutIter>::
   _M_group_int(const char* __grouping, size_t __grouping_size, _CharT __sep,
  ios_base&, _CharT* __new, _CharT* __cs, int& __len) const
   {
     _CharT* __p = std::__add_grouping(__new, __sep, __grouping,
    __grouping_size, __cs, __cs + __len);
     __len = __p - __new;
   }

 template<typename _CharT, typename _OutIter>
   template<typename _ValueT>
     _OutIter
     num_put<_CharT, _OutIter>::
     _M_insert_int(_OutIter __s, ios_base& __io, _CharT __fill,
     _ValueT __v) const
     {
using __gnu_cxx::__add_unsigned;
typedef typename __add_unsigned<_ValueT>::__type __unsigned_type;
typedef __numpunct_cache<_CharT> __cache_type;
__use_cache<__cache_type> __uc;
const locale& __loc = __io._M_getloc();
const __cache_type* __lc = __uc(__loc);
const _CharT* __lit = __lc->_M_atoms_out;
const ios_base::fmtflags __flags = __io.flags();


const int __ilen = 5 * sizeof(_ValueT);
_CharT* __cs = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
           * __ilen));



const ios_base::fmtflags __basefield = __flags & ios_base::basefield;
const bool __dec = (__basefield != ios_base::oct
      && __basefield != ios_base::hex);
const __unsigned_type __u = ((__v > 0 || !__dec)
        ? __unsigned_type(__v)
        : -__unsigned_type(__v));
 int __len = __int_to_char(__cs + __ilen, __u, __lit, __flags, __dec);
__cs += __ilen - __len;


if (__lc->_M_use_grouping)
  {


    _CharT* __cs2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
         * (__len + 1)
         * 2));
    _M_group_int(__lc->_M_grouping, __lc->_M_grouping_size,
   __lc->_M_thousands_sep, __io, __cs2 + 2, __cs, __len);
    __cs = __cs2 + 2;
  }


if (__builtin_expect(__dec, true))
  {

    if (__v >= 0)
      {
 if (bool(__flags & ios_base::showpos)
     && __gnu_cxx::__numeric_traits<_ValueT>::__is_signed_val)
   *--__cs = __lit[__num_base::_S_oplus], ++__len;
      }
    else
      *--__cs = __lit[__num_base::_S_ominus], ++__len;
  }
else if (bool(__flags & ios_base::showbase) && __v)
  {
    if (__basefield == ios_base::oct)
      *--__cs = __lit[__num_base::_S_odigits], ++__len;
    else
      {

 const bool __uppercase = __flags & ios_base::uppercase;
 *--__cs = __lit[__num_base::_S_ox + __uppercase];

 *--__cs = __lit[__num_base::_S_odigits];
 __len += 2;
      }
  }


const streamsize __w = __io.width();
if (__w > static_cast<streamsize>(__len))
  {
    _CharT* __cs3 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
         * __w));
    _M_pad(__fill, __w, __io, __cs3, __cs, __len);
    __cs = __cs3;
  }
__io.width(0);



return std::__write(__s, __cs, __len);
     }

 template<typename _CharT, typename _OutIter>
   void
   num_put<_CharT, _OutIter>::
   _M_group_float(const char* __grouping, size_t __grouping_size,
    _CharT __sep, const _CharT* __p, _CharT* __new,
    _CharT* __cs, int& __len) const
   {



     const int __declen = __p ? __p - __cs : __len;
     _CharT* __p2 = std::__add_grouping(__new, __sep, __grouping,
     __grouping_size,
     __cs, __cs + __declen);


     int __newlen = __p2 - __new;
     if (__p)
{
  char_traits<_CharT>::copy(__p2, __p, __len - __declen);
  __newlen += __len - __declen;
}
     __len = __newlen;
   }
# 971 "/usr/include/g++/bits/locale_facets.tcc" 3
 template<typename _CharT, typename _OutIter>
   template<typename _ValueT>
     _OutIter
     num_put<_CharT, _OutIter>::
     _M_insert_float(_OutIter __s, ios_base& __io, _CharT __fill, char __mod,
        _ValueT __v) const
     {
typedef __numpunct_cache<_CharT> __cache_type;
__use_cache<__cache_type> __uc;
const locale& __loc = __io._M_getloc();
const __cache_type* __lc = __uc(__loc);


const streamsize __prec = __io.precision() < 0 ? 6 : __io.precision();

const int __max_digits =
  __gnu_cxx::__numeric_traits<_ValueT>::__digits10;


int __len;

char __fbuf[16];
__num_base::_S_format_float(__io, __fbuf, __mod);



const bool __use_prec =
  (__io.flags() & ios_base::floatfield) != ios_base::floatfield;



int __cs_size = __max_digits * 3;
char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
if (__use_prec)
  __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size,
    __fbuf, __prec, __v);
else
  __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size,
    __fbuf, __v);


if (__len >= __cs_size)
  {
    __cs_size = __len + 1;
    __cs = static_cast<char*>(__builtin_alloca(__cs_size));
    if (__use_prec)
      __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size,
        __fbuf, __prec, __v);
    else
      __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size,
        __fbuf, __v);
  }
# 1044 "/usr/include/g++/bits/locale_facets.tcc" 3
const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);

_CharT* __ws = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
           * __len));
__ctype.widen(__cs, __cs + __len, __ws);


_CharT* __wp = 0;
const char* __p = char_traits<char>::find(__cs, __len, '.');
if (__p)
  {
    __wp = __ws + (__p - __cs);
    *__wp = __lc->_M_decimal_point;
  }




if (__lc->_M_use_grouping
    && (__wp || __len < 3 || (__cs[1] <= '9' && __cs[2] <= '9'
         && __cs[1] >= '0' && __cs[2] >= '0')))
  {


    _CharT* __ws2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
         * __len * 2));

    streamsize __off = 0;
    if (__cs[0] == '-' || __cs[0] == '+')
      {
 __off = 1;
 __ws2[0] = __ws[0];
 __len -= 1;
      }

    _M_group_float(__lc->_M_grouping, __lc->_M_grouping_size,
     __lc->_M_thousands_sep, __wp, __ws2 + __off,
     __ws + __off, __len);
    __len += __off;

    __ws = __ws2;
  }


const streamsize __w = __io.width();
if (__w > static_cast<streamsize>(__len))
  {
    _CharT* __ws3 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
         * __w));
    _M_pad(__fill, __w, __io, __ws3, __ws, __len);
    __ws = __ws3;
  }
__io.width(0);



return std::__write(__s, __ws, __len);
     }

 template<typename _CharT, typename _OutIter>
   _OutIter
   num_put<_CharT, _OutIter>::
   do_put(iter_type __s, ios_base& __io, char_type __fill, bool __v) const
   {
     const ios_base::fmtflags __flags = __io.flags();
     if ((__flags & ios_base::boolalpha) == 0)
       {
         const long __l = __v;
         __s = _M_insert_int(__s, __io, __fill, __l);
       }
     else
       {
  typedef __numpunct_cache<_CharT> __cache_type;
  __use_cache<__cache_type> __uc;
  const locale& __loc = __io._M_getloc();
  const __cache_type* __lc = __uc(__loc);

  const _CharT* __name = __v ? __lc->_M_truename
                             : __lc->_M_falsename;
  int __len = __v ? __lc->_M_truename_size
                  : __lc->_M_falsename_size;

  const streamsize __w = __io.width();
  if (__w > static_cast<streamsize>(__len))
    {
      const streamsize __plen = __w - __len;
      _CharT* __ps
 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
      * __plen));

      char_traits<_CharT>::assign(__ps, __plen, __fill);
      __io.width(0);

      if ((__flags & ios_base::adjustfield) == ios_base::left)
 {
   __s = std::__write(__s, __name, __len);
   __s = std::__write(__s, __ps, __plen);
 }
      else
 {
   __s = std::__write(__s, __ps, __plen);
   __s = std::__write(__s, __name, __len);
 }
      return __s;
    }
  __io.width(0);
  __s = std::__write(__s, __name, __len);
}
     return __s;
   }

 template<typename _CharT, typename _OutIter>
   _OutIter
   num_put<_CharT, _OutIter>::
   do_put(iter_type __s, ios_base& __io, char_type __fill, double __v) const
   { return _M_insert_float(__s, __io, __fill, char(), __v); }
# 1169 "/usr/include/g++/bits/locale_facets.tcc" 3
 template<typename _CharT, typename _OutIter>
   _OutIter
   num_put<_CharT, _OutIter>::
   do_put(iter_type __s, ios_base& __io, char_type __fill,
   long double __v) const
   { return _M_insert_float(__s, __io, __fill, 'L', __v); }

 template<typename _CharT, typename _OutIter>
   _OutIter
   num_put<_CharT, _OutIter>::
   do_put(iter_type __s, ios_base& __io, char_type __fill,
          const void* __v) const
   {
     const ios_base::fmtflags __flags = __io.flags();
     const ios_base::fmtflags __fmt = ~(ios_base::basefield
     | ios_base::uppercase);
     __io.flags((__flags & __fmt) | (ios_base::hex | ios_base::showbase));

     typedef __gnu_cxx::__conditional_type<(sizeof(const void*)
         <= sizeof(unsigned long)),
unsigned long, unsigned long long>::__type _UIntPtrType;

     __s = _M_insert_int(__s, __io, __fill,
    reinterpret_cast<_UIntPtrType>(__v));
     __io.flags(__flags);
     return __s;
   }


# 1206 "/usr/include/g++/bits/locale_facets.tcc" 3
 template<typename _CharT, typename _Traits>
   void
   __pad<_CharT, _Traits>::_S_pad(ios_base& __io, _CharT __fill,
      _CharT* __news, const _CharT* __olds,
      streamsize __newlen, streamsize __oldlen)
   {
     const size_t __plen = static_cast<size_t>(__newlen - __oldlen);
     const ios_base::fmtflags __adjust = __io.flags() & ios_base::adjustfield;


     if (__adjust == ios_base::left)
{
  _Traits::copy(__news, __olds, __oldlen);
  _Traits::assign(__news + __oldlen, __plen, __fill);
  return;
}

     size_t __mod = 0;
     if (__adjust == ios_base::internal)
{



         const locale& __loc = __io._M_getloc();
  const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);

  if (__ctype.widen('-') == __olds[0]
      || __ctype.widen('+') == __olds[0])
    {
      __news[0] = __olds[0];
      __mod = 1;
      ++__news;
    }
  else if (__ctype.widen('0') == __olds[0]
    && __oldlen > 1
    && (__ctype.widen('x') == __olds[1]
        || __ctype.widen('X') == __olds[1]))
    {
      __news[0] = __olds[0];
      __news[1] = __olds[1];
      __mod = 2;
      __news += 2;
    }

}
     _Traits::assign(__news, __plen, __fill);
     _Traits::copy(__news + __plen, __olds + __mod, __oldlen - __mod);
   }

 template<typename _CharT>
   _CharT*
   __add_grouping(_CharT* __s, _CharT __sep,
    const char* __gbeg, size_t __gsize,
    const _CharT* __first, const _CharT* __last)
   {
     size_t __idx = 0;
     size_t __ctr = 0;

     while (__last - __first > __gbeg[__idx]
     && static_cast<signed char>(__gbeg[__idx]) > 0
     && __gbeg[__idx] != __gnu_cxx::__numeric_traits<char>::__max)
{
  __last -= __gbeg[__idx];
  __idx < __gsize - 1 ? ++__idx : ++__ctr;
}

     while (__first != __last)
*__s++ = *__first++;

     while (__ctr--)
{
  *__s++ = __sep;
  for (char __i = __gbeg[__idx]; __i > 0; --__i)
    *__s++ = *__first++;
}

     while (__idx--)
{
  *__s++ = __sep;
  for (char __i = __gbeg[__idx]; __i > 0; --__i)
    *__s++ = *__first++;
}

     return __s;
   }




 extern template class __cxx11:: numpunct<char>;
 extern template class __cxx11:: numpunct_byname<char>;
 extern template class num_get<char>;
 extern template class num_put<char>;
 extern template class ctype_byname<char>;

 extern template
   const ctype<char>&
   use_facet<ctype<char> >(const locale&);

 extern template
   const numpunct<char>&
   use_facet<numpunct<char> >(const locale&);

 extern template
   const num_put<char>&
   use_facet<num_put<char> >(const locale&);

 extern template
   const num_get<char>&
   use_facet<num_get<char> >(const locale&);

 extern template
   bool
   has_facet<ctype<char> >(const locale&);

 extern template
   bool
   has_facet<numpunct<char> >(const locale&);

 extern template
   bool
   has_facet<num_put<char> >(const locale&);

 extern template
   bool
   has_facet<num_get<char> >(const locale&);


 extern template class __cxx11:: numpunct<wchar_t>;
 extern template class __cxx11:: numpunct_byname<wchar_t>;
 extern template class num_get<wchar_t>;
 extern template class num_put<wchar_t>;
 extern template class ctype_byname<wchar_t>;

 extern template
   const ctype<wchar_t>&
   use_facet<ctype<wchar_t> >(const locale&);

 extern template
   const numpunct<wchar_t>&
   use_facet<numpunct<wchar_t> >(const locale&);

 extern template
   const num_put<wchar_t>&
   use_facet<num_put<wchar_t> >(const locale&);

 extern template
   const num_get<wchar_t>&
   use_facet<num_get<wchar_t> >(const locale&);

extern template
   bool
   has_facet<ctype<wchar_t> >(const locale&);

 extern template
   bool
   has_facet<numpunct<wchar_t> >(const locale&);

 extern template
   bool
   has_facet<num_put<wchar_t> >(const locale&);

 extern template
   bool
   has_facet<num_get<wchar_t> >(const locale&);




}
# 2652 "/usr/include/g++/bits/locale_facets.h" 2 3
# 38 "/usr/include/g++/bits/basic_ios.h" 2 3



namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _Facet>
   inline const _Facet&
   __check_facet(const _Facet* __f)
   {
     if (!__f)
__throw_bad_cast();
     return *__f;
   }
# 66 "/usr/include/g++/bits/basic_ios.h" 3
 template<typename _CharT, typename _Traits>
   class basic_ios : public ios_base
   {
   public:






     typedef _CharT char_type;
     typedef typename _Traits::int_type int_type;
     typedef typename _Traits::pos_type pos_type;
     typedef typename _Traits::off_type off_type;
     typedef _Traits traits_type;






     typedef ctype<_CharT> __ctype_type;
     typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> >
          __num_put_type;
     typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> >
          __num_get_type;



   protected:
     basic_ostream<_CharT, _Traits>* _M_tie;
     mutable char_type _M_fill;
     mutable bool _M_fill_init;
     basic_streambuf<_CharT, _Traits>* _M_streambuf;


     const __ctype_type* _M_ctype;

     const __num_put_type* _M_num_put;

     const __num_get_type* _M_num_get;

   public:
# 120 "/usr/include/g++/bits/basic_ios.h" 3
     operator void*() const
     { return this->fail() ? 0 : const_cast<basic_ios*>(this); }


     bool
     operator!() const
     { return this->fail(); }
# 136 "/usr/include/g++/bits/basic_ios.h" 3
     iostate
     rdstate() const
     { return _M_streambuf_state; }
# 147 "/usr/include/g++/bits/basic_ios.h" 3
     void
     clear(iostate __state = goodbit);







     void
     setstate(iostate __state)
     { this->clear(this->rdstate() | __state); }




     void
     _M_setstate(iostate __state)
     {


_M_streambuf_state |= __state;
if (this->exceptions() & __state)
  throw;
     }







     bool
     good() const
     { return this->rdstate() == 0; }







     bool
     eof() const
     { return (this->rdstate() & eofbit) != 0; }
# 200 "/usr/include/g++/bits/basic_ios.h" 3
     bool
     fail() const
     { return (this->rdstate() & (badbit | failbit)) != 0; }







     bool
     bad() const
     { return (this->rdstate() & badbit) != 0; }
# 221 "/usr/include/g++/bits/basic_ios.h" 3
     iostate
     exceptions() const
     { return _M_exception; }
# 256 "/usr/include/g++/bits/basic_ios.h" 3
     void
     exceptions(iostate __except)
     {
       _M_exception = __except;
       this->clear(_M_streambuf_state);
     }







     explicit
     basic_ios(basic_streambuf<_CharT, _Traits>* __sb)
     : ios_base(), _M_tie(0), _M_fill(), _M_fill_init(false), _M_streambuf(0),
_M_ctype(0), _M_num_put(0), _M_num_get(0)
     { this->init(__sb); }







     virtual
     ~basic_ios() { }
# 294 "/usr/include/g++/bits/basic_ios.h" 3
     basic_ostream<_CharT, _Traits>*
     tie() const
     { return _M_tie; }
# 306 "/usr/include/g++/bits/basic_ios.h" 3
     basic_ostream<_CharT, _Traits>*
     tie(basic_ostream<_CharT, _Traits>* __tiestr)
     {
       basic_ostream<_CharT, _Traits>* __old = _M_tie;
       _M_tie = __tiestr;
       return __old;
     }







     basic_streambuf<_CharT, _Traits>*
     rdbuf() const
     { return _M_streambuf; }
# 346 "/usr/include/g++/bits/basic_ios.h" 3
     basic_streambuf<_CharT, _Traits>*
     rdbuf(basic_streambuf<_CharT, _Traits>* __sb);
# 360 "/usr/include/g++/bits/basic_ios.h" 3
     basic_ios&
     copyfmt(const basic_ios& __rhs);







     char_type
     fill() const
     {
if (!_M_fill_init)
  {
    _M_fill = this->widen(' ');
    _M_fill_init = true;
  }
return _M_fill;
     }
# 389 "/usr/include/g++/bits/basic_ios.h" 3
     char_type
     fill(char_type __ch)
     {
char_type __old = this->fill();
_M_fill = __ch;
return __old;
     }
# 409 "/usr/include/g++/bits/basic_ios.h" 3
     locale
     imbue(const locale& __loc);
# 429 "/usr/include/g++/bits/basic_ios.h" 3
     char
     narrow(char_type __c, char __dfault) const
     { return __check_facet(_M_ctype).narrow(__c, __dfault); }
# 448 "/usr/include/g++/bits/basic_ios.h" 3
     char_type
     widen(char __c) const
     { return __check_facet(_M_ctype).widen(__c); }

   protected:







     basic_ios()
     : ios_base(), _M_tie(0), _M_fill(char_type()), _M_fill_init(false),
_M_streambuf(0), _M_ctype(0), _M_num_put(0), _M_num_get(0)
     { }







     void
     init(basic_streambuf<_CharT, _Traits>* __sb);
# 509 "/usr/include/g++/bits/basic_ios.h" 3
     void
     _M_cache_locale(const locale& __loc);
   };


}

# 1 "/usr/include/g++/bits/basic_ios.tcc" 1 3
# 33 "/usr/include/g++/bits/basic_ios.tcc" 3

# 34 "/usr/include/g++/bits/basic_ios.tcc" 3

namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _CharT, typename _Traits>
   void
   basic_ios<_CharT, _Traits>::clear(iostate __state)
   {
     if (this->rdbuf())
_M_streambuf_state = __state;
     else
  _M_streambuf_state = __state | badbit;
     if (this->exceptions() & this->rdstate())
__throw_ios_failure(("basic_ios::clear"));
   }

 template<typename _CharT, typename _Traits>
   basic_streambuf<_CharT, _Traits>*
   basic_ios<_CharT, _Traits>::rdbuf(basic_streambuf<_CharT, _Traits>* __sb)
   {
     basic_streambuf<_CharT, _Traits>* __old = _M_streambuf;
     _M_streambuf = __sb;
     this->clear();
     return __old;
   }

 template<typename _CharT, typename _Traits>
   basic_ios<_CharT, _Traits>&
   basic_ios<_CharT, _Traits>::copyfmt(const basic_ios& __rhs)
   {


     if (this != &__rhs)
{




  _Words* __words = (__rhs._M_word_size <= _S_local_word_size) ?
                     _M_local_word : new _Words[__rhs._M_word_size];


  _Callback_list* __cb = __rhs._M_callbacks;
  if (__cb)
    __cb->_M_add_reference();
  _M_call_callbacks(erase_event);
  if (_M_word != _M_local_word)
    {
      delete [] _M_word;
      _M_word = 0;
    }
  _M_dispose_callbacks();


  _M_callbacks = __cb;
  for (int __i = 0; __i < __rhs._M_word_size; ++__i)
    __words[__i] = __rhs._M_word[__i];
  _M_word = __words;
  _M_word_size = __rhs._M_word_size;

  this->flags(__rhs.flags());
  this->width(__rhs.width());
  this->precision(__rhs.precision());
  this->tie(__rhs.tie());
  this->fill(__rhs.fill());
  _M_ios_locale = __rhs.getloc();
  _M_cache_locale(_M_ios_locale);

  _M_call_callbacks(copyfmt_event);


  this->exceptions(__rhs.exceptions());
}
     return *this;
   }


 template<typename _CharT, typename _Traits>
   locale
   basic_ios<_CharT, _Traits>::imbue(const locale& __loc)
   {
     locale __old(this->getloc());
     ios_base::imbue(__loc);
     _M_cache_locale(__loc);
     if (this->rdbuf() != 0)
this->rdbuf()->pubimbue(__loc);
     return __old;
   }

 template<typename _CharT, typename _Traits>
   void
   basic_ios<_CharT, _Traits>::init(basic_streambuf<_CharT, _Traits>* __sb)
   {

     ios_base::_M_init();


     _M_cache_locale(_M_ios_locale);
# 146 "/usr/include/g++/bits/basic_ios.tcc" 3
     _M_fill = _CharT();
     _M_fill_init = false;

     _M_tie = 0;
     _M_exception = goodbit;
     _M_streambuf = __sb;
     _M_streambuf_state = __sb ? goodbit : badbit;
   }

 template<typename _CharT, typename _Traits>
   void
   basic_ios<_CharT, _Traits>::_M_cache_locale(const locale& __loc)
   {
     if (__builtin_expect(has_facet<__ctype_type>(__loc), true))
_M_ctype = &use_facet<__ctype_type>(__loc);
     else
_M_ctype = 0;

     if (__builtin_expect(has_facet<__num_put_type>(__loc), true))
_M_num_put = &use_facet<__num_put_type>(__loc);
     else
_M_num_put = 0;

     if (__builtin_expect(has_facet<__num_get_type>(__loc), true))
_M_num_get = &use_facet<__num_get_type>(__loc);
     else
_M_num_get = 0;
   }




 extern template class basic_ios<char>;


 extern template class basic_ios<wchar_t>;




}
# 517 "/usr/include/g++/bits/basic_ios.h" 2 3
# 45 "/usr/include/g++/ios" 2 3
# 39 "/usr/include/g++/istream" 2 3
# 1 "/usr/include/g++/ostream" 1 3
# 36 "/usr/include/g++/ostream" 3

# 37 "/usr/include/g++/ostream" 3




namespace std __attribute__ ((__visibility__ ("default")))
{

# 57 "/usr/include/g++/ostream" 3
 template<typename _CharT, typename _Traits>
   class basic_ostream : virtual public basic_ios<_CharT, _Traits>
   {
   public:

     typedef _CharT char_type;
     typedef typename _Traits::int_type int_type;
     typedef typename _Traits::pos_type pos_type;
     typedef typename _Traits::off_type off_type;
     typedef _Traits traits_type;


     typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
     typedef basic_ios<_CharT, _Traits> __ios_type;
     typedef basic_ostream<_CharT, _Traits> __ostream_type;
     typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> >
            __num_put_type;
     typedef ctype<_CharT> __ctype_type;
# 83 "/usr/include/g++/ostream" 3
     explicit
     basic_ostream(__streambuf_type* __sb)
     { this->init(__sb); }






     virtual
     ~basic_ostream() { }


     class sentry;
     friend class sentry;
# 107 "/usr/include/g++/ostream" 3
     __ostream_type&
     operator<<(__ostream_type& (*__pf)(__ostream_type&))
     {



return __pf(*this);
     }

     __ostream_type&
     operator<<(__ios_type& (*__pf)(__ios_type&))
     {



__pf(*this);
return *this;
     }

     __ostream_type&
     operator<<(ios_base& (*__pf) (ios_base&))
     {



__pf(*this);
return *this;
     }
# 165 "/usr/include/g++/ostream" 3
     __ostream_type&
     operator<<(long __n)
     { return _M_insert(__n); }

     __ostream_type&
     operator<<(unsigned long __n)
     { return _M_insert(__n); }

     __ostream_type&
     operator<<(bool __n)
     { return _M_insert(__n); }

     __ostream_type&
     operator<<(short __n);

     __ostream_type&
     operator<<(unsigned short __n)
     {


return _M_insert(static_cast<unsigned long>(__n));
     }

     __ostream_type&
     operator<<(int __n);

     __ostream_type&
     operator<<(unsigned int __n)
     {


return _M_insert(static_cast<unsigned long>(__n));
     }


     __ostream_type&
     operator<<(long long __n)
     { return _M_insert(__n); }

     __ostream_type&
     operator<<(unsigned long long __n)
     { return _M_insert(__n); }
# 219 "/usr/include/g++/ostream" 3
     __ostream_type&
     operator<<(double __f)
     { return _M_insert(__f); }

     __ostream_type&
     operator<<(float __f)
     {


return _M_insert(static_cast<double>(__f));
     }

     __ostream_type&
     operator<<(long double __f)
     { return _M_insert(__f); }
# 244 "/usr/include/g++/ostream" 3
     __ostream_type&
     operator<<(const void* __p)
     { return _M_insert(__p); }
# 269 "/usr/include/g++/ostream" 3
     __ostream_type&
     operator<<(__streambuf_type* __sb);
# 302 "/usr/include/g++/ostream" 3
     __ostream_type&
     put(char_type __c);






     void
     _M_write(const char_type* __s, streamsize __n)
     {
const streamsize __put = this->rdbuf()->sputn(__s, __n);
if (__put != __n)
  this->setstate(ios_base::badbit);
     }
# 334 "/usr/include/g++/ostream" 3
     __ostream_type&
     write(const char_type* __s, streamsize __n);
# 347 "/usr/include/g++/ostream" 3
     __ostream_type&
     flush();
# 357 "/usr/include/g++/ostream" 3
     pos_type
     tellp();
# 368 "/usr/include/g++/ostream" 3
     __ostream_type&
     seekp(pos_type);
# 380 "/usr/include/g++/ostream" 3
      __ostream_type&
     seekp(off_type, ios_base::seekdir);

   protected:
     basic_ostream()
     { this->init(0); }
# 413 "/usr/include/g++/ostream" 3
     template<typename _ValueT>
__ostream_type&
_M_insert(_ValueT __v);
   };
# 425 "/usr/include/g++/ostream" 3
 template <typename _CharT, typename _Traits>
   class basic_ostream<_CharT, _Traits>::sentry
   {

     bool _M_ok;
     basic_ostream<_CharT, _Traits>& _M_os;

   public:
# 444 "/usr/include/g++/ostream" 3
     explicit
     sentry(basic_ostream<_CharT, _Traits>& __os);
# 454 "/usr/include/g++/ostream" 3
     ~sentry()
     {

if (bool(_M_os.flags() & ios_base::unitbuf) && !uncaught_exception())
  {

    if (_M_os.rdbuf() && _M_os.rdbuf()->pubsync() == -1)
      _M_os.setstate(ios_base::badbit);
  }
     }
# 475 "/usr/include/g++/ostream" 3
     operator bool() const
     { return _M_ok; }
   };
# 495 "/usr/include/g++/ostream" 3
 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __out, _CharT __c)
   { return __ostream_insert(__out, &__c, 1); }

 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __out, char __c)
   { return (__out << __out.widen(__c)); }


 template <class _Traits>
   inline basic_ostream<char, _Traits>&
   operator<<(basic_ostream<char, _Traits>& __out, char __c)
   { return __ostream_insert(__out, &__c, 1); }


 template<class _Traits>
   inline basic_ostream<char, _Traits>&
   operator<<(basic_ostream<char, _Traits>& __out, signed char __c)
   { return (__out << static_cast<char>(__c)); }

 template<class _Traits>
   inline basic_ostream<char, _Traits>&
   operator<<(basic_ostream<char, _Traits>& __out, unsigned char __c)
   { return (__out << static_cast<char>(__c)); }
# 537 "/usr/include/g++/ostream" 3
 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __out, const _CharT* __s)
   {
     if (!__s)
__out.setstate(ios_base::badbit);
     else
__ostream_insert(__out, __s,
   static_cast<streamsize>(_Traits::length(__s)));
     return __out;
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits> &
   operator<<(basic_ostream<_CharT, _Traits>& __out, const char* __s);


 template<class _Traits>
   inline basic_ostream<char, _Traits>&
   operator<<(basic_ostream<char, _Traits>& __out, const char* __s)
   {
     if (!__s)
__out.setstate(ios_base::badbit);
     else
__ostream_insert(__out, __s,
   static_cast<streamsize>(_Traits::length(__s)));
     return __out;
   }


 template<class _Traits>
   inline basic_ostream<char, _Traits>&
   operator<<(basic_ostream<char, _Traits>& __out, const signed char* __s)
   { return (__out << reinterpret_cast<const char*>(__s)); }

 template<class _Traits>
   inline basic_ostream<char, _Traits> &
   operator<<(basic_ostream<char, _Traits>& __out, const unsigned char* __s)
   { return (__out << reinterpret_cast<const char*>(__s)); }
# 588 "/usr/include/g++/ostream" 3
 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   endl(basic_ostream<_CharT, _Traits>& __os)
   { return flush(__os.put(__os.widen('\n'))); }
# 600 "/usr/include/g++/ostream" 3
 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   ends(basic_ostream<_CharT, _Traits>& __os)
   { return __os.put(_CharT()); }






 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   flush(basic_ostream<_CharT, _Traits>& __os)
   { return __os.flush(); }
# 635 "/usr/include/g++/ostream" 3

}

# 1 "/usr/include/g++/bits/ostream.tcc" 1 3
# 37 "/usr/include/g++/bits/ostream.tcc" 3

# 38 "/usr/include/g++/bits/ostream.tcc" 3



namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>::sentry::
   sentry(basic_ostream<_CharT, _Traits>& __os)
   : _M_ok(false), _M_os(__os)
   {

     if (__os.tie() && __os.good())
__os.tie()->flush();

     if (__os.good())
_M_ok = true;
     else
__os.setstate(ios_base::failbit);
   }

 template<typename _CharT, typename _Traits>
   template<typename _ValueT>
     basic_ostream<_CharT, _Traits>&
     basic_ostream<_CharT, _Traits>::
     _M_insert(_ValueT __v)
     {
sentry __cerb(*this);
if (__cerb)
  {
    ios_base::iostate __err = ios_base::goodbit;
    try
      {
 const __num_put_type& __np = __check_facet(this->_M_num_put);
 if (__np.put(*this, *this, this->fill(), __v).failed())
   __err |= ios_base::badbit;
      }
    catch(__cxxabiv1::__forced_unwind&)
      {
 this->_M_setstate(ios_base::badbit);
 throw;
      }
    catch(...)
      { this->_M_setstate(ios_base::badbit); }
    if (__err)
      this->setstate(__err);
  }
return *this;
     }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   basic_ostream<_CharT, _Traits>::
   operator<<(short __n)
   {


     const ios_base::fmtflags __fmt = this->flags() & ios_base::basefield;
     if (__fmt == ios_base::oct || __fmt == ios_base::hex)
return _M_insert(static_cast<long>(static_cast<unsigned short>(__n)));
     else
return _M_insert(static_cast<long>(__n));
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   basic_ostream<_CharT, _Traits>::
   operator<<(int __n)
   {


     const ios_base::fmtflags __fmt = this->flags() & ios_base::basefield;
     if (__fmt == ios_base::oct || __fmt == ios_base::hex)
return _M_insert(static_cast<long>(static_cast<unsigned int>(__n)));
     else
return _M_insert(static_cast<long>(__n));
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   basic_ostream<_CharT, _Traits>::
   operator<<(__streambuf_type* __sbin)
   {
     ios_base::iostate __err = ios_base::goodbit;
     sentry __cerb(*this);
     if (__cerb && __sbin)
{
  try
    {
      if (!__copy_streambufs(__sbin, this->rdbuf()))
 __err |= ios_base::failbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::failbit); }
}
     else if (!__sbin)
__err |= ios_base::badbit;
     if (__err)
this->setstate(__err);
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   basic_ostream<_CharT, _Traits>::
   put(char_type __c)
   {






     sentry __cerb(*this);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      const int_type __put = this->rdbuf()->sputc(__c);
      if (traits_type::eq_int_type(__put, traits_type::eof()))
 __err |= ios_base::badbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   basic_ostream<_CharT, _Traits>::
   write(const _CharT* __s, streamsize __n)
   {







     sentry __cerb(*this);
     if (__cerb)
{
  try
    { _M_write(__s, __n); }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
}
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   basic_ostream<_CharT, _Traits>::
   flush()
   {



     ios_base::iostate __err = ios_base::goodbit;
     try
{
  if (this->rdbuf() && this->rdbuf()->pubsync() == -1)
    __err |= ios_base::badbit;
}
     catch(__cxxabiv1::__forced_unwind&)
{
  this->_M_setstate(ios_base::badbit);
  throw;
}
     catch(...)
{ this->_M_setstate(ios_base::badbit); }
     if (__err)
this->setstate(__err);
     return *this;
   }

 template<typename _CharT, typename _Traits>
   typename basic_ostream<_CharT, _Traits>::pos_type
   basic_ostream<_CharT, _Traits>::
   tellp()
   {
     pos_type __ret = pos_type(-1);
     try
{
  if (!this->fail())
    __ret = this->rdbuf()->pubseekoff(0, ios_base::cur, ios_base::out);
}
     catch(__cxxabiv1::__forced_unwind&)
{
  this->_M_setstate(ios_base::badbit);
  throw;
}
     catch(...)
{ this->_M_setstate(ios_base::badbit); }
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   basic_ostream<_CharT, _Traits>::
   seekp(pos_type __pos)
   {
     ios_base::iostate __err = ios_base::goodbit;
     try
{
  if (!this->fail())
    {


      const pos_type __p = this->rdbuf()->pubseekpos(__pos,
           ios_base::out);


      if (__p == pos_type(off_type(-1)))
 __err |= ios_base::failbit;
    }
}
     catch(__cxxabiv1::__forced_unwind&)
{
  this->_M_setstate(ios_base::badbit);
  throw;
}
     catch(...)
{ this->_M_setstate(ios_base::badbit); }
     if (__err)
this->setstate(__err);
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   basic_ostream<_CharT, _Traits>::
   seekp(off_type __off, ios_base::seekdir __dir)
   {
     ios_base::iostate __err = ios_base::goodbit;
     try
{
  if (!this->fail())
    {


      const pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
           ios_base::out);


      if (__p == pos_type(off_type(-1)))
 __err |= ios_base::failbit;
    }
}
     catch(__cxxabiv1::__forced_unwind&)
{
  this->_M_setstate(ios_base::badbit);
  throw;
}
     catch(...)
{ this->_M_setstate(ios_base::badbit); }
     if (__err)
this->setstate(__err);
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __out, const char* __s)
   {
     if (!__s)
__out.setstate(ios_base::badbit);
     else
{


  const size_t __clen = char_traits<char>::length(__s);
  try
    {
      struct __ptr_guard
      {
 _CharT *__p;
 __ptr_guard (_CharT *__ip): __p(__ip) { }
 ~__ptr_guard() { delete[] __p; }
 _CharT* __get() { return __p; }
      } __pg (new _CharT[__clen]);

      _CharT *__ws = __pg.__get();
      for (size_t __i = 0; __i < __clen; ++__i)
 __ws[__i] = __out.widen(__s[__i]);
      __ostream_insert(__out, __ws, __clen);
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      __out._M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { __out._M_setstate(ios_base::badbit); }
}
     return __out;
   }




 extern template class basic_ostream<char>;
 extern template ostream& endl(ostream&);
 extern template ostream& ends(ostream&);
 extern template ostream& flush(ostream&);
 extern template ostream& operator<<(ostream&, char);
 extern template ostream& operator<<(ostream&, unsigned char);
 extern template ostream& operator<<(ostream&, signed char);
 extern template ostream& operator<<(ostream&, const char*);
 extern template ostream& operator<<(ostream&, const unsigned char*);
 extern template ostream& operator<<(ostream&, const signed char*);

 extern template ostream& ostream::_M_insert(long);
 extern template ostream& ostream::_M_insert(unsigned long);
 extern template ostream& ostream::_M_insert(bool);

 extern template ostream& ostream::_M_insert(long long);
 extern template ostream& ostream::_M_insert(unsigned long long);

 extern template ostream& ostream::_M_insert(double);
 extern template ostream& ostream::_M_insert(long double);
 extern template ostream& ostream::_M_insert(const void*);


 extern template class basic_ostream<wchar_t>;
 extern template wostream& endl(wostream&);
 extern template wostream& ends(wostream&);
 extern template wostream& flush(wostream&);
 extern template wostream& operator<<(wostream&, wchar_t);
 extern template wostream& operator<<(wostream&, char);
 extern template wostream& operator<<(wostream&, const wchar_t*);
 extern template wostream& operator<<(wostream&, const char*);

 extern template wostream& wostream::_M_insert(long);
 extern template wostream& wostream::_M_insert(unsigned long);
 extern template wostream& wostream::_M_insert(bool);

 extern template wostream& wostream::_M_insert(long long);
 extern template wostream& wostream::_M_insert(unsigned long long);

 extern template wostream& wostream::_M_insert(double);
 extern template wostream& wostream::_M_insert(long double);
 extern template wostream& wostream::_M_insert(const void*);




}
# 639 "/usr/include/g++/ostream" 2 3
# 40 "/usr/include/g++/istream" 2 3

namespace std __attribute__ ((__visibility__ ("default")))
{

# 57 "/usr/include/g++/istream" 3
 template<typename _CharT, typename _Traits>
   class basic_istream : virtual public basic_ios<_CharT, _Traits>
   {
   public:

     typedef _CharT char_type;
     typedef typename _Traits::int_type int_type;
     typedef typename _Traits::pos_type pos_type;
     typedef typename _Traits::off_type off_type;
     typedef _Traits traits_type;


     typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
     typedef basic_ios<_CharT, _Traits> __ios_type;
     typedef basic_istream<_CharT, _Traits> __istream_type;
     typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> >
       __num_get_type;
     typedef ctype<_CharT> __ctype_type;

   protected:





     streamsize _M_gcount;

   public:







     explicit
     basic_istream(__streambuf_type* __sb)
     : _M_gcount(streamsize(0))
     { this->init(__sb); }






     virtual
     ~basic_istream()
     { _M_gcount = streamsize(0); }


     class sentry;
     friend class sentry;
# 119 "/usr/include/g++/istream" 3
     __istream_type&
     operator>>(__istream_type& (*__pf)(__istream_type&))
     { return __pf(*this); }

     __istream_type&
     operator>>(__ios_type& (*__pf)(__ios_type&))
     {
__pf(*this);
return *this;
     }

     __istream_type&
     operator>>(ios_base& (*__pf)(ios_base&))
     {
__pf(*this);
return *this;
     }
# 167 "/usr/include/g++/istream" 3
     __istream_type&
     operator>>(bool& __n)
     { return _M_extract(__n); }

     __istream_type&
     operator>>(short& __n);

     __istream_type&
     operator>>(unsigned short& __n)
     { return _M_extract(__n); }

     __istream_type&
     operator>>(int& __n);

     __istream_type&
     operator>>(unsigned int& __n)
     { return _M_extract(__n); }

     __istream_type&
     operator>>(long& __n)
     { return _M_extract(__n); }

     __istream_type&
     operator>>(unsigned long& __n)
     { return _M_extract(__n); }


     __istream_type&
     operator>>(long long& __n)
     { return _M_extract(__n); }

     __istream_type&
     operator>>(unsigned long long& __n)
     { return _M_extract(__n); }
# 213 "/usr/include/g++/istream" 3
     __istream_type&
     operator>>(float& __f)
     { return _M_extract(__f); }

     __istream_type&
     operator>>(double& __f)
     { return _M_extract(__f); }

     __istream_type&
     operator>>(long double& __f)
     { return _M_extract(__f); }
# 234 "/usr/include/g++/istream" 3
     __istream_type&
     operator>>(void*& __p)
     { return _M_extract(__p); }
# 258 "/usr/include/g++/istream" 3
     __istream_type&
     operator>>(__streambuf_type* __sb);
# 268 "/usr/include/g++/istream" 3
     streamsize
     gcount() const
     { return _M_gcount; }
# 301 "/usr/include/g++/istream" 3
     int_type
     get();
# 315 "/usr/include/g++/istream" 3
     __istream_type&
     get(char_type& __c);
# 342 "/usr/include/g++/istream" 3
     __istream_type&
     get(char_type* __s, streamsize __n, char_type __delim);
# 353 "/usr/include/g++/istream" 3
     __istream_type&
     get(char_type* __s, streamsize __n)
     { return this->get(__s, __n, this->widen('\n')); }
# 376 "/usr/include/g++/istream" 3
     __istream_type&
     get(__streambuf_type& __sb, char_type __delim);
# 386 "/usr/include/g++/istream" 3
     __istream_type&
     get(__streambuf_type& __sb)
     { return this->get(__sb, this->widen('\n')); }
# 415 "/usr/include/g++/istream" 3
     __istream_type&
     getline(char_type* __s, streamsize __n, char_type __delim);
# 426 "/usr/include/g++/istream" 3
     __istream_type&
     getline(char_type* __s, streamsize __n)
     { return this->getline(__s, __n, this->widen('\n')); }
# 450 "/usr/include/g++/istream" 3
     __istream_type&
     ignore(streamsize __n, int_type __delim);

     __istream_type&
     ignore(streamsize __n);

     __istream_type&
     ignore();
# 467 "/usr/include/g++/istream" 3
     int_type
     peek();
# 485 "/usr/include/g++/istream" 3
     __istream_type&
     read(char_type* __s, streamsize __n);
# 504 "/usr/include/g++/istream" 3
     streamsize
     readsome(char_type* __s, streamsize __n);
# 521 "/usr/include/g++/istream" 3
     __istream_type&
     putback(char_type __c);
# 537 "/usr/include/g++/istream" 3
     __istream_type&
     unget();
# 555 "/usr/include/g++/istream" 3
     int
     sync();
# 570 "/usr/include/g++/istream" 3
     pos_type
     tellg();
# 585 "/usr/include/g++/istream" 3
     __istream_type&
     seekg(pos_type);
# 601 "/usr/include/g++/istream" 3
     __istream_type&
     seekg(off_type, ios_base::seekdir);


   protected:
     basic_istream()
     : _M_gcount(streamsize(0))
     { this->init(0); }
# 639 "/usr/include/g++/istream" 3
     template<typename _ValueT>
__istream_type&
_M_extract(_ValueT& __v);
   };


 template<>
   basic_istream<char>&
   basic_istream<char>::
   getline(char_type* __s, streamsize __n, char_type __delim);

 template<>
   basic_istream<char>&
   basic_istream<char>::
   ignore(streamsize __n);

 template<>
   basic_istream<char>&
   basic_istream<char>::
   ignore(streamsize __n, int_type __delim);


 template<>
   basic_istream<wchar_t>&
   basic_istream<wchar_t>::
   getline(char_type* __s, streamsize __n, char_type __delim);

 template<>
   basic_istream<wchar_t>&
   basic_istream<wchar_t>::
   ignore(streamsize __n);

 template<>
   basic_istream<wchar_t>&
   basic_istream<wchar_t>::
   ignore(streamsize __n, int_type __delim);
# 685 "/usr/include/g++/istream" 3
 template<typename _CharT, typename _Traits>
   class basic_istream<_CharT, _Traits>::sentry
   {

     bool _M_ok;

   public:

     typedef _Traits traits_type;
     typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
     typedef basic_istream<_CharT, _Traits> __istream_type;
     typedef typename __istream_type::__ctype_type __ctype_type;
     typedef typename _Traits::int_type __int_type;
# 721 "/usr/include/g++/istream" 3
     explicit
     sentry(basic_istream<_CharT, _Traits>& __is, bool __noskipws = false);
# 734 "/usr/include/g++/istream" 3
     operator bool() const
     { return _M_ok; }
   };
# 750 "/usr/include/g++/istream" 3
 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c);

 template<class _Traits>
   inline basic_istream<char, _Traits>&
   operator>>(basic_istream<char, _Traits>& __in, unsigned char& __c)
   { return (__in >> reinterpret_cast<char&>(__c)); }

 template<class _Traits>
   inline basic_istream<char, _Traits>&
   operator>>(basic_istream<char, _Traits>& __in, signed char& __c)
   { return (__in >> reinterpret_cast<char&>(__c)); }
# 792 "/usr/include/g++/istream" 3
 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s);


 template<>
   basic_istream<char>&
   operator>>(basic_istream<char>& __in, char* __s);

 template<class _Traits>
   inline basic_istream<char, _Traits>&
   operator>>(basic_istream<char, _Traits>& __in, unsigned char* __s)
   { return (__in >> reinterpret_cast<char*>(__s)); }

 template<class _Traits>
   inline basic_istream<char, _Traits>&
   operator>>(basic_istream<char, _Traits>& __in, signed char* __s)
   { return (__in >> reinterpret_cast<char*>(__s)); }
# 823 "/usr/include/g++/istream" 3
 template<typename _CharT, typename _Traits>
   class basic_iostream
   : public basic_istream<_CharT, _Traits>,
     public basic_ostream<_CharT, _Traits>
   {
   public:



     typedef _CharT char_type;
     typedef typename _Traits::int_type int_type;
     typedef typename _Traits::pos_type pos_type;
     typedef typename _Traits::off_type off_type;
     typedef _Traits traits_type;


     typedef basic_istream<_CharT, _Traits> __istream_type;
     typedef basic_ostream<_CharT, _Traits> __ostream_type;







     explicit
     basic_iostream(basic_streambuf<_CharT, _Traits>* __sb)
     : __istream_type(__sb), __ostream_type(__sb) { }




     virtual
     ~basic_iostream() { }

   protected:
     basic_iostream()
     : __istream_type(), __ostream_type() { }
# 884 "/usr/include/g++/istream" 3
   };
# 906 "/usr/include/g++/istream" 3
 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   ws(basic_istream<_CharT, _Traits>& __is);
# 931 "/usr/include/g++/istream" 3

}

# 1 "/usr/include/g++/bits/istream.tcc" 1 3
# 37 "/usr/include/g++/bits/istream.tcc" 3

# 38 "/usr/include/g++/bits/istream.tcc" 3



namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>::sentry::
   sentry(basic_istream<_CharT, _Traits>& __in, bool __noskip) : _M_ok(false)
   {
     ios_base::iostate __err = ios_base::goodbit;
     if (__in.good())
{
  if (__in.tie())
    __in.tie()->flush();
  if (!__noskip && bool(__in.flags() & ios_base::skipws))
    {
      const __int_type __eof = traits_type::eof();
      __streambuf_type* __sb = __in.rdbuf();
      __int_type __c = __sb->sgetc();

      const __ctype_type& __ct = __check_facet(__in._M_ctype);
      while (!traits_type::eq_int_type(__c, __eof)
      && __ct.is(ctype_base::space,
   traits_type::to_char_type(__c)))
 __c = __sb->snextc();




      if (traits_type::eq_int_type(__c, __eof))
 __err |= ios_base::eofbit;
    }
}

     if (__in.good() && __err == ios_base::goodbit)
_M_ok = true;
     else
{
  __err |= ios_base::failbit;
  __in.setstate(__err);
}
   }

 template<typename _CharT, typename _Traits>
   template<typename _ValueT>
     basic_istream<_CharT, _Traits>&
     basic_istream<_CharT, _Traits>::
     _M_extract(_ValueT& __v)
     {
sentry __cerb(*this, false);
if (__cerb)
  {
    ios_base::iostate __err = ios_base::goodbit;
    try
      {
 const __num_get_type& __ng = __check_facet(this->_M_num_get);
 __ng.get(*this, 0, *this, __err, __v);
      }
    catch(__cxxabiv1::__forced_unwind&)
      {
 this->_M_setstate(ios_base::badbit);
 throw;
      }
    catch(...)
      { this->_M_setstate(ios_base::badbit); }
    if (__err)
      this->setstate(__err);
  }
return *this;
     }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   operator>>(short& __n)
   {


     sentry __cerb(*this, false);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      long __l;
      const __num_get_type& __ng = __check_facet(this->_M_num_get);
      __ng.get(*this, 0, *this, __err, __l);



      if (__l < __gnu_cxx::__numeric_traits<short>::__min)
 {
   __err |= ios_base::failbit;
   __n = __gnu_cxx::__numeric_traits<short>::__min;
 }
      else if (__l > __gnu_cxx::__numeric_traits<short>::__max)
 {
   __err |= ios_base::failbit;
   __n = __gnu_cxx::__numeric_traits<short>::__max;
 }
      else
 __n = short(__l);
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   operator>>(int& __n)
   {


     sentry __cerb(*this, false);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      long __l;
      const __num_get_type& __ng = __check_facet(this->_M_num_get);
      __ng.get(*this, 0, *this, __err, __l);



      if (__l < __gnu_cxx::__numeric_traits<int>::__min)
 {
   __err |= ios_base::failbit;
   __n = __gnu_cxx::__numeric_traits<int>::__min;
 }
      else if (__l > __gnu_cxx::__numeric_traits<int>::__max)
 {
   __err |= ios_base::failbit;
   __n = __gnu_cxx::__numeric_traits<int>::__max;
 }
      else
 __n = int(__l);
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   operator>>(__streambuf_type* __sbout)
   {
     ios_base::iostate __err = ios_base::goodbit;
     sentry __cerb(*this, false);
     if (__cerb && __sbout)
{
  try
    {
      bool __ineof;
      if (!__copy_streambufs_eof(this->rdbuf(), __sbout, __ineof))
 __err |= ios_base::failbit;
      if (__ineof)
 __err |= ios_base::eofbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::failbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::failbit); }
}
     else if (!__sbout)
__err |= ios_base::failbit;
     if (__err)
this->setstate(__err);
     return *this;
   }

 template<typename _CharT, typename _Traits>
   typename basic_istream<_CharT, _Traits>::int_type
   basic_istream<_CharT, _Traits>::
   get(void)
   {
     const int_type __eof = traits_type::eof();
     int_type __c = __eof;
     _M_gcount = 0;
     ios_base::iostate __err = ios_base::goodbit;
     sentry __cerb(*this, true);
     if (__cerb)
{
  try
    {
      __c = this->rdbuf()->sbumpc();

      if (!traits_type::eq_int_type(__c, __eof))
 _M_gcount = 1;
      else
 __err |= ios_base::eofbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
}
     if (!_M_gcount)
__err |= ios_base::failbit;
     if (__err)
this->setstate(__err);
     return __c;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   get(char_type& __c)
   {
     _M_gcount = 0;
     ios_base::iostate __err = ios_base::goodbit;
     sentry __cerb(*this, true);
     if (__cerb)
{
  try
    {
      const int_type __cb = this->rdbuf()->sbumpc();

      if (!traits_type::eq_int_type(__cb, traits_type::eof()))
 {
   _M_gcount = 1;
   __c = traits_type::to_char_type(__cb);
 }
      else
 __err |= ios_base::eofbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
}
     if (!_M_gcount)
__err |= ios_base::failbit;
     if (__err)
this->setstate(__err);
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   get(char_type* __s, streamsize __n, char_type __delim)
   {
     _M_gcount = 0;
     ios_base::iostate __err = ios_base::goodbit;
     sentry __cerb(*this, true);
     if (__cerb)
{
  try
    {
      const int_type __idelim = traits_type::to_int_type(__delim);
      const int_type __eof = traits_type::eof();
      __streambuf_type* __sb = this->rdbuf();
      int_type __c = __sb->sgetc();

      while (_M_gcount + 1 < __n
      && !traits_type::eq_int_type(__c, __eof)
      && !traits_type::eq_int_type(__c, __idelim))
 {
   *__s++ = traits_type::to_char_type(__c);
   ++_M_gcount;
   __c = __sb->snextc();
 }
      if (traits_type::eq_int_type(__c, __eof))
 __err |= ios_base::eofbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
}


     if (__n > 0)
*__s = char_type();
     if (!_M_gcount)
__err |= ios_base::failbit;
     if (__err)
this->setstate(__err);
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   get(__streambuf_type& __sb, char_type __delim)
   {
     _M_gcount = 0;
     ios_base::iostate __err = ios_base::goodbit;
     sentry __cerb(*this, true);
     if (__cerb)
{
  try
    {
      const int_type __idelim = traits_type::to_int_type(__delim);
      const int_type __eof = traits_type::eof();
      __streambuf_type* __this_sb = this->rdbuf();
      int_type __c = __this_sb->sgetc();
      char_type __c2 = traits_type::to_char_type(__c);

      while (!traits_type::eq_int_type(__c, __eof)
      && !traits_type::eq_int_type(__c, __idelim)
      && !traits_type::eq_int_type(__sb.sputc(__c2), __eof))
 {
   ++_M_gcount;
   __c = __this_sb->snextc();
   __c2 = traits_type::to_char_type(__c);
 }
      if (traits_type::eq_int_type(__c, __eof))
 __err |= ios_base::eofbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
}
     if (!_M_gcount)
__err |= ios_base::failbit;
     if (__err)
this->setstate(__err);
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   getline(char_type* __s, streamsize __n, char_type __delim)
   {
     _M_gcount = 0;
     ios_base::iostate __err = ios_base::goodbit;
     sentry __cerb(*this, true);
     if (__cerb)
       {
         try
           {
             const int_type __idelim = traits_type::to_int_type(__delim);
             const int_type __eof = traits_type::eof();
             __streambuf_type* __sb = this->rdbuf();
             int_type __c = __sb->sgetc();

             while (_M_gcount + 1 < __n
                    && !traits_type::eq_int_type(__c, __eof)
                    && !traits_type::eq_int_type(__c, __idelim))
               {
                 *__s++ = traits_type::to_char_type(__c);
                 __c = __sb->snextc();
                 ++_M_gcount;
               }
             if (traits_type::eq_int_type(__c, __eof))
               __err |= ios_base::eofbit;
             else
               {
                 if (traits_type::eq_int_type(__c, __idelim))
                   {
                     __sb->sbumpc();
                     ++_M_gcount;
                   }
                 else
                   __err |= ios_base::failbit;
               }
           }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
         catch(...)
           { this->_M_setstate(ios_base::badbit); }
       }


     if (__n > 0)
*__s = char_type();
     if (!_M_gcount)
       __err |= ios_base::failbit;
     if (__err)
       this->setstate(__err);
     return *this;
   }




 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   ignore(void)
   {
     _M_gcount = 0;
     sentry __cerb(*this, true);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      const int_type __eof = traits_type::eof();
      __streambuf_type* __sb = this->rdbuf();

      if (traits_type::eq_int_type(__sb->sbumpc(), __eof))
 __err |= ios_base::eofbit;
      else
 _M_gcount = 1;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   ignore(streamsize __n)
   {
     _M_gcount = 0;
     sentry __cerb(*this, true);
     if (__cerb && __n > 0)
       {
         ios_base::iostate __err = ios_base::goodbit;
         try
           {
             const int_type __eof = traits_type::eof();
             __streambuf_type* __sb = this->rdbuf();
             int_type __c = __sb->sgetc();
# 513 "/usr/include/g++/bits/istream.tcc" 3
      bool __large_ignore = false;
      while (true)
 {
   while (_M_gcount < __n
   && !traits_type::eq_int_type(__c, __eof))
     {
       ++_M_gcount;
       __c = __sb->snextc();
     }
   if (__n == __gnu_cxx::__numeric_traits<streamsize>::__max
       && !traits_type::eq_int_type(__c, __eof))
     {
       _M_gcount =
  __gnu_cxx::__numeric_traits<streamsize>::__min;
       __large_ignore = true;
     }
   else
     break;
 }

      if (__large_ignore)
 _M_gcount = __gnu_cxx::__numeric_traits<streamsize>::__max;

      if (traits_type::eq_int_type(__c, __eof))
               __err |= ios_base::eofbit;
           }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
         catch(...)
           { this->_M_setstate(ios_base::badbit); }
         if (__err)
           this->setstate(__err);
       }
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   ignore(streamsize __n, int_type __delim)
   {
     _M_gcount = 0;
     sentry __cerb(*this, true);
     if (__cerb && __n > 0)
       {
         ios_base::iostate __err = ios_base::goodbit;
         try
           {
             const int_type __eof = traits_type::eof();
             __streambuf_type* __sb = this->rdbuf();
             int_type __c = __sb->sgetc();


      bool __large_ignore = false;
      while (true)
 {
   while (_M_gcount < __n
   && !traits_type::eq_int_type(__c, __eof)
   && !traits_type::eq_int_type(__c, __delim))
     {
       ++_M_gcount;
       __c = __sb->snextc();
     }
   if (__n == __gnu_cxx::__numeric_traits<streamsize>::__max
       && !traits_type::eq_int_type(__c, __eof)
       && !traits_type::eq_int_type(__c, __delim))
     {
       _M_gcount =
  __gnu_cxx::__numeric_traits<streamsize>::__min;
       __large_ignore = true;
     }
   else
     break;
 }

      if (__large_ignore)
 _M_gcount = __gnu_cxx::__numeric_traits<streamsize>::__max;

             if (traits_type::eq_int_type(__c, __eof))
               __err |= ios_base::eofbit;
      else if (traits_type::eq_int_type(__c, __delim))
 {
   if (_M_gcount
       < __gnu_cxx::__numeric_traits<streamsize>::__max)
     ++_M_gcount;
   __sb->sbumpc();
 }
           }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
         catch(...)
           { this->_M_setstate(ios_base::badbit); }
         if (__err)
           this->setstate(__err);
       }
     return *this;
   }

 template<typename _CharT, typename _Traits>
   typename basic_istream<_CharT, _Traits>::int_type
   basic_istream<_CharT, _Traits>::
   peek(void)
   {
     int_type __c = traits_type::eof();
     _M_gcount = 0;
     sentry __cerb(*this, true);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      __c = this->rdbuf()->sgetc();
      if (traits_type::eq_int_type(__c, traits_type::eof()))
 __err |= ios_base::eofbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return __c;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   read(char_type* __s, streamsize __n)
   {
     _M_gcount = 0;
     sentry __cerb(*this, true);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      _M_gcount = this->rdbuf()->sgetn(__s, __n);
      if (_M_gcount != __n)
 __err |= (ios_base::eofbit | ios_base::failbit);
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return *this;
   }

 template<typename _CharT, typename _Traits>
   streamsize
   basic_istream<_CharT, _Traits>::
   readsome(char_type* __s, streamsize __n)
   {
     _M_gcount = 0;
     sentry __cerb(*this, true);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {

      const streamsize __num = this->rdbuf()->in_avail();
      if (__num > 0)
 _M_gcount = this->rdbuf()->sgetn(__s, std::min(__num, __n));
      else if (__num == -1)
 __err |= ios_base::eofbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return _M_gcount;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   putback(char_type __c)
   {


     _M_gcount = 0;

     this->clear(this->rdstate() & ~ios_base::eofbit);
     sentry __cerb(*this, true);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      const int_type __eof = traits_type::eof();
      __streambuf_type* __sb = this->rdbuf();
      if (!__sb
   || traits_type::eq_int_type(__sb->sputbackc(__c), __eof))
 __err |= ios_base::badbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   unget(void)
   {


     _M_gcount = 0;

     this->clear(this->rdstate() & ~ios_base::eofbit);
     sentry __cerb(*this, true);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      const int_type __eof = traits_type::eof();
      __streambuf_type* __sb = this->rdbuf();
      if (!__sb
   || traits_type::eq_int_type(__sb->sungetc(), __eof))
 __err |= ios_base::badbit;
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return *this;
   }

 template<typename _CharT, typename _Traits>
   int
   basic_istream<_CharT, _Traits>::
   sync(void)
   {


     int __ret = -1;
     sentry __cerb(*this, true);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      __streambuf_type* __sb = this->rdbuf();
      if (__sb)
 {
   if (__sb->pubsync() == -1)
     __err |= ios_base::badbit;
   else
     __ret = 0;
 }
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   typename basic_istream<_CharT, _Traits>::pos_type
   basic_istream<_CharT, _Traits>::
   tellg(void)
   {


     pos_type __ret = pos_type(-1);
     sentry __cerb(*this, true);
     if (__cerb)
{
  try
    {
      if (!this->fail())
 __ret = this->rdbuf()->pubseekoff(0, ios_base::cur,
       ios_base::in);
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   seekg(pos_type __pos)
   {



     this->clear(this->rdstate() & ~ios_base::eofbit);
     sentry __cerb(*this, true);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      if (!this->fail())
 {

   const pos_type __p = this->rdbuf()->pubseekpos(__pos,
        ios_base::in);


   if (__p == pos_type(off_type(-1)))
     __err |= ios_base::failbit;
 }
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return *this;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   basic_istream<_CharT, _Traits>::
   seekg(off_type __off, ios_base::seekdir __dir)
   {



     this->clear(this->rdstate() & ~ios_base::eofbit);
     sentry __cerb(*this, true);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      if (!this->fail())
 {

   const pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
        ios_base::in);


   if (__p == pos_type(off_type(-1)))
     __err |= ios_base::failbit;
 }
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      this->_M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { this->_M_setstate(ios_base::badbit); }
  if (__err)
    this->setstate(__err);
}
     return *this;
   }


 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c)
   {
     typedef basic_istream<_CharT, _Traits> __istream_type;
     typedef typename __istream_type::int_type __int_type;

     typename __istream_type::sentry __cerb(__in, false);
     if (__cerb)
{
  ios_base::iostate __err = ios_base::goodbit;
  try
    {
      const __int_type __cb = __in.rdbuf()->sbumpc();
      if (!_Traits::eq_int_type(__cb, _Traits::eof()))
 __c = _Traits::to_char_type(__cb);
      else
 __err |= (ios_base::eofbit | ios_base::failbit);
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      __in._M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { __in._M_setstate(ios_base::badbit); }
  if (__err)
    __in.setstate(__err);
}
     return __in;
   }

 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s)
   {
     typedef basic_istream<_CharT, _Traits> __istream_type;
     typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
     typedef typename _Traits::int_type int_type;
     typedef _CharT char_type;
     typedef ctype<_CharT> __ctype_type;

     streamsize __extracted = 0;
     ios_base::iostate __err = ios_base::goodbit;
     typename __istream_type::sentry __cerb(__in, false);
     if (__cerb)
{
  try
    {

      streamsize __num = __in.width();
      if (__num <= 0)
 __num = __gnu_cxx::__numeric_traits<streamsize>::__max;

      const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());

      const int_type __eof = _Traits::eof();
      __streambuf_type* __sb = __in.rdbuf();
      int_type __c = __sb->sgetc();

      while (__extracted < __num - 1
      && !_Traits::eq_int_type(__c, __eof)
      && !__ct.is(ctype_base::space,
    _Traits::to_char_type(__c)))
 {
   *__s++ = _Traits::to_char_type(__c);
   ++__extracted;
   __c = __sb->snextc();
 }
      if (_Traits::eq_int_type(__c, __eof))
 __err |= ios_base::eofbit;



      *__s = char_type();
      __in.width(0);
    }
  catch(__cxxabiv1::__forced_unwind&)
    {
      __in._M_setstate(ios_base::badbit);
      throw;
    }
  catch(...)
    { __in._M_setstate(ios_base::badbit); }
}
     if (!__extracted)
__err |= ios_base::failbit;
     if (__err)
__in.setstate(__err);
     return __in;
   }


 template<typename _CharT, typename _Traits>
   basic_istream<_CharT, _Traits>&
   ws(basic_istream<_CharT, _Traits>& __in)
   {
     typedef basic_istream<_CharT, _Traits> __istream_type;
     typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
     typedef typename __istream_type::int_type __int_type;
     typedef ctype<_CharT> __ctype_type;

     const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
     const __int_type __eof = _Traits::eof();
     __streambuf_type* __sb = __in.rdbuf();
     __int_type __c = __sb->sgetc();

     while (!_Traits::eq_int_type(__c, __eof)
     && __ct.is(ctype_base::space, _Traits::to_char_type(__c)))
__c = __sb->snextc();

      if (_Traits::eq_int_type(__c, __eof))
 __in.setstate(ios_base::eofbit);
     return __in;
   }




 extern template class basic_istream<char>;
 extern template istream& ws(istream&);
 extern template istream& operator>>(istream&, char&);
 extern template istream& operator>>(istream&, char*);
 extern template istream& operator>>(istream&, unsigned char&);
 extern template istream& operator>>(istream&, signed char&);
 extern template istream& operator>>(istream&, unsigned char*);
 extern template istream& operator>>(istream&, signed char*);

 extern template istream& istream::_M_extract(unsigned short&);
 extern template istream& istream::_M_extract(unsigned int&);
 extern template istream& istream::_M_extract(long&);
 extern template istream& istream::_M_extract(unsigned long&);
 extern template istream& istream::_M_extract(bool&);

 extern template istream& istream::_M_extract(long long&);
 extern template istream& istream::_M_extract(unsigned long long&);

 extern template istream& istream::_M_extract(float&);
 extern template istream& istream::_M_extract(double&);
 extern template istream& istream::_M_extract(long double&);
 extern template istream& istream::_M_extract(void*&);

 extern template class basic_iostream<char>;


 extern template class basic_istream<wchar_t>;
 extern template wistream& ws(wistream&);
 extern template wistream& operator>>(wistream&, wchar_t&);
 extern template wistream& operator>>(wistream&, wchar_t*);

 extern template wistream& wistream::_M_extract(unsigned short&);
 extern template wistream& wistream::_M_extract(unsigned int&);
 extern template wistream& wistream::_M_extract(long&);
 extern template wistream& wistream::_M_extract(unsigned long&);
 extern template wistream& wistream::_M_extract(bool&);

 extern template wistream& wistream::_M_extract(long long&);
 extern template wistream& wistream::_M_extract(unsigned long long&);

 extern template wistream& wistream::_M_extract(float&);
 extern template wistream& wistream::_M_extract(double&);
 extern template wistream& wistream::_M_extract(long double&);
 extern template wistream& wistream::_M_extract(void*&);

 extern template class basic_iostream<wchar_t>;




}
# 935 "/usr/include/g++/istream" 2 3
# 39 "/usr/include/g++/sstream" 2 3


namespace std __attribute__ ((__visibility__ ("default")))
{

namespace __cxx11 {
# 64 "/usr/include/g++/sstream" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   class basic_stringbuf : public basic_streambuf<_CharT, _Traits>
   {
     struct __xfer_bufptrs;
   public:

     typedef _CharT char_type;
     typedef _Traits traits_type;


     typedef _Alloc allocator_type;
     typedef typename traits_type::int_type int_type;
     typedef typename traits_type::pos_type pos_type;
     typedef typename traits_type::off_type off_type;

     typedef basic_streambuf<char_type, traits_type> __streambuf_type;
     typedef basic_string<char_type, _Traits, _Alloc> __string_type;
     typedef typename __string_type::size_type __size_type;

   protected:

     ios_base::openmode _M_mode;


     __string_type _M_string;

   public:
# 99 "/usr/include/g++/sstream" 3
     explicit
     basic_stringbuf(ios_base::openmode __mode = ios_base::in | ios_base::out)
     : __streambuf_type(), _M_mode(__mode), _M_string()
     { }
# 112 "/usr/include/g++/sstream" 3
     explicit
     basic_stringbuf(const __string_type& __str,
       ios_base::openmode __mode = ios_base::in | ios_base::out)
     : __streambuf_type(), _M_mode(), _M_string(__str.data(), __str.size())
     { _M_stringbuf_init(__mode); }
# 165 "/usr/include/g++/sstream" 3
     __string_type
     str() const
     {
__string_type __ret;
if (this->pptr())
  {

    if (this->pptr() > this->egptr())
      __ret = __string_type(this->pbase(), this->pptr());
    else
       __ret = __string_type(this->pbase(), this->egptr());
  }
else
  __ret = _M_string;
return __ret;
     }
# 189 "/usr/include/g++/sstream" 3
     void
     str(const __string_type& __s)
     {


_M_string.assign(__s.data(), __s.size());
_M_stringbuf_init(_M_mode);
     }

   protected:

     void
     _M_stringbuf_init(ios_base::openmode __mode)
     {
_M_mode = __mode;
__size_type __len = 0;
if (_M_mode & (ios_base::ate | ios_base::app))
  __len = _M_string.size();
_M_sync(const_cast<char_type*>(_M_string.data()), 0, __len);
     }

     virtual streamsize
     showmanyc()
     {
streamsize __ret = -1;
if (_M_mode & ios_base::in)
  {
    _M_update_egptr();
    __ret = this->egptr() - this->gptr();
  }
return __ret;
     }

     virtual int_type
     underflow();

     virtual int_type
     pbackfail(int_type __c = traits_type::eof());

     virtual int_type
     overflow(int_type __c = traits_type::eof());
# 242 "/usr/include/g++/sstream" 3
     virtual __streambuf_type*
     setbuf(char_type* __s, streamsize __n)
     {
if (__s && __n >= 0)
  {






    _M_string.clear();


    _M_sync(__s, __n, 0);
  }
return this;
     }

     virtual pos_type
     seekoff(off_type __off, ios_base::seekdir __way,
      ios_base::openmode __mode = ios_base::in | ios_base::out);

     virtual pos_type
     seekpos(pos_type __sp,
      ios_base::openmode __mode = ios_base::in | ios_base::out);




     void
     _M_sync(char_type* __base, __size_type __i, __size_type __o);



     void
     _M_update_egptr()
     {
const bool __testin = _M_mode & ios_base::in;
if (this->pptr() && this->pptr() > this->egptr())
  {
    if (__testin)
      this->setg(this->eback(), this->gptr(), this->pptr());
    else
      this->setg(this->pptr(), this->pptr(), this->pptr());
  }
     }



     void
     _M_pbump(char_type* __pbeg, char_type* __pend, off_type __off);

   private:
# 348 "/usr/include/g++/sstream" 3
   };
# 366 "/usr/include/g++/sstream" 3
 template<typename _CharT, typename _Traits, typename _Alloc>
   class basic_istringstream : public basic_istream<_CharT, _Traits>
   {
   public:

     typedef _CharT char_type;
     typedef _Traits traits_type;


     typedef _Alloc allocator_type;
     typedef typename traits_type::int_type int_type;
     typedef typename traits_type::pos_type pos_type;
     typedef typename traits_type::off_type off_type;


     typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
     typedef basic_stringbuf<_CharT, _Traits, _Alloc> __stringbuf_type;
     typedef basic_istream<char_type, traits_type> __istream_type;

   private:
     __stringbuf_type _M_stringbuf;

   public:
# 402 "/usr/include/g++/sstream" 3
     explicit
     basic_istringstream(ios_base::openmode __mode = ios_base::in)
     : __istream_type(), _M_stringbuf(__mode | ios_base::in)
     { this->init(&_M_stringbuf); }
# 420 "/usr/include/g++/sstream" 3
     explicit
     basic_istringstream(const __string_type& __str,
    ios_base::openmode __mode = ios_base::in)
     : __istream_type(), _M_stringbuf(__str, __mode | ios_base::in)
     { this->init(&_M_stringbuf); }







     ~basic_istringstream()
     { }
# 471 "/usr/include/g++/sstream" 3
     __stringbuf_type*
     rdbuf() const
     { return const_cast<__stringbuf_type*>(&_M_stringbuf); }





     __string_type
     str() const
     { return _M_stringbuf.str(); }







     void
     str(const __string_type& __s)
     { _M_stringbuf.str(__s); }
   };
# 510 "/usr/include/g++/sstream" 3
 template <typename _CharT, typename _Traits, typename _Alloc>
   class basic_ostringstream : public basic_ostream<_CharT, _Traits>
   {
   public:

     typedef _CharT char_type;
     typedef _Traits traits_type;


     typedef _Alloc allocator_type;
     typedef typename traits_type::int_type int_type;
     typedef typename traits_type::pos_type pos_type;
     typedef typename traits_type::off_type off_type;


     typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
     typedef basic_stringbuf<_CharT, _Traits, _Alloc> __stringbuf_type;
     typedef basic_ostream<char_type, traits_type> __ostream_type;

   private:
     __stringbuf_type _M_stringbuf;

   public:
# 546 "/usr/include/g++/sstream" 3
     explicit
     basic_ostringstream(ios_base::openmode __mode = ios_base::out)
     : __ostream_type(), _M_stringbuf(__mode | ios_base::out)
     { this->init(&_M_stringbuf); }
# 564 "/usr/include/g++/sstream" 3
     explicit
     basic_ostringstream(const __string_type& __str,
    ios_base::openmode __mode = ios_base::out)
     : __ostream_type(), _M_stringbuf(__str, __mode | ios_base::out)
     { this->init(&_M_stringbuf); }







     ~basic_ostringstream()
     { }
# 615 "/usr/include/g++/sstream" 3
     __stringbuf_type*
     rdbuf() const
     { return const_cast<__stringbuf_type*>(&_M_stringbuf); }





     __string_type
     str() const
     { return _M_stringbuf.str(); }







     void
     str(const __string_type& __s)
     { _M_stringbuf.str(__s); }
   };
# 654 "/usr/include/g++/sstream" 3
 template <typename _CharT, typename _Traits, typename _Alloc>
   class basic_stringstream : public basic_iostream<_CharT, _Traits>
   {
   public:

     typedef _CharT char_type;
     typedef _Traits traits_type;


     typedef _Alloc allocator_type;
     typedef typename traits_type::int_type int_type;
     typedef typename traits_type::pos_type pos_type;
     typedef typename traits_type::off_type off_type;


     typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
     typedef basic_stringbuf<_CharT, _Traits, _Alloc> __stringbuf_type;
     typedef basic_iostream<char_type, traits_type> __iostream_type;

   private:
     __stringbuf_type _M_stringbuf;

   public:
# 689 "/usr/include/g++/sstream" 3
     explicit
     basic_stringstream(ios_base::openmode __m = ios_base::out | ios_base::in)
     : __iostream_type(), _M_stringbuf(__m)
     { this->init(&_M_stringbuf); }
# 705 "/usr/include/g++/sstream" 3
     explicit
     basic_stringstream(const __string_type& __str,
   ios_base::openmode __m = ios_base::out | ios_base::in)
     : __iostream_type(), _M_stringbuf(__str, __m)
     { this->init(&_M_stringbuf); }







     ~basic_stringstream()
     { }
# 756 "/usr/include/g++/sstream" 3
     __stringbuf_type*
     rdbuf() const
     { return const_cast<__stringbuf_type*>(&_M_stringbuf); }





     __string_type
     str() const
     { return _M_stringbuf.str(); }







     void
     str(const __string_type& __s)
     { _M_stringbuf.str(__s); }
   };
# 809 "/usr/include/g++/sstream" 3
}

}

# 1 "/usr/include/g++/bits/sstream.tcc" 1 3
# 37 "/usr/include/g++/bits/sstream.tcc" 3

# 38 "/usr/include/g++/bits/sstream.tcc" 3

namespace std __attribute__ ((__visibility__ ("default")))
{


 template <class _CharT, class _Traits, class _Alloc>
   typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
   basic_stringbuf<_CharT, _Traits, _Alloc>::
   pbackfail(int_type __c)
   {
     int_type __ret = traits_type::eof();
     if (this->eback() < this->gptr())
{


  const bool __testeof = traits_type::eq_int_type(__c, __ret);
  if (!__testeof)
    {
      const bool __testeq = traits_type::eq(traits_type::
         to_char_type(__c),
         this->gptr()[-1]);
      const bool __testout = this->_M_mode & ios_base::out;
      if (__testeq || __testout)
 {
   this->gbump(-1);
   if (!__testeq)
     *this->gptr() = traits_type::to_char_type(__c);
   __ret = __c;
 }
    }
  else
    {
      this->gbump(-1);
      __ret = traits_type::not_eof(__c);
    }
}
     return __ret;
   }

 template <class _CharT, class _Traits, class _Alloc>
   typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
   basic_stringbuf<_CharT, _Traits, _Alloc>::
   overflow(int_type __c)
   {
     const bool __testout = this->_M_mode & ios_base::out;
     if (__builtin_expect(!__testout, false))
return traits_type::eof();

     const bool __testeof = traits_type::eq_int_type(__c, traits_type::eof());
     if (__builtin_expect(__testeof, false))
return traits_type::not_eof(__c);

     const __size_type __capacity = _M_string.capacity();
     const __size_type __max_size = _M_string.max_size();
     const bool __testput = this->pptr() < this->epptr();
     if (__builtin_expect(!__testput && __capacity == __max_size, false))
return traits_type::eof();



     const char_type __conv = traits_type::to_char_type(__c);
     if (!__testput)
{
# 110 "/usr/include/g++/bits/sstream.tcc" 3
  const __size_type __opt_len = std::max(__size_type(2 * __capacity),
      __size_type(512));
  const __size_type __len = std::min(__opt_len, __max_size);
  __string_type __tmp;
  __tmp.reserve(__len);
  if (this->pbase())
    __tmp.assign(this->pbase(), this->epptr() - this->pbase());
  __tmp.push_back(__conv);
  _M_string.swap(__tmp);
  _M_sync(const_cast<char_type*>(_M_string.data()),
   this->gptr() - this->eback(), this->pptr() - this->pbase());
}
     else
*this->pptr() = __conv;
     this->pbump(1);
     return __c;
   }

 template <class _CharT, class _Traits, class _Alloc>
   typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
   basic_stringbuf<_CharT, _Traits, _Alloc>::
   underflow()
   {
     int_type __ret = traits_type::eof();
     const bool __testin = this->_M_mode & ios_base::in;
     if (__testin)
{

  _M_update_egptr();

  if (this->gptr() < this->egptr())
    __ret = traits_type::to_int_type(*this->gptr());
}
     return __ret;
   }

 template <class _CharT, class _Traits, class _Alloc>
   typename basic_stringbuf<_CharT, _Traits, _Alloc>::pos_type
   basic_stringbuf<_CharT, _Traits, _Alloc>::
   seekoff(off_type __off, ios_base::seekdir __way, ios_base::openmode __mode)
   {
     pos_type __ret = pos_type(off_type(-1));
     bool __testin = (ios_base::in & this->_M_mode & __mode) != 0;
     bool __testout = (ios_base::out & this->_M_mode & __mode) != 0;
     const bool __testboth = __testin && __testout && __way != ios_base::cur;
     __testin &= !(__mode & ios_base::out);
     __testout &= !(__mode & ios_base::in);



     const char_type* __beg = __testin ? this->eback() : this->pbase();
     if ((__beg || !__off) && (__testin || __testout || __testboth))
{
  _M_update_egptr();

  off_type __newoffi = __off;
  off_type __newoffo = __newoffi;
  if (__way == ios_base::cur)
    {
      __newoffi += this->gptr() - __beg;
      __newoffo += this->pptr() - __beg;
    }
  else if (__way == ios_base::end)
    __newoffo = __newoffi += this->egptr() - __beg;

  if ((__testin || __testboth)
      && __newoffi >= 0
      && this->egptr() - __beg >= __newoffi)
    {
      this->setg(this->eback(), this->eback() + __newoffi,
   this->egptr());
      __ret = pos_type(__newoffi);
    }
  if ((__testout || __testboth)
      && __newoffo >= 0
      && this->egptr() - __beg >= __newoffo)
    {
      _M_pbump(this->pbase(), this->epptr(), __newoffo);
      __ret = pos_type(__newoffo);
    }
}
     return __ret;
   }

 template <class _CharT, class _Traits, class _Alloc>
   typename basic_stringbuf<_CharT, _Traits, _Alloc>::pos_type
   basic_stringbuf<_CharT, _Traits, _Alloc>::
   seekpos(pos_type __sp, ios_base::openmode __mode)
   {
     pos_type __ret = pos_type(off_type(-1));
     const bool __testin = (ios_base::in & this->_M_mode & __mode) != 0;
     const bool __testout = (ios_base::out & this->_M_mode & __mode) != 0;

     const char_type* __beg = __testin ? this->eback() : this->pbase();
     if ((__beg || !off_type(__sp)) && (__testin || __testout))
{
  _M_update_egptr();

  const off_type __pos(__sp);
  const bool __testpos = (0 <= __pos
     && __pos <= this->egptr() - __beg);
  if (__testpos)
    {
      if (__testin)
 this->setg(this->eback(), this->eback() + __pos,
     this->egptr());
      if (__testout)
 _M_pbump(this->pbase(), this->epptr(), __pos);
      __ret = __sp;
    }
}
     return __ret;
   }

 template <class _CharT, class _Traits, class _Alloc>
   void
   basic_stringbuf<_CharT, _Traits, _Alloc>::
   _M_sync(char_type* __base, __size_type __i, __size_type __o)
   {
     const bool __testin = _M_mode & ios_base::in;
     const bool __testout = _M_mode & ios_base::out;
     char_type* __endg = __base + _M_string.size();
     char_type* __endp = __base + _M_string.capacity();

     if (__base != _M_string.data())
{

  __endg += __i;
  __i = 0;
  __endp = __endg;
}

     if (__testin)
this->setg(__base, __base + __i, __endg);
     if (__testout)
{
  _M_pbump(__base, __endp, __o);



  if (!__testin)
    this->setg(__endg, __endg, __endg);
}
   }

 template <class _CharT, class _Traits, class _Alloc>
   void
   basic_stringbuf<_CharT, _Traits, _Alloc>::
   _M_pbump(char_type* __pbeg, char_type* __pend, off_type __off)
   {
     this->setp(__pbeg, __pend);
     while (__off > __gnu_cxx::__numeric_traits<int>::__max)
{
  this->pbump(__gnu_cxx::__numeric_traits<int>::__max);
  __off -= __gnu_cxx::__numeric_traits<int>::__max;
}
     this->pbump(__off);
   }




 extern template class basic_stringbuf<char>;
 extern template class basic_istringstream<char>;
 extern template class basic_ostringstream<char>;
 extern template class basic_stringstream<char>;


 extern template class basic_stringbuf<wchar_t>;
 extern template class basic_istringstream<wchar_t>;
 extern template class basic_ostringstream<wchar_t>;
 extern template class basic_stringstream<wchar_t>;




}
# 814 "/usr/include/g++/sstream" 2 3
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 2


# 1 "/usr/include/stdint.h" 1 3 4
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 2
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"

# 81 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
struct tm;



namespace Exiv2 {





   typedef
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
          __uint8_t
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                  byte;


   typedef std::pair<
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
                    __uint32_t
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                            ,
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
                              __uint32_t
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                                      > URational;

   typedef std::pair<
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
                    __int32_t
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                           ,
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
                             __int32_t
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                                    > Rational;


   enum ByteOrder { invalidByteOrder, littleEndian, bigEndian };


   enum WriteMethod { wmIntrusive, wmNonIntrusive };


   enum MetadataId { mdNone=0, mdExif=1, mdIptc=2, mdComment=4, mdXmp=8 };


   enum AccessMode { amNone=0, amRead=1, amWrite=2, amReadWrite=3 };







   enum TypeId {
       unsignedByte = 1,
       asciiString = 2,
       unsignedShort = 3,
       unsignedLong = 4,
       unsignedRational = 5,
       signedByte = 6,
       undefined = 7,
       signedShort = 8,
       signedLong = 9,
       signedRational =10,
       tiffFloat =11,
       tiffDouble =12,
       tiffIfd =13,
       string =0x10000,
       date =0x10001,
       time =0x10002,
       comment =0x10003,
       directory =0x10004,
       xmpText =0x10005,
       xmpAlt =0x10006,
       xmpBag =0x10007,
       xmpSeq =0x10008,
       langAlt =0x10009,
       invalidTypeId =0x1fffe,
       lastTypeId =0x1ffff
   };


   typedef std::vector<byte> Blob;





   class TypeInfo {

       TypeInfo();

       TypeInfo(const TypeInfo& rhs);

       TypeInfo& operator=(const TypeInfo& rhs);

   public:

       static const char* typeName(TypeId typeId);

       static TypeId typeId(const std::string& typeName);

       static long typeSize(TypeId typeId);

   };






   struct DataBufRef {

       DataBufRef(std::pair<byte*, long> rhs) : p(rhs) {}

       std::pair<byte*, long> p;
   };







   class DataBuf {
   public:



       DataBuf() : pData_(0), size_(0) {}

       explicit DataBuf(long size) : pData_(new byte[size]), size_(size) {}

       DataBuf(const byte* pData, long size);





       DataBuf(DataBuf& rhs);

       ~DataBuf() { delete[] pData_; }
# 214 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
       DataBuf& operator=(DataBuf& rhs);





       void alloc(long size);





       std::pair<byte*, long> release();

       void reset(std::pair<byte*, long> =std::make_pair((byte*)(0),long(0)));
# 239 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
       DataBuf(DataBufRef rhs) : pData_(rhs.p.first), size_(rhs.p.second) {}
       DataBuf& operator=(DataBufRef rhs) { reset(rhs.p); return *this; }
       operator DataBufRef() { return DataBufRef(release()); }




       byte* pData_;

       long size_;
   };







# 256 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
           __uint16_t
# 256 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                    getUShort(const byte* buf, ByteOrder byteOrder);


# 258 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
           __uint32_t
# 258 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                    getULong(const byte* buf, ByteOrder byteOrder);

   URational getURational(const byte* buf, ByteOrder byteOrder);


# 262 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
           __int16_t
# 262 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                   getShort(const byte* buf, ByteOrder byteOrder);


# 264 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
           __int32_t
# 264 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                   getLong(const byte* buf, ByteOrder byteOrder);

   Rational getRational(const byte* buf, ByteOrder byteOrder);

   float getFloat(const byte* buf, ByteOrder byteOrder);

   double getDouble(const byte* buf, ByteOrder byteOrder);


   std::ostream& operator<<(std::ostream& os, const Rational& r);

   std::istream& operator>>(std::istream& is, Rational& r);

   std::ostream& operator<<(std::ostream& os, const URational& r);

   std::istream& operator>>(std::istream& is, URational& r);





   long us2Data(byte* buf,
# 285 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
                                   __uint16_t
# 285 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                                            s, ByteOrder byteOrder);




   long ul2Data(byte* buf,
# 290 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
                                   __uint32_t
# 290 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                                            l, ByteOrder byteOrder);




   long ur2Data(byte* buf, URational l, ByteOrder byteOrder);




   long s2Data(byte* buf,
# 300 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
                                  __int16_t
# 300 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                                          s, ByteOrder byteOrder);




   long l2Data(byte* buf,
# 305 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp" 3 4
                                  __int32_t
# 305 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
                                          l, ByteOrder byteOrder);




   long r2Data(byte* buf, Rational l, ByteOrder byteOrder);




   long f2Data(byte* buf, float f, ByteOrder byteOrder);




   long d2Data(byte* buf, double d, ByteOrder byteOrder);






   void hexdump(std::ostream& os, const byte* buf, long len, long offset =0);






   bool isHex(const std::string& str,
              size_t size =0,
              const std::string& prefix ="");






   int exifTime(const char* buf, struct tm* tm);





   const char* exvGettext(const char* str);
# 370 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
   long parseLong(const std::string& s, bool& ok);
# 384 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
   float parseFloat(const std::string& s, bool& ok);
# 400 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
   Rational parseRational(const std::string& s, bool& ok);







   Rational floatToRationalCast(float f);
# 457 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
   template<typename T, typename K, int N>
   const T* find(T (&src)[N], const K& key)
   {
       const T* rc = std::find(src, src + N, key);
       return rc == src + N ? 0 : rc;
   }


   template <typename T, int N> char (&sizer(T (&)[N]))[N];




   template<typename T>
   std::string toString(const T& arg)
   {
       std::ostringstream os;
       os << arg;
       return os.str();
   }
# 489 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
   template<typename T>
   T stringTo(const std::string& s, bool& ok)
   {
       std::istringstream is(s);
       T tmp;
       ok = is >> tmp ? true : false;
       std::string rest;
       is >> std::skipws >> rest;
       if (!rest.empty()) ok = false;
       return tmp;
   }
# 508 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
   template<>
   bool stringTo<bool>(const std::string& s, bool& ok);
# 519 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/types.hpp"
   template <typename IntType>
   IntType gcd(IntType n, IntType m)
   {

       IntType zero(0);







       if (n < zero)
           n = -n;
       if (m < zero)
           m = -m;







       for(;;) {
           if(m == zero)
               return n;
           n %= m;
           if(n == zero)
               return m;
           m %= n;
       }
   }

}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/config.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp" 2
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
# 1 "/usr/include/g++/map" 1 3
# 58 "/usr/include/g++/map" 3

# 59 "/usr/include/g++/map" 3

# 1 "/usr/include/g++/bits/stl_tree.h" 1 3
# 61 "/usr/include/g++/bits/stl_tree.h" 3

# 62 "/usr/include/g++/bits/stl_tree.h" 3
# 72 "/usr/include/g++/bits/stl_tree.h" 3

# 72 "/usr/include/g++/bits/stl_tree.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{

# 92 "/usr/include/g++/bits/stl_tree.h" 3
 enum _Rb_tree_color { _S_red = false, _S_black = true };

 struct _Rb_tree_node_base
 {
   typedef _Rb_tree_node_base* _Base_ptr;
   typedef const _Rb_tree_node_base* _Const_Base_ptr;

   _Rb_tree_color _M_color;
   _Base_ptr _M_parent;
   _Base_ptr _M_left;
   _Base_ptr _M_right;

   static _Base_ptr
   _S_minimum(_Base_ptr __x)
   {
     while (__x->_M_left != 0) __x = __x->_M_left;
     return __x;
   }

   static _Const_Base_ptr
   _S_minimum(_Const_Base_ptr __x)
   {
     while (__x->_M_left != 0) __x = __x->_M_left;
     return __x;
   }

   static _Base_ptr
   _S_maximum(_Base_ptr __x)
   {
     while (__x->_M_right != 0) __x = __x->_M_right;
     return __x;
   }

   static _Const_Base_ptr
   _S_maximum(_Const_Base_ptr __x)
   {
     while (__x->_M_right != 0) __x = __x->_M_right;
     return __x;
   }
 };

 template<typename _Val>
   struct _Rb_tree_node : public _Rb_tree_node_base
   {
     typedef _Rb_tree_node<_Val>* _Link_type;


     _Val _M_value_field;

     _Val*
     _M_valptr()
     { return std::__addressof(_M_value_field); }

     const _Val*
     _M_valptr() const
     { return std::__addressof(_M_value_field); }
# 159 "/usr/include/g++/bits/stl_tree.h" 3
   };

 __attribute__ ((__pure__)) _Rb_tree_node_base*
 _Rb_tree_increment(_Rb_tree_node_base* __x) throw ();

 __attribute__ ((__pure__)) const _Rb_tree_node_base*
 _Rb_tree_increment(const _Rb_tree_node_base* __x) throw ();

 __attribute__ ((__pure__)) _Rb_tree_node_base*
 _Rb_tree_decrement(_Rb_tree_node_base* __x) throw ();

 __attribute__ ((__pure__)) const _Rb_tree_node_base*
 _Rb_tree_decrement(const _Rb_tree_node_base* __x) throw ();

 template<typename _Tp>
   struct _Rb_tree_iterator
   {
     typedef _Tp value_type;
     typedef _Tp& reference;
     typedef _Tp* pointer;

     typedef bidirectional_iterator_tag iterator_category;
     typedef ptrdiff_t difference_type;

     typedef _Rb_tree_iterator<_Tp> _Self;
     typedef _Rb_tree_node_base::_Base_ptr _Base_ptr;
     typedef _Rb_tree_node<_Tp>* _Link_type;

     _Rb_tree_iterator()
     : _M_node() { }

     explicit
     _Rb_tree_iterator(_Base_ptr __x)
     : _M_node(__x) { }

     reference
     operator*() const
     { return *static_cast<_Link_type>(_M_node)->_M_valptr(); }

     pointer
     operator->() const
     { return static_cast<_Link_type> (_M_node)->_M_valptr(); }

     _Self&
     operator++()
     {
_M_node = _Rb_tree_increment(_M_node);
return *this;
     }

     _Self
     operator++(int)
     {
_Self __tmp = *this;
_M_node = _Rb_tree_increment(_M_node);
return __tmp;
     }

     _Self&
     operator--()
     {
_M_node = _Rb_tree_decrement(_M_node);
return *this;
     }

     _Self
     operator--(int)
     {
_Self __tmp = *this;
_M_node = _Rb_tree_decrement(_M_node);
return __tmp;
     }

     bool
     operator==(const _Self& __x) const
     { return _M_node == __x._M_node; }

     bool
     operator!=(const _Self& __x) const
     { return _M_node != __x._M_node; }

     _Base_ptr _M_node;
 };

 template<typename _Tp>
   struct _Rb_tree_const_iterator
   {
     typedef _Tp value_type;
     typedef const _Tp& reference;
     typedef const _Tp* pointer;

     typedef _Rb_tree_iterator<_Tp> iterator;

     typedef bidirectional_iterator_tag iterator_category;
     typedef ptrdiff_t difference_type;

     typedef _Rb_tree_const_iterator<_Tp> _Self;
     typedef _Rb_tree_node_base::_Const_Base_ptr _Base_ptr;
     typedef const _Rb_tree_node<_Tp>* _Link_type;

     _Rb_tree_const_iterator()
     : _M_node() { }

     explicit
     _Rb_tree_const_iterator(_Base_ptr __x)
     : _M_node(__x) { }

     _Rb_tree_const_iterator(const iterator& __it)
     : _M_node(__it._M_node) { }

     iterator
     _M_const_cast() const
     { return iterator(const_cast<typename iterator::_Base_ptr>(_M_node)); }

     reference
     operator*() const
     { return *static_cast<_Link_type>(_M_node)->_M_valptr(); }

     pointer
     operator->() const
     { return static_cast<_Link_type>(_M_node)->_M_valptr(); }

     _Self&
     operator++()
     {
_M_node = _Rb_tree_increment(_M_node);
return *this;
     }

     _Self
     operator++(int)
     {
_Self __tmp = *this;
_M_node = _Rb_tree_increment(_M_node);
return __tmp;
     }

     _Self&
     operator--()
     {
_M_node = _Rb_tree_decrement(_M_node);
return *this;
     }

     _Self
     operator--(int)
     {
_Self __tmp = *this;
_M_node = _Rb_tree_decrement(_M_node);
return __tmp;
     }

     bool
     operator==(const _Self& __x) const
     { return _M_node == __x._M_node; }

     bool
     operator!=(const _Self& __x) const
     { return _M_node != __x._M_node; }

     _Base_ptr _M_node;
   };

 template<typename _Val>
   inline bool
   operator==(const _Rb_tree_iterator<_Val>& __x,
              const _Rb_tree_const_iterator<_Val>& __y)
   { return __x._M_node == __y._M_node; }

 template<typename _Val>
   inline bool
   operator!=(const _Rb_tree_iterator<_Val>& __x,
              const _Rb_tree_const_iterator<_Val>& __y)
   { return __x._M_node != __y._M_node; }

 void
 _Rb_tree_insert_and_rebalance(const bool __insert_left,
                               _Rb_tree_node_base* __x,
                               _Rb_tree_node_base* __p,
                               _Rb_tree_node_base& __header) throw ();

 _Rb_tree_node_base*
 _Rb_tree_rebalance_for_erase(_Rb_tree_node_base* const __z,
         _Rb_tree_node_base& __header) throw ();


 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc = allocator<_Val> >
   class _Rb_tree
   {
     typedef typename __gnu_cxx::__alloc_traits<_Alloc>::template
       rebind<_Rb_tree_node<_Val> >::other _Node_allocator;

     typedef __gnu_cxx::__alloc_traits<_Node_allocator> _Alloc_traits;

   protected:
     typedef _Rb_tree_node_base* _Base_ptr;
     typedef const _Rb_tree_node_base* _Const_Base_ptr;
     typedef _Rb_tree_node<_Val>* _Link_type;
     typedef const _Rb_tree_node<_Val>* _Const_Link_type;

   private:


     struct _Reuse_or_alloc_node
     {
_Reuse_or_alloc_node(_Rb_tree& __t)
  : _M_root(__t._M_root()), _M_nodes(__t._M_rightmost()), _M_t(__t)
{
  if (_M_root)
    {
      _M_root->_M_parent = 0;

      if (_M_nodes->_M_left)
 _M_nodes = _M_nodes->_M_left;
    }
  else
    _M_nodes = 0;
}





~_Reuse_or_alloc_node()
{ _M_t._M_erase(static_cast<_Link_type>(_M_root)); }

template<typename _Arg>
  _Link_type

  operator()(const _Arg& __arg)



  {
    _Link_type __node = static_cast<_Link_type>(_M_extract());
    if (__node)
      {
 _M_t._M_destroy_node(__node);
 _M_t._M_construct_node(__node, (__arg));
 return __node;
      }

    return _M_t._M_create_node((__arg));
  }

     private:
_Base_ptr
_M_extract()
{
  if (!_M_nodes)
    return _M_nodes;

  _Base_ptr __node = _M_nodes;
  _M_nodes = _M_nodes->_M_parent;
  if (_M_nodes)
    {
      if (_M_nodes->_M_right == __node)
 {
   _M_nodes->_M_right = 0;

   if (_M_nodes->_M_left)
     {
       _M_nodes = _M_nodes->_M_left;

       while (_M_nodes->_M_right)
  _M_nodes = _M_nodes->_M_right;

       if (_M_nodes->_M_left)
  _M_nodes = _M_nodes->_M_left;
     }
 }
      else
 _M_nodes->_M_left = 0;
    }
  else
    _M_root = 0;

  return __node;
}

_Base_ptr _M_root;
_Base_ptr _M_nodes;
_Rb_tree& _M_t;
     };



     struct _Alloc_node
     {
_Alloc_node(_Rb_tree& __t)
  : _M_t(__t) { }

template<typename _Arg>
  _Link_type

  operator()(const _Arg& __arg) const



  { return _M_t._M_create_node((__arg)); }

     private:
_Rb_tree& _M_t;
     };

   public:
     typedef _Key key_type;
     typedef _Val value_type;
     typedef value_type* pointer;
     typedef const value_type* const_pointer;
     typedef value_type& reference;
     typedef const value_type& const_reference;
     typedef size_t size_type;
     typedef ptrdiff_t difference_type;
     typedef _Alloc allocator_type;

     _Node_allocator&
     _M_get_Node_allocator()
     { return *static_cast<_Node_allocator*>(&this->_M_impl); }

     const _Node_allocator&
     _M_get_Node_allocator() const
     { return *static_cast<const _Node_allocator*>(&this->_M_impl); }

     allocator_type
     get_allocator() const
     { return allocator_type(_M_get_Node_allocator()); }

   protected:
     _Link_type
     _M_get_node()
     { return _Alloc_traits::allocate(_M_get_Node_allocator(), 1); }

     void
     _M_put_node(_Link_type __p)
     { _Alloc_traits::deallocate(_M_get_Node_allocator(), __p, 1); }


     void
     _M_construct_node(_Link_type __node, const value_type& __x)
     {
try
  { get_allocator().construct(__node->_M_valptr(), __x); }
catch(...)
  {
    _M_put_node(__node);
    throw;
  }
     }

     _Link_type
     _M_create_node(const value_type& __x)
     {
_Link_type __tmp = _M_get_node();
_M_construct_node(__tmp, __x);
return __tmp;
     }

     void
     _M_destroy_node(_Link_type __p)
     { get_allocator().destroy(__p->_M_valptr()); }
# 558 "/usr/include/g++/bits/stl_tree.h" 3
     void
     _M_drop_node(_Link_type __p)
     {
_M_destroy_node(__p);
_M_put_node(__p);
     }

     template<typename _NodeGen>
_Link_type
_M_clone_node(_Const_Link_type __x, _NodeGen& __node_gen)
{
  _Link_type __tmp = __node_gen(*__x->_M_valptr());
  __tmp->_M_color = __x->_M_color;
  __tmp->_M_left = 0;
  __tmp->_M_right = 0;
  return __tmp;
}

   protected:

     template<typename _Key_compare,
       bool = __is_pod(_Key_compare)>
       struct _Rb_tree_impl : public _Node_allocator
       {
  _Key_compare _M_key_compare;
  _Rb_tree_node_base _M_header;
  size_type _M_node_count;

  _Rb_tree_impl()
  : _Node_allocator(), _M_key_compare(), _M_header(),
    _M_node_count(0)
  { _M_initialize(); }

  _Rb_tree_impl(const _Key_compare& __comp, const _Node_allocator& __a)
  : _Node_allocator(__a), _M_key_compare(__comp), _M_header(),
    _M_node_count(0)
  { _M_initialize(); }
# 603 "/usr/include/g++/bits/stl_tree.h" 3
  void
  _M_reset()
  {
    this->_M_header._M_parent = 0;
    this->_M_header._M_left = &this->_M_header;
    this->_M_header._M_right = &this->_M_header;
    this->_M_node_count = 0;
  }

private:
  void
  _M_initialize()
  {
    this->_M_header._M_color = _S_red;
    this->_M_header._M_parent = 0;
    this->_M_header._M_left = &this->_M_header;
    this->_M_header._M_right = &this->_M_header;
  }
};

     _Rb_tree_impl<_Compare> _M_impl;

   protected:
     _Base_ptr&
     _M_root()
     { return this->_M_impl._M_header._M_parent; }

     _Const_Base_ptr
     _M_root() const
     { return this->_M_impl._M_header._M_parent; }

     _Base_ptr&
     _M_leftmost()
     { return this->_M_impl._M_header._M_left; }

     _Const_Base_ptr
     _M_leftmost() const
     { return this->_M_impl._M_header._M_left; }

     _Base_ptr&
     _M_rightmost()
     { return this->_M_impl._M_header._M_right; }

     _Const_Base_ptr
     _M_rightmost() const
     { return this->_M_impl._M_header._M_right; }

     _Link_type
     _M_begin()
     { return static_cast<_Link_type>(this->_M_impl._M_header._M_parent); }

     _Const_Link_type
     _M_begin() const
     {
return static_cast<_Const_Link_type>
  (this->_M_impl._M_header._M_parent);
     }

     _Link_type
     _M_end()
     { return reinterpret_cast<_Link_type>(&this->_M_impl._M_header); }

     _Const_Link_type
     _M_end() const
     { return reinterpret_cast<_Const_Link_type>(&this->_M_impl._M_header); }

     static const_reference
     _S_value(_Const_Link_type __x)
     { return *__x->_M_valptr(); }

     static const _Key&
     _S_key(_Const_Link_type __x)
     { return _KeyOfValue()(_S_value(__x)); }

     static _Link_type
     _S_left(_Base_ptr __x)
     { return static_cast<_Link_type>(__x->_M_left); }

     static _Const_Link_type
     _S_left(_Const_Base_ptr __x)
     { return static_cast<_Const_Link_type>(__x->_M_left); }

     static _Link_type
     _S_right(_Base_ptr __x)
     { return static_cast<_Link_type>(__x->_M_right); }

     static _Const_Link_type
     _S_right(_Const_Base_ptr __x)
     { return static_cast<_Const_Link_type>(__x->_M_right); }

     static const_reference
     _S_value(_Const_Base_ptr __x)
     { return *static_cast<_Const_Link_type>(__x)->_M_valptr(); }

     static const _Key&
     _S_key(_Const_Base_ptr __x)
     { return _KeyOfValue()(_S_value(__x)); }

     static _Base_ptr
     _S_minimum(_Base_ptr __x)
     { return _Rb_tree_node_base::_S_minimum(__x); }

     static _Const_Base_ptr
     _S_minimum(_Const_Base_ptr __x)
     { return _Rb_tree_node_base::_S_minimum(__x); }

     static _Base_ptr
     _S_maximum(_Base_ptr __x)
     { return _Rb_tree_node_base::_S_maximum(__x); }

     static _Const_Base_ptr
     _S_maximum(_Const_Base_ptr __x)
     { return _Rb_tree_node_base::_S_maximum(__x); }

   public:
     typedef _Rb_tree_iterator<value_type> iterator;
     typedef _Rb_tree_const_iterator<value_type> const_iterator;

     typedef std::reverse_iterator<iterator> reverse_iterator;
     typedef std::reverse_iterator<const_iterator> const_reverse_iterator;

   private:
     pair<_Base_ptr, _Base_ptr>
     _M_get_insert_unique_pos(const key_type& __k);

     pair<_Base_ptr, _Base_ptr>
     _M_get_insert_equal_pos(const key_type& __k);

     pair<_Base_ptr, _Base_ptr>
     _M_get_insert_hint_unique_pos(const_iterator __pos,
       const key_type& __k);

     pair<_Base_ptr, _Base_ptr>
     _M_get_insert_hint_equal_pos(const_iterator __pos,
      const key_type& __k);
# 761 "/usr/include/g++/bits/stl_tree.h" 3
     template<typename _NodeGen>
iterator
_M_insert_(_Base_ptr __x, _Base_ptr __y,
    const value_type& __v, _NodeGen&);



     iterator
     _M_insert_lower(_Base_ptr __y, const value_type& __v);

     iterator
     _M_insert_equal_lower(const value_type& __x);


     template<typename _NodeGen>
_Link_type
_M_copy(_Const_Link_type __x, _Link_type __p, _NodeGen&);

     _Link_type
     _M_copy(_Const_Link_type __x, _Link_type __p)
     {
_Alloc_node __an(*this);
return _M_copy(__x, __p, __an);
     }

     void
     _M_erase(_Link_type __x);

     iterator
     _M_lower_bound(_Link_type __x, _Link_type __y,
      const _Key& __k);

     const_iterator
     _M_lower_bound(_Const_Link_type __x, _Const_Link_type __y,
      const _Key& __k) const;

     iterator
     _M_upper_bound(_Link_type __x, _Link_type __y,
      const _Key& __k);

     const_iterator
     _M_upper_bound(_Const_Link_type __x, _Const_Link_type __y,
      const _Key& __k) const;

   public:

     _Rb_tree() { }

     _Rb_tree(const _Compare& __comp,
       const allocator_type& __a = allocator_type())
     : _M_impl(__comp, _Node_allocator(__a)) { }

     _Rb_tree(const _Rb_tree& __x)
     : _M_impl(__x._M_impl._M_key_compare,
        _Alloc_traits::_S_select_on_copy(__x._M_get_Node_allocator()))
     {
if (__x._M_root() != 0)
  {
    _M_root() = _M_copy(__x._M_begin(), _M_end());
    _M_leftmost() = _S_minimum(_M_root());
    _M_rightmost() = _S_maximum(_M_root());
    _M_impl._M_node_count = __x._M_impl._M_node_count;
  }
     }
# 857 "/usr/include/g++/bits/stl_tree.h" 3
     ~_Rb_tree()
     { _M_erase(_M_begin()); }

     _Rb_tree&
     operator=(const _Rb_tree& __x);


     _Compare
     key_comp() const
     { return _M_impl._M_key_compare; }

     iterator
     begin()
     { return iterator(this->_M_impl._M_header._M_left); }

     const_iterator
     begin() const
     { return const_iterator(this->_M_impl._M_header._M_left); }

     iterator
     end()
     { return iterator(&this->_M_impl._M_header); }

     const_iterator
     end() const
     { return const_iterator(&this->_M_impl._M_header); }

     reverse_iterator
     rbegin()
     { return reverse_iterator(end()); }

     const_reverse_iterator
     rbegin() const
     { return const_reverse_iterator(end()); }

     reverse_iterator
     rend()
     { return reverse_iterator(begin()); }

     const_reverse_iterator
     rend() const
     { return const_reverse_iterator(begin()); }

     bool
     empty() const
     { return _M_impl._M_node_count == 0; }

     size_type
     size() const
     { return _M_impl._M_node_count; }

     size_type
     max_size() const
     { return _Alloc_traits::max_size(_M_get_Node_allocator()); }

     void



     swap(_Rb_tree& __t);
# 969 "/usr/include/g++/bits/stl_tree.h" 3
     pair<iterator, bool>
     _M_insert_unique(const value_type& __x);

     iterator
     _M_insert_equal(const value_type& __x);

     template<typename _NodeGen>
iterator
_M_insert_unique_(const_iterator __pos, const value_type& __x,
    _NodeGen&);

     iterator
     _M_insert_unique_(const_iterator __pos, const value_type& __x)
     {
_Alloc_node __an(*this);
return _M_insert_unique_(__pos, __x, __an);
     }

     template<typename _NodeGen>
iterator
_M_insert_equal_(const_iterator __pos, const value_type& __x,
   _NodeGen&);
     iterator
     _M_insert_equal_(const_iterator __pos, const value_type& __x)
     {
_Alloc_node __an(*this);
return _M_insert_equal_(__pos, __x, __an);
     }


     template<typename _InputIterator>
       void
       _M_insert_unique(_InputIterator __first, _InputIterator __last);

     template<typename _InputIterator>
       void
       _M_insert_equal(_InputIterator __first, _InputIterator __last);

   private:
     void
     _M_erase_aux(const_iterator __position);

     void
     _M_erase_aux(const_iterator __first, const_iterator __last);

   public:
# 1039 "/usr/include/g++/bits/stl_tree.h" 3
     void
     erase(iterator __position)
     { _M_erase_aux(__position); }

     void
     erase(const_iterator __position)
     { _M_erase_aux(__position); }

     size_type
     erase(const key_type& __x);
# 1061 "/usr/include/g++/bits/stl_tree.h" 3
     void
     erase(iterator __first, iterator __last)
     { _M_erase_aux(__first, __last); }

     void
     erase(const_iterator __first, const_iterator __last)
     { _M_erase_aux(__first, __last); }

     void
     erase(const key_type* __first, const key_type* __last);

     void
     clear()
     {
       _M_erase(_M_begin());
_M_impl._M_reset();
     }


     iterator
     find(const key_type& __k);

     const_iterator
     find(const key_type& __k) const;

     size_type
     count(const key_type& __k) const;

     iterator
     lower_bound(const key_type& __k)
     { return _M_lower_bound(_M_begin(), _M_end(), __k); }

     const_iterator
     lower_bound(const key_type& __k) const
     { return _M_lower_bound(_M_begin(), _M_end(), __k); }

     iterator
     upper_bound(const key_type& __k)
     { return _M_upper_bound(_M_begin(), _M_end(), __k); }

     const_iterator
     upper_bound(const key_type& __k) const
     { return _M_upper_bound(_M_begin(), _M_end(), __k); }

     pair<iterator, iterator>
     equal_range(const key_type& __k);

     pair<const_iterator, const_iterator>
     equal_range(const key_type& __k) const;
# 1243 "/usr/include/g++/bits/stl_tree.h" 3
     bool
     __rb_verify() const;
# 1268 "/usr/include/g++/bits/stl_tree.h" 3
   };

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   inline bool
   operator==(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
       const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
   {
     return __x.size() == __y.size()
     && std::equal(__x.begin(), __x.end(), __y.begin());
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   inline bool
   operator<(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
      const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
   {
     return std::lexicographical_compare(__x.begin(), __x.end(),
      __y.begin(), __y.end());
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   inline bool
   operator!=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
       const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
   { return !(__x == __y); }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   inline bool
   operator>(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
      const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
   { return __y < __x; }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   inline bool
   operator<=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
       const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
   { return !(__y < __x); }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   inline bool
   operator>=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
       const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
   { return !(__x < __y); }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   inline void
   swap(_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
   { __x.swap(__y); }
# 1448 "/usr/include/g++/bits/stl_tree.h" 3
 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>&
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   operator=(const _Rb_tree& __x)
   {
     if (this != &__x)
{
# 1473 "/usr/include/g++/bits/stl_tree.h" 3
  _Reuse_or_alloc_node __roan(*this);
  _M_impl._M_reset();
  _M_impl._M_key_compare = __x._M_impl._M_key_compare;
  if (__x._M_root() != 0)
    {
      _M_root() = _M_copy(__x._M_begin(), _M_end(), __roan);
      _M_leftmost() = _S_minimum(_M_root());
      _M_rightmost() = _S_maximum(_M_root());
      _M_impl._M_node_count = __x._M_impl._M_node_count;
    }
}

     return *this;
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>



   template<typename _NodeGen>

     typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
     _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
     _M_insert_(_Base_ptr __x, _Base_ptr __p,



  const _Val& __v,

  _NodeGen& __node_gen)
     {
bool __insert_left = (__x != 0 || __p == _M_end()
        || _M_impl._M_key_compare(_KeyOfValue()(__v),
      _S_key(__p)));

_Link_type __z = __node_gen((__v));

_Rb_tree_insert_and_rebalance(__insert_left, __z, __p,
         this->_M_impl._M_header);
++_M_impl._M_node_count;
return iterator(__z);
     }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>



   typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::



   _M_insert_lower(_Base_ptr __p, const _Val& __v)

   {
     bool __insert_left = (__p == _M_end()
      || !_M_impl._M_key_compare(_S_key(__p),
            _KeyOfValue()(__v)));

     _Link_type __z = _M_create_node((__v));

     _Rb_tree_insert_and_rebalance(__insert_left, __z, __p,
       this->_M_impl._M_header);
     ++_M_impl._M_node_count;
     return iterator(__z);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>



   typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::



   _M_insert_equal_lower(const _Val& __v)

   {
     _Link_type __x = _M_begin();
     _Link_type __y = _M_end();
     while (__x != 0)
{
  __y = __x;
  __x = !_M_impl._M_key_compare(_S_key(__x), _KeyOfValue()(__v)) ?
        _S_left(__x) : _S_right(__x);
}
     return _M_insert_lower(__y, (__v));
   }

 template<typename _Key, typename _Val, typename _KoV,
   typename _Compare, typename _Alloc>
   template<typename _NodeGen>
     typename _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::_Link_type
     _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::
     _M_copy(_Const_Link_type __x, _Link_type __p, _NodeGen& __node_gen)
     {

_Link_type __top = _M_clone_node(__x, __node_gen);
__top->_M_parent = __p;

try
  {
    if (__x->_M_right)
      __top->_M_right = _M_copy(_S_right(__x), __top, __node_gen);
    __p = __top;
    __x = _S_left(__x);

    while (__x != 0)
      {
 _Link_type __y = _M_clone_node(__x, __node_gen);
 __p->_M_left = __y;
 __y->_M_parent = __p;
 if (__x->_M_right)
   __y->_M_right = _M_copy(_S_right(__x), __y, __node_gen);
 __p = __y;
 __x = _S_left(__x);
      }
  }
catch(...)
  {
    _M_erase(__top);
    throw;
  }
return __top;
     }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   void
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_erase(_Link_type __x)
   {

     while (__x != 0)
{
  _M_erase(_S_right(__x));
  _Link_type __y = _S_left(__x);
  _M_drop_node(__x);
  __x = __y;
}
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   typename _Rb_tree<_Key, _Val, _KeyOfValue,
       _Compare, _Alloc>::iterator
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_lower_bound(_Link_type __x, _Link_type __y,
    const _Key& __k)
   {
     while (__x != 0)
if (!_M_impl._M_key_compare(_S_key(__x), __k))
  __y = __x, __x = _S_left(__x);
else
  __x = _S_right(__x);
     return iterator(__y);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   typename _Rb_tree<_Key, _Val, _KeyOfValue,
       _Compare, _Alloc>::const_iterator
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_lower_bound(_Const_Link_type __x, _Const_Link_type __y,
    const _Key& __k) const
   {
     while (__x != 0)
if (!_M_impl._M_key_compare(_S_key(__x), __k))
  __y = __x, __x = _S_left(__x);
else
  __x = _S_right(__x);
     return const_iterator(__y);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   typename _Rb_tree<_Key, _Val, _KeyOfValue,
       _Compare, _Alloc>::iterator
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_upper_bound(_Link_type __x, _Link_type __y,
    const _Key& __k)
   {
     while (__x != 0)
if (_M_impl._M_key_compare(__k, _S_key(__x)))
  __y = __x, __x = _S_left(__x);
else
  __x = _S_right(__x);
     return iterator(__y);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   typename _Rb_tree<_Key, _Val, _KeyOfValue,
       _Compare, _Alloc>::const_iterator
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_upper_bound(_Const_Link_type __x, _Const_Link_type __y,
    const _Key& __k) const
   {
     while (__x != 0)
if (_M_impl._M_key_compare(__k, _S_key(__x)))
  __y = __x, __x = _S_left(__x);
else
  __x = _S_right(__x);
     return const_iterator(__y);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::iterator,
 typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::iterator>
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   equal_range(const _Key& __k)
   {
     _Link_type __x = _M_begin();
     _Link_type __y = _M_end();
     while (__x != 0)
{
  if (_M_impl._M_key_compare(_S_key(__x), __k))
    __x = _S_right(__x);
  else if (_M_impl._M_key_compare(__k, _S_key(__x)))
    __y = __x, __x = _S_left(__x);
  else
    {
      _Link_type __xu(__x), __yu(__y);
      __y = __x, __x = _S_left(__x);
      __xu = _S_right(__xu);
      return pair<iterator,
           iterator>(_M_lower_bound(__x, __y, __k),
       _M_upper_bound(__xu, __yu, __k));
    }
}
     return pair<iterator, iterator>(iterator(__y),
         iterator(__y));
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::const_iterator,
 typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::const_iterator>
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   equal_range(const _Key& __k) const
   {
     _Const_Link_type __x = _M_begin();
     _Const_Link_type __y = _M_end();
     while (__x != 0)
{
  if (_M_impl._M_key_compare(_S_key(__x), __k))
    __x = _S_right(__x);
  else if (_M_impl._M_key_compare(__k, _S_key(__x)))
    __y = __x, __x = _S_left(__x);
  else
    {
      _Const_Link_type __xu(__x), __yu(__y);
      __y = __x, __x = _S_left(__x);
      __xu = _S_right(__xu);
      return pair<const_iterator,
           const_iterator>(_M_lower_bound(__x, __y, __k),
      _M_upper_bound(__xu, __yu, __k));
    }
}
     return pair<const_iterator, const_iterator>(const_iterator(__y),
       const_iterator(__y));
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   void
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   swap(_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __t)



   {
     if (_M_root() == 0)
{
  if (__t._M_root() != 0)
    {
      _M_root() = __t._M_root();
      _M_leftmost() = __t._M_leftmost();
      _M_rightmost() = __t._M_rightmost();
      _M_root()->_M_parent = _M_end();
      _M_impl._M_node_count = __t._M_impl._M_node_count;

      __t._M_impl._M_reset();
    }
}
     else if (__t._M_root() == 0)
{
  __t._M_root() = _M_root();
  __t._M_leftmost() = _M_leftmost();
  __t._M_rightmost() = _M_rightmost();
  __t._M_root()->_M_parent = __t._M_end();
  __t._M_impl._M_node_count = _M_impl._M_node_count;

  _M_impl._M_reset();
}
     else
{
  std::swap(_M_root(),__t._M_root());
  std::swap(_M_leftmost(),__t._M_leftmost());
  std::swap(_M_rightmost(),__t._M_rightmost());

  _M_root()->_M_parent = _M_end();
  __t._M_root()->_M_parent = __t._M_end();
  std::swap(this->_M_impl._M_node_count, __t._M_impl._M_node_count);
}

     std::swap(this->_M_impl._M_key_compare, __t._M_impl._M_key_compare);

     _Alloc_traits::_S_on_swap(_M_get_Node_allocator(),
   __t._M_get_Node_allocator());
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::_Base_ptr,
 typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::_Base_ptr>
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_get_insert_unique_pos(const key_type& __k)
   {
     typedef pair<_Base_ptr, _Base_ptr> _Res;
     _Link_type __x = _M_begin();
     _Link_type __y = _M_end();
     bool __comp = true;
     while (__x != 0)
{
  __y = __x;
  __comp = _M_impl._M_key_compare(__k, _S_key(__x));
  __x = __comp ? _S_left(__x) : _S_right(__x);
}
     iterator __j = iterator(__y);
     if (__comp)
{
  if (__j == begin())
    return _Res(__x, __y);
  else
    --__j;
}
     if (_M_impl._M_key_compare(_S_key(__j._M_node), __k))
return _Res(__x, __y);
     return _Res(__j._M_node, 0);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::_Base_ptr,
 typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::_Base_ptr>
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_get_insert_equal_pos(const key_type& __k)
   {
     typedef pair<_Base_ptr, _Base_ptr> _Res;
     _Link_type __x = _M_begin();
     _Link_type __y = _M_end();
     while (__x != 0)
{
  __y = __x;
  __x = _M_impl._M_key_compare(__k, _S_key(__x)) ?
        _S_left(__x) : _S_right(__x);
}
     return _Res(__x, __y);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>



   pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::iterator, bool>
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::



   _M_insert_unique(const _Val& __v)

   {
     typedef pair<iterator, bool> _Res;
     pair<_Base_ptr, _Base_ptr> __res
= _M_get_insert_unique_pos(_KeyOfValue()(__v));

     if (__res.second)
{
  _Alloc_node __an(*this);
  return _Res(_M_insert_(__res.first, __res.second,
    (__v), __an),
       true);
}

     return _Res(iterator(static_cast<_Link_type>(__res.first)), false);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>



   typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::



   _M_insert_equal(const _Val& __v)

   {
     pair<_Base_ptr, _Base_ptr> __res
= _M_get_insert_equal_pos(_KeyOfValue()(__v));
     _Alloc_node __an(*this);
     return _M_insert_(__res.first, __res.second,
  (__v), __an);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::_Base_ptr,
        typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::_Base_ptr>
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_get_insert_hint_unique_pos(const_iterator __position,
     const key_type& __k)
   {
     iterator __pos = __position._M_const_cast();
     typedef pair<_Base_ptr, _Base_ptr> _Res;


     if (__pos._M_node == _M_end())
{
  if (size() > 0
      && _M_impl._M_key_compare(_S_key(_M_rightmost()), __k))
    return _Res(0, _M_rightmost());
  else
    return _M_get_insert_unique_pos(__k);
}
     else if (_M_impl._M_key_compare(__k, _S_key(__pos._M_node)))
{

  iterator __before = __pos;
  if (__pos._M_node == _M_leftmost())
    return _Res(_M_leftmost(), _M_leftmost());
  else if (_M_impl._M_key_compare(_S_key((--__before)._M_node), __k))
    {
      if (_S_right(__before._M_node) == 0)
 return _Res(0, __before._M_node);
      else
 return _Res(__pos._M_node, __pos._M_node);
    }
  else
    return _M_get_insert_unique_pos(__k);
}
     else if (_M_impl._M_key_compare(_S_key(__pos._M_node), __k))
{

  iterator __after = __pos;
  if (__pos._M_node == _M_rightmost())
    return _Res(0, _M_rightmost());
  else if (_M_impl._M_key_compare(__k, _S_key((++__after)._M_node)))
    {
      if (_S_right(__pos._M_node) == 0)
 return _Res(0, __pos._M_node);
      else
 return _Res(__after._M_node, __after._M_node);
    }
  else
    return _M_get_insert_unique_pos(__k);
}
     else

return _Res(__pos._M_node, 0);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>



   template<typename _NodeGen>

     typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
     _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
     _M_insert_unique_(const_iterator __position,



  const _Val& __v,

  _NodeGen& __node_gen)
   {
     pair<_Base_ptr, _Base_ptr> __res
= _M_get_insert_hint_unique_pos(__position, _KeyOfValue()(__v));

     if (__res.second)
return _M_insert_(__res.first, __res.second,
    (__v),
    __node_gen);
     return iterator(static_cast<_Link_type>(__res.first));
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::_Base_ptr,
        typename _Rb_tree<_Key, _Val, _KeyOfValue,
     _Compare, _Alloc>::_Base_ptr>
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_get_insert_hint_equal_pos(const_iterator __position, const key_type& __k)
   {
     iterator __pos = __position._M_const_cast();
     typedef pair<_Base_ptr, _Base_ptr> _Res;


     if (__pos._M_node == _M_end())
{
  if (size() > 0
      && !_M_impl._M_key_compare(__k, _S_key(_M_rightmost())))
    return _Res(0, _M_rightmost());
  else
    return _M_get_insert_equal_pos(__k);
}
     else if (!_M_impl._M_key_compare(_S_key(__pos._M_node), __k))
{

  iterator __before = __pos;
  if (__pos._M_node == _M_leftmost())
    return _Res(_M_leftmost(), _M_leftmost());
  else if (!_M_impl._M_key_compare(__k, _S_key((--__before)._M_node)))
    {
      if (_S_right(__before._M_node) == 0)
 return _Res(0, __before._M_node);
      else
 return _Res(__pos._M_node, __pos._M_node);
    }
  else
    return _M_get_insert_equal_pos(__k);
}
     else
{

  iterator __after = __pos;
  if (__pos._M_node == _M_rightmost())
    return _Res(0, _M_rightmost());
  else if (!_M_impl._M_key_compare(_S_key((++__after)._M_node), __k))
    {
      if (_S_right(__pos._M_node) == 0)
 return _Res(0, __pos._M_node);
      else
 return _Res(__after._M_node, __after._M_node);
    }
  else
    return _Res(0, 0);
}
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>



   template<typename _NodeGen>

     typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
     _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
     _M_insert_equal_(const_iterator __position,



        const _Val& __v,

        _NodeGen& __node_gen)
     {
pair<_Base_ptr, _Base_ptr> __res
  = _M_get_insert_hint_equal_pos(__position, _KeyOfValue()(__v));

if (__res.second)
  return _M_insert_(__res.first, __res.second,
      (__v),
      __node_gen);

return _M_insert_equal_lower((__v));
     }
# 2215 "/usr/include/g++/bits/stl_tree.h" 3
 template<typename _Key, typename _Val, typename _KoV,
          typename _Cmp, typename _Alloc>
   template<class _II>
     void
     _Rb_tree<_Key, _Val, _KoV, _Cmp, _Alloc>::
     _M_insert_unique(_II __first, _II __last)
     {
_Alloc_node __an(*this);
for (; __first != __last; ++__first)
  _M_insert_unique_(end(), *__first, __an);
     }

 template<typename _Key, typename _Val, typename _KoV,
          typename _Cmp, typename _Alloc>
   template<class _II>
     void
     _Rb_tree<_Key, _Val, _KoV, _Cmp, _Alloc>::
     _M_insert_equal(_II __first, _II __last)
     {
_Alloc_node __an(*this);
for (; __first != __last; ++__first)
  _M_insert_equal_(end(), *__first, __an);
     }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   void
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_erase_aux(const_iterator __position)
   {
     _Link_type __y =
static_cast<_Link_type>(_Rb_tree_rebalance_for_erase
   (const_cast<_Base_ptr>(__position._M_node),
    this->_M_impl._M_header));
     _M_drop_node(__y);
     --_M_impl._M_node_count;
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   void
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   _M_erase_aux(const_iterator __first, const_iterator __last)
   {
     if (__first == begin() && __last == end())
clear();
     else
while (__first != __last)
  erase(__first++);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::size_type
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   erase(const _Key& __x)
   {
     pair<iterator, iterator> __p = equal_range(__x);
     const size_type __old_size = size();
     erase(__p.first, __p.second);
     return __old_size - size();
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   void
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   erase(const _Key* __first, const _Key* __last)
   {
     while (__first != __last)
erase(*__first++);
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   typename _Rb_tree<_Key, _Val, _KeyOfValue,
       _Compare, _Alloc>::iterator
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   find(const _Key& __k)
   {
     iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k);
     return (__j == end()
      || _M_impl._M_key_compare(__k,
    _S_key(__j._M_node))) ? end() : __j;
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   typename _Rb_tree<_Key, _Val, _KeyOfValue,
       _Compare, _Alloc>::const_iterator
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   find(const _Key& __k) const
   {
     const_iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k);
     return (__j == end()
      || _M_impl._M_key_compare(__k,
    _S_key(__j._M_node))) ? end() : __j;
   }

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::size_type
   _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
   count(const _Key& __k) const
   {
     pair<const_iterator, const_iterator> __p = equal_range(__k);
     const size_type __n = std::distance(__p.first, __p.second);
     return __n;
   }

 __attribute__ ((__pure__)) unsigned int
 _Rb_tree_black_count(const _Rb_tree_node_base* __node,
                      const _Rb_tree_node_base* __root) throw ();

 template<typename _Key, typename _Val, typename _KeyOfValue,
          typename _Compare, typename _Alloc>
   bool
   _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::__rb_verify() const
   {
     if (_M_impl._M_node_count == 0 || begin() == end())
return _M_impl._M_node_count == 0 && begin() == end()
       && this->_M_impl._M_header._M_left == _M_end()
       && this->_M_impl._M_header._M_right == _M_end();

     unsigned int __len = _Rb_tree_black_count(_M_leftmost(), _M_root());
     for (const_iterator __it = begin(); __it != end(); ++__it)
{
  _Const_Link_type __x = static_cast<_Const_Link_type>(__it._M_node);
  _Const_Link_type __L = _S_left(__x);
  _Const_Link_type __R = _S_right(__x);

  if (__x->_M_color == _S_red)
    if ((__L && __L->_M_color == _S_red)
 || (__R && __R->_M_color == _S_red))
      return false;

  if (__L && _M_impl._M_key_compare(_S_key(__x), _S_key(__L)))
    return false;
  if (__R && _M_impl._M_key_compare(_S_key(__R), _S_key(__x)))
    return false;

  if (!__L && !__R && _Rb_tree_black_count(__x, _M_root()) != __len)
    return false;
}

     if (_M_leftmost() != _Rb_tree_node_base::_S_minimum(_M_root()))
return false;
     if (_M_rightmost() != _Rb_tree_node_base::_S_maximum(_M_root()))
return false;
     return true;
   }


}
# 61 "/usr/include/g++/map" 2 3
# 1 "/usr/include/g++/bits/stl_map.h" 1 3
# 66 "/usr/include/g++/bits/stl_map.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{

# 94 "/usr/include/g++/bits/stl_map.h" 3
 template <typename _Key, typename _Tp, typename _Compare = std::less<_Key>,
           typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
   class map
   {
   public:
     typedef _Key key_type;
     typedef _Tp mapped_type;
     typedef std::pair<const _Key, _Tp> value_type;
     typedef _Compare key_compare;
     typedef _Alloc allocator_type;

   private:

     typedef typename _Alloc::value_type _Alloc_value_type;





   public:
     class value_compare
     : public std::binary_function<value_type, value_type, bool>
     {
friend class map<_Key, _Tp, _Compare, _Alloc>;
     protected:
_Compare comp;

value_compare(_Compare __c)
: comp(__c) { }

     public:
bool operator()(const value_type& __x, const value_type& __y) const
{ return comp(__x.first, __y.first); }
     };

   private:

     typedef typename __gnu_cxx::__alloc_traits<_Alloc>::template
rebind<value_type>::other _Pair_alloc_type;

     typedef _Rb_tree<key_type, value_type, _Select1st<value_type>,
        key_compare, _Pair_alloc_type> _Rep_type;


     _Rep_type _M_t;

     typedef __gnu_cxx::__alloc_traits<_Pair_alloc_type> _Alloc_traits;

   public:


     typedef typename _Alloc_traits::pointer pointer;
     typedef typename _Alloc_traits::const_pointer const_pointer;
     typedef typename _Alloc_traits::reference reference;
     typedef typename _Alloc_traits::const_reference const_reference;
     typedef typename _Rep_type::iterator iterator;
     typedef typename _Rep_type::const_iterator const_iterator;
     typedef typename _Rep_type::size_type size_type;
     typedef typename _Rep_type::difference_type difference_type;
     typedef typename _Rep_type::reverse_iterator reverse_iterator;
     typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;







     map()



     : _M_t() { }






     explicit
     map(const _Compare& __comp,
  const allocator_type& __a = allocator_type())
     : _M_t(__comp, _Pair_alloc_type(__a)) { }
# 185 "/usr/include/g++/bits/stl_map.h" 3
     map(const map& __x)
     : _M_t(__x._M_t) { }
# 255 "/usr/include/g++/bits/stl_map.h" 3
     template<typename _InputIterator>
       map(_InputIterator __first, _InputIterator __last)
: _M_t()
       { _M_t._M_insert_unique(__first, __last); }
# 272 "/usr/include/g++/bits/stl_map.h" 3
     template<typename _InputIterator>
       map(_InputIterator __first, _InputIterator __last,
    const _Compare& __comp,
    const allocator_type& __a = allocator_type())
: _M_t(__comp, _Pair_alloc_type(__a))
       { _M_t._M_insert_unique(__first, __last); }
# 295 "/usr/include/g++/bits/stl_map.h" 3
     map&
     operator=(const map& __x)
     {
_M_t = __x._M_t;
return *this;
     }
# 327 "/usr/include/g++/bits/stl_map.h" 3
     allocator_type
     get_allocator() const
     { return allocator_type(_M_t.get_allocator()); }







     iterator
     begin()
     { return _M_t.begin(); }






     const_iterator
     begin() const
     { return _M_t.begin(); }






     iterator
     end()
     { return _M_t.end(); }






     const_iterator
     end() const
     { return _M_t.end(); }






     reverse_iterator
     rbegin()
     { return _M_t.rbegin(); }






     const_reverse_iterator
     rbegin() const
     { return _M_t.rbegin(); }






     reverse_iterator
     rend()
     { return _M_t.rend(); }






     const_reverse_iterator
     rend() const
     { return _M_t.rend(); }
# 446 "/usr/include/g++/bits/stl_map.h" 3
     bool
     empty() const
     { return _M_t.empty(); }


     size_type
     size() const
     { return _M_t.size(); }


     size_type
     max_size() const
     { return _M_t.max_size(); }
# 473 "/usr/include/g++/bits/stl_map.h" 3
     mapped_type&
     operator[](const key_type& __k)
     {



iterator __i = lower_bound(__k);

if (__i == end() || key_comp()(__k, (*__i).first))





         __i = insert(__i, value_type(__k, mapped_type()));

return (*__i).second;
     }
# 518 "/usr/include/g++/bits/stl_map.h" 3
     mapped_type&
     at(const key_type& __k)
     {
iterator __i = lower_bound(__k);
if (__i == end() || key_comp()(__k, (*__i).first))
  __throw_out_of_range(("map::at"));
return (*__i).second;
     }

     const mapped_type&
     at(const key_type& __k) const
     {
const_iterator __i = lower_bound(__k);
if (__i == end() || key_comp()(__k, (*__i).first))
  __throw_out_of_range(("map::at"));
return (*__i).second;
     }
# 611 "/usr/include/g++/bits/stl_map.h" 3
     std::pair<iterator, bool>
     insert(const value_type& __x)
     { return _M_t._M_insert_unique(__x); }
# 660 "/usr/include/g++/bits/stl_map.h" 3
     iterator



     insert(iterator __position, const value_type& __x)

     { return _M_t._M_insert_unique_(__position, __x); }
# 686 "/usr/include/g++/bits/stl_map.h" 3
     template<typename _InputIterator>
       void
       insert(_InputIterator __first, _InputIterator __last)
       { _M_t._M_insert_unique(__first, __last); }
# 727 "/usr/include/g++/bits/stl_map.h" 3
     void
     erase(iterator __position)
     { _M_t.erase(__position); }
# 743 "/usr/include/g++/bits/stl_map.h" 3
     size_type
     erase(const key_type& __x)
     { return _M_t.erase(__x); }
# 779 "/usr/include/g++/bits/stl_map.h" 3
     void
     erase(iterator __first, iterator __last)
     { _M_t.erase(__first, __last); }
# 795 "/usr/include/g++/bits/stl_map.h" 3
     void
     swap(map& __x)



     { _M_t.swap(__x._M_t); }







     void
     clear()
     { _M_t.clear(); }






     key_compare
     key_comp() const
     { return _M_t.key_comp(); }





     value_compare
     value_comp() const
     { return value_compare(_M_t.key_comp()); }
# 844 "/usr/include/g++/bits/stl_map.h" 3
     iterator
     find(const key_type& __x)
     { return _M_t.find(__x); }
# 869 "/usr/include/g++/bits/stl_map.h" 3
     const_iterator
     find(const key_type& __x) const
     { return _M_t.find(__x); }
# 890 "/usr/include/g++/bits/stl_map.h" 3
     size_type
     count(const key_type& __x) const
     { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
# 914 "/usr/include/g++/bits/stl_map.h" 3
     iterator
     lower_bound(const key_type& __x)
     { return _M_t.lower_bound(__x); }
# 939 "/usr/include/g++/bits/stl_map.h" 3
     const_iterator
     lower_bound(const key_type& __x) const
     { return _M_t.lower_bound(__x); }
# 959 "/usr/include/g++/bits/stl_map.h" 3
     iterator
     upper_bound(const key_type& __x)
     { return _M_t.upper_bound(__x); }
# 979 "/usr/include/g++/bits/stl_map.h" 3
     const_iterator
     upper_bound(const key_type& __x) const
     { return _M_t.upper_bound(__x); }
# 1008 "/usr/include/g++/bits/stl_map.h" 3
     std::pair<iterator, iterator>
     equal_range(const key_type& __x)
     { return _M_t.equal_range(__x); }
# 1037 "/usr/include/g++/bits/stl_map.h" 3
     std::pair<const_iterator, const_iterator>
     equal_range(const key_type& __x) const
     { return _M_t.equal_range(__x); }
# 1050 "/usr/include/g++/bits/stl_map.h" 3
     template<typename _K1, typename _T1, typename _C1, typename _A1>
       friend bool
       operator==(const map<_K1, _T1, _C1, _A1>&,
    const map<_K1, _T1, _C1, _A1>&);

     template<typename _K1, typename _T1, typename _C1, typename _A1>
       friend bool
       operator<(const map<_K1, _T1, _C1, _A1>&,
   const map<_K1, _T1, _C1, _A1>&);
   };
# 1071 "/usr/include/g++/bits/stl_map.h" 3
 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator==(const map<_Key, _Tp, _Compare, _Alloc>& __x,
              const map<_Key, _Tp, _Compare, _Alloc>& __y)
   { return __x._M_t == __y._M_t; }
# 1088 "/usr/include/g++/bits/stl_map.h" 3
 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator<(const map<_Key, _Tp, _Compare, _Alloc>& __x,
             const map<_Key, _Tp, _Compare, _Alloc>& __y)
   { return __x._M_t < __y._M_t; }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator!=(const map<_Key, _Tp, _Compare, _Alloc>& __x,
              const map<_Key, _Tp, _Compare, _Alloc>& __y)
   { return !(__x == __y); }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator>(const map<_Key, _Tp, _Compare, _Alloc>& __x,
             const map<_Key, _Tp, _Compare, _Alloc>& __y)
   { return __y < __x; }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator<=(const map<_Key, _Tp, _Compare, _Alloc>& __x,
              const map<_Key, _Tp, _Compare, _Alloc>& __y)
   { return !(__y < __x); }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator>=(const map<_Key, _Tp, _Compare, _Alloc>& __x,
              const map<_Key, _Tp, _Compare, _Alloc>& __y)
   { return !(__x < __y); }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline void
   swap(map<_Key, _Tp, _Compare, _Alloc>& __x,
 map<_Key, _Tp, _Compare, _Alloc>& __y)
   { __x.swap(__y); }


}
# 62 "/usr/include/g++/map" 2 3
# 1 "/usr/include/g++/bits/stl_multimap.h" 1 3
# 64 "/usr/include/g++/bits/stl_multimap.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{

# 92 "/usr/include/g++/bits/stl_multimap.h" 3
 template <typename _Key, typename _Tp,
    typename _Compare = std::less<_Key>,
    typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
   class multimap
   {
   public:
     typedef _Key key_type;
     typedef _Tp mapped_type;
     typedef std::pair<const _Key, _Tp> value_type;
     typedef _Compare key_compare;
     typedef _Alloc allocator_type;

   private:

     typedef typename _Alloc::value_type _Alloc_value_type;





   public:
     class value_compare
     : public std::binary_function<value_type, value_type, bool>
     {
friend class multimap<_Key, _Tp, _Compare, _Alloc>;
     protected:
_Compare comp;

value_compare(_Compare __c)
: comp(__c) { }

     public:
bool operator()(const value_type& __x, const value_type& __y) const
{ return comp(__x.first, __y.first); }
     };

   private:

     typedef typename __gnu_cxx::__alloc_traits<_Alloc>::template
rebind<value_type>::other _Pair_alloc_type;

     typedef _Rb_tree<key_type, value_type, _Select1st<value_type>,
        key_compare, _Pair_alloc_type> _Rep_type;

     _Rep_type _M_t;

     typedef __gnu_cxx::__alloc_traits<_Pair_alloc_type> _Alloc_traits;

   public:


     typedef typename _Alloc_traits::pointer pointer;
     typedef typename _Alloc_traits::const_pointer const_pointer;
     typedef typename _Alloc_traits::reference reference;
     typedef typename _Alloc_traits::const_reference const_reference;
     typedef typename _Rep_type::iterator iterator;
     typedef typename _Rep_type::const_iterator const_iterator;
     typedef typename _Rep_type::size_type size_type;
     typedef typename _Rep_type::difference_type difference_type;
     typedef typename _Rep_type::reverse_iterator reverse_iterator;
     typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;







     multimap()



     : _M_t() { }






     explicit
     multimap(const _Compare& __comp,
       const allocator_type& __a = allocator_type())
     : _M_t(__comp, _Pair_alloc_type(__a)) { }
# 183 "/usr/include/g++/bits/stl_multimap.h" 3
     multimap(const multimap& __x)
     : _M_t(__x._M_t) { }
# 251 "/usr/include/g++/bits/stl_multimap.h" 3
     template<typename _InputIterator>
       multimap(_InputIterator __first, _InputIterator __last)
: _M_t()
       { _M_t._M_insert_equal(__first, __last); }
# 267 "/usr/include/g++/bits/stl_multimap.h" 3
     template<typename _InputIterator>
       multimap(_InputIterator __first, _InputIterator __last,
  const _Compare& __comp,
  const allocator_type& __a = allocator_type())
: _M_t(__comp, _Pair_alloc_type(__a))
       { _M_t._M_insert_equal(__first, __last); }
# 290 "/usr/include/g++/bits/stl_multimap.h" 3
     multimap&
     operator=(const multimap& __x)
     {
_M_t = __x._M_t;
return *this;
     }
# 322 "/usr/include/g++/bits/stl_multimap.h" 3
     allocator_type
     get_allocator() const
     { return allocator_type(_M_t.get_allocator()); }







     iterator
     begin()
     { return _M_t.begin(); }






     const_iterator
     begin() const
     { return _M_t.begin(); }






     iterator
     end()
     { return _M_t.end(); }






     const_iterator
     end() const
     { return _M_t.end(); }






     reverse_iterator
     rbegin()
     { return _M_t.rbegin(); }






     const_reverse_iterator
     rbegin() const
     { return _M_t.rbegin(); }






     reverse_iterator
     rend()
     { return _M_t.rend(); }






     const_reverse_iterator
     rend() const
     { return _M_t.rend(); }
# 439 "/usr/include/g++/bits/stl_multimap.h" 3
     bool
     empty() const
     { return _M_t.empty(); }


     size_type
     size() const
     { return _M_t.size(); }


     size_type
     max_size() const
     { return _M_t.max_size(); }
# 519 "/usr/include/g++/bits/stl_multimap.h" 3
     iterator
     insert(const value_type& __x)
     { return _M_t._M_insert_equal(__x); }
# 552 "/usr/include/g++/bits/stl_multimap.h" 3
     iterator



     insert(iterator __position, const value_type& __x)

     { return _M_t._M_insert_equal_(__position, __x); }
# 579 "/usr/include/g++/bits/stl_multimap.h" 3
     template<typename _InputIterator>
       void
       insert(_InputIterator __first, _InputIterator __last)
       { _M_t._M_insert_equal(__first, __last); }
# 633 "/usr/include/g++/bits/stl_multimap.h" 3
     void
     erase(iterator __position)
     { _M_t.erase(__position); }
# 649 "/usr/include/g++/bits/stl_multimap.h" 3
     size_type
     erase(const key_type& __x)
     { return _M_t.erase(__x); }
# 689 "/usr/include/g++/bits/stl_multimap.h" 3
     void
     erase(iterator __first, iterator __last)
     { _M_t.erase(__first, __last); }
# 705 "/usr/include/g++/bits/stl_multimap.h" 3
     void
     swap(multimap& __x)



     { _M_t.swap(__x._M_t); }







     void
     clear()
     { _M_t.clear(); }






     key_compare
     key_comp() const
     { return _M_t.key_comp(); }





     value_compare
     value_comp() const
     { return value_compare(_M_t.key_comp()); }
# 753 "/usr/include/g++/bits/stl_multimap.h" 3
     iterator
     find(const key_type& __x)
     { return _M_t.find(__x); }
# 777 "/usr/include/g++/bits/stl_multimap.h" 3
     const_iterator
     find(const key_type& __x) const
     { return _M_t.find(__x); }
# 795 "/usr/include/g++/bits/stl_multimap.h" 3
     size_type
     count(const key_type& __x) const
     { return _M_t.count(__x); }
# 819 "/usr/include/g++/bits/stl_multimap.h" 3
     iterator
     lower_bound(const key_type& __x)
     { return _M_t.lower_bound(__x); }
# 844 "/usr/include/g++/bits/stl_multimap.h" 3
     const_iterator
     lower_bound(const key_type& __x) const
     { return _M_t.lower_bound(__x); }
# 864 "/usr/include/g++/bits/stl_multimap.h" 3
     iterator
     upper_bound(const key_type& __x)
     { return _M_t.upper_bound(__x); }
# 884 "/usr/include/g++/bits/stl_multimap.h" 3
     const_iterator
     upper_bound(const key_type& __x) const
     { return _M_t.upper_bound(__x); }
# 911 "/usr/include/g++/bits/stl_multimap.h" 3
     std::pair<iterator, iterator>
     equal_range(const key_type& __x)
     { return _M_t.equal_range(__x); }
# 938 "/usr/include/g++/bits/stl_multimap.h" 3
     std::pair<const_iterator, const_iterator>
     equal_range(const key_type& __x) const
     { return _M_t.equal_range(__x); }
# 951 "/usr/include/g++/bits/stl_multimap.h" 3
     template<typename _K1, typename _T1, typename _C1, typename _A1>
       friend bool
       operator==(const multimap<_K1, _T1, _C1, _A1>&,
    const multimap<_K1, _T1, _C1, _A1>&);

     template<typename _K1, typename _T1, typename _C1, typename _A1>
       friend bool
       operator<(const multimap<_K1, _T1, _C1, _A1>&,
   const multimap<_K1, _T1, _C1, _A1>&);
 };
# 972 "/usr/include/g++/bits/stl_multimap.h" 3
 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator==(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
              const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
   { return __x._M_t == __y._M_t; }
# 989 "/usr/include/g++/bits/stl_multimap.h" 3
 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator<(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
             const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
   { return __x._M_t < __y._M_t; }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator!=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
              const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
   { return !(__x == __y); }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator>(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
             const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
   { return __y < __x; }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator<=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
              const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
   { return !(__y < __x); }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline bool
   operator>=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
              const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
   { return !(__x < __y); }


 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
   inline void
   swap(multimap<_Key, _Tp, _Compare, _Alloc>& __x,
        multimap<_Key, _Tp, _Compare, _Alloc>& __y)
   { __x.swap(__y); }


}
# 63 "/usr/include/g++/map" 2 3
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp" 2
# 1 "/usr/include/limits.h" 1 3 4
# 37 "/usr/include/limits.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 38 "/usr/include/limits.h" 2 3 4
# 156 "/usr/include/limits.h" 3 4
# 1 "/usr/include/amd64/limits.h" 1 3 4
# 39 "/usr/include/amd64/limits.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 40 "/usr/include/amd64/limits.h" 2 3 4
# 157 "/usr/include/limits.h" 2 3 4
# 166 "/usr/include/limits.h" 3 4
# 1 "/usr/include/sys/syslimits.h" 1 3 4
# 37 "/usr/include/sys/syslimits.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 38 "/usr/include/sys/syslimits.h" 2 3 4
# 167 "/usr/include/limits.h" 2 3 4
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp" 2




# 49 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
namespace Exiv2 {

   enum EnVar { envHTTPPOST = 0, envTIMEOUT = 1};

   enum Protocol { pFile = 0, pHttp, pFtp, pHttps, pSftp, pSsh, pFileUri, pDataUri, pStdin};







   std::string getEnv(EnVar var);





   char to_hex(char code);





   char from_hex(char ch);
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
   char* urlencode(char* str);
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
   char* urldecode(const char* str);



   void urldecode(std::string& str);
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
   int base64encode(const void* data_buf, size_t dataLength, char* result, size_t resultSize);
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
   long base64decode(const char *in, char *out, size_t out_size);





   Protocol fileProtocol(const std::string& path);
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
   bool fileExists(const std::string& path, bool ct =false);
# 157 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
   std::string pathOfFileUrl(const std::string& url);
# 169 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/futils.hpp"
   std::string strError();







   class Uri
   {
   public:

       std::string QueryString;
       std::string Path;
       std::string Protocol;
       std::string Host;
       std::string Port;
       std::string Username;
       std::string Password;




       static Uri Parse(const std::string &uri);




       static void Decode(Uri& uri);
   };

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 2



# 1 "/usr/include/g++/memory" 1 3
# 46 "/usr/include/g++/memory" 3

# 47 "/usr/include/g++/memory" 3
# 67 "/usr/include/g++/memory" 3
# 1 "/usr/include/g++/bits/stl_raw_storage_iter.h" 1 3
# 59 "/usr/include/g++/bits/stl_raw_storage_iter.h" 3

# 59 "/usr/include/g++/bits/stl_raw_storage_iter.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{






 template <class _OutputIterator, class _Tp>
   class raw_storage_iterator
   : public iterator<output_iterator_tag, void, void, void, void>
   {
   protected:
     _OutputIterator _M_iter;

   public:
     explicit
     raw_storage_iterator(_OutputIterator __x)
     : _M_iter(__x) {}

     raw_storage_iterator&
     operator*() { return *this; }

     raw_storage_iterator&
     operator=(const _Tp& __element)
     {
std::_Construct(std::__addressof(*_M_iter), __element);
return *this;
     }

     raw_storage_iterator<_OutputIterator, _Tp>&
     operator++()
     {
++_M_iter;
return *this;
     }

     raw_storage_iterator<_OutputIterator, _Tp>
     operator++(int)
     {
raw_storage_iterator<_OutputIterator, _Tp> __tmp = *this;
++_M_iter;
return __tmp;
     }
   };


}
# 68 "/usr/include/g++/memory" 2 3
# 88 "/usr/include/g++/memory" 3
# 1 "/usr/include/g++/backward/auto_ptr.h" 1 3
# 33 "/usr/include/g++/backward/auto_ptr.h" 3
# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 34 "/usr/include/g++/backward/auto_ptr.h" 2 3


namespace std __attribute__ ((__visibility__ ("default")))
{

# 47 "/usr/include/g++/backward/auto_ptr.h" 3
 template<typename _Tp1>
   struct auto_ptr_ref
   {
     _Tp1* _M_ptr;

     explicit
     auto_ptr_ref(_Tp1* __p): _M_ptr(__p) { }
   } ;
# 86 "/usr/include/g++/backward/auto_ptr.h" 3
 template<typename _Tp>
   class auto_ptr
   {
   private:
     _Tp* _M_ptr;

   public:

     typedef _Tp element_type;







     explicit
     auto_ptr(element_type* __p = 0) throw() : _M_ptr(__p) { }
# 112 "/usr/include/g++/backward/auto_ptr.h" 3
     auto_ptr(auto_ptr& __a) throw() : _M_ptr(__a.release()) { }
# 124 "/usr/include/g++/backward/auto_ptr.h" 3
     template<typename _Tp1>
       auto_ptr(auto_ptr<_Tp1>& __a) throw() : _M_ptr(__a.release()) { }
# 135 "/usr/include/g++/backward/auto_ptr.h" 3
     auto_ptr&
     operator=(auto_ptr& __a) throw()
     {
reset(__a.release());
return *this;
     }
# 152 "/usr/include/g++/backward/auto_ptr.h" 3
     template<typename _Tp1>
       auto_ptr&
       operator=(auto_ptr<_Tp1>& __a) throw()
       {
  reset(__a.release());
  return *this;
}
# 170 "/usr/include/g++/backward/auto_ptr.h" 3
     ~auto_ptr() { delete _M_ptr; }
# 180 "/usr/include/g++/backward/auto_ptr.h" 3
     element_type&
     operator*() const throw()
     {
;
return *_M_ptr;
     }







     element_type*
     operator->() const throw()
     {
;
return _M_ptr;
     }
# 210 "/usr/include/g++/backward/auto_ptr.h" 3
     element_type*
     get() const throw() { return _M_ptr; }
# 224 "/usr/include/g++/backward/auto_ptr.h" 3
     element_type*
     release() throw()
     {
element_type* __tmp = _M_ptr;
_M_ptr = 0;
return __tmp;
     }
# 239 "/usr/include/g++/backward/auto_ptr.h" 3
     void
     reset(element_type* __p = 0) throw()
     {
if (__p != _M_ptr)
  {
    delete _M_ptr;
    _M_ptr = __p;
  }
     }
# 260 "/usr/include/g++/backward/auto_ptr.h" 3
     auto_ptr(auto_ptr_ref<element_type> __ref) throw()
     : _M_ptr(__ref._M_ptr) { }

     auto_ptr&
     operator=(auto_ptr_ref<element_type> __ref) throw()
     {
if (__ref._M_ptr != this->get())
  {
    delete _M_ptr;
    _M_ptr = __ref._M_ptr;
  }
return *this;
     }

     template<typename _Tp1>
       operator auto_ptr_ref<_Tp1>() throw()
       { return auto_ptr_ref<_Tp1>(this->release()); }

     template<typename _Tp1>
       operator auto_ptr<_Tp1>() throw()
       { return auto_ptr<_Tp1>(this->release()); }
   } ;



 template<>
   class auto_ptr<void>
   {
   public:
     typedef void element_type;
   } ;
# 326 "/usr/include/g++/backward/auto_ptr.h" 3

}
# 89 "/usr/include/g++/memory" 2 3
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 2
# 1 "/usr/include/g++/fstream" 1 3
# 36 "/usr/include/g++/fstream" 3

# 37 "/usr/include/g++/fstream" 3



# 1 "/usr/include/g++/bits/codecvt.h" 1 3
# 39 "/usr/include/g++/bits/codecvt.h" 3

# 40 "/usr/include/g++/bits/codecvt.h" 3

namespace std __attribute__ ((__visibility__ ("default")))
{



 class codecvt_base
 {
 public:
   enum result
   {
     ok,
     partial,
     error,
     noconv
   };
 };
# 67 "/usr/include/g++/bits/codecvt.h" 3
 template<typename _InternT, typename _ExternT, typename _StateT>
   class __codecvt_abstract_base
   : public locale::facet, public codecvt_base
   {
   public:

     typedef codecvt_base::result result;
     typedef _InternT intern_type;
     typedef _ExternT extern_type;
     typedef _StateT state_type;
# 115 "/usr/include/g++/bits/codecvt.h" 3
     result
     out(state_type& __state, const intern_type* __from,
  const intern_type* __from_end, const intern_type*& __from_next,
  extern_type* __to, extern_type* __to_end,
  extern_type*& __to_next) const
     {
return this->do_out(__state, __from, __from_end, __from_next,
      __to, __to_end, __to_next);
     }
# 154 "/usr/include/g++/bits/codecvt.h" 3
     result
     unshift(state_type& __state, extern_type* __to, extern_type* __to_end,
      extern_type*& __to_next) const
     { return this->do_unshift(__state, __to,__to_end,__to_next); }
# 195 "/usr/include/g++/bits/codecvt.h" 3
     result
     in(state_type& __state, const extern_type* __from,
 const extern_type* __from_end, const extern_type*& __from_next,
 intern_type* __to, intern_type* __to_end,
 intern_type*& __to_next) const
     {
return this->do_in(__state, __from, __from_end, __from_next,
     __to, __to_end, __to_next);
     }

     int
     encoding() const throw()
     { return this->do_encoding(); }

     bool
     always_noconv() const throw()
     { return this->do_always_noconv(); }

     int
     length(state_type& __state, const extern_type* __from,
     const extern_type* __end, size_t __max) const
     { return this->do_length(__state, __from, __end, __max); }

     int
     max_length() const throw()
     { return this->do_max_length(); }

   protected:
     explicit
     __codecvt_abstract_base(size_t __refs = 0) : locale::facet(__refs) { }

     virtual
     ~__codecvt_abstract_base() { }
# 236 "/usr/include/g++/bits/codecvt.h" 3
     virtual result
     do_out(state_type& __state, const intern_type* __from,
     const intern_type* __from_end, const intern_type*& __from_next,
     extern_type* __to, extern_type* __to_end,
     extern_type*& __to_next) const = 0;

     virtual result
     do_unshift(state_type& __state, extern_type* __to,
  extern_type* __to_end, extern_type*& __to_next) const = 0;

     virtual result
     do_in(state_type& __state, const extern_type* __from,
    const extern_type* __from_end, const extern_type*& __from_next,
    intern_type* __to, intern_type* __to_end,
    intern_type*& __to_next) const = 0;

     virtual int
     do_encoding() const throw() = 0;

     virtual bool
     do_always_noconv() const throw() = 0;

     virtual int
     do_length(state_type&, const extern_type* __from,
 const extern_type* __end, size_t __max) const = 0;

     virtual int
     do_max_length() const throw() = 0;
   };
# 273 "/usr/include/g++/bits/codecvt.h" 3
  template<typename _InternT, typename _ExternT, typename _StateT>
   class codecvt
   : public __codecvt_abstract_base<_InternT, _ExternT, _StateT>
   {
   public:

     typedef codecvt_base::result result;
     typedef _InternT intern_type;
     typedef _ExternT extern_type;
     typedef _StateT state_type;

   protected:
     __c_locale _M_c_locale_codecvt;

   public:
     static locale::id id;

     explicit
     codecvt(size_t __refs = 0)
     : __codecvt_abstract_base<_InternT, _ExternT, _StateT> (__refs),
_M_c_locale_codecvt(0)
     { }

     explicit
     codecvt(__c_locale __cloc, size_t __refs = 0);

   protected:
     virtual
     ~codecvt() { }

     virtual result
     do_out(state_type& __state, const intern_type* __from,
     const intern_type* __from_end, const intern_type*& __from_next,
     extern_type* __to, extern_type* __to_end,
     extern_type*& __to_next) const;

     virtual result
     do_unshift(state_type& __state, extern_type* __to,
  extern_type* __to_end, extern_type*& __to_next) const;

     virtual result
     do_in(state_type& __state, const extern_type* __from,
    const extern_type* __from_end, const extern_type*& __from_next,
    intern_type* __to, intern_type* __to_end,
    intern_type*& __to_next) const;

     virtual int
     do_encoding() const throw();

     virtual bool
     do_always_noconv() const throw();

     virtual int
     do_length(state_type&, const extern_type* __from,
 const extern_type* __end, size_t __max) const;

     virtual int
     do_max_length() const throw();
   };

 template<typename _InternT, typename _ExternT, typename _StateT>
   locale::id codecvt<_InternT, _ExternT, _StateT>::id;


 template<>
   class codecvt<char, char, mbstate_t>
   : public __codecvt_abstract_base<char, char, mbstate_t>
   {
     friend class messages<char>;

   public:

     typedef char intern_type;
     typedef char extern_type;
     typedef mbstate_t state_type;

   protected:
     __c_locale _M_c_locale_codecvt;

   public:
     static locale::id id;

     explicit
     codecvt(size_t __refs = 0);

     explicit
     codecvt(__c_locale __cloc, size_t __refs = 0);

   protected:
     virtual
     ~codecvt();

     virtual result
     do_out(state_type& __state, const intern_type* __from,
     const intern_type* __from_end, const intern_type*& __from_next,
     extern_type* __to, extern_type* __to_end,
     extern_type*& __to_next) const;

     virtual result
     do_unshift(state_type& __state, extern_type* __to,
  extern_type* __to_end, extern_type*& __to_next) const;

     virtual result
     do_in(state_type& __state, const extern_type* __from,
    const extern_type* __from_end, const extern_type*& __from_next,
    intern_type* __to, intern_type* __to_end,
    intern_type*& __to_next) const;

     virtual int
     do_encoding() const throw();

     virtual bool
     do_always_noconv() const throw();

     virtual int
     do_length(state_type&, const extern_type* __from,
 const extern_type* __end, size_t __max) const;

     virtual int
     do_max_length() const throw();
 };






 template<>
   class codecvt<wchar_t, char, mbstate_t>
   : public __codecvt_abstract_base<wchar_t, char, mbstate_t>
   {
     friend class messages<wchar_t>;

   public:

     typedef wchar_t intern_type;
     typedef char extern_type;
     typedef mbstate_t state_type;

   protected:
     __c_locale _M_c_locale_codecvt;

   public:
     static locale::id id;

     explicit
     codecvt(size_t __refs = 0);

     explicit
     codecvt(__c_locale __cloc, size_t __refs = 0);

   protected:
     virtual
     ~codecvt();

     virtual result
     do_out(state_type& __state, const intern_type* __from,
     const intern_type* __from_end, const intern_type*& __from_next,
     extern_type* __to, extern_type* __to_end,
     extern_type*& __to_next) const;

     virtual result
     do_unshift(state_type& __state,
  extern_type* __to, extern_type* __to_end,
  extern_type*& __to_next) const;

     virtual result
     do_in(state_type& __state,
     const extern_type* __from, const extern_type* __from_end,
     const extern_type*& __from_next,
     intern_type* __to, intern_type* __to_end,
     intern_type*& __to_next) const;

     virtual
     int do_encoding() const throw();

     virtual
     bool do_always_noconv() const throw();

     virtual
     int do_length(state_type&, const extern_type* __from,
     const extern_type* __end, size_t __max) const;

     virtual int
     do_max_length() const throw();
   };
# 581 "/usr/include/g++/bits/codecvt.h" 3
 template<typename _InternT, typename _ExternT, typename _StateT>
   class codecvt_byname : public codecvt<_InternT, _ExternT, _StateT>
   {
   public:
     explicit
     codecvt_byname(const char* __s, size_t __refs = 0)
     : codecvt<_InternT, _ExternT, _StateT>(__refs)
     {
if (__builtin_strcmp(__s, "C") != 0
    && __builtin_strcmp(__s, "POSIX") != 0)
  {
    this->_S_destroy_c_locale(this->_M_c_locale_codecvt);
    this->_S_create_c_locale(this->_M_c_locale_codecvt, __s);
  }
     }







   protected:
     virtual
     ~codecvt_byname() { }
   };
# 649 "/usr/include/g++/bits/codecvt.h" 3
 extern template class codecvt_byname<char, char, mbstate_t>;

 extern template
   const codecvt<char, char, mbstate_t>&
   use_facet<codecvt<char, char, mbstate_t> >(const locale&);

 extern template
   bool
   has_facet<codecvt<char, char, mbstate_t> >(const locale&);


 extern template class codecvt_byname<wchar_t, char, mbstate_t>;

 extern template
   const codecvt<wchar_t, char, mbstate_t>&
   use_facet<codecvt<wchar_t, char, mbstate_t> >(const locale&);

 extern template
   bool
   has_facet<codecvt<wchar_t, char, mbstate_t> >(const locale&);
# 678 "/usr/include/g++/bits/codecvt.h" 3

}
# 41 "/usr/include/g++/fstream" 2 3
# 1 "/usr/include/g++/cstdio" 1 3
# 39 "/usr/include/g++/cstdio" 3

# 40 "/usr/include/g++/cstdio" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cstdio" 2 3
# 96 "/usr/include/g++/cstdio" 3
namespace std
{
 using ::FILE;
 using ::fpos_t;

 using ::clearerr;
 using ::fclose;
 using ::feof;
 using ::ferror;
 using ::fflush;
 using ::fgetc;
 using ::fgetpos;
 using ::fgets;
 using ::fopen;
 using ::fprintf;
 using ::fputc;
 using ::fputs;
 using ::fread;
 using ::freopen;
 using ::fscanf;
 using ::fseek;
 using ::fsetpos;
 using ::ftell;
 using ::fwrite;
 using ::getc;
 using ::getchar;


 using ::gets;

 using ::perror;
 using ::printf;
 using ::putc;
 using ::putchar;
 using ::puts;
 using ::remove;
 using ::rename;
 using ::rewind;
 using ::scanf;
 using ::setbuf;
 using ::setvbuf;
 using ::sprintf;
 using ::sscanf;
 using ::tmpfile;

 using ::tmpnam;

 using ::ungetc;
 using ::vfprintf;
 using ::vprintf;
 using ::vsprintf;
}
# 157 "/usr/include/g++/cstdio" 3
namespace __gnu_cxx
{
# 175 "/usr/include/g++/cstdio" 3
 using ::snprintf;
 using ::vfscanf;
 using ::vscanf;
 using ::vsnprintf;
 using ::vsscanf;

}

namespace std
{
 using ::__gnu_cxx::snprintf;
 using ::__gnu_cxx::vfscanf;
 using ::__gnu_cxx::vscanf;
 using ::__gnu_cxx::vsnprintf;
 using ::__gnu_cxx::vsscanf;
}
# 42 "/usr/include/g++/fstream" 2 3
# 1 "/usr/include/g++/bits/basic_file.h" 1 3
# 37 "/usr/include/g++/bits/basic_file.h" 3

# 38 "/usr/include/g++/bits/basic_file.h" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 40 "/usr/include/g++/bits/basic_file.h" 2 3
# 1 "/usr/include/g++/bits/c++io.h" 1 3
# 35 "/usr/include/g++/bits/c++io.h" 3
# 1 "/usr/include/g++/cstdio" 1 3
# 39 "/usr/include/g++/cstdio" 3

# 40 "/usr/include/g++/cstdio" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cstdio" 2 3
# 36 "/usr/include/g++/bits/c++io.h" 2 3


namespace std __attribute__ ((__visibility__ ("default")))
{


 typedef __gthread_mutex_t __c_lock;


 typedef FILE __c_file;


}
# 41 "/usr/include/g++/bits/basic_file.h" 2 3



namespace std __attribute__ ((__visibility__ ("default")))
{



 template<typename _CharT>
   class __basic_file;


 template<>
   class __basic_file<char>
   {

     __c_file* _M_cfile;


     bool _M_cfile_created;

   public:
     __basic_file(__c_lock* __lock = 0) throw ();
# 84 "/usr/include/g++/bits/basic_file.h" 3
     __basic_file*
     open(const char* __name, ios_base::openmode __mode, int __prot = 0664);

     __basic_file*
     sys_open(__c_file* __file, ios_base::openmode);

     __basic_file*
     sys_open(int __fd, ios_base::openmode __mode) throw ();

     __basic_file*
     close();

     __attribute__ ((__pure__)) bool
     is_open() const throw ();

     __attribute__ ((__pure__)) int
     fd() throw ();

     __attribute__ ((__pure__)) __c_file*
     file() throw ();

     ~__basic_file();

     streamsize
     xsputn(const char* __s, streamsize __n);

     streamsize
     xsputn_2(const char* __s1, streamsize __n1,
       const char* __s2, streamsize __n2);

     streamsize
     xsgetn(char* __s, streamsize __n);

     streamoff
     seekoff(streamoff __off, ios_base::seekdir __way) throw ();

     int
     sync();

     streamsize
     showmanyc();
   };


}
# 43 "/usr/include/g++/fstream" 2 3




namespace std __attribute__ ((__visibility__ ("default")))
{

# 71 "/usr/include/g++/fstream" 3
 template<typename _CharT, typename _Traits>
   class basic_filebuf : public basic_streambuf<_CharT, _Traits>
   {
# 88 "/usr/include/g++/fstream" 3
   public:

     typedef _CharT char_type;
     typedef _Traits traits_type;
     typedef typename traits_type::int_type int_type;
     typedef typename traits_type::pos_type pos_type;
     typedef typename traits_type::off_type off_type;

     typedef basic_streambuf<char_type, traits_type> __streambuf_type;
     typedef basic_filebuf<char_type, traits_type> __filebuf_type;
     typedef __basic_file<char> __file_type;
     typedef typename traits_type::state_type __state_type;
     typedef codecvt<char_type, char, __state_type> __codecvt_type;

     friend class ios_base;

   protected:


     __c_lock _M_lock;


     __file_type _M_file;


     ios_base::openmode _M_mode;


     __state_type _M_state_beg;




     __state_type _M_state_cur;



     __state_type _M_state_last;


     char_type* _M_buf;






     size_t _M_buf_size;


     bool _M_buf_allocated;
# 147 "/usr/include/g++/fstream" 3
     bool _M_reading;
     bool _M_writing;







     char_type _M_pback;
     char_type* _M_pback_cur_save;
     char_type* _M_pback_end_save;
     bool _M_pback_init;



     const __codecvt_type* _M_codecvt;






     char* _M_ext_buf;




     streamsize _M_ext_buf_size;






     const char* _M_ext_next;
     char* _M_ext_end;






     void
     _M_create_pback()
     {
if (!_M_pback_init)
  {
    _M_pback_cur_save = this->gptr();
    _M_pback_end_save = this->egptr();
    this->setg(&_M_pback, &_M_pback, &_M_pback + 1);
    _M_pback_init = true;
  }
     }






     void
     _M_destroy_pback() throw()
     {
if (_M_pback_init)
  {

    _M_pback_cur_save += this->gptr() != this->eback();
    this->setg(_M_buf, _M_pback_cur_save, _M_pback_end_save);
    _M_pback_init = false;
  }
     }

   public:







     basic_filebuf();
# 237 "/usr/include/g++/fstream" 3
     virtual
     ~basic_filebuf()
     { this->close(); }
# 251 "/usr/include/g++/fstream" 3
     bool
     is_open() const throw()
     { return _M_file.is_open(); }
# 296 "/usr/include/g++/fstream" 3
     __filebuf_type*
     open(const char* __s, ios_base::openmode __mode);
# 323 "/usr/include/g++/fstream" 3
     __filebuf_type*
     close();

   protected:
     void
     _M_allocate_internal_buffer();

     void
     _M_destroy_internal_buffer() throw();


     virtual streamsize
     showmanyc();






     virtual int_type
     underflow();

     virtual int_type
     pbackfail(int_type __c = _Traits::eof());
# 355 "/usr/include/g++/fstream" 3
     virtual int_type
     overflow(int_type __c = _Traits::eof());



     bool
     _M_convert_to_external(char_type*, streamsize);
# 375 "/usr/include/g++/fstream" 3
     virtual __streambuf_type*
     setbuf(char_type* __s, streamsize __n);

     virtual pos_type
     seekoff(off_type __off, ios_base::seekdir __way,
      ios_base::openmode __mode = ios_base::in | ios_base::out);

     virtual pos_type
     seekpos(pos_type __pos,
      ios_base::openmode __mode = ios_base::in | ios_base::out);


     pos_type
     _M_seek(off_type __off, ios_base::seekdir __way, __state_type __state);

     int
     _M_get_ext_pos(__state_type &__state);

     virtual int
     sync();

     virtual void
     imbue(const locale& __loc);

     virtual streamsize
     xsgetn(char_type* __s, streamsize __n);

     virtual streamsize
     xsputn(const char_type* __s, streamsize __n);


     bool
     _M_terminate_output();
# 421 "/usr/include/g++/fstream" 3
     void
     _M_set_buffer(streamsize __off)
     {
const bool __testin = _M_mode & ios_base::in;
const bool __testout = (_M_mode & ios_base::out
   || _M_mode & ios_base::app);

if (__testin && __off > 0)
  this->setg(_M_buf, _M_buf, _M_buf + __off);
else
  this->setg(_M_buf, _M_buf, _M_buf);

if (__testout && __off == 0 && _M_buf_size > 1 )
  this->setp(_M_buf, _M_buf + _M_buf_size - 1);
else
  this->setp(0, 0);
     }
   };
# 454 "/usr/include/g++/fstream" 3
 template<typename _CharT, typename _Traits>
   class basic_ifstream : public basic_istream<_CharT, _Traits>
   {
   public:

     typedef _CharT char_type;
     typedef _Traits traits_type;
     typedef typename traits_type::int_type int_type;
     typedef typename traits_type::pos_type pos_type;
     typedef typename traits_type::off_type off_type;


     typedef basic_filebuf<char_type, traits_type> __filebuf_type;
     typedef basic_istream<char_type, traits_type> __istream_type;

   private:
     __filebuf_type _M_filebuf;

   public:
# 481 "/usr/include/g++/fstream" 3
     basic_ifstream() : __istream_type(), _M_filebuf()
     { this->init(&_M_filebuf); }
# 494 "/usr/include/g++/fstream" 3
     explicit
     basic_ifstream(const char* __s, ios_base::openmode __mode = ios_base::in)
     : __istream_type(), _M_filebuf()
     {
this->init(&_M_filebuf);
this->open(__s, __mode);
     }
# 533 "/usr/include/g++/fstream" 3
     ~basic_ifstream()
     { }
# 565 "/usr/include/g++/fstream" 3
     __filebuf_type*
     rdbuf() const
     { return const_cast<__filebuf_type*>(&_M_filebuf); }





     bool
     is_open()
     { return _M_filebuf.is_open(); }



     bool
     is_open() const
     { return _M_filebuf.is_open(); }
# 594 "/usr/include/g++/fstream" 3
     void
     open(const char* __s, ios_base::openmode __mode = ios_base::in)
     {
if (!_M_filebuf.open(__s, __mode | ios_base::in))
  this->setstate(ios_base::failbit);
else


  this->clear();
     }
# 632 "/usr/include/g++/fstream" 3
     void
     close()
     {
if (!_M_filebuf.close())
  this->setstate(ios_base::failbit);
     }
   };
# 655 "/usr/include/g++/fstream" 3
 template<typename _CharT, typename _Traits>
   class basic_ofstream : public basic_ostream<_CharT,_Traits>
   {
   public:

     typedef _CharT char_type;
     typedef _Traits traits_type;
     typedef typename traits_type::int_type int_type;
     typedef typename traits_type::pos_type pos_type;
     typedef typename traits_type::off_type off_type;


     typedef basic_filebuf<char_type, traits_type> __filebuf_type;
     typedef basic_ostream<char_type, traits_type> __ostream_type;

   private:
     __filebuf_type _M_filebuf;

   public:
# 682 "/usr/include/g++/fstream" 3
     basic_ofstream(): __ostream_type(), _M_filebuf()
     { this->init(&_M_filebuf); }
# 696 "/usr/include/g++/fstream" 3
     explicit
     basic_ofstream(const char* __s,
      ios_base::openmode __mode = ios_base::out|ios_base::trunc)
     : __ostream_type(), _M_filebuf()
     {
this->init(&_M_filebuf);
this->open(__s, __mode);
     }
# 737 "/usr/include/g++/fstream" 3
     ~basic_ofstream()
     { }
# 769 "/usr/include/g++/fstream" 3
     __filebuf_type*
     rdbuf() const
     { return const_cast<__filebuf_type*>(&_M_filebuf); }





     bool
     is_open()
     { return _M_filebuf.is_open(); }



     bool
     is_open() const
     { return _M_filebuf.is_open(); }
# 798 "/usr/include/g++/fstream" 3
     void
     open(const char* __s,
   ios_base::openmode __mode = ios_base::out | ios_base::trunc)
     {
if (!_M_filebuf.open(__s, __mode | ios_base::out))
  this->setstate(ios_base::failbit);
else


  this->clear();
     }
# 838 "/usr/include/g++/fstream" 3
     void
     close()
     {
if (!_M_filebuf.close())
  this->setstate(ios_base::failbit);
     }
   };
# 861 "/usr/include/g++/fstream" 3
 template<typename _CharT, typename _Traits>
   class basic_fstream : public basic_iostream<_CharT, _Traits>
   {
   public:

     typedef _CharT char_type;
     typedef _Traits traits_type;
     typedef typename traits_type::int_type int_type;
     typedef typename traits_type::pos_type pos_type;
     typedef typename traits_type::off_type off_type;


     typedef basic_filebuf<char_type, traits_type> __filebuf_type;
     typedef basic_ios<char_type, traits_type> __ios_type;
     typedef basic_iostream<char_type, traits_type> __iostream_type;

   private:
     __filebuf_type _M_filebuf;

   public:
# 889 "/usr/include/g++/fstream" 3
     basic_fstream()
     : __iostream_type(), _M_filebuf()
     { this->init(&_M_filebuf); }
# 901 "/usr/include/g++/fstream" 3
     explicit
     basic_fstream(const char* __s,
     ios_base::openmode __mode = ios_base::in | ios_base::out)
     : __iostream_type(0), _M_filebuf()
     {
this->init(&_M_filebuf);
this->open(__s, __mode);
     }
# 939 "/usr/include/g++/fstream" 3
     ~basic_fstream()
     { }
# 971 "/usr/include/g++/fstream" 3
     __filebuf_type*
     rdbuf() const
     { return const_cast<__filebuf_type*>(&_M_filebuf); }





     bool
     is_open()
     { return _M_filebuf.is_open(); }



     bool
     is_open() const
     { return _M_filebuf.is_open(); }
# 1000 "/usr/include/g++/fstream" 3
     void
     open(const char* __s,
   ios_base::openmode __mode = ios_base::in | ios_base::out)
     {
if (!_M_filebuf.open(__s, __mode))
  this->setstate(ios_base::failbit);
else


  this->clear();
     }
# 1040 "/usr/include/g++/fstream" 3
     void
     close()
     {
if (!_M_filebuf.close())
  this->setstate(ios_base::failbit);
     }
   };
# 1078 "/usr/include/g++/fstream" 3

}

# 1 "/usr/include/g++/bits/fstream.tcc" 1 3
# 37 "/usr/include/g++/bits/fstream.tcc" 3

# 38 "/usr/include/g++/bits/fstream.tcc" 3




namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _CharT, typename _Traits>
   void
   basic_filebuf<_CharT, _Traits>::
   _M_allocate_internal_buffer()
   {


     if (!_M_buf_allocated && !_M_buf)
{
  _M_buf = new char_type[_M_buf_size];
  _M_buf_allocated = true;
}
   }

 template<typename _CharT, typename _Traits>
   void
   basic_filebuf<_CharT, _Traits>::
   _M_destroy_internal_buffer() throw()
   {
     if (_M_buf_allocated)
{
  delete [] _M_buf;
  _M_buf = 0;
  _M_buf_allocated = false;
}
     delete [] _M_ext_buf;
     _M_ext_buf = 0;
     _M_ext_buf_size = 0;
     _M_ext_next = 0;
     _M_ext_end = 0;
   }

 template<typename _CharT, typename _Traits>
   basic_filebuf<_CharT, _Traits>::
   basic_filebuf() : __streambuf_type(), _M_lock(), _M_file(&_M_lock),
   _M_mode(ios_base::openmode(0)), _M_state_beg(), _M_state_cur(),
   _M_state_last(), _M_buf(0), _M_buf_size(1024),
   _M_buf_allocated(false), _M_reading(false), _M_writing(false), _M_pback(),
   _M_pback_cur_save(0), _M_pback_end_save(0), _M_pback_init(false),
   _M_codecvt(0), _M_ext_buf(0), _M_ext_buf_size(0), _M_ext_next(0),
   _M_ext_end(0)
   {
     if (has_facet<__codecvt_type>(this->_M_buf_locale))
_M_codecvt = &use_facet<__codecvt_type>(this->_M_buf_locale);
   }
# 176 "/usr/include/g++/bits/fstream.tcc" 3
 template<typename _CharT, typename _Traits>
   typename basic_filebuf<_CharT, _Traits>::__filebuf_type*
   basic_filebuf<_CharT, _Traits>::
   open(const char* __s, ios_base::openmode __mode)
   {
     __filebuf_type *__ret = 0;
     if (!this->is_open())
{
  _M_file.open(__s, __mode);
  if (this->is_open())
    {
      _M_allocate_internal_buffer();
      _M_mode = __mode;


      _M_reading = false;
      _M_writing = false;
      _M_set_buffer(-1);


      _M_state_last = _M_state_cur = _M_state_beg;


      if ((__mode & ios_base::ate)
   && this->seekoff(0, ios_base::end, __mode)
   == pos_type(off_type(-1)))
 this->close();
      else
 __ret = this;
    }
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   typename basic_filebuf<_CharT, _Traits>::__filebuf_type*
   basic_filebuf<_CharT, _Traits>::
   close()
   {
     if (!this->is_open())
return 0;

     bool __testfail = false;
     {

struct __close_sentry
{
  basic_filebuf *__fb;
  __close_sentry (basic_filebuf *__fbi): __fb(__fbi) { }
  ~__close_sentry ()
  {
    __fb->_M_mode = ios_base::openmode(0);
    __fb->_M_pback_init = false;
    __fb->_M_destroy_internal_buffer();
    __fb->_M_reading = false;
    __fb->_M_writing = false;
    __fb->_M_set_buffer(-1);
    __fb->_M_state_last = __fb->_M_state_cur = __fb->_M_state_beg;
  }
} __cs (this);

try
  {
    if (!_M_terminate_output())
      __testfail = true;
  }
catch(__cxxabiv1::__forced_unwind&)
  {
    _M_file.close();
    throw;
  }
catch(...)
  { __testfail = true; }
     }

     if (!_M_file.close())
__testfail = true;

     if (__testfail)
return 0;
     else
return this;
   }

 template<typename _CharT, typename _Traits>
   streamsize
   basic_filebuf<_CharT, _Traits>::
   showmanyc()
   {
     streamsize __ret = -1;
     const bool __testin = _M_mode & ios_base::in;
     if (__testin && this->is_open())
{


  __ret = this->egptr() - this->gptr();







  if (__check_facet(_M_codecvt).encoding() >= 0)

    __ret += _M_file.showmanyc() / _M_codecvt->max_length();
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   typename basic_filebuf<_CharT, _Traits>::int_type
   basic_filebuf<_CharT, _Traits>::
   underflow()
   {
     int_type __ret = traits_type::eof();
     const bool __testin = _M_mode & ios_base::in;
     if (__testin)
{
  if (_M_writing)
    {
      if (overflow() == traits_type::eof())
 return __ret;
      _M_set_buffer(-1);
      _M_writing = false;
    }



  _M_destroy_pback();

  if (this->gptr() < this->egptr())
    return traits_type::to_int_type(*this->gptr());


  const size_t __buflen = _M_buf_size > 1 ? _M_buf_size - 1 : 1;


  bool __got_eof = false;

  streamsize __ilen = 0;
  codecvt_base::result __r = codecvt_base::ok;
  if (__check_facet(_M_codecvt).always_noconv())
    {
      __ilen = _M_file.xsgetn(reinterpret_cast<char*>(this->eback()),
         __buflen);
      if (__ilen == 0)
 __got_eof = true;
    }
  else
    {


      const int __enc = _M_codecvt->encoding();
      streamsize __blen;
      streamsize __rlen;
      if (__enc > 0)
 __blen = __rlen = __buflen * __enc;
      else
 {
   __blen = __buflen + _M_codecvt->max_length() - 1;
   __rlen = __buflen;
 }
      const streamsize __remainder = _M_ext_end - _M_ext_next;
      __rlen = __rlen > __remainder ? __rlen - __remainder : 0;



      if (_M_reading && this->egptr() == this->eback() && __remainder)
 __rlen = 0;



      if (_M_ext_buf_size < __blen)
 {
   char* __buf = new char[__blen];
   if (__remainder)
     __builtin_memcpy(__buf, _M_ext_next, __remainder);

   delete [] _M_ext_buf;
   _M_ext_buf = __buf;
   _M_ext_buf_size = __blen;
 }
      else if (__remainder)
 __builtin_memmove(_M_ext_buf, _M_ext_next, __remainder);

      _M_ext_next = _M_ext_buf;
      _M_ext_end = _M_ext_buf + __remainder;
      _M_state_last = _M_state_cur;

      do
 {
   if (__rlen > 0)
     {



       if (_M_ext_end - _M_ext_buf + __rlen > _M_ext_buf_size)
  {
    __throw_ios_failure(("basic_filebuf::underflow " "codecvt::max_length() " "is not valid")

                         );
  }
       streamsize __elen = _M_file.xsgetn(_M_ext_end, __rlen);
       if (__elen == 0)
  __got_eof = true;
       else if (__elen == -1)
  break;
       _M_ext_end += __elen;
     }

   char_type* __iend = this->eback();
   if (_M_ext_next < _M_ext_end)
     __r = _M_codecvt->in(_M_state_cur, _M_ext_next,
     _M_ext_end, _M_ext_next,
     this->eback(),
     this->eback() + __buflen, __iend);
   if (__r == codecvt_base::noconv)
     {
       size_t __avail = _M_ext_end - _M_ext_buf;
       __ilen = std::min(__avail, __buflen);
       traits_type::copy(this->eback(),
    reinterpret_cast<char_type*>
    (_M_ext_buf), __ilen);
       _M_ext_next = _M_ext_buf + __ilen;
     }
   else
     __ilen = __iend - this->eback();




   if (__r == codecvt_base::error)
     break;

   __rlen = 1;
 }
      while (__ilen == 0 && !__got_eof);
    }

  if (__ilen > 0)
    {
      _M_set_buffer(__ilen);
      _M_reading = true;
      __ret = traits_type::to_int_type(*this->gptr());
    }
  else if (__got_eof)
    {



      _M_set_buffer(-1);
      _M_reading = false;


      if (__r == codecvt_base::partial)
 __throw_ios_failure(("basic_filebuf::underflow " "incomplete character in file")
                                      );
    }
  else if (__r == codecvt_base::error)
    __throw_ios_failure(("basic_filebuf::underflow " "invalid byte sequence in file")
                                   );
  else
    __throw_ios_failure(("basic_filebuf::underflow " "error reading the file")
                            );
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   typename basic_filebuf<_CharT, _Traits>::int_type
   basic_filebuf<_CharT, _Traits>::
   pbackfail(int_type __i)
   {
     int_type __ret = traits_type::eof();
     const bool __testin = _M_mode & ios_base::in;
     if (__testin)
{
  if (_M_writing)
    {
      if (overflow() == traits_type::eof())
 return __ret;
      _M_set_buffer(-1);
      _M_writing = false;
    }


  const bool __testpb = _M_pback_init;
  const bool __testeof = traits_type::eq_int_type(__i, __ret);
  int_type __tmp;
  if (this->eback() < this->gptr())
    {
      this->gbump(-1);
      __tmp = traits_type::to_int_type(*this->gptr());
    }
  else if (this->seekoff(-1, ios_base::cur) != pos_type(off_type(-1)))
    {
      __tmp = this->underflow();
      if (traits_type::eq_int_type(__tmp, __ret))
 return __ret;
    }
  else
    {





      return __ret;
    }



  if (!__testeof && traits_type::eq_int_type(__i, __tmp))
    __ret = __i;
  else if (__testeof)
    __ret = traits_type::not_eof(__i);
  else if (!__testpb)
    {
      _M_create_pback();
      _M_reading = true;
      *this->gptr() = traits_type::to_char_type(__i);
      __ret = __i;
    }
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   typename basic_filebuf<_CharT, _Traits>::int_type
   basic_filebuf<_CharT, _Traits>::
   overflow(int_type __c)
   {
     int_type __ret = traits_type::eof();
     const bool __testeof = traits_type::eq_int_type(__c, __ret);
     const bool __testout = (_M_mode & ios_base::out
        || _M_mode & ios_base::app);
     if (__testout)
{
         if (_M_reading)
           {
             _M_destroy_pback();
             const int __gptr_off = _M_get_ext_pos(_M_state_last);
             if (_M_seek(__gptr_off, ios_base::cur, _M_state_last)
                 == pos_type(off_type(-1)))
               return __ret;
           }
  if (this->pbase() < this->pptr())
    {

      if (!__testeof)
 {
   *this->pptr() = traits_type::to_char_type(__c);
   this->pbump(1);
 }



      if (_M_convert_to_external(this->pbase(),
     this->pptr() - this->pbase()))
 {
   _M_set_buffer(0);
   __ret = traits_type::not_eof(__c);
 }
    }
  else if (_M_buf_size > 1)
    {



      _M_set_buffer(0);
      _M_writing = true;
      if (!__testeof)
 {
   *this->pptr() = traits_type::to_char_type(__c);
   this->pbump(1);
 }
      __ret = traits_type::not_eof(__c);
    }
  else
    {

      char_type __conv = traits_type::to_char_type(__c);
      if (__testeof || _M_convert_to_external(&__conv, 1))
 {
   _M_writing = true;
   __ret = traits_type::not_eof(__c);
 }
    }
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   bool
   basic_filebuf<_CharT, _Traits>::
   _M_convert_to_external(_CharT* __ibuf, streamsize __ilen)
   {

     streamsize __elen;
     streamsize __plen;
     if (__check_facet(_M_codecvt).always_noconv())
{
  __elen = _M_file.xsputn(reinterpret_cast<char*>(__ibuf), __ilen);
  __plen = __ilen;
}
     else
{


  streamsize __blen = __ilen * _M_codecvt->max_length();
  char* __buf = static_cast<char*>(__builtin_alloca(__blen));

  char* __bend;
  const char_type* __iend;
  codecvt_base::result __r;
  __r = _M_codecvt->out(_M_state_cur, __ibuf, __ibuf + __ilen,
   __iend, __buf, __buf + __blen, __bend);

  if (__r == codecvt_base::ok || __r == codecvt_base::partial)
    __blen = __bend - __buf;
  else if (__r == codecvt_base::noconv)
    {

      __buf = reinterpret_cast<char*>(__ibuf);
      __blen = __ilen;
    }
  else
    __throw_ios_failure(("basic_filebuf::_M_convert_to_external " "conversion error")
                          );

  __elen = _M_file.xsputn(__buf, __blen);
  __plen = __blen;


  if (__r == codecvt_base::partial && __elen == __plen)
    {
      const char_type* __iresume = __iend;
      streamsize __rlen = this->pptr() - __iend;
      __r = _M_codecvt->out(_M_state_cur, __iresume,
       __iresume + __rlen, __iend, __buf,
       __buf + __blen, __bend);
      if (__r != codecvt_base::error)
 {
   __rlen = __bend - __buf;
   __elen = _M_file.xsputn(__buf, __rlen);
   __plen = __rlen;
 }
      else
 __throw_ios_failure(("basic_filebuf::_M_convert_to_external " "conversion error")
                       );
    }
}
     return __elen == __plen;
   }

 template<typename _CharT, typename _Traits>
   streamsize
   basic_filebuf<_CharT, _Traits>::
   xsgetn(_CharT* __s, streamsize __n)
   {

     streamsize __ret = 0;
     if (_M_pback_init)
{
  if (__n > 0 && this->gptr() == this->eback())
    {
      *__s++ = *this->gptr();
      this->gbump(1);
      __ret = 1;
      --__n;
    }
  _M_destroy_pback();
}
     else if (_M_writing)
{
   if (overflow() == traits_type::eof())
     return __ret;
   _M_set_buffer(-1);
   _M_writing = false;
 }




     const bool __testin = _M_mode & ios_base::in;
     const streamsize __buflen = _M_buf_size > 1 ? _M_buf_size - 1 : 1;

     if (__n > __buflen && __check_facet(_M_codecvt).always_noconv()
    && __testin)
  {

    const streamsize __avail = this->egptr() - this->gptr();
    if (__avail != 0)
      {
       traits_type::copy(__s, this->gptr(), __avail);
        __s += __avail;
       this->setg(this->eback(), this->gptr() + __avail,
    this->egptr());
       __ret += __avail;
       __n -= __avail;
      }



    streamsize __len;
    for (;;)
      {
        __len = _M_file.xsgetn(reinterpret_cast<char*>(__s),
          __n);
        if (__len == -1)
   __throw_ios_failure(("basic_filebuf::xsgetn " "error reading the file")
                               );
        if (__len == 0)
   break;

        __n -= __len;
        __ret += __len;
        if (__n == 0)
   break;

        __s += __len;
      }

    if (__n == 0)
      {
        _M_set_buffer(0);
        _M_reading = true;
      }
    else if (__len == 0)
      {



        _M_set_buffer(-1);
        _M_reading = false;
      }
  }
     else
  __ret += __streambuf_type::xsgetn(__s, __n);

     return __ret;
   }

 template<typename _CharT, typename _Traits>
   streamsize
   basic_filebuf<_CharT, _Traits>::
   xsputn(const _CharT* __s, streamsize __n)
   {
     streamsize __ret = 0;



     const bool __testout = (_M_mode & ios_base::out
        || _M_mode & ios_base::app);
     if (__check_facet(_M_codecvt).always_noconv()
    && __testout && !_M_reading)
{

  const streamsize __chunk = 1ul << 10;
  streamsize __bufavail = this->epptr() - this->pptr();


  if (!_M_writing && _M_buf_size > 1)
    __bufavail = _M_buf_size - 1;

  const streamsize __limit = std::min(__chunk, __bufavail);
  if (__n >= __limit)
    {
      const streamsize __buffill = this->pptr() - this->pbase();
      const char* __buf = reinterpret_cast<const char*>(this->pbase());
      __ret = _M_file.xsputn_2(__buf, __buffill,
          reinterpret_cast<const char*>(__s),
          __n);
      if (__ret == __buffill + __n)
 {
   _M_set_buffer(0);
   _M_writing = true;
 }
      if (__ret > __buffill)
 __ret -= __buffill;
      else
 __ret = 0;
    }
  else
    __ret = __streambuf_type::xsputn(__s, __n);
}
      else
 __ret = __streambuf_type::xsputn(__s, __n);
      return __ret;
   }

 template<typename _CharT, typename _Traits>
   typename basic_filebuf<_CharT, _Traits>::__streambuf_type*
   basic_filebuf<_CharT, _Traits>::
   setbuf(char_type* __s, streamsize __n)
   {
     if (!this->is_open())
{
  if (__s == 0 && __n == 0)
    _M_buf_size = 1;
  else if (__s && __n > 0)
    {
# 787 "/usr/include/g++/bits/fstream.tcc" 3
      _M_buf = __s;
      _M_buf_size = __n;
    }
}
     return this;
   }




 template<typename _CharT, typename _Traits>
   typename basic_filebuf<_CharT, _Traits>::pos_type
   basic_filebuf<_CharT, _Traits>::
   seekoff(off_type __off, ios_base::seekdir __way, ios_base::openmode)
   {
     int __width = 0;
     if (_M_codecvt)
__width = _M_codecvt->encoding();
     if (__width < 0)
__width = 0;

     pos_type __ret = pos_type(off_type(-1));
     const bool __testfail = __off != 0 && __width <= 0;
     if (this->is_open() && !__testfail)
{




  bool __no_movement = __way == ios_base::cur && __off == 0
    && (!_M_writing || _M_codecvt->always_noconv());


  if (!__no_movement)
    _M_destroy_pback();






  __state_type __state = _M_state_beg;
  off_type __computed_off = __off * __width;
  if (_M_reading && __way == ios_base::cur)
    {
      __state = _M_state_last;
      __computed_off += _M_get_ext_pos(__state);
    }
  if (!__no_movement)
    __ret = _M_seek(__computed_off, __way, __state);
  else
    {
      if (_M_writing)
 __computed_off = this->pptr() - this->pbase();

       off_type __file_off = _M_file.seekoff(0, ios_base::cur);
       if (__file_off != off_type(-1))
 {
   __ret = __file_off + __computed_off;
   __ret.state(__state);
 }
    }
}
     return __ret;
   }





 template<typename _CharT, typename _Traits>
   typename basic_filebuf<_CharT, _Traits>::pos_type
   basic_filebuf<_CharT, _Traits>::
   seekpos(pos_type __pos, ios_base::openmode)
   {
     pos_type __ret = pos_type(off_type(-1));
     if (this->is_open())
{

  _M_destroy_pback();
  __ret = _M_seek(off_type(__pos), ios_base::beg, __pos.state());
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   typename basic_filebuf<_CharT, _Traits>::pos_type
   basic_filebuf<_CharT, _Traits>::
   _M_seek(off_type __off, ios_base::seekdir __way, __state_type __state)
   {
     pos_type __ret = pos_type(off_type(-1));
     if (_M_terminate_output())
{
  off_type __file_off = _M_file.seekoff(__off, __way);
  if (__file_off != off_type(-1))
    {
      _M_reading = false;
      _M_writing = false;
      _M_ext_next = _M_ext_end = _M_ext_buf;
      _M_set_buffer(-1);
      _M_state_cur = __state;
      __ret = __file_off;
      __ret.state(_M_state_cur);
    }
}
     return __ret;
   }




 template<typename _CharT, typename _Traits>
   int basic_filebuf<_CharT, _Traits>::
   _M_get_ext_pos(__state_type& __state)
   {
     if (_M_codecvt->always_noconv())
       return this->gptr() - this->egptr();
     else
       {



         const int __gptr_off =
           _M_codecvt->length(__state, _M_ext_buf, _M_ext_next,
                              this->gptr() - this->eback());
         return _M_ext_buf + __gptr_off - _M_ext_end;
       }
   }

 template<typename _CharT, typename _Traits>
   bool
   basic_filebuf<_CharT, _Traits>::
   _M_terminate_output()
   {

     bool __testvalid = true;
     if (this->pbase() < this->pptr())
{
  const int_type __tmp = this->overflow();
  if (traits_type::eq_int_type(__tmp, traits_type::eof()))
    __testvalid = false;
}


     if (_M_writing && !__check_facet(_M_codecvt).always_noconv()
  && __testvalid)
{



  const size_t __blen = 128;
  char __buf[__blen];
  codecvt_base::result __r;
  streamsize __ilen = 0;

  do
    {
      char* __next;
      __r = _M_codecvt->unshift(_M_state_cur, __buf,
    __buf + __blen, __next);
      if (__r == codecvt_base::error)
 __testvalid = false;
      else if (__r == codecvt_base::ok ||
        __r == codecvt_base::partial)
 {
   __ilen = __next - __buf;
   if (__ilen > 0)
     {
       const streamsize __elen = _M_file.xsputn(__buf, __ilen);
       if (__elen != __ilen)
  __testvalid = false;
     }
 }
    }
  while (__r == codecvt_base::partial && __ilen > 0 && __testvalid);

  if (__testvalid)
    {




      const int_type __tmp = this->overflow();
      if (traits_type::eq_int_type(__tmp, traits_type::eof()))
 __testvalid = false;
    }
}
     return __testvalid;
   }

 template<typename _CharT, typename _Traits>
   int
   basic_filebuf<_CharT, _Traits>::
   sync()
   {


     int __ret = 0;
     if (this->pbase() < this->pptr())
{
  const int_type __tmp = this->overflow();
  if (traits_type::eq_int_type(__tmp, traits_type::eof()))
    __ret = -1;
}
     return __ret;
   }

 template<typename _CharT, typename _Traits>
   void
   basic_filebuf<_CharT, _Traits>::
   imbue(const locale& __loc)
   {
     bool __testvalid = true;

     const __codecvt_type* _M_codecvt_tmp = 0;
     if (__builtin_expect(has_facet<__codecvt_type>(__loc), true))
_M_codecvt_tmp = &use_facet<__codecvt_type>(__loc);

     if (this->is_open())
{

  if ((_M_reading || _M_writing)
      && __check_facet(_M_codecvt).encoding() == -1)
    __testvalid = false;
  else
    {
      if (_M_reading)
 {
   if (__check_facet(_M_codecvt).always_noconv())
     {
       if (_M_codecvt_tmp
    && !__check_facet(_M_codecvt_tmp).always_noconv())
  __testvalid = this->seekoff(0, ios_base::cur, _M_mode)
                != pos_type(off_type(-1));
     }
   else
     {

       _M_ext_next = _M_ext_buf
  + _M_codecvt->length(_M_state_last, _M_ext_buf,
         _M_ext_next,
         this->gptr() - this->eback());
       const streamsize __remainder = _M_ext_end - _M_ext_next;
       if (__remainder)
  __builtin_memmove(_M_ext_buf, _M_ext_next, __remainder);

       _M_ext_next = _M_ext_buf;
       _M_ext_end = _M_ext_buf + __remainder;
       _M_set_buffer(-1);
       _M_state_last = _M_state_cur = _M_state_beg;
     }
 }
      else if (_M_writing && (__testvalid = _M_terminate_output()))
 _M_set_buffer(-1);
    }
}

     if (__testvalid)
_M_codecvt = _M_codecvt_tmp;
     else
_M_codecvt = 0;
   }




 extern template class basic_filebuf<char>;
 extern template class basic_ifstream<char>;
 extern template class basic_ofstream<char>;
 extern template class basic_fstream<char>;


 extern template class basic_filebuf<wchar_t>;
 extern template class basic_ifstream<wchar_t>;
 extern template class basic_ofstream<wchar_t>;
 extern template class basic_fstream<wchar_t>;




}
# 1082 "/usr/include/g++/fstream" 2 3
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 2
# 1 "/usr/include/fcntl.h" 1 3 4
# 49 "/usr/include/fcntl.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 50 "/usr/include/fcntl.h" 2 3 4


# 1 "/usr/include/sys/stat.h" 1 3 4
# 42 "/usr/include/sys/stat.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 43 "/usr/include/sys/stat.h" 2 3 4
# 59 "/usr/include/sys/stat.h" 3 4
struct stat {
dev_t st_dev;
__mode_t st_mode;
ino_t st_ino;
nlink_t st_nlink;
__uid_t st_uid;
__gid_t st_gid;
dev_t st_rdev;


struct timespec st_atim;
struct timespec st_mtim;
struct timespec st_ctim;
struct timespec st_birthtim;
# 83 "/usr/include/sys/stat.h" 3 4
__off_t st_size;
blkcnt_t st_blocks;
blksize_t st_blksize;
__uint32_t st_flags;
__uint32_t st_gen;
__uint32_t st_spare[2];
};
# 242 "/usr/include/sys/stat.h" 3 4

# 242 "/usr/include/sys/stat.h" 3 4
#pragma GCC visibility push(default)
# 242 "/usr/include/sys/stat.h" 3 4
extern "C" {
int chmod(const char *, __mode_t);
int mkdir(const char *, __mode_t);
int mkfifo(const char *, __mode_t);

int stat(const char *, struct stat *) __asm("__stat50");
int fstat(int, struct stat *) __asm("__fstat50");

__mode_t umask(__mode_t);



int lstat(const char *, struct stat *) __asm("__lstat50");



int fchmod(int, __mode_t);

int mknod(const char *, __mode_t, dev_t) __asm("__mknod50");




int chflags(const char *, unsigned long);
int fchflags(int, unsigned long);
int lchflags(const char *, unsigned long);
int lchmod(const char *, __mode_t);
# 277 "/usr/include/sys/stat.h" 3 4
int fchmodat(int, const char *, __mode_t, int);
int fstatat(int, const char *, struct stat *, int);
int mkdirat(int, const char *, __mode_t);
int mkfifoat(int, const char *, __mode_t);
int mknodat(int, const char *, __mode_t, dev_t);
int utimensat(int, const char *, const struct timespec *, int);



int utimens(const char *, const struct timespec *);
int lutimens(const char *, const struct timespec *);




int futimens(int, const struct timespec *);



}
# 296 "/usr/include/sys/stat.h" 3 4
#pragma GCC visibility pop
# 296 "/usr/include/sys/stat.h" 3 4

# 53 "/usr/include/fcntl.h" 2 3 4
# 251 "/usr/include/fcntl.h" 3 4
struct flock {
__off_t l_start;
__off_t l_len;
__pid_t l_pid;
short l_type;
short l_whence;
};
# 306 "/usr/include/fcntl.h" 3 4

# 306 "/usr/include/fcntl.h" 3 4
#pragma GCC visibility push(default)
# 306 "/usr/include/fcntl.h" 3 4
extern "C" {
int open(const char *, int, ...);
int creat(const char *, __mode_t);
int fcntl(int, int, ...);

int flock(int, int);

int posix_fadvise(int, __off_t, __off_t, int);






int posix_fallocate(int, __off_t, __off_t);







int openat(int, const char *, int, ...);


}
# 331 "/usr/include/fcntl.h" 3 4
#pragma GCC visibility pop
# 331 "/usr/include/fcntl.h" 3 4

# 42 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 2
# 1 "/usr/include/g++/ctime" 1 3
# 39 "/usr/include/g++/ctime" 3

# 40 "/usr/include/g++/ctime" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/ctime" 2 3
# 58 "/usr/include/g++/ctime" 3
namespace std
{
 using ::clock_t;
 using ::time_t;
 using ::tm;

 using ::clock;
 using ::difftime;
 using ::mktime;
 using ::time;
 using ::asctime;
 using ::ctime;
 using ::gmtime;
 using ::localtime;
 using ::strftime;
}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 2
# 1 "/usr/include/g++/cstring" 1 3
# 39 "/usr/include/g++/cstring" 3

# 40 "/usr/include/g++/cstring" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cstring" 2 3
# 1 "/usr/include/string.h" 1 3 4
# 46 "/usr/include/string.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 47 "/usr/include/string.h" 2 3 4


# 48 "/usr/include/string.h" 3 4
#pragma GCC visibility push(default)
# 48 "/usr/include/string.h" 3 4
extern "C" {
void *memchr(const void *, int, size_t);
int memcmp(const void *, const void *, size_t);
void *memcpy(void * __restrict__, const void * __restrict__, size_t);
void *memmove(void *, const void *, size_t);
void *memset(void *, int, size_t);
char *strcat(char * __restrict__, const char * __restrict__);
char *strchr(const char *, int);
int strcmp(const char *, const char *);
int strcoll(const char *, const char *);
char *strcpy(char * __restrict__, const char * __restrict__);
size_t strcspn(const char *, const char *);
char *strerror(int);
size_t strlen(const char *);
char *strncat(char * __restrict__, const char * __restrict__, size_t);
int strncmp(const char *, const char *, size_t);
char *strncpy(char * __restrict__, const char * __restrict__, size_t);
char *strpbrk(const char *, const char *);
char *strrchr(const char *, int);
size_t strspn(const char *, const char *);
char *strstr(const char *, const char *);
char *strtok(char * __restrict__, const char * __restrict__);


char *strtok_r(char *, const char *, char **);
int strerror_r(int, char *, size_t);

size_t strxfrm(char * __restrict__, const char * __restrict__, size_t);


void *memccpy(void *, const void *, int, size_t);
char *strdup(const char *);




char *stpcpy(char * __restrict__, const char * __restrict__);
char *stpncpy(char * __restrict__, const char * __restrict__, size_t);
char *strndup(const char *, size_t);
size_t strnlen(const char *, size_t);



char *strsignal(int);


}
# 94 "/usr/include/string.h" 3 4
#pragma GCC visibility pop
# 94 "/usr/include/string.h" 3 4



# 1 "/usr/include/strings.h" 1 3 4
# 36 "/usr/include/strings.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 37 "/usr/include/strings.h" 2 3 4
# 51 "/usr/include/strings.h" 3 4

# 51 "/usr/include/strings.h" 3 4
#pragma GCC visibility push(default)
# 51 "/usr/include/strings.h" 3 4
extern "C" {
int bcmp(const void *, const void *, size_t);
void bcopy(const void *, void *, size_t);
void bzero(void *, size_t);
int ffs(int);
char *index(const char *, int);
unsigned int popcount(unsigned int) __attribute__((__const__));
unsigned int popcountl(unsigned long) __attribute__((__const__));
unsigned int popcountll(unsigned long long) __attribute__((__const__));
unsigned int popcount32(__uint32_t) __attribute__((__const__));
unsigned int popcount64(__uint64_t) __attribute__((__const__));
char *rindex(const char *, int);
int strcasecmp(const char *, const char *);
int strncasecmp(const char *, const char *, size_t);
}
# 65 "/usr/include/strings.h" 3 4
#pragma GCC visibility pop
# 65 "/usr/include/strings.h" 3 4



# 1 "/usr/include/string.h" 1 3 4
# 69 "/usr/include/strings.h" 2 3 4
# 98 "/usr/include/string.h" 2 3 4

# 98 "/usr/include/string.h" 3 4
#pragma GCC visibility push(default)
# 98 "/usr/include/string.h" 3 4
extern "C" {
void *memmem(const void *, size_t, const void *, size_t);
char *strcasestr(const char *, const char *);
size_t strlcat(char *, const char *, size_t);
size_t strlcpy(char *, const char *, size_t);
char *strsep(char **, const char *);
char *stresep(char **, const char *, int);
char *strnstr(const char *, const char *, size_t);
void *memrchr(const void *, int, size_t);
void *explicit_memset(void *, int, size_t);
int consttime_memequal(const void *, const void *, size_t);
}
# 109 "/usr/include/string.h" 3 4
#pragma GCC visibility pop
# 109 "/usr/include/string.h" 3 4









# 117 "/usr/include/string.h" 3 4
#pragma GCC visibility push(default)
# 117 "/usr/include/string.h" 3 4
extern "C" {
int strcoll_l(const char *, const char *, locale_t);
size_t strxfrm_l(char * __restrict__, const char * __restrict__, size_t, locale_t);
char *strerror_l(int, locale_t);
}
# 121 "/usr/include/string.h" 3 4
#pragma GCC visibility pop
# 121 "/usr/include/string.h" 3 4

# 43 "/usr/include/g++/cstring" 2 3
# 71 "/usr/include/g++/cstring" 3
namespace std __attribute__ ((__visibility__ ("default")))
{


 using ::memchr;
 using ::memcmp;
 using ::memcpy;
 using ::memmove;
 using ::memset;
 using ::strcat;
 using ::strcmp;
 using ::strcoll;
 using ::strcpy;
 using ::strcspn;
 using ::strerror;
 using ::strlen;
 using ::strncat;
 using ::strncmp;
 using ::strncpy;
 using ::strspn;
 using ::strtok;
 using ::strxfrm;
 using ::strchr;
 using ::strpbrk;
 using ::strrchr;
 using ::strstr;


 inline void*
 memchr(void* __s, int __c, size_t __n)
 { return __builtin_memchr(__s, __c, __n); }

 inline char*
 strchr(char* __s, int __n)
 { return __builtin_strchr(__s, __n); }

 inline char*
 strpbrk(char* __s1, const char* __s2)
 { return __builtin_strpbrk(__s1, __s2); }

 inline char*
 strrchr(char* __s, int __n)
 { return __builtin_strrchr(__s, __n); }

 inline char*
 strstr(char* __s1, const char* __s2)
 { return __builtin_strstr(__s1, __s2); }



}
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 2
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"

# 59 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
namespace Exiv2 {
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
   class BasicIo {
   public:

       typedef std::auto_ptr<BasicIo> AutoPtr;


       enum Position { beg, cur, end };




       virtual ~BasicIo();
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual int open() = 0;







       virtual int close() = 0;
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long write(const byte* data, long wcount) = 0;
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long write(BasicIo& src) = 0;







       virtual int putb(byte data) = 0;
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual DataBuf read(long rcount) = 0;
# 159 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long read(byte* buf, long rcount) = 0;






       virtual int getb() = 0;
# 180 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual void transfer(BasicIo& src) = 0;
# 192 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual int seek(long offset, Position pos) = 0;
# 204 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual byte* mmap(bool isWriteable =false) =0;






       virtual int munmap() =0;
# 221 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long tell() const = 0;





       virtual long size() const = 0;

       virtual bool isopen() const = 0;

       virtual int error() const = 0;

       virtual bool eof() const = 0;





       virtual std::string path() const =0;
# 260 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual BasicIo::AutoPtr temporary() const = 0;
# 269 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual void populateFakeData() {}


   protected:



       BasicIo() {}

   };







   class IoCloser {
   public:



       IoCloser(BasicIo& bio) : bio_(bio) {}

       virtual ~IoCloser() { close(); }





       void close() { if (bio_.isopen()) bio_.close(); }




       BasicIo& bio_;

   private:


       IoCloser(const IoCloser&);

       IoCloser& operator=(const IoCloser&);
   };





   class FileIo : public BasicIo {
   public:
# 328 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       FileIo(const std::string& path);
# 338 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual ~FileIo();
# 356 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       int open(const std::string& mode);







       virtual int open();






       virtual int close();
# 381 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long write(const byte* data, long wcount);
# 391 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long write(BasicIo& src);







       virtual int putb(byte data);
# 410 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual DataBuf read(long rcount);
# 423 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long read(byte* buf, long rcount);






       virtual int getb();
# 449 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual void transfer(BasicIo& src);
# 461 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual int seek(long offset, Position pos);
# 474 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual byte* mmap(bool isWriteable =false);







       virtual int munmap();



       virtual void setPath(const std::string& path);
# 503 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long tell() const;






       virtual long size() const;

       virtual bool isopen() const;

       virtual int error() const;

       virtual bool eof() const;

       virtual std::string path() const;
# 535 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual BasicIo::AutoPtr temporary() const;
# 544 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual void populateFakeData();


   private:


       FileIo(FileIo& rhs);

       FileIo& operator=(const FileIo& rhs);


       class Impl;
       Impl* p_;

   };
# 572 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
   class MemIo : public BasicIo {
   public:



       MemIo();
# 586 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       MemIo(const byte* data, long size);

       virtual ~MemIo();
# 599 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual int open();




       virtual int close();
# 615 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long write(const byte* data, long wcount);
# 626 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long write(BasicIo& src);







       virtual int putb(byte data);
# 645 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual DataBuf read(long rcount);
# 658 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long read(byte* buf, long rcount);






       virtual int getb();
# 681 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual void transfer(BasicIo& src);
# 693 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual int seek(long offset, Position pos);
# 703 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual byte* mmap(bool =false);
       virtual int munmap();
       int msync();
# 714 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long tell() const;





       virtual long size() const;

       virtual bool isopen() const;

       virtual int error() const;

       virtual bool eof() const;

       virtual std::string path() const;
# 742 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual BasicIo::AutoPtr temporary() const;
# 751 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual void populateFakeData();



   private:


       MemIo(MemIo& rhs);

       MemIo& operator=(const MemIo& rhs);


       class Impl;
       Impl* p_;

   };
# 801 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
   class XPathIo : public FileIo {
   public:




       static const std::string TEMP_FILE_EXT;




       static const std::string GEN_FILE_EXT;




       XPathIo(const std::string& orgPath);
# 827 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual ~XPathIo();
# 836 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual void transfer(BasicIo& src);
# 848 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       static std::string writeDataToFile(const std::string& orgPath);
# 859 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
   private:

       bool isTemp_;
       std::string tempFilePath_;
   };






   class BlockMap {
   public:

       enum blockType_e {bNone, bKnown, bMemory};



       BlockMap():type_(bNone), data_(
# 877 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 3 4
                                     __null
# 877 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
                                         ),size_(0) {}

       virtual ~BlockMap() {
           if (data_) {std::free(data_); data_ =
# 880 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 3 4
                                                __null
# 880 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
                                                    ;}
       }
# 890 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       void populate (byte* source, size_t num) {
           size_ = num;
           data_ = (byte*) std::malloc(size_);
           type_ = bMemory;
           std::memcpy(data_, source, size_);
       }






       void markKnown(size_t num) {
           type_ = bKnown;
           size_ = num;
       }



       bool isNone() {return type_ == bNone;}
       bool isInMem () {return type_ == bMemory;}
       bool isKnown () {return type_ == bKnown;}
       byte* getData () {return data_;}
       size_t getSize () {return size_;}

   private:
       blockType_e type_;
       byte* data_;
       size_t size_;
   };






   class RemoteIo : public BasicIo {
   public:

       virtual ~RemoteIo();
# 943 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual int open();





       virtual int close();




       virtual long write(const byte* data, long wcount);
# 969 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       virtual long write(BasicIo& src);





      virtual int putb(byte data);
# 988 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
      virtual DataBuf read(long rcount);
# 1003 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
      virtual long read(byte* buf, long rcount);
# 1012 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
      virtual int getb();
# 1027 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
      virtual void transfer(BasicIo& src);
# 1039 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
      virtual int seek(long offset, Position pos);





      virtual byte* mmap(bool =false);




      virtual int munmap();







      virtual long tell() const;





      virtual long size() const;

      virtual bool isopen() const;

      virtual int error() const;

      virtual bool eof() const;

      virtual std::string path() const;
# 1086 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
      virtual BasicIo::AutoPtr temporary() const;
# 1095 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
      virtual void populateFakeData();


   protected:



       RemoteIo() {p_=
# 1102 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp" 3 4
                     __null
# 1102 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
                         ;}



       class Impl;
       Impl* p_;
   };




   class HttpIo : public RemoteIo {
   public:
# 1126 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
       HttpIo(const std::string& url, size_t blockSize = 1024);
# 1136 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
   protected:


       HttpIo(HttpIo& rhs);

       HttpIo& operator=(const HttpIo& rhs);

       class HttpImpl;




       virtual ~HttpIo(){}

   };
# 1261 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
   DataBuf readFile(const std::string& path);
# 1274 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
   long writeFile(const DataBuf& buf, const std::string& path);
# 1286 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
   std::string ReplaceStringInPlace(std::string subject, const std::string& search,
                         const std::string& replace);
# 1303 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/basicio.hpp"
}
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 1
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
# 1 "/usr/include/g++/iostream" 1 3
# 36 "/usr/include/g++/iostream" 3

# 37 "/usr/include/g++/iostream" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 39 "/usr/include/g++/iostream" 2 3




# 42 "/usr/include/g++/iostream" 3
namespace std __attribute__ ((__visibility__ ("default")))
{

# 60 "/usr/include/g++/iostream" 3
 extern istream cin;
 extern ostream cout;
 extern ostream cerr;
 extern ostream clog;


 extern wistream wcin;
 extern wostream wcout;
 extern wostream wcerr;
 extern wostream wclog;




 static ios_base::Init __ioinit;


}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 2
# 1 "/usr/include/g++/iomanip" 1 3
# 36 "/usr/include/g++/iomanip" 3

# 37 "/usr/include/g++/iomanip" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 39 "/usr/include/g++/iomanip" 2 3
# 49 "/usr/include/g++/iomanip" 3
namespace std __attribute__ ((__visibility__ ("default")))
{





 struct _Resetiosflags { ios_base::fmtflags _M_mask; };
# 65 "/usr/include/g++/iomanip" 3
 inline _Resetiosflags
 resetiosflags(ios_base::fmtflags __mask)
 { return { __mask }; }

 template<typename _CharT, typename _Traits>
   inline basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __is, _Resetiosflags __f)
   {
     __is.setf(ios_base::fmtflags(0), __f._M_mask);
     return __is;
   }

 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __os, _Resetiosflags __f)
   {
     __os.setf(ios_base::fmtflags(0), __f._M_mask);
     return __os;
   }


 struct _Setiosflags { ios_base::fmtflags _M_mask; };
# 95 "/usr/include/g++/iomanip" 3
 inline _Setiosflags
 setiosflags(ios_base::fmtflags __mask)
 { return { __mask }; }

 template<typename _CharT, typename _Traits>
   inline basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __is, _Setiosflags __f)
   {
     __is.setf(__f._M_mask);
     return __is;
   }

 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __os, _Setiosflags __f)
   {
     __os.setf(__f._M_mask);
     return __os;
   }


 struct _Setbase { int _M_base; };
# 126 "/usr/include/g++/iomanip" 3
 inline _Setbase
 setbase(int __base)
 { return { __base }; }

 template<typename _CharT, typename _Traits>
   inline basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __is, _Setbase __f)
   {
     __is.setf(__f._M_base == 8 ? ios_base::oct :
 __f._M_base == 10 ? ios_base::dec :
 __f._M_base == 16 ? ios_base::hex :
 ios_base::fmtflags(0), ios_base::basefield);
     return __is;
   }

 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __os, _Setbase __f)
   {
     __os.setf(__f._M_base == 8 ? ios_base::oct :
 __f._M_base == 10 ? ios_base::dec :
 __f._M_base == 16 ? ios_base::hex :
 ios_base::fmtflags(0), ios_base::basefield);
     return __os;
   }


 template<typename _CharT>
   struct _Setfill { _CharT _M_c; };
# 163 "/usr/include/g++/iomanip" 3
 template<typename _CharT>
   inline _Setfill<_CharT>
   setfill(_CharT __c)
   { return { __c }; }

 template<typename _CharT, typename _Traits>
   inline basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __is, _Setfill<_CharT> __f)
   {
     __is.fill(__f._M_c);
     return __is;
   }

 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __os, _Setfill<_CharT> __f)
   {
     __os.fill(__f._M_c);
     return __os;
   }


 struct _Setprecision { int _M_n; };
# 194 "/usr/include/g++/iomanip" 3
 inline _Setprecision
 setprecision(int __n)
 { return { __n }; }

 template<typename _CharT, typename _Traits>
   inline basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __is, _Setprecision __f)
   {
     __is.precision(__f._M_n);
     return __is;
   }

 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __os, _Setprecision __f)
   {
     __os.precision(__f._M_n);
     return __os;
   }


 struct _Setw { int _M_n; };
# 224 "/usr/include/g++/iomanip" 3
 inline _Setw
 setw(int __n)
 { return { __n }; }

 template<typename _CharT, typename _Traits>
   inline basic_istream<_CharT, _Traits>&
   operator>>(basic_istream<_CharT, _Traits>& __is, _Setw __f)
   {
     __is.width(__f._M_n);
     return __is;
   }

 template<typename _CharT, typename _Traits>
   inline basic_ostream<_CharT, _Traits>&
   operator<<(basic_ostream<_CharT, _Traits>& __os, _Setw __f)
   {
     __os.width(__f._M_n);
     return __os;
   }
# 496 "/usr/include/g++/iomanip" 3
 extern template ostream& operator<<(ostream&, _Setfill<char>);
 extern template ostream& operator<<(ostream&, _Setiosflags);
 extern template ostream& operator<<(ostream&, _Resetiosflags);
 extern template ostream& operator<<(ostream&, _Setbase);
 extern template ostream& operator<<(ostream&, _Setprecision);
 extern template ostream& operator<<(ostream&, _Setw);
 extern template istream& operator>>(istream&, _Setfill<char>);
 extern template istream& operator>>(istream&, _Setiosflags);
 extern template istream& operator>>(istream&, _Resetiosflags);
 extern template istream& operator>>(istream&, _Setbase);
 extern template istream& operator>>(istream&, _Setprecision);
 extern template istream& operator>>(istream&, _Setw);


 extern template wostream& operator<<(wostream&, _Setfill<wchar_t>);
 extern template wostream& operator<<(wostream&, _Setiosflags);
 extern template wostream& operator<<(wostream&, _Resetiosflags);
 extern template wostream& operator<<(wostream&, _Setbase);
 extern template wostream& operator<<(wostream&, _Setprecision);
 extern template wostream& operator<<(wostream&, _Setw);
 extern template wistream& operator>>(wistream&, _Setfill<wchar_t>);
 extern template wistream& operator>>(wistream&, _Setiosflags);
 extern template wistream& operator>>(wistream&, _Resetiosflags);
 extern template wistream& operator>>(wistream&, _Setbase);
 extern template wistream& operator>>(wistream&, _Setprecision);
 extern template wistream& operator>>(wistream&, _Setw);




}
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 2


# 1 "/usr/include/g++/cstring" 1 3
# 39 "/usr/include/g++/cstring" 3

# 40 "/usr/include/g++/cstring" 3

# 1 "/usr/include/g++/bits/c++config.h" 1 3
# 42 "/usr/include/g++/cstring" 2 3
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 2




# 50 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
namespace Exiv2 {
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
   class Value {
   public:

       typedef std::auto_ptr<Value> AutoPtr;




       explicit Value(TypeId typeId);

       virtual ~Value();
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const byte* buf, long len, ByteOrder byteOrder) =0;
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const std::string& buf) =0;
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int setDataArea(const byte* buf, long len);





       TypeId typeId() const { return type_; }





       AutoPtr clone() const { return AutoPtr(clone_()); }
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual long copy(byte* buf, ByteOrder byteOrder) const =0;

       virtual long count() const =0;

       virtual long size() const =0;






       virtual std::ostream& write(std::ostream& os) const =0;




       std::string toString() const;






       virtual std::string toString(long n) const;







       virtual long toLong(long n =0) const =0;







       virtual float toFloat(long n =0) const =0;







       virtual Rational toRational(long n =0) const =0;

       virtual long sizeDataArea() const;
# 195 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual DataBuf dataArea() const;




       bool ok() const { return ok_; }
# 239 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       static AutoPtr create(TypeId typeId);

   protected:




       Value& operator=(const Value& rhs);

       mutable bool ok_;

   private:

       virtual Value* clone_() const =0;

       TypeId type_;

   };


   inline std::ostream& operator<<(std::ostream& os, const Value& value)
   {
       return value.write(os);
   }


   class DataValue : public Value {
   public:

       typedef std::auto_ptr<DataValue> AutoPtr;




       explicit DataValue(TypeId typeId =undefined);

       DataValue(const byte* buf,
                 long len, ByteOrder byteOrder =invalidByteOrder,
                 TypeId typeId =undefined);

       virtual ~DataValue();
# 296 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const byte* buf,
                         long len,
                         ByteOrder byteOrder =invalidByteOrder);

       virtual int read(const std::string& buf);




       AutoPtr clone() const { return AutoPtr(clone_()); }
# 319 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual long copy(byte* buf, ByteOrder byteOrder =invalidByteOrder) const;
       virtual long count() const;
       virtual long size() const;
       virtual std::ostream& write(std::ostream& os) const;





       virtual std::string toString(long n) const;
       virtual long toLong(long n =0) const;
       virtual float toFloat(long n =0) const;
       virtual Rational toRational(long n =0) const;


   private:

       virtual DataValue* clone_() const;

   public:

       typedef std::vector<byte> ValueType;

       ValueType value_;

   };







   class StringValueBase : public Value {
   public:

       typedef std::auto_ptr<StringValueBase> AutoPtr;




       explicit StringValueBase(TypeId typeId);

       StringValueBase(TypeId typeId, const std::string& buf);

       StringValueBase(const StringValueBase& rhs);

       virtual ~StringValueBase();





       virtual int read(const std::string& buf);
# 385 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const byte* buf,
                        long len,
                        ByteOrder byteOrder =invalidByteOrder);




       AutoPtr clone() const { return AutoPtr(clone_()); }
# 406 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual long copy(byte* buf, ByteOrder byteOrder =invalidByteOrder) const;
       virtual long count() const;
       virtual long size() const;
       virtual long toLong(long n =0) const;
       virtual float toFloat(long n =0) const;
       virtual Rational toRational(long n =0) const;
       virtual std::ostream& write(std::ostream& os) const;


   protected:

       StringValueBase& operator=(const StringValueBase& rhs);

       virtual StringValueBase* clone_() const =0;

   public:

       std::string value_;

   };
# 434 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
   class StringValue : public StringValueBase {
   public:

       typedef std::auto_ptr<StringValue> AutoPtr;




       StringValue();

       explicit StringValue(const std::string& buf);

       virtual ~StringValue();




       AutoPtr clone() const { return AutoPtr(clone_()); }


   private:

       virtual StringValue* clone_() const;

   };







   class AsciiValue : public StringValueBase {
   public:

       typedef std::auto_ptr<AsciiValue> AutoPtr;




       AsciiValue();

       explicit AsciiValue(const std::string& buf);

       virtual ~AsciiValue();




       using StringValueBase::read;





       virtual int read(const std::string& buf);




       AutoPtr clone() const { return AutoPtr(clone_()); }





       virtual std::ostream& write(std::ostream& os) const;


   private:

       virtual AsciiValue* clone_() const;

   };
# 517 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
   class CommentValue : public StringValueBase {
   public:

       enum CharsetId { ascii, jis, unicode, undefined,
                        invalidCharsetId, lastCharsetId };

       struct CharsetTable {

           CharsetTable(CharsetId charsetId,
                        const char* name,
                        const char* code);
           CharsetId charsetId_;
           const char* name_;
           const char* code_;
       };

       class CharsetInfo {

           CharsetInfo() {}

           CharsetInfo(const CharsetInfo&);

           CharsetInfo& operator=(const CharsetInfo&);

       public:

           static const char* name(CharsetId charsetId);

           static const char* code(CharsetId charsetId);

           static CharsetId charsetIdByName(const std::string& name);

           static CharsetId charsetIdByCode(const std::string& code);

       private:
           static const CharsetTable charsetTable_[];
       };


       typedef std::auto_ptr<CommentValue> AutoPtr;




       CommentValue();

       explicit CommentValue(const std::string& comment);

       virtual ~CommentValue();
# 582 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       int read(const std::string& comment);



       int read(const byte* buf, long len, ByteOrder byteOrder);




       AutoPtr clone() const { return AutoPtr(clone_()); }
       long copy(byte* buf, ByteOrder byteOrder) const;




       std::ostream& write(std::ostream& os) const;
# 612 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       std::string comment(const char* encoding =0) const;
# 622 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       const char* detectCharset(std::string& c) const;

       CharsetId charsetId() const;


   private:

       virtual CommentValue* clone_() const;

   public:

       ByteOrder byteOrder_;

   };




   class XmpValue : public Value {
   public:

       typedef std::auto_ptr<XmpValue> AutoPtr;


       enum XmpArrayType { xaNone, xaAlt, xaBag, xaSeq };

       enum XmpStruct { xsNone, xsStruct };



       explicit XmpValue(TypeId typeId);





       XmpArrayType xmpArrayType() const;

       XmpStruct xmpStruct() const;
       virtual long size() const;
# 675 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual long copy(byte* buf, ByteOrder byteOrder =invalidByteOrder) const;





       void setXmpArrayType(XmpArrayType xmpArrayType);

       void setXmpStruct(XmpStruct xmpStruct =xsStruct);
# 698 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const byte* buf,
                        long len,
                        ByteOrder byteOrder =invalidByteOrder);
       virtual int read(const std::string& buf) =0;






       static XmpArrayType xmpArrayType(TypeId typeId);

   protected:




       XmpValue& operator=(const XmpValue& rhs);

   private:

       XmpArrayType xmpArrayType_;
       XmpStruct xmpStruct_;

   };
# 731 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
   class XmpTextValue : public XmpValue {
   public:

       typedef std::auto_ptr<XmpTextValue> AutoPtr;




       XmpTextValue();

       explicit XmpTextValue(const std::string& buf);




       using XmpValue::read;
# 762 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const std::string& buf);




       AutoPtr clone() const;
       long size() const;
       virtual long count() const;






       virtual long toLong(long n =0) const;






       virtual float toFloat(long n =0) const;






       virtual Rational toRational(long n =0) const;
       virtual std::ostream& write(std::ostream& os) const;


   private:

       virtual XmpTextValue* clone_() const;

   public:

       std::string value_;

   };
# 813 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
   class XmpArrayValue : public XmpValue {
   public:

       typedef std::auto_ptr<XmpArrayValue> AutoPtr;




       explicit XmpArrayValue(TypeId typeId =xmpBag);




       using XmpValue::read;
# 837 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const std::string& buf);




       AutoPtr clone() const;
       virtual long count() const;





       virtual std::string toString(long n) const;
       virtual long toLong(long n =0) const;
       virtual float toFloat(long n =0) const;
       virtual Rational toRational(long n =0) const;






       virtual std::ostream& write(std::ostream& os) const;


   private:

       virtual XmpArrayValue* clone_() const;

   public:

       typedef std::vector<std::string> ValueType;

       std::vector<std::string> value_;

   };
# 881 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
struct LangAltValueComparator {
 bool operator() (const std::string& str1, const std::string& str2) const
 {
     int result = str1.size() < str2.size() ? 1
                : str1.size() > str2.size() ? -1
                : 0
                ;
     std::string::const_iterator c1 = str1.begin();
     std::string::const_iterator c2 = str2.begin();
     if ( result==0 ) for (
         ; result==0 && c1 != str1.end()
         ; ++c1, ++c2
         ) {
         result = tolower(*c1) < tolower(*c2) ? 1
                : tolower(*c1) > tolower(*c2) ? -1
                : 0
                ;
     }
     return result < 0 ;
    }
};







   class LangAltValue : public XmpValue {
   public:

       typedef std::auto_ptr<LangAltValue> AutoPtr;




       LangAltValue();

       explicit LangAltValue(const std::string& buf);




       using XmpValue::read;
# 942 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const std::string& buf);




       AutoPtr clone() const;
       virtual long count() const;







       virtual std::string toString(long n) const;





       std::string toString(const std::string& qualifier) const;
       virtual long toLong(long n =0) const;
       virtual float toFloat(long n =0) const;
       virtual Rational toRational(long n =0) const;






       virtual std::ostream& write(std::ostream& os) const;


   private:

       virtual LangAltValue* clone_() const;

   public:

       typedef std::map<std::string, std::string,LangAltValueComparator> ValueType;





       ValueType value_;

   };







   class DateValue : public Value {
   public:

       typedef std::auto_ptr<DateValue> AutoPtr;




       DateValue();

       DateValue(int year, int month, int day);

       virtual ~DateValue();



       struct Date {
           Date() : year(0), month(0), day(0) {}
           int year;
           int month;
           int day;
       };
# 1035 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const byte* buf,
                        long len,
                        ByteOrder byteOrder =invalidByteOrder);
# 1046 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const std::string& buf);

       void setDate(const Date& src);




       AutoPtr clone() const { return AutoPtr(clone_()); }
# 1067 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual long copy(byte* buf, ByteOrder byteOrder =invalidByteOrder) const;

       virtual const Date& getDate() const;
       virtual long count() const;
       virtual long size() const;
       virtual std::ostream& write(std::ostream& os) const;

       virtual long toLong(long n =0) const;

       virtual float toFloat(long n =0) const;

       virtual Rational toRational(long n =0) const;


   private:

       virtual DateValue* clone_() const;


       Date date_;

   };
# 1098 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
   class TimeValue : public Value {
   public:

       typedef std::auto_ptr<TimeValue> AutoPtr;




       TimeValue();

       TimeValue(int hour, int minute, int second =0,
                 int tzHour =0, int tzMinute =0);


       virtual ~TimeValue();



       struct Time
       {
           Time() : hour(0), minute(0), second(0), tzHour(0), tzMinute(0) {}

           int hour;
           int minute;
           int second;
           int tzHour;
           int tzMinute;
       };
# 1142 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const byte* buf,
                        long len,
                        ByteOrder byteOrder =invalidByteOrder);
# 1153 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual int read(const std::string& buf);

       void setTime(const Time& src);




       AutoPtr clone() const { return AutoPtr(clone_()); }
# 1174 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       virtual long copy(byte* buf, ByteOrder byteOrder =invalidByteOrder) const;

       virtual const Time& getTime() const;
       virtual long count() const;
       virtual long size() const;
       virtual std::ostream& write(std::ostream& os) const;

       virtual long toLong(long n =0) const;

       virtual float toFloat(long n =0) const;

       virtual Rational toRational(long n =0) const;


   private:
# 1201 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       int scanTime3(const char* buf, const char* format);
# 1212 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       int scanTime6(const char* buf, const char* format);





       virtual TimeValue* clone_() const;



       Time time_;

   };


   template<typename T> TypeId getType();


   template<> inline TypeId getType<
# 1230 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                                   __uint16_t
# 1230 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                                           >() { return unsignedShort; }

   template<> inline TypeId getType<
# 1232 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                                   __uint32_t
# 1232 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                                           >() { return unsignedLong; }

   template<> inline TypeId getType<URational>() { return unsignedRational; }

   template<> inline TypeId getType<
# 1236 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                                   __int16_t
# 1236 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                                          >() { return signedShort; }

   template<> inline TypeId getType<
# 1238 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                                   __int32_t
# 1238 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                                          >() { return signedLong; }

   template<> inline TypeId getType<Rational>() { return signedRational; }

   template<> inline TypeId getType<float>() { return tiffFloat; }

   template<> inline TypeId getType<double>() { return tiffDouble; }
# 1253 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
   template<typename T>
   class ValueType : public Value {
   public:

       typedef std::auto_ptr<ValueType<T> > AutoPtr;




       ValueType();


       explicit ValueType(TypeId typeId);

       ValueType(const byte* buf, long len, ByteOrder byteOrder, TypeId typeId =getType<T>());

       explicit ValueType(const T& val, TypeId typeId =getType<T>());

       ValueType(const ValueType<T>& rhs);

       virtual ~ValueType();





       ValueType<T>& operator=(const ValueType<T>& rhs);
       virtual int read(const byte* buf, long len, ByteOrder byteOrder);






       virtual int read(const std::string& buf);




       virtual int setDataArea(const byte* buf, long len);




       AutoPtr clone() const { return AutoPtr(clone_()); }
       virtual long copy(byte* buf, ByteOrder byteOrder) const;
       virtual long count() const;
       virtual long size() const;
       virtual std::ostream& write(std::ostream& os) const;






       virtual std::string toString(long n) const;
       virtual long toLong(long n =0) const;
       virtual float toFloat(long n =0) const;
       virtual Rational toRational(long n =0) const;

       virtual long sizeDataArea() const;




       virtual DataBuf dataArea() const;



       typedef std::vector<T> ValueList;

       typedef typename std::vector<T>::iterator iterator;

       typedef typename std::vector<T>::const_iterator const_iterator;
# 1335 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
       ValueList value_;

   private:

       virtual ValueType<T>* clone_() const;



       byte* pDataArea_;

       long sizeDataArea_;
   };


   typedef ValueType<
# 1349 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                    __uint16_t
# 1349 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                            > UShortValue;

   typedef ValueType<
# 1351 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                    __uint32_t
# 1351 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                            > ULongValue;

   typedef ValueType<URational> URationalValue;

   typedef ValueType<
# 1355 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                    __int16_t
# 1355 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                           > ShortValue;

   typedef ValueType<
# 1357 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                    __int32_t
# 1357 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                           > LongValue;

   typedef ValueType<Rational> RationalValue;

   typedef ValueType<float> FloatValue;

   typedef ValueType<double> DoubleValue;
# 1379 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
   template<typename T> T getValue(const byte* buf, ByteOrder byteOrder);

   template<>
   inline
# 1382 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
         __uint16_t
# 1382 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                  getValue(const byte* buf, ByteOrder byteOrder)
   {
       return getUShort(buf, byteOrder);
   }

   template<>
   inline
# 1388 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
         __uint32_t
# 1388 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                  getValue(const byte* buf, ByteOrder byteOrder)
   {
       return getULong(buf, byteOrder);
   }

   template<>
   inline URational getValue(const byte* buf, ByteOrder byteOrder)
   {
       return getURational(buf, byteOrder);
   }

   template<>
   inline
# 1400 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
         __int16_t
# 1400 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                 getValue(const byte* buf, ByteOrder byteOrder)
   {
       return getShort(buf, byteOrder);
   }

   template<>
   inline
# 1406 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
         __int32_t
# 1406 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                 getValue(const byte* buf, ByteOrder byteOrder)
   {
       return getLong(buf, byteOrder);
   }

   template<>
   inline Rational getValue(const byte* buf, ByteOrder byteOrder)
   {
       return getRational(buf, byteOrder);
   }

   template<>
   inline float getValue(const byte* buf, ByteOrder byteOrder)
   {
       return getFloat(buf, byteOrder);
   }

   template<>
   inline double getValue(const byte* buf, ByteOrder byteOrder)
   {
       return getDouble(buf, byteOrder);
   }
# 1441 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
   template<typename T> long toData(byte* buf, T t, ByteOrder byteOrder);




   template<>
   inline long toData(byte* buf,
# 1447 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                                __uint16_t
# 1447 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                                         t, ByteOrder byteOrder)
   {
       return us2Data(buf, t, byteOrder);
   }




   template<>
   inline long toData(byte* buf,
# 1456 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                                __uint32_t
# 1456 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                                         t, ByteOrder byteOrder)
   {
       return ul2Data(buf, t, byteOrder);
   }




   template<>
   inline long toData(byte* buf, URational t, ByteOrder byteOrder)
   {
       return ur2Data(buf, t, byteOrder);
   }




   template<>
   inline long toData(byte* buf,
# 1474 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                                __int16_t
# 1474 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                                        t, ByteOrder byteOrder)
   {
       return s2Data(buf, t, byteOrder);
   }




   template<>
   inline long toData(byte* buf,
# 1483 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp" 3 4
                                __int32_t
# 1483 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/value.hpp"
                                        t, ByteOrder byteOrder)
   {
       return l2Data(buf, t, byteOrder);
   }




   template<>
   inline long toData(byte* buf, Rational t, ByteOrder byteOrder)
   {
       return r2Data(buf, t, byteOrder);
   }




   template<>
   inline long toData(byte* buf, float t, ByteOrder byteOrder)
   {
       return f2Data(buf, t, byteOrder);
   }




   template<>
   inline long toData(byte* buf, double t, ByteOrder byteOrder)
   {
       return d2Data(buf, t, byteOrder);
   }

   template<typename T>
   ValueType<T>::ValueType()
       : Value(getType<T>()), pDataArea_(0), sizeDataArea_(0)
   {
   }

   template<typename T>
   ValueType<T>::ValueType(TypeId typeId)
       : Value(typeId), pDataArea_(0), sizeDataArea_(0)
   {
   }

   template<typename T>
   ValueType<T>::ValueType(const byte* buf, long len, ByteOrder byteOrder, TypeId typeId)
       : Value(typeId), pDataArea_(0), sizeDataArea_(0)
   {
       read(buf, len, byteOrder);
   }

   template<typename T>
   ValueType<T>::ValueType(const T& val, TypeId typeId)
       : Value(typeId), pDataArea_(0), sizeDataArea_(0)
   {
       value_.push_back(val);
   }

   template<typename T>
   ValueType<T>::ValueType(const ValueType<T>& rhs)
       : Value(rhs), value_(rhs.value_), pDataArea_(0), sizeDataArea_(0)
   {
       if (rhs.sizeDataArea_ > 0) {
           pDataArea_ = new byte[rhs.sizeDataArea_];
           std::memcpy(pDataArea_, rhs.pDataArea_, rhs.sizeDataArea_);
           sizeDataArea_ = rhs.sizeDataArea_;
       }
   }

   template<typename T>
   ValueType<T>::~ValueType()
   {
       delete[] pDataArea_;
   }

   template<typename T>
   ValueType<T>& ValueType<T>::operator=(const ValueType<T>& rhs)
   {
       if (this == &rhs) return *this;
       Value::operator=(rhs);
       value_ = rhs.value_;

       byte* tmp = 0;
       if (rhs.sizeDataArea_ > 0) {
           tmp = new byte[rhs.sizeDataArea_];
           std::memcpy(tmp, rhs.pDataArea_, rhs.sizeDataArea_);
       }
       delete[] pDataArea_;
       pDataArea_ = tmp;
       sizeDataArea_ = rhs.sizeDataArea_;

       return *this;
   }

   template<typename T>
   int ValueType<T>::read(const byte* buf, long len, ByteOrder byteOrder)
   {
       value_.clear();
       long ts = TypeInfo::typeSize(typeId());
       if (ts != 0)
           if (len % ts != 0) len = (len / ts) * ts;
       for (long i = 0; i < len; i += ts) {
           value_.push_back(getValue<T>(buf + i, byteOrder));
       }
       return 0;
   }

   template<typename T>
   int ValueType<T>::read(const std::string& buf)
   {
       std::istringstream is(buf);
       T tmp;
       ValueList val;
       while (!(is.eof())) {
           is >> tmp;
           if (is.fail()) return 1;
           val.push_back(tmp);
       }
       value_.swap(val);
       return 0;
   }

   template<typename T>
   long ValueType<T>::copy(byte* buf, ByteOrder byteOrder) const
   {
       long offset = 0;
       typename ValueList::const_iterator end = value_.end();
       for (typename ValueList::const_iterator i = value_.begin(); i != end; ++i) {
           offset += toData(buf + offset, *i, byteOrder);
       }
       return offset;
   }

   template<typename T>
   long ValueType<T>::count() const
   {
       return static_cast<long>(value_.size());
   }

   template<typename T>
   long ValueType<T>::size() const
   {
       return static_cast<long>(TypeInfo::typeSize(typeId()) * value_.size());
   }

   template<typename T>
   ValueType<T>* ValueType<T>::clone_() const
   {
       return new ValueType<T>(*this);
   }

   template<typename T>
   std::ostream& ValueType<T>::write(std::ostream& os) const
   {
       typename ValueList::const_iterator end = value_.end();
       typename ValueList::const_iterator i = value_.begin();
       while (i != end) {
           os << std::setprecision(15) << *i;
           if (++i != end) os << " ";
       }
       return os;
   }

   template<typename T>
   std::string ValueType<T>::toString(long n) const
   {
       ok_ = true;
       return Exiv2::toString<T>(value_[n]);
   }


   template<typename T>
   long ValueType<T>::toLong(long n) const
   {
       ok_ = true;
       return static_cast<long>(value_[n]);
   }

   template<>
   inline long ValueType<Rational>::toLong(long n) const
   {
       ok_ = (value_[n].second != 0);
       if (!ok_) return 0;
       return value_[n].first / value_[n].second;
   }

   template<>
   inline long ValueType<URational>::toLong(long n) const
   {
       ok_ = (value_[n].second != 0);
       if (!ok_) return 0;
       return value_[n].first / value_[n].second;
   }

   template<typename T>
   float ValueType<T>::toFloat(long n) const
   {
       ok_ = true;
       return static_cast<float>(value_[n]);
   }

   template<>
   inline float ValueType<Rational>::toFloat(long n) const
   {
       ok_ = (value_[n].second != 0);
       if (!ok_) return 0.0f;
       return static_cast<float>(value_[n].first) / value_[n].second;
   }

   template<>
   inline float ValueType<URational>::toFloat(long n) const
   {
       ok_ = (value_[n].second != 0);
       if (!ok_) return 0.0f;
       return static_cast<float>(value_[n].first) / value_[n].second;
   }

   template<typename T>
   Rational ValueType<T>::toRational(long n) const
   {
       ok_ = true;
       return Rational(value_[n], 1);
   }

   template<>
   inline Rational ValueType<Rational>::toRational(long n) const
   {
       ok_ = true;
       return Rational(value_[n].first, value_[n].second);
   }

   template<>
   inline Rational ValueType<URational>::toRational(long n) const
   {
       ok_ = true;
       return Rational(value_[n].first, value_[n].second);
   }

   template<>
   inline Rational ValueType<float>::toRational(long n) const
   {
       ok_ = true;

       return floatToRationalCast(value_[n]);
   }

   template<>
   inline Rational ValueType<double>::toRational(long n) const
   {
       ok_ = true;

       return floatToRationalCast(static_cast<float>(value_[n]));
   }

   template<typename T>
   long ValueType<T>::sizeDataArea() const
   {
       return sizeDataArea_;
   }

   template<typename T>
   DataBuf ValueType<T>::dataArea() const
   {
       return DataBuf(pDataArea_, sizeDataArea_);
   }

   template<typename T>
   int ValueType<T>::setDataArea(const byte* buf, long len)
   {
       byte* tmp = 0;
       if (len > 0) {
           tmp = new byte[len];
           std::memcpy(tmp, buf, len);
       }
       delete[] pDataArea_;
       pDataArea_ = tmp;
       sizeDataArea_ = len;
       return 0;
   }
}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp" 2







namespace Exiv2 {



   class ExifData;
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
   class Key {
   public:

       typedef std::auto_ptr<Key> AutoPtr;




       virtual ~Key();
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
       virtual std::string key() const =0;

       virtual const char* familyName() const =0;

       virtual std::string groupName() const =0;

       virtual std::string tagName() const =0;

       virtual std::string tagLabel() const =0;

       virtual
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp" 3 4
              __uint16_t
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
                       tag() const =0;





       AutoPtr clone() const;






       std::ostream& write(std::ostream& os) const { return os << key(); }


   protected:






       Key& operator=(const Key& rhs);


   private:

       virtual Key* clone_() const =0;

   };


   inline std::ostream& operator<<(std::ostream& os, const Key& key)
   {
       return key.write(os);
   }





   class Metadatum {
   public:



       Metadatum();

       Metadatum(const Metadatum& rhs);

       virtual ~Metadatum();
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
       virtual void setValue(const Value* pValue) =0;






       virtual int setValue(const std::string& buf) =0;
# 166 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
       std::string print(const ExifData* pMetadata =0) const;
# 178 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
       virtual long copy(byte* buf, ByteOrder byteOrder) const =0;
# 200 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
       virtual std::ostream& write(
                 std::ostream& os,
           const ExifData* pMetadata =0
       ) const =0;






       virtual std::string key() const =0;

       virtual const char* familyName() const =0;

       virtual std::string groupName() const =0;

       virtual std::string tagName() const =0;

       virtual std::string tagLabel() const =0;

       virtual
# 220 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp" 3 4
              __uint16_t
# 220 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
                       tag() const =0;

       virtual TypeId typeId() const =0;

       virtual const char* typeName() const =0;

       virtual long typeSize() const =0;

       virtual long count() const =0;

       virtual long size() const =0;

       virtual std::string toString() const =0;





       virtual std::string toString(long n) const =0;





       virtual long toLong(long n =0) const =0;





       virtual float toFloat(long n =0) const =0;





       virtual Rational toRational(long n =0) const =0;
# 270 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
       virtual Value::AutoPtr getValue() const =0;
# 284 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/metadatum.hpp"
       virtual const Value& value() const =0;


   protected:






       Metadatum& operator=(const Metadatum& rhs);


   };





   inline std::ostream& operator<<(std::ostream& os, const Metadatum& md)
   {
       return md.write(os);
   }





   bool cmpMetadataByTag(const Metadatum& lhs, const Metadatum& rhs);




   bool cmpMetadataByKey(const Metadatum& lhs, const Metadatum& rhs);

}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp" 1
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
namespace Exiv2 {



   class ExifData;
   class ExifKey;
   class Value;
   struct TagInfo;





   typedef std::ostream& (*PrintFct)(std::ostream&, const Value&, const ExifData* pExifData);

   typedef const TagInfo* (*TagListFct)();





   struct GroupInfo {
       struct GroupName;
       bool operator==(int ifdId) const;
       bool operator==(const GroupName& groupName) const;
       int ifdId_;
       const char* ifdName_;
       const char* groupName_;
       TagListFct tagList_;
   };


   struct GroupInfo::GroupName {
       GroupName(const std::string& groupName);
       std::string g_;
   };


   struct TagInfo {

       TagInfo(

# 86 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp" 3 4
          __uint16_t
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
                   tag,
           const char* name,
           const char* title,
           const char* desc,
           int ifdId,
           int sectionId,
           TypeId typeId,

# 93 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp" 3 4
          __int16_t
# 93 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
                  count,
           PrintFct printFct
       );

# 96 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp" 3 4
      __uint16_t
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
               tag_;
       const char* name_;
       const char* title_;
       const char* desc_;
       int ifdId_;
       int sectionId_;
       TypeId typeId_;

# 103 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp" 3 4
      __int16_t
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
              count_;
       PrintFct printFct_;
   };


   class ExifTags {

       ExifTags();

       ExifTags(const ExifTags& rhs);

       ExifTags& operator=(const ExifTags& rhs);

   public:

       static const GroupInfo* groupList();

       static const TagInfo* tagList(const std::string& groupName);


       static void taglist(std::ostream& os);

       static void taglist(std::ostream& os, const std::string& groupName);


       static const char* sectionName(const ExifKey& key);

       static
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp" 3 4
             __uint16_t
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
                      defaultCount(const ExifKey& key);

       static const char* ifdName(const std::string& groupName);




       static bool isMakerGroup(const std::string& groupName);





       static bool isExifGroup(const std::string& groupName);

   };




   class ExifKey : public Key {
   public:

       typedef std::auto_ptr<ExifKey> AutoPtr;
# 165 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
       explicit ExifKey(const std::string& key);
# 175 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
       ExifKey(
# 175 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp" 3 4
              __uint16_t
# 175 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
                       tag, const std::string& groupName);






       ExifKey(const TagInfo& ti);

       ExifKey(const ExifKey& rhs);

       virtual ~ExifKey();







       ExifKey& operator=(const ExifKey& rhs);

       void setIdx(int idx);




       virtual std::string key() const;
       virtual const char* familyName() const;
       virtual std::string groupName() const;

       int ifdId() const;
       virtual std::string tagName() const;
       virtual
# 207 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp" 3 4
              __uint16_t
# 207 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/tags.hpp"
                       tag() const;
       virtual std::string tagLabel() const;

       std::string tagDesc() const;

       TypeId defaultTypeId() const;

       AutoPtr clone() const;

       int idx() const;


   private:

       virtual ExifKey* clone_() const;

   private:

       struct Impl;
       Impl* p_;

   };





   std::ostream& operator<<(std::ostream& os, const TagInfo& ti);

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 2





# 1 "/usr/include/g++/list" 1 3
# 58 "/usr/include/g++/list" 3

# 59 "/usr/include/g++/list" 3




# 1 "/usr/include/g++/bits/stl_list.h" 1 3
# 64 "/usr/include/g++/bits/stl_list.h" 3

# 64 "/usr/include/g++/bits/stl_list.h" 3
namespace std __attribute__ ((__visibility__ ("default")))
{
 namespace __detail
 {

# 77 "/usr/include/g++/bits/stl_list.h" 3
   struct _List_node_base
   {
     _List_node_base* _M_next;
     _List_node_base* _M_prev;

     static void
     swap(_List_node_base& __x, _List_node_base& __y) throw();

     void
     _M_transfer(_List_node_base* const __first,
   _List_node_base* const __last) throw();

     void
     _M_reverse() throw();

     void
     _M_hook(_List_node_base* const __position) throw();

     void
     _M_unhook() throw();
   };


 }




 template<typename _Tp>
   struct _List_node : public __detail::_List_node_base
   {

     _Tp _M_data;







   };






 template<typename _Tp>
   struct _List_iterator
   {
     typedef _List_iterator<_Tp> _Self;
     typedef _List_node<_Tp> _Node;

     typedef ptrdiff_t difference_type;
     typedef std::bidirectional_iterator_tag iterator_category;
     typedef _Tp value_type;
     typedef _Tp* pointer;
     typedef _Tp& reference;

     _List_iterator()
     : _M_node() { }

     explicit
     _List_iterator(__detail::_List_node_base* __x)
     : _M_node(__x) { }

     _Self
     _M_const_cast() const
     { return *this; }


     reference
     operator*() const
     { return static_cast<_Node*>(_M_node)->_M_data; }

     pointer
     operator->() const
     { return std::__addressof(static_cast<_Node*>(_M_node)->_M_data); }

     _Self&
     operator++()
     {
_M_node = _M_node->_M_next;
return *this;
     }

     _Self
     operator++(int)
     {
_Self __tmp = *this;
_M_node = _M_node->_M_next;
return __tmp;
     }

     _Self&
     operator--()
     {
_M_node = _M_node->_M_prev;
return *this;
     }

     _Self
     operator--(int)
     {
_Self __tmp = *this;
_M_node = _M_node->_M_prev;
return __tmp;
     }

     bool
     operator==(const _Self& __x) const
     { return _M_node == __x._M_node; }

     bool
     operator!=(const _Self& __x) const
     { return _M_node != __x._M_node; }


     __detail::_List_node_base* _M_node;
   };






 template<typename _Tp>
   struct _List_const_iterator
   {
     typedef _List_const_iterator<_Tp> _Self;
     typedef const _List_node<_Tp> _Node;
     typedef _List_iterator<_Tp> iterator;

     typedef ptrdiff_t difference_type;
     typedef std::bidirectional_iterator_tag iterator_category;
     typedef _Tp value_type;
     typedef const _Tp* pointer;
     typedef const _Tp& reference;

     _List_const_iterator()
     : _M_node() { }

     explicit
     _List_const_iterator(const __detail::_List_node_base* __x)

     : _M_node(__x) { }

     _List_const_iterator(const iterator& __x)
     : _M_node(__x._M_node) { }

     iterator
     _M_const_cast() const
     { return iterator(const_cast<__detail::_List_node_base*>(_M_node)); }



     reference
     operator*() const
     { return static_cast<_Node*>(_M_node)->_M_data; }

     pointer
     operator->() const
     { return std::__addressof(static_cast<_Node*>(_M_node)->_M_data); }

     _Self&
     operator++()
     {
_M_node = _M_node->_M_next;
return *this;
     }

     _Self
     operator++(int)
     {
_Self __tmp = *this;
_M_node = _M_node->_M_next;
return __tmp;
     }

     _Self&
     operator--()
     {
_M_node = _M_node->_M_prev;
return *this;
     }

     _Self
     operator--(int)
     {
_Self __tmp = *this;
_M_node = _M_node->_M_prev;
return __tmp;
     }

     bool
     operator==(const _Self& __x) const
     { return _M_node == __x._M_node; }

     bool
     operator!=(const _Self& __x) const
     { return _M_node != __x._M_node; }


     const __detail::_List_node_base* _M_node;
   };

 template<typename _Val>
   inline bool
   operator==(const _List_iterator<_Val>& __x,
       const _List_const_iterator<_Val>& __y)
   { return __x._M_node == __y._M_node; }

 template<typename _Val>
   inline bool
   operator!=(const _List_iterator<_Val>& __x,
              const _List_const_iterator<_Val>& __y)
   { return __x._M_node != __y._M_node; }

namespace __cxx11 {

 template<typename _Tp, typename _Alloc>
   class _List_base
   {
   protected:
# 314 "/usr/include/g++/bits/stl_list.h" 3
     typedef typename _Alloc::template rebind<_List_node<_Tp> >::other
       _Node_alloc_type;

     typedef typename _Alloc::template rebind<_Tp>::other _Tp_alloc_type;

     static size_t
     _S_distance(const __detail::_List_node_base* __first,
   const __detail::_List_node_base* __last)
     {
size_t __n = 0;
while (__first != __last)
  {
    __first = __first->_M_next;
    ++__n;
  }
return __n;
     }

     struct _List_impl
     : public _Node_alloc_type
     {

_List_node<size_t> _M_node;




_List_impl()
: _Node_alloc_type(), _M_node()
{ }

_List_impl(const _Node_alloc_type& __a)
: _Node_alloc_type(__a), _M_node()
{ }






     };

     _List_impl _M_impl;


     size_t _M_get_size() const { return _M_impl._M_node._M_data; }

     void _M_set_size(size_t __n) { _M_impl._M_node._M_data = __n; }

     void _M_inc_size(size_t __n) { _M_impl._M_node._M_data += __n; }

     void _M_dec_size(size_t __n) { _M_impl._M_node._M_data -= __n; }

     size_t
     _M_distance(const __detail::_List_node_base* __first,
   const __detail::_List_node_base* __last) const
     { return _S_distance(__first, __last); }


     size_t _M_node_count() const { return _M_impl._M_node._M_data; }
# 390 "/usr/include/g++/bits/stl_list.h" 3
     _List_node<_Tp>*
     _M_get_node()
     { return _M_impl._Node_alloc_type::allocate(1); }

     void
     _M_put_node(_List_node<_Tp>* __p)
     { _M_impl._Node_alloc_type::deallocate(__p, 1); }

 public:
     typedef _Alloc allocator_type;

     _Node_alloc_type&
     _M_get_Node_allocator()
     { return *static_cast<_Node_alloc_type*>(&_M_impl); }

     const _Node_alloc_type&
     _M_get_Node_allocator() const
     { return *static_cast<const _Node_alloc_type*>(&_M_impl); }

     _Tp_alloc_type
     _M_get_Tp_allocator() const
     { return _Tp_alloc_type(_M_get_Node_allocator()); }

     allocator_type
     get_allocator() const
     { return allocator_type(_M_get_Node_allocator()); }

     _List_base()
     : _M_impl()
     { _M_init(); }

     _List_base(const _Node_alloc_type& __a)
     : _M_impl(__a)
     { _M_init(); }
# 445 "/usr/include/g++/bits/stl_list.h" 3
     ~_List_base()
     { _M_clear(); }

     void
     _M_clear() ;

     void
     _M_init()
     {
       this->_M_impl._M_node._M_next = &this->_M_impl._M_node;
       this->_M_impl._M_node._M_prev = &this->_M_impl._M_node;
_M_set_size(0);
     }
   };
# 506 "/usr/include/g++/bits/stl_list.h" 3
 template<typename _Tp, typename _Alloc = std::allocator<_Tp> >
   class list : protected _List_base<_Tp, _Alloc>
   {

     typedef typename _Alloc::value_type _Alloc_value_type;



     typedef _List_base<_Tp, _Alloc> _Base;
     typedef typename _Base::_Tp_alloc_type _Tp_alloc_type;
     typedef typename _Base::_Node_alloc_type _Node_alloc_type;

   public:
     typedef _Tp value_type;
     typedef typename _Tp_alloc_type::pointer pointer;
     typedef typename _Tp_alloc_type::const_pointer const_pointer;
     typedef typename _Tp_alloc_type::reference reference;
     typedef typename _Tp_alloc_type::const_reference const_reference;
     typedef _List_iterator<_Tp> iterator;
     typedef _List_const_iterator<_Tp> const_iterator;
     typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
     typedef std::reverse_iterator<iterator> reverse_iterator;
     typedef size_t size_type;
     typedef ptrdiff_t difference_type;
     typedef _Alloc allocator_type;

   protected:


     typedef _List_node<_Tp> _Node;

     using _Base::_M_impl;
     using _Base::_M_put_node;
     using _Base::_M_get_node;
     using _Base::_M_get_Tp_allocator;
     using _Base::_M_get_Node_allocator;
# 550 "/usr/include/g++/bits/stl_list.h" 3
     _Node*
     _M_create_node(const value_type& __x)
     {
_Node* __p = this->_M_get_node();
try
  {
    _M_get_Tp_allocator().construct
      (std::__addressof(__p->_M_data), __x);
  }
catch(...)
  {
    _M_put_node(__p);
    throw;
  }
return __p;
     }
# 586 "/usr/include/g++/bits/stl_list.h" 3
   public:






     list()



     : _Base() { }





     explicit
     list(const allocator_type& __a)
     : _Base(_Node_alloc_type(__a)) { }
# 641 "/usr/include/g++/bits/stl_list.h" 3
     explicit
     list(size_type __n, const value_type& __value = value_type(),
   const allocator_type& __a = allocator_type())
     : _Base(_Node_alloc_type(__a))
     { _M_fill_initialize(__n, __value); }
# 655 "/usr/include/g++/bits/stl_list.h" 3
     list(const list& __x)
     : _Base(__x._M_get_Node_allocator())
     { _M_initialize_dispatch(__x.begin(), __x.end(), __false_type()); }
# 702 "/usr/include/g++/bits/stl_list.h" 3
     template<typename _InputIterator>
       list(_InputIterator __first, _InputIterator __last,
     const allocator_type& __a = allocator_type())
: _Base(_Node_alloc_type(__a))
       {

  typedef typename std::__is_integer<_InputIterator>::__type _Integral;
  _M_initialize_dispatch(__first, __last, _Integral());
}
# 728 "/usr/include/g++/bits/stl_list.h" 3
     list&
     operator=(const list& __x);
# 774 "/usr/include/g++/bits/stl_list.h" 3
     void
     assign(size_type __n, const value_type& __val)
     { _M_fill_assign(__n, __val); }
# 797 "/usr/include/g++/bits/stl_list.h" 3
     template<typename _InputIterator>
       void
       assign(_InputIterator __first, _InputIterator __last)
       {

  typedef typename std::__is_integer<_InputIterator>::__type _Integral;
  _M_assign_dispatch(__first, __last, _Integral());
}
# 821 "/usr/include/g++/bits/stl_list.h" 3
     allocator_type
     get_allocator() const
     { return _Base::get_allocator(); }






     iterator
     begin()
     { return iterator(this->_M_impl._M_node._M_next); }






     const_iterator
     begin() const
     { return const_iterator(this->_M_impl._M_node._M_next); }






     iterator
     end()
     { return iterator(&this->_M_impl._M_node); }






     const_iterator
     end() const
     { return const_iterator(&this->_M_impl._M_node); }






     reverse_iterator
     rbegin()
     { return reverse_iterator(end()); }






     const_reverse_iterator
     rbegin() const
     { return const_reverse_iterator(end()); }






     reverse_iterator
     rend()
     { return reverse_iterator(begin()); }






     const_reverse_iterator
     rend() const
     { return const_reverse_iterator(begin()); }
# 940 "/usr/include/g++/bits/stl_list.h" 3
     bool
     empty() const
     { return this->_M_impl._M_node._M_next == &this->_M_impl._M_node; }


     size_type
     size() const
     { return this->_M_node_count(); }


     size_type
     max_size() const
     { return _M_get_Node_allocator().max_size(); }
# 990 "/usr/include/g++/bits/stl_list.h" 3
     void
     resize(size_type __new_size, value_type __x = value_type());







     reference
     front()
     { return *begin(); }





     const_reference
     front() const
     { return *begin(); }





     reference
     back()
     {
iterator __tmp = end();
--__tmp;
return *__tmp;
     }





     const_reference
     back() const
     {
const_iterator __tmp = end();
--__tmp;
return *__tmp;
     }
# 1046 "/usr/include/g++/bits/stl_list.h" 3
     void
     push_front(const value_type& __x)
     { this->_M_insert(begin(), __x); }
# 1073 "/usr/include/g++/bits/stl_list.h" 3
     void
     pop_front()
     { this->_M_erase(begin()); }
# 1087 "/usr/include/g++/bits/stl_list.h" 3
     void
     push_back(const value_type& __x)
     { this->_M_insert(end(), __x); }
# 1113 "/usr/include/g++/bits/stl_list.h" 3
     void
     pop_back()
     { this->_M_erase(iterator(this->_M_impl._M_node._M_prev)); }
# 1159 "/usr/include/g++/bits/stl_list.h" 3
     iterator
     insert(iterator __position, const value_type& __x);
# 1229 "/usr/include/g++/bits/stl_list.h" 3
     void
     insert(iterator __position, size_type __n, const value_type& __x)
     {
list __tmp(__n, __x, get_allocator());
splice(__position, __tmp);
     }
# 1272 "/usr/include/g++/bits/stl_list.h" 3
     template<typename _InputIterator>
       void
       insert(iterator __position, _InputIterator __first,
       _InputIterator __last)
       {
  list __tmp(__first, __last, get_allocator());
  splice(__position, __tmp);
}
# 1297 "/usr/include/g++/bits/stl_list.h" 3
     iterator



     erase(iterator __position);
# 1322 "/usr/include/g++/bits/stl_list.h" 3
     iterator



     erase(iterator __first, iterator __last)

     {
while (__first != __last)
  __first = erase(__first);
return __last._M_const_cast();
     }
# 1343 "/usr/include/g++/bits/stl_list.h" 3
     void
     swap(list& __x)
     {
__detail::_List_node_base::swap(this->_M_impl._M_node,
    __x._M_impl._M_node);

size_t __xsize = __x._M_get_size();
__x._M_set_size(this->_M_get_size());
this->_M_set_size(__xsize);



std::__alloc_swap<typename _Base::_Node_alloc_type>::
  _S_do_it(_M_get_Node_allocator(), __x._M_get_Node_allocator());
     }







     void
     clear()
     {
       _Base::_M_clear();
       _Base::_M_init();
     }
# 1384 "/usr/include/g++/bits/stl_list.h" 3
     void



     splice(iterator __position, list& __x)

     {
if (!__x.empty())
  {
    _M_check_equal_allocators(__x);

    this->_M_transfer(__position._M_const_cast(),
        __x.begin(), __x.end());

    this->_M_inc_size(__x._M_get_size());
    __x._M_set_size(0);
  }
     }
# 1432 "/usr/include/g++/bits/stl_list.h" 3
     void
     splice(iterator __position, list& __x, iterator __i)

     {
iterator __j = __i._M_const_cast();
++__j;
if (__position == __i || __position == __j)
  return;

if (this != &__x)
  _M_check_equal_allocators(__x);

this->_M_transfer(__position._M_const_cast(),
    __i._M_const_cast(), __j);

this->_M_inc_size(1);
__x._M_dec_size(1);
     }
# 1497 "/usr/include/g++/bits/stl_list.h" 3
     void
     splice(iterator __position, list& __x, iterator __first,
     iterator __last)

     {
if (__first != __last)
  {
    if (this != &__x)
      _M_check_equal_allocators(__x);

    size_t __n = this->_M_distance(__first._M_node, __last._M_node);
    this->_M_inc_size(__n);
    __x._M_dec_size(__n);

    this->_M_transfer(__position._M_const_cast(),
        __first._M_const_cast(),
        __last._M_const_cast());
  }
     }
# 1548 "/usr/include/g++/bits/stl_list.h" 3
     void
     remove(const _Tp& __value);
# 1562 "/usr/include/g++/bits/stl_list.h" 3
     template<typename _Predicate>
       void
       remove_if(_Predicate);
# 1576 "/usr/include/g++/bits/stl_list.h" 3
     void
     unique();
# 1591 "/usr/include/g++/bits/stl_list.h" 3
     template<typename _BinaryPredicate>
       void
       unique(_BinaryPredicate);
# 1612 "/usr/include/g++/bits/stl_list.h" 3
     void
     merge(list& __x);
# 1639 "/usr/include/g++/bits/stl_list.h" 3
     template<typename _StrictWeakOrdering>
       void
       merge(list& __x, _StrictWeakOrdering __comp);







     void
     reverse()
     { this->_M_impl._M_node._M_reverse(); }







     void
     sort();







     template<typename _StrictWeakOrdering>
       void
       sort(_StrictWeakOrdering);

   protected:






     template<typename _Integer>
       void
       _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
       { _M_fill_initialize(static_cast<size_type>(__n), __x); }


     template<typename _InputIterator>
       void
       _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
         __false_type)
       {
  for (; __first != __last; ++__first)



    push_back(*__first);

}



     void
     _M_fill_initialize(size_type __n, const value_type& __x)
     {
for (; __n; --__n)
  push_back(__x);
     }
# 1727 "/usr/include/g++/bits/stl_list.h" 3
     template<typename _Integer>
       void
       _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
       { _M_fill_assign(__n, __val); }


     template<typename _InputIterator>
       void
       _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
     __false_type);



     void
     _M_fill_assign(size_type __n, const value_type& __val);



     void
     _M_transfer(iterator __position, iterator __first, iterator __last)
     { __position._M_node->_M_transfer(__first._M_node, __last._M_node); }



     void
     _M_insert(iterator __position, const value_type& __x)
     {
       _Node* __tmp = _M_create_node(__x);
       __tmp->_M_hook(__position._M_node);
this->_M_inc_size(1);
     }
# 1770 "/usr/include/g++/bits/stl_list.h" 3
     void
     _M_erase(iterator __position)
     {
this->_M_dec_size(1);
       __position._M_node->_M_unhook();
       _Node* __n = static_cast<_Node*>(__position._M_node);



_M_get_Tp_allocator().destroy(std::__addressof(__n->_M_data));

       _M_put_node(__n);
     }


     void
     _M_check_equal_allocators(list& __x)
     {
if (std::__alloc_neq<typename _Base::_Node_alloc_type>::
    _S_do_it(_M_get_Node_allocator(), __x._M_get_Node_allocator()))
  __builtin_abort();
     }
   };
}
# 1805 "/usr/include/g++/bits/stl_list.h" 3
 template<typename _Tp, typename _Alloc>
   inline bool
   operator==(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
   {
     typedef typename list<_Tp, _Alloc>::const_iterator const_iterator;
     const_iterator __end1 = __x.end();
     const_iterator __end2 = __y.end();

     const_iterator __i1 = __x.begin();
     const_iterator __i2 = __y.begin();
     while (__i1 != __end1 && __i2 != __end2 && *__i1 == *__i2)
{
  ++__i1;
  ++__i2;
}
     return __i1 == __end1 && __i2 == __end2;
   }
# 1834 "/usr/include/g++/bits/stl_list.h" 3
 template<typename _Tp, typename _Alloc>
   inline bool
   operator<(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
   { return std::lexicographical_compare(__x.begin(), __x.end(),
      __y.begin(), __y.end()); }


 template<typename _Tp, typename _Alloc>
   inline bool
   operator!=(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
   { return !(__x == __y); }


 template<typename _Tp, typename _Alloc>
   inline bool
   operator>(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
   { return __y < __x; }


 template<typename _Tp, typename _Alloc>
   inline bool
   operator<=(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
   { return !(__y < __x); }


 template<typename _Tp, typename _Alloc>
   inline bool
   operator>=(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
   { return !(__x < __y); }


 template<typename _Tp, typename _Alloc>
   inline void
   swap(list<_Tp, _Alloc>& __x, list<_Tp, _Alloc>& __y)
   { __x.swap(__y); }


}
# 64 "/usr/include/g++/list" 2 3
# 1 "/usr/include/g++/bits/list.tcc" 1 3
# 59 "/usr/include/g++/bits/list.tcc" 3
namespace std __attribute__ ((__visibility__ ("default")))
{


 template<typename _Tp, typename _Alloc>
   void
   _List_base<_Tp, _Alloc>::
   _M_clear()
   {
     typedef _List_node<_Tp> _Node;
     __detail::_List_node_base* __cur = _M_impl._M_node._M_next;
     while (__cur != &_M_impl._M_node)
{
  _Node* __tmp = static_cast<_Node*>(__cur);
  __cur = __tmp->_M_next;



  _M_get_Tp_allocator().destroy(std::__addressof(__tmp->_M_data));

  _M_put_node(__tmp);
}
   }
# 97 "/usr/include/g++/bits/list.tcc" 3
 template<typename _Tp, typename _Alloc>
   typename list<_Tp, _Alloc>::iterator
   list<_Tp, _Alloc>::



   insert(iterator __position, const value_type& __x)

   {
     _Node* __tmp = _M_create_node(__x);
     __tmp->_M_hook(__position._M_const_cast()._M_node);
     this->_M_inc_size(1);
     return iterator(__tmp);
   }
# 146 "/usr/include/g++/bits/list.tcc" 3
 template<typename _Tp, typename _Alloc>
   typename list<_Tp, _Alloc>::iterator
   list<_Tp, _Alloc>::



   erase(iterator __position)

   {
     iterator __ret = iterator(__position._M_node->_M_next);
     _M_erase(__position._M_const_cast());
     return __ret;
   }
# 210 "/usr/include/g++/bits/list.tcc" 3
 template<typename _Tp, typename _Alloc>
   void
   list<_Tp, _Alloc>::
   resize(size_type __new_size, value_type __x)
   {
     iterator __i = begin();
     size_type __len = 0;
     for (; __i != end() && __len < __new_size; ++__i, ++__len)
       ;
     if (__len == __new_size)
       erase(__i, end());
     else
       insert(end(), __new_size - __len, __x);
   }


 template<typename _Tp, typename _Alloc>
   list<_Tp, _Alloc>&
   list<_Tp, _Alloc>::
   operator=(const list& __x)
   {
     if (this != &__x)
{
  iterator __first1 = begin();
  iterator __last1 = end();
  const_iterator __first2 = __x.begin();
  const_iterator __last2 = __x.end();
  for (; __first1 != __last1 && __first2 != __last2;
       ++__first1, ++__first2)
    *__first1 = *__first2;
  if (__first2 == __last2)
    erase(__first1, __last1);
  else
    insert(__last1, __first2, __last2);
}
     return *this;
   }

 template<typename _Tp, typename _Alloc>
   void
   list<_Tp, _Alloc>::
   _M_fill_assign(size_type __n, const value_type& __val)
   {
     iterator __i = begin();
     for (; __i != end() && __n > 0; ++__i, --__n)
       *__i = __val;
     if (__n > 0)
       insert(end(), __n, __val);
     else
       erase(__i, end());
   }

 template<typename _Tp, typename _Alloc>
   template <typename _InputIterator>
     void
     list<_Tp, _Alloc>::
     _M_assign_dispatch(_InputIterator __first2, _InputIterator __last2,
   __false_type)
     {
       iterator __first1 = begin();
       iterator __last1 = end();
       for (; __first1 != __last1 && __first2 != __last2;
     ++__first1, ++__first2)
         *__first1 = *__first2;
       if (__first2 == __last2)
         erase(__first1, __last1);
       else
         insert(__last1, __first2, __last2);
     }

 template<typename _Tp, typename _Alloc>
   void
   list<_Tp, _Alloc>::
   remove(const value_type& __value)
   {
     iterator __first = begin();
     iterator __last = end();
     iterator __extra = __last;
     while (__first != __last)
{
  iterator __next = __first;
  ++__next;
  if (*__first == __value)
    {



      if (std::__addressof(*__first) != std::__addressof(__value))
 _M_erase(__first);
      else
 __extra = __first;
    }
  __first = __next;
}
     if (__extra != __last)
_M_erase(__extra);
   }

 template<typename _Tp, typename _Alloc>
   void
   list<_Tp, _Alloc>::
   unique()
   {
     iterator __first = begin();
     iterator __last = end();
     if (__first == __last)
return;
     iterator __next = __first;
     while (++__next != __last)
{
  if (*__first == *__next)
    _M_erase(__next);
  else
    __first = __next;
  __next = __first;
}
   }

 template<typename _Tp, typename _Alloc>
   void
   list<_Tp, _Alloc>::



   merge(list& __x)

   {


     if (this != &__x)
{
  _M_check_equal_allocators(__x);

  iterator __first1 = begin();
  iterator __last1 = end();
  iterator __first2 = __x.begin();
  iterator __last2 = __x.end();
  while (__first1 != __last1 && __first2 != __last2)
    if (*__first2 < *__first1)
      {
 iterator __next = __first2;
 _M_transfer(__first1, __first2, ++__next);
 __first2 = __next;
      }
    else
      ++__first1;
  if (__first2 != __last2)
    _M_transfer(__last1, __first2, __last2);

  this->_M_inc_size(__x._M_get_size());
  __x._M_set_size(0);
}
   }

 template<typename _Tp, typename _Alloc>
   template <typename _StrictWeakOrdering>
     void
     list<_Tp, _Alloc>::



     merge(list& __x, _StrictWeakOrdering __comp)

     {


if (this != &__x)
  {
    _M_check_equal_allocators(__x);

    iterator __first1 = begin();
    iterator __last1 = end();
    iterator __first2 = __x.begin();
    iterator __last2 = __x.end();
    while (__first1 != __last1 && __first2 != __last2)
      if (__comp(*__first2, *__first1))
 {
   iterator __next = __first2;
   _M_transfer(__first1, __first2, ++__next);
   __first2 = __next;
 }
      else
 ++__first1;
    if (__first2 != __last2)
      _M_transfer(__last1, __first2, __last2);

    this->_M_inc_size(__x._M_get_size());
    __x._M_set_size(0);
  }
     }

 template<typename _Tp, typename _Alloc>
   void
   list<_Tp, _Alloc>::
   sort()
   {

     if (this->_M_impl._M_node._M_next != &this->_M_impl._M_node
  && this->_M_impl._M_node._M_next->_M_next != &this->_M_impl._M_node)
     {
       list __carry;
       list __tmp[64];
       list * __fill = &__tmp[0];
       list * __counter;

       do
  {
    __carry.splice(__carry.begin(), *this, begin());

    for(__counter = &__tmp[0];
 __counter != __fill && !__counter->empty();
 ++__counter)
      {
 __counter->merge(__carry);
 __carry.swap(*__counter);
      }
    __carry.swap(*__counter);
    if (__counter == __fill)
      ++__fill;
  }
while ( !empty() );

       for (__counter = &__tmp[1]; __counter != __fill; ++__counter)
         __counter->merge(*(__counter - 1));
       swap( *(__fill - 1) );
     }
   }

 template<typename _Tp, typename _Alloc>
   template <typename _Predicate>
     void
     list<_Tp, _Alloc>::
     remove_if(_Predicate __pred)
     {
       iterator __first = begin();
       iterator __last = end();
       while (__first != __last)
  {
    iterator __next = __first;
    ++__next;
    if (__pred(*__first))
      _M_erase(__first);
    __first = __next;
  }
     }

 template<typename _Tp, typename _Alloc>
   template <typename _BinaryPredicate>
     void
     list<_Tp, _Alloc>::
     unique(_BinaryPredicate __binary_pred)
     {
       iterator __first = begin();
       iterator __last = end();
       if (__first == __last)
  return;
       iterator __next = __first;
       while (++__next != __last)
  {
    if (__binary_pred(*__first, *__next))
      _M_erase(__next);
    else
      __first = __next;
    __next = __first;
  }
     }

 template<typename _Tp, typename _Alloc>
   template <typename _StrictWeakOrdering>
     void
     list<_Tp, _Alloc>::
     sort(_StrictWeakOrdering __comp)
     {

if (this->_M_impl._M_node._M_next != &this->_M_impl._M_node
    && this->_M_impl._M_node._M_next->_M_next != &this->_M_impl._M_node)
  {
    list __carry;
    list __tmp[64];
    list * __fill = &__tmp[0];
    list * __counter;

    do
      {
 __carry.splice(__carry.begin(), *this, begin());

 for(__counter = &__tmp[0];
     __counter != __fill && !__counter->empty();
     ++__counter)
   {
     __counter->merge(__carry, __comp);
     __carry.swap(*__counter);
   }
 __carry.swap(*__counter);
 if (__counter == __fill)
   ++__fill;
      }
    while ( !empty() );

    for (__counter = &__tmp[1]; __counter != __fill; ++__counter)
      __counter->merge(*(__counter - 1), __comp);
    swap(*(__fill - 1));
  }
     }


}
# 65 "/usr/include/g++/list" 2 3
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 2
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"

# 50 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
namespace Exiv2 {



   class ExifData;
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
   class Exifdatum : public Metadatum {
       template<typename T> friend Exifdatum& setValue(Exifdatum&, const T&);
   public:
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       explicit Exifdatum(const ExifKey& key, const Value* pValue =0);

       Exifdatum(const Exifdatum& rhs);

       virtual ~Exifdatum();





       Exifdatum& operator=(const Exifdatum& rhs);




       Exifdatum& operator=(const
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 3 4
                                 __uint16_t
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
                                         & value);




       Exifdatum& operator=(const
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 3 4
                                 __uint32_t
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
                                         & value);




       Exifdatum& operator=(const URational& value);




       Exifdatum& operator=(const
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 3 4
                                 __int16_t
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
                                        & value);




       Exifdatum& operator=(const
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 3 4
                                 __int32_t
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
                                        & value);




       Exifdatum& operator=(const Rational& value);




       Exifdatum& operator=(const std::string& value);




       Exifdatum& operator=(const Value& value);
       void setValue(const Value* pValue);







       int setValue(const std::string& value);
# 152 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       int setDataArea(const byte* buf, long len);





       std::string key() const;
       const char* familyName() const;
       std::string groupName() const;
       std::string tagName() const;
       std::string tagLabel() const;

# 163 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 3 4
      __uint16_t
# 163 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
               tag() const;

       int ifdId() const;

       const char* ifdName() const;

       int idx() const;
# 181 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       long copy(byte* buf, ByteOrder byteOrder) const;
       std::ostream& write(std::ostream& os, const ExifData* pMetadata =0) const;

       TypeId typeId() const;

       const char* typeName() const;

       long typeSize() const;

       long count() const;

       long size() const;

       std::string toString() const;
       std::string toString(long n) const;
       long toLong(long n =0) const;
       float toFloat(long n =0) const;
       Rational toRational(long n =0) const;
       Value::AutoPtr getValue() const;
       const Value& value() const;

       long sizeDataArea() const;
# 215 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       DataBuf dataArea() const;


   private:

       ExifKey::AutoPtr key_;
       Value::AutoPtr value_;

   };
# 236 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
   class ExifThumbC {
   public:



       ExifThumbC(const ExifData& exifData);
# 250 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       DataBuf copy() const;
# 261 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       long writeFile(const std::string& path) const;
# 273 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       const char* mimeType() const;




       const char* extension() const;
# 288 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
   private:

       const ExifData& exifData_;

   };
# 305 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
   class ExifThumb : public ExifThumbC {
   public:



       ExifThumb(ExifData& exifData);
# 332 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       void setJpegThumbnail(
           const std::string& path,
                 URational xres,
                 URational yres,

# 336 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 3 4
                __uint16_t
# 336 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
                             unit
       );
# 368 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       void setJpegThumbnail(
           const byte* buf,
                 long size,
                 URational xres,
                 URational yres,

# 373 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 3 4
                __uint16_t
# 373 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
                          unit
       );
# 388 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       void setJpegThumbnail(const std::string& path);
# 409 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       void setJpegThumbnail(const byte* buf, long size);




       void erase();


   private:

       ExifData& exifData_;

   };


   typedef std::list<Exifdatum> ExifMetadata;
# 438 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
   class ExifData {
   public:

       typedef ExifMetadata::iterator iterator;

       typedef ExifMetadata::const_iterator const_iterator;
# 455 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       Exifdatum& operator[](const std::string& key);






       void add(const ExifKey& key, const Value* pValue);







       void add(const Exifdatum& exifdatum);






       iterator erase(iterator pos);





       iterator erase(iterator beg, iterator end);




       void clear();

       void sortByKey();

       void sortByTag();

       iterator begin() { return exifMetadata_.begin(); }

       iterator end() { return exifMetadata_.end(); }




       iterator findKey(const ExifKey& key);





       const_iterator begin() const { return exifMetadata_.begin(); }

       const_iterator end() const { return exifMetadata_.end(); }




       const_iterator findKey(const ExifKey& key) const;

       bool empty() const { return count() == 0; }

       long count() const { return static_cast<long>(exifMetadata_.size()); }


   private:

       ExifMetadata exifMetadata_;

   };







   class ExifParser {
   public:
# 548 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       static ByteOrder decode(
                 ExifData& exifData,
           const byte* pData,

# 551 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 3 4
                __uint32_t
# 551 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
                          size
       );
# 591 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       static WriteMethod encode(
                 Blob& blob,
           const byte* pData,

# 594 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 3 4
                __uint32_t
# 594 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
                          size,
                 ByteOrder byteOrder,
           const ExifData& exifData
       );
# 618 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp"
       static void encode(
                 Blob& blob,
                 ByteOrder byteOrder,
           const ExifData& exifData
       )
       {
           encode(blob, 0, 0, byteOrder, exifData);
       }

   };

}
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/error.hpp" 1
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/error.hpp"
namespace Exiv2 {
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/error.hpp"
   class LogMsg {

       LogMsg(const LogMsg&);

       LogMsg& operator=(const LogMsg&);
   public:




       enum Level { debug = 0, info = 1, warn = 2, error = 3, mute = 4 };






       typedef void (*Handler)(int, const char*);




       explicit LogMsg(Level msgType) : msgType_(msgType) {}

       ~LogMsg() { if (msgType_ >= level_ && handler_) handler_(msgType_, os_.str().c_str()); }





       std::ostringstream& os() { return os_; }
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/error.hpp"
       static void setLevel(Level level) { level_ = level; }





       static void setHandler(Handler handler) { handler_ = handler; }

       static Level level() { return level_; }

       static Handler handler() { return handler_; }

       static void defaultHandler(int level, const char* s);

   private:


       static Level level_;

       static Handler handler_;

       const Level msgType_;

       std::ostringstream os_;

   };
# 160 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/error.hpp"
   template<typename charT, typename T>
   std::basic_string<charT> toBasicString(const T& arg)
   {
       std::basic_ostringstream<charT> os;
       os << arg;
       return os.str();
   }
# 175 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/error.hpp"
   class AnyError : public std::exception {
   public:



       virtual ~AnyError() throw();





       virtual int code() const throw() =0;

   };


   inline std::ostream& operator<<(std::ostream& os, const AnyError& error)
   {
       return os << error.what();
   }





   template<typename charT>
   class BasicError : public AnyError {
   public:



       explicit BasicError(int code);

       template<typename A>
       BasicError(int code, const A& arg1);

       template<typename A, typename B>
       BasicError(int code, const A& arg1, const B& arg2);

       template<typename A, typename B, typename C>
       BasicError(int code, const A& arg1, const B& arg2, const C& arg3);

       virtual ~BasicError() throw();




       virtual int code() const throw();




       virtual const char* what() const throw();
# 237 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/error.hpp"
   private:



       void setMsg();



       int code_;
       int count_;
       std::basic_string<charT> arg1_;
       std::basic_string<charT> arg2_;
       std::basic_string<charT> arg3_;
       std::string msg_;



   };


   typedef BasicError<char> Error;
# 267 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/error.hpp"
   const char* errMsg(int code);

   template<typename charT>
   BasicError<charT>::BasicError(int code)
       : code_(code), count_(0)
   {
       setMsg();
   }

   template<typename charT> template<typename A>
   BasicError<charT>::BasicError(int code, const A& arg1)
       : code_(code), count_(1), arg1_(toBasicString<charT>(arg1))
   {
       setMsg();
   }

   template<typename charT> template<typename A, typename B>
   BasicError<charT>::BasicError(int code, const A& arg1, const B& arg2)
       : code_(code), count_(2),
         arg1_(toBasicString<charT>(arg1)),
         arg2_(toBasicString<charT>(arg2))
   {
       setMsg();
   }

   template<typename charT> template<typename A, typename B, typename C>
   BasicError<charT>::BasicError(int code, const A& arg1, const B& arg2, const C& arg3)
       : code_(code), count_(3),
         arg1_(toBasicString<charT>(arg1)),
         arg2_(toBasicString<charT>(arg2)),
         arg3_(toBasicString<charT>(arg3))
   {
       setMsg();
   }

   template<typename charT>
   BasicError<charT>::~BasicError() throw()
   {
   }

   template<typename charT>
   int BasicError<charT>::code() const throw()
   {
       return code_;
   }

   template<typename charT>
   const char* BasicError<charT>::what() const throw()
   {
       return msg_.c_str();
   }
# 330 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/error.hpp"
}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 1
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
namespace Exiv2 {





   struct RecordInfo {

       RecordInfo(
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                 __uint16_t
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                          recordId, const char* name, const char* desc);

# 53 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
      __uint16_t
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
               recordId_;
       const char* name_;
       const char* desc_;
   };


   struct DataSet {

       DataSet(

# 62 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
          __uint16_t
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                   number,
           const char* name,
           const char* title,
           const char* desc,
           bool mandatory,
           bool repeatable,

# 68 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
          __uint32_t
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                   minbytes,

# 69 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
          __uint32_t
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                   maxbytes,
           TypeId type,

# 71 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
          __uint16_t
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                   recordId,
           const char* photoshop
       );

# 74 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
      __uint16_t
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
               number_;
       const char* name_;
       const char* title_;
       const char* desc_;
       bool mandatory_;
       bool repeatable_;

# 80 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
      __uint32_t
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
               minbytes_;

# 81 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
      __uint32_t
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
               maxbytes_;
       TypeId type_;

# 83 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
      __uint16_t
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
               recordId_;
       const char* photoshop_;
   };


   class IptcDataSets {
   public:







       static const
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            invalidRecord = 0;
       static const
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            envelope = 1;
       static const
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            application2 = 2;




       static const
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ModelVersion = 0;
       static const
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Destination = 5;
       static const
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            FileFormat = 20;
       static const
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            FileVersion = 22;
       static const
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ServiceId = 30;
       static const
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            EnvelopeNumber = 40;
       static const
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ProductId = 50;
       static const
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            EnvelopePriority = 60;
       static const
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            DateSent = 70;
       static const
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            TimeSent = 80;
       static const
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            CharacterSet = 90;
       static const
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            UNO = 100;
       static const
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ARMId = 120;
       static const
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ARMVersion = 122;
       static const
# 118 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 118 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            RecordVersion = 0;
       static const
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ObjectType = 3;
       static const
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ObjectAttribute = 4;
       static const
# 121 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 121 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ObjectName = 5;
       static const
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            EditStatus = 7;
       static const
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            EditorialUpdate = 8;
       static const
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Urgency = 10;
       static const
# 125 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 125 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Subject = 12;
       static const
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Category = 15;
       static const
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            SuppCategory = 20;
       static const
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            FixtureId = 22;
       static const
# 129 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 129 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Keywords = 25;
       static const
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            LocationCode = 26;
       static const
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            LocationName = 27;
       static const
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ReleaseDate = 30;
       static const
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ReleaseTime = 35;
       static const
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ExpirationDate = 37;
       static const
# 135 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 135 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ExpirationTime = 38;
       static const
# 136 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 136 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            SpecialInstructions = 40;
       static const
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ActionAdvised = 42;
       static const
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ReferenceService = 45;
       static const
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ReferenceDate = 47;
       static const
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ReferenceNumber = 50;
       static const
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            DateCreated = 55;
       static const
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            TimeCreated = 60;
       static const
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            DigitizationDate = 62;
       static const
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            DigitizationTime = 63;
       static const
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Program = 65;
       static const
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ProgramVersion = 70;
       static const
# 147 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 147 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ObjectCycle = 75;
       static const
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Byline = 80;
       static const
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            BylineTitle = 85;
       static const
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            City = 90;
       static const
# 151 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 151 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            SubLocation = 92;
       static const
# 152 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 152 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ProvinceState = 95;
       static const
# 153 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 153 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            CountryCode = 100;
       static const
# 154 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 154 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            CountryName = 101;
       static const
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            TransmissionReference = 103;
       static const
# 156 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 156 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Headline = 105;
       static const
# 157 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 157 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Credit = 110;
       static const
# 158 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 158 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Source = 115;
       static const
# 159 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 159 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Copyright = 116;
       static const
# 160 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 160 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Contact = 118;
       static const
# 161 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 161 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Caption = 120;
       static const
# 162 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 162 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Writer = 122;
       static const
# 163 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 163 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            RasterizedCaption = 125;
       static const
# 164 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 164 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ImageType = 130;
       static const
# 165 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 165 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            ImageOrientation = 131;
       static const
# 166 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 166 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Language = 135;
       static const
# 167 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 167 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            AudioType = 150;
       static const
# 168 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 168 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            AudioRate = 151;
       static const
# 169 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 169 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            AudioResolution = 152;
       static const
# 170 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 170 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            AudioDuration = 153;
       static const
# 171 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 171 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            AudioOutcue = 154;
       static const
# 172 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 172 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            PreviewFormat = 200;
       static const
# 173 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 173 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            PreviewVersion = 201;
       static const
# 174 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                   __uint16_t
# 174 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                            Preview = 202;


   private:

       IptcDataSets() {}

       IptcDataSets(const IptcDataSets& rhs);

       IptcDataSets& operator=(const IptcDataSets& rhs);

   public:
# 194 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
       static std::string dataSetName(
# 194 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                     __uint16_t
# 194 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                              number,
# 194 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                                      __uint16_t
# 194 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                               recordId);






       static const char* dataSetTitle(
# 201 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                      __uint16_t
# 201 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                               number,
# 201 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                                       __uint16_t
# 201 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                                recordId);






       static const char* dataSetDesc(
# 208 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                     __uint16_t
# 208 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                              number,
# 208 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                                      __uint16_t
# 208 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                               recordId);







       static const char* dataSetPsName(
# 216 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                       __uint16_t
# 216 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                number,
# 216 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                                        __uint16_t
# 216 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                                 recordId);






       static bool dataSetRepeatable(
# 223 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                    __uint16_t
# 223 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                             number,
# 223 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                                     __uint16_t
# 223 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                              recordId);
# 234 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
       static
# 234 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
             __uint16_t
# 234 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                      dataSet(const std::string& dataSetName,
# 234 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                                              __uint16_t
# 234 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                                       recordId);

       static TypeId dataSetType(
# 236 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                __uint16_t
# 236 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                         number,
# 236 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                                 __uint16_t
# 236 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                          recordId);







       static std::string recordName(
# 244 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                    __uint16_t
# 244 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                             recordId);





       static const char* recordDesc(
# 250 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                    __uint16_t
# 250 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                             recordId);






       static
# 257 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
             __uint16_t
# 257 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                      recordId(const std::string& recordName);

       static const DataSet* envelopeRecordList();

       static const DataSet* application2RecordList();

       static void dataSetList(std::ostream& os);

   private:
       static int dataSetIdx(
# 266 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                            __uint16_t
# 266 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                     number,
# 266 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                             __uint16_t
# 266 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                      recordId);
       static int dataSetIdx(const std::string& dataSetName,
# 267 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                                                            __uint16_t
# 267 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                                                     recordId);

       static const DataSet* records_[];
       static const RecordInfo recordInfo_[];

   };




   class IptcKey : public Key {
   public:

       typedef std::auto_ptr<IptcKey> AutoPtr;
# 292 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
       explicit IptcKey(const std::string& key);





       IptcKey(
# 298 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
              __uint16_t
# 298 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                       tag,
# 298 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
                            __uint16_t
# 298 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                                     record);

       IptcKey(const IptcKey& rhs);

       virtual ~IptcKey();







       IptcKey& operator=(const IptcKey& rhs);




       virtual std::string key() const;
       virtual const char* familyName() const;




       virtual std::string groupName() const;
       virtual std::string tagName() const;
       virtual std::string tagLabel() const;
       virtual
# 324 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
              __uint16_t
# 324 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
                       tag() const;
       AutoPtr clone() const;

       std::string recordName() const;


# 329 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
      __uint16_t
# 329 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
               record() const;


   protected:






       void makeKey();







       void decomposeKey();


   private:

       virtual IptcKey* clone_() const;


       static const char* familyName_;


# 357 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
      __uint16_t
# 357 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
               tag_;

# 358 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp" 3 4
      __uint16_t
# 358 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/datasets.hpp"
               record_;
       std::string key_;

   };





   std::ostream& operator<<(std::ostream& os, const DataSet& dataSet);

}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 2







namespace Exiv2 {



   class ExifData;
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
   class Iptcdatum : public Metadatum {
   public:
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
       explicit Iptcdatum(const IptcKey& key,
                          const Value* pValue =0);

       Iptcdatum(const Iptcdatum& rhs);

       virtual ~Iptcdatum();





       Iptcdatum& operator=(const Iptcdatum& rhs);




       Iptcdatum& operator=(const
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 3 4
                                 __uint16_t
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
                                         & value);




       Iptcdatum& operator=(const std::string& value);




       Iptcdatum& operator=(const Value& value);
       void setValue(const Value* pValue);
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
       int setValue(const std::string& value);




       long copy(byte* buf, ByteOrder byteOrder) const;
       std::ostream& write(std::ostream& os, const ExifData* pMetadata =0) const;






       std::string key() const;




       std::string recordName() const;





# 134 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 3 4
      __uint16_t
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
               record() const;
       const char* familyName() const;
       std::string groupName() const;




       std::string tagName() const;
       std::string tagLabel() const;


# 144 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 3 4
      __uint16_t
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
               tag() const;
       TypeId typeId() const;
       const char* typeName() const;
       long typeSize() const;
       long count() const;
       long size() const;
       std::string toString() const;
       std::string toString(long n) const;
       long toLong(long n =0) const;
       float toFloat(long n =0) const;
       Rational toRational(long n =0) const;
       Value::AutoPtr getValue() const;
       const Value& value() const;


   private:

       IptcKey::AutoPtr key_;
       Value::AutoPtr value_;

   };


   typedef std::vector<Iptcdatum> IptcMetadata;
# 180 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
   class IptcData {
   public:

       typedef IptcMetadata::iterator iterator;

       typedef IptcMetadata::const_iterator const_iterator;
# 199 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
       Iptcdatum& operator[](const std::string& key);







       int add(const IptcKey& key, Value* value);






       int add(const Iptcdatum& iptcdatum);






       iterator erase(iterator pos);



       void clear() { iptcMetadata_.clear(); }

       void sortByKey();

       void sortByTag();

       iterator begin() { return iptcMetadata_.begin(); }

       iterator end() { return iptcMetadata_.end(); }




       iterator findKey(const IptcKey& key);




       iterator findId(
# 243 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 3 4
                      __uint16_t
# 243 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
                               dataset,

# 244 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 3 4
                      __uint16_t
# 244 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
                               record = IptcDataSets::application2);





       const_iterator begin() const { return iptcMetadata_.begin(); }

       const_iterator end() const { return iptcMetadata_.end(); }




       const_iterator findKey(const IptcKey& key) const;




       const_iterator findId(
# 262 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 3 4
                            __uint16_t
# 262 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
                                     dataset,

# 263 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 3 4
                            __uint16_t
# 263 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
                                     record = IptcDataSets::application2) const;

       bool empty() const { return count() == 0; }

       long count() const { return static_cast<long>(iptcMetadata_.size()); }



       long size() const;



       const char *detectCharset() const;


   private:

       IptcMetadata iptcMetadata_;
   };





   class IptcParser {
   public:
# 300 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
       static int decode(
                 IptcData& iptcData,
           const byte* pData,

# 303 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp" 3 4
                __uint32_t
# 303 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
                          size
       );
# 314 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/iptc.hpp"
       static DataBuf encode(
           const IptcData& iptcData
       );

   private:

       static const byte marker_;

   };

}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp" 1
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp"
namespace Exiv2 {



   class XmpKey;





   enum XmpCategory { xmpInternal, xmpExternal };


   struct XmpPropertyInfo {

       bool operator==(const std::string& name) const;

       const char* name_;
       const char* title_;
       const char* xmpValueType_;
       TypeId typeId_;
       XmpCategory xmpCategory_;
       const char* desc_;
   };


   struct XmpNsInfo {

       struct Prefix {

           Prefix(const std::string& prefix);

           std::string prefix_;
       };

       struct Ns {

           Ns(const std::string& ns);

           std::string ns_;
       };

       bool operator==(const Ns& ns) const;

       bool operator==(const Prefix& prefix) const;

       const char* ns_;
       const char* prefix_;
       const XmpPropertyInfo* xmpPropertyInfo_;
       const char* desc_;
   };


   class XmpProperties {

       XmpProperties();

       XmpProperties(const XmpProperties& rhs);

       XmpProperties& operator=(const XmpProperties& rhs);

   public:






       static const char* propertyTitle(const XmpKey& key);






       static const char* propertyDesc(const XmpKey& key);






       static TypeId propertyType(const XmpKey& key);
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp"
       static const XmpPropertyInfo* propertyInfo(const XmpKey& key);







       static std::string ns(const std::string& prefix);







       static const char* nsDesc(const std::string& prefix);







       static const XmpPropertyInfo* propertyList(const std::string& prefix);







       static const XmpNsInfo* nsInfo(const std::string& prefix);






       static std::string prefix(const std::string& ns);

       static void printProperties(std::ostream& os, const std::string& prefix);


       static std::ostream& printProperty(std::ostream& os,
                                          const std::string& key,
                                          const Value& value);
# 198 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp"
       static void registerNs(const std::string& ns, const std::string& prefix);
# 207 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp"
       static void unregisterNs(const std::string& ns);
# 216 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp"
       static void unregisterNs();

       typedef std::map<std::string, XmpNsInfo> NsRegistry;



       static const XmpNsInfo* lookupNsRegistry(const XmpNsInfo::Prefix& prefix);


       static NsRegistry nsRegistry_;

   };




   class XmpKey : public Key {
   public:

       typedef std::auto_ptr<XmpKey> AutoPtr;
# 247 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp"
       explicit XmpKey(const std::string& key);
# 257 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp"
       XmpKey(const std::string& prefix, const std::string& property);

       XmpKey(const XmpKey& rhs);

       virtual ~XmpKey();





       XmpKey& operator=(const XmpKey& rhs);




       virtual std::string key() const;
       virtual const char* familyName() const;




       virtual std::string groupName() const;
       virtual std::string tagName() const;
       virtual std::string tagLabel() const;

       virtual
# 282 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp" 3 4
              __uint16_t
# 282 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/properties.hpp"
                       tag() const;

       AutoPtr clone() const;



       std::string ns() const;


   private:

       virtual XmpKey* clone_() const;

   private:

       struct Impl;
       Impl* p_;

   };





   std::ostream& operator<<(std::ostream& os, const XmpPropertyInfo& propertyInfo);

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp" 2
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
namespace Exiv2 {



   class ExifData;
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
   class Xmpdatum : public Metadatum {
   public:
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
       explicit Xmpdatum(const XmpKey& key,
                         const Value* pValue =0);

       Xmpdatum(const Xmpdatum& rhs);

       virtual ~Xmpdatum();





       Xmpdatum& operator=(const Xmpdatum& rhs);




       Xmpdatum& operator=(const std::string& value);




       Xmpdatum& operator=(const char* value);




       Xmpdatum& operator=(const bool& value);




       template<typename T>
       Xmpdatum& operator=(const T& value);




       Xmpdatum& operator=(const Value& value);
       void setValue(const Value* pValue);







       int setValue(const std::string& value);





       long copy(byte* buf, ByteOrder byteOrder) const;
       std::ostream& write(std::ostream& os, const ExifData* pMetadata =0) const;






       std::string key() const;
       const char* familyName() const;

       std::string groupName() const;

       std::string tagName() const;
       std::string tagLabel() const;


# 142 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp" 3 4
      __uint16_t
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
               tag() const;
       TypeId typeId() const;
       const char* typeName() const;


       long typeSize() const;
       long count() const;
       long size() const;
       std::string toString() const;
       std::string toString(long n) const;
       long toLong(long n =0) const;
       float toFloat(long n =0) const;
       Rational toRational(long n =0) const;
       Value::AutoPtr getValue() const;
       const Value& value() const;


   private:

       struct Impl;
       Impl* p_;

   };


   typedef std::vector<Xmpdatum> XmpMetadata;
# 179 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
   class XmpData {
   public:

       typedef XmpMetadata::iterator iterator;

       typedef XmpMetadata::const_iterator const_iterator;
# 196 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
       Xmpdatum& operator[](const std::string& key);





       int add(const XmpKey& key, const Value* value);




       int add(const Xmpdatum& xmpdatum);







       iterator erase(iterator pos);

       void clear();

       void sortByKey();

       iterator begin();

       iterator end();




       iterator findKey(const XmpKey& key);





       const_iterator begin() const;

       const_iterator end() const;




       const_iterator findKey(const XmpKey& key) const;

       bool empty() const;

       long count() const;


   private:

       XmpMetadata xmpMetadata_;
   };






   class XmpParser {
   public:

       enum XmpFormatFlags {
           omitPacketWrapper = 0x0010UL,
           readOnlyPacket = 0x0020UL,
           useCompactFormat = 0x0040UL,
           includeThumbnailPad = 0x0100UL,
           exactPacketLength = 0x0200UL,
           writeAliasComments = 0x0400UL,
           omitAllFormatting = 0x0800UL
       };
# 283 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
       static int decode( XmpData& xmpData,
                         const std::string& xmpPacket);
# 302 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
       static int encode( std::string& xmpPacket,
                         const XmpData& xmpData,

# 304 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp" 3 4
                              __uint16_t
# 304 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
                                           formatFlags =useCompactFormat,

# 305 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp" 3 4
                              __uint32_t
# 305 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
                                           padding =0);
# 316 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
       typedef void (*XmpLockFct)(void* pLockData, bool lockUnlock);
# 368 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmp.hpp"
       static bool initialize(XmpParser::XmpLockFct xmpLockFct =0, void* pLockData =0);






       static void terminate();

   private:



       static void registerNs(const std::string& ns,
                              const std::string& prefix);





       static void unregisterNs(const std::string& ns);


       static bool initialized_;
       static XmpLockFct xmpLockFct_;
       static void* pLockData_;

   };




   inline Xmpdatum& Xmpdatum::operator=(const char* value)
   {
       return Xmpdatum::operator=(std::string(value));
   }

   inline Xmpdatum& Xmpdatum::operator=(const bool& value)
   {
       return operator=(value ? "True" : "False");
   }

   template<typename T>
   Xmpdatum& Xmpdatum::operator=(const T& value)
   {
       setValue(Exiv2::toString(value));
       return *this;
   }

}
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 2







namespace Exiv2 {





   namespace ImageType {
       const int none = 0;
   }


   struct NativePreview {
       long position_;

# 64 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 3 4
      __uint32_t
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
               size_;

# 65 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 3 4
      __uint32_t
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
               width_;

# 66 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 3 4
      __uint32_t
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
               height_;
       std::string filter_;
       std::string mimeType_;
   };


   typedef std::vector<NativePreview> NativePreviewList;




   typedef enum { kpsNone, kpsBasic, kpsXMP } PrintStructureOption;
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
   class Image {
   public:

       typedef std::auto_ptr<Image> AutoPtr;
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       Image(int imageType,

# 102 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 3 4
            __uint16_t
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
                             supportedMetadata,
             BasicIo::AutoPtr io);

       virtual ~Image();
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual void printStructure(std::ostream& out, PrintStructureOption option =kpsNone);
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual void readMetadata() =0;
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual void writeMetadata() =0;





       virtual void setExifData(const ExifData& exifData);




       virtual void clearExifData();





       virtual void setIptcData(const IptcData& iptcData);




       virtual void clearIptcData();
# 177 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual void setXmpPacket(const std::string& xmpPacket);
# 190 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual void clearXmpPacket();
# 203 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual void setXmpData(const XmpData& xmpData);
# 217 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual void clearXmpData();





       virtual void setComment(const std::string& comment);




       virtual void clearComment();






       virtual void setMetadata(const Image& image);




       virtual void clearMetadata();
# 252 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual ExifData& exifData();
# 264 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual IptcData& iptcData();
# 276 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual XmpData& xmpData();



       virtual std::string& xmpPacket();
# 295 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       void writeXmpFromPacket(bool flag);
# 305 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       void setByteOrder(ByteOrder byteOrder);
# 314 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       ByteOrder byteOrder() const;





       bool good() const;
# 331 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual std::string mimeType() const =0;



       virtual int pixelWidth() const;



       virtual int pixelHeight() const;
# 351 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual const ExifData& exifData() const;
# 363 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual const IptcData& iptcData() const;
# 375 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual const XmpData& xmpData() const;



       virtual std::string comment() const;



       virtual const std::string& xmpPacket() const;
# 398 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       virtual BasicIo& io() const;






       AccessMode checkMode(MetadataId metadataId) const;




       bool supportsMetadata(MetadataId metadataId) const;

       bool writeXmpFromPacket() const;

       const NativePreviewList& nativePreviews() const;


   protected:

       BasicIo::AutoPtr io_;
       ExifData exifData_;
       IptcData iptcData_;
       XmpData xmpData_;
       std::string comment_;
       std::string xmpPacket_;
       int pixelWidth_;
       int pixelHeight_;
       NativePreviewList nativePreviews_;

   private:



       Image(const Image& rhs);

       Image& operator=(const Image& rhs);



       const int imageType_;
       const
# 440 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 3 4
            __uint16_t
# 440 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
                        supportedMetadata_;
       bool writeXmpFromPacket_;
       ByteOrder byteOrder_;

   };


   typedef Image::AutoPtr (*NewInstanceFct)(BasicIo::AutoPtr io, bool create);

   typedef bool (*IsThisTypeFct)(BasicIo& iIo, bool advance);






   class ImageFactory {
       friend bool Image::good() const;
   public:
# 473 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static BasicIo::AutoPtr createIo(const std::string& path, bool useCurl = true);
# 494 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static Image::AutoPtr open(const std::string& path, bool useCurl = true);
# 513 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static Image::AutoPtr open(const byte* data, long size);
# 531 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static Image::AutoPtr open(BasicIo::AutoPtr io);
# 541 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static Image::AutoPtr create(int type, const std::string& path);
# 557 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static Image::AutoPtr create(int type);
# 572 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static Image::AutoPtr create(int type, BasicIo::AutoPtr io);






       static int getType(const std::string& path);
# 594 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static int getType(const byte* data, long size);







       static int getType(BasicIo& io);
# 611 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static AccessMode checkMode(int type, MetadataId metadataId);
# 632 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
       static bool checkType(int type, BasicIo& io, bool advance);

   private:



       ImageFactory();

       ImageFactory(const ImageFactory& rhs);


   };





   void append(Exiv2::Blob& blob, const byte* buf,
# 649 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 3 4
                                                  __uint32_t
# 649 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp"
                                                           len);

}
# 26 "exiv2.cc" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/exif.hpp" 1
# 27 "exiv2.cc" 2
# 38 "exiv2.cc"
# 1 "/usr/include/unistd.h" 1 3 4
# 69 "/usr/include/unistd.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 70 "/usr/include/unistd.h" 2 3 4

# 1 "/usr/include/sys/unistd.h" 1 3 4
# 37 "/usr/include/sys/unistd.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 38 "/usr/include/sys/unistd.h" 2 3 4
# 72 "/usr/include/unistd.h" 2 3 4
# 86 "/usr/include/unistd.h" 3 4

# 86 "/usr/include/unistd.h" 3 4
#pragma GCC visibility push(default)
# 86 "/usr/include/unistd.h" 3 4

# 86 "/usr/include/unistd.h" 3 4
extern "C" {
__attribute__((__noreturn__)) void _exit(int);
int access(const char *, int);
unsigned int alarm(unsigned int);
int chdir(const char *);



int chown(const char *, __uid_t, __gid_t);

int close(int);
size_t confstr(int, char *, size_t);





int dup(int);
int dup2(int, int);
int execl(const char *, const char *, ...);
int execle(const char *, const char *, ...);
int execlp(const char *, const char *, ...);
int execv(const char *, char * const *);
int execve(const char *, char * const *, char * const *);
int execvp(const char *, char * const *);
__pid_t fork(void);
long fpathconf(int, int);

char *getcwd(char *, size_t);

__gid_t getegid(void);
__uid_t geteuid(void);
__gid_t getgid(void);
int getgroups(int, __gid_t []);
char *getlogin(void);
int getlogin_r(char *, size_t);
__pid_t getpgrp(void);
__pid_t getpid(void);
__pid_t getppid(void);
__uid_t getuid(void);
int isatty(int);
int link(const char *, const char *);
long pathconf(const char *, int);
int pause(void);
int pipe(int *);

ssize_t read(int, void *, size_t);

int rmdir(const char *);
int setgid(__gid_t);
int setpgid(__pid_t, __pid_t);
__pid_t setsid(void);
int setuid(__uid_t);
unsigned int sleep(unsigned int);
long sysconf(int);
__pid_t tcgetpgrp(int);
int tcsetpgrp(int, __pid_t);
char *ttyname(int);
int unlink(const char *);
ssize_t write(int, const void *, size_t);







int getopt(int, char * const [], const char *);

extern char *optarg;
extern int opterr;
extern int optind;
extern int optopt;
# 167 "/usr/include/unistd.h" 3 4
ssize_t readlink(const char * __restrict__, char * __restrict__, size_t);
# 176 "/usr/include/unistd.h" 3 4
int setegid(__gid_t);
int seteuid(__uid_t);
# 205 "/usr/include/unistd.h" 3 4
int fdatasync(int);
int fsync(int);
# 215 "/usr/include/unistd.h" 3 4
int ttyname_r(int, char *, size_t);
int pthread_atfork(void (*)(void), void (*)(void), void (*)(void));






int chroot(const char *);
int nice(int);







char *crypt(const char *, const char *);
int encrypt(char *, int);
char *getpass(const char *);
__pid_t getsid(__pid_t);
# 254 "/usr/include/unistd.h" 3 4
int brk(void *);
int fchdir(int);



int fchown(int, __uid_t, __gid_t);

int getdtablesize(void);
long gethostid(void);
int gethostname(char *, size_t);
__attribute__((__pure__)) int
 getpagesize(void);
__pid_t getpgid(__pid_t);



int lchown(const char *, __uid_t, __gid_t);

int lockf(int, int, __off_t);
void *sbrk(__intptr_t);

int setpgrp(__pid_t, __pid_t);
int setregid(__gid_t, __gid_t);
int setreuid(__uid_t, __uid_t);
void swab(const void * __restrict__, void * __restrict__, ssize_t);
int symlink(const char *, const char *);
void sync(void);
useconds_t ualarm(useconds_t, useconds_t);
int usleep(useconds_t);

__pid_t vfork(void) __asm("__vfork14") __attribute__((__returns_twice__));



char *getwd(char *);
# 298 "/usr/include/unistd.h" 3 4
ssize_t pread(int, void *, size_t, __off_t);
ssize_t pwrite(int, const void *, size_t, __off_t);







int linkat(int, const char *, int, const char *, int);
int renameat(int, const char *, int, const char *);
int faccessat(int, const char *, int, int);
int fchownat(int, const char *, __uid_t, __gid_t, int);
ssize_t readlinkat(int, const char *, char *, size_t);
int symlinkat(const char *, int, const char *);
int unlinkat(int, const char *, int);
# 324 "/usr/include/unistd.h" 3 4
int acct(const char *);
int closefrom(int);
int des_cipher(const char *, char *, long, int);
int des_setkey(const char *);
int dup3(int, int, int);
void endusershell(void);
int exect(const char *, char * const *, char * const *);
int execvpe(const char *, char * const *, char * const *);
int execlpe(const char *, const char *, ...);
int fchroot(int);
int fdiscard(int, __off_t, __off_t);
int fsync_range(int, int, __off_t, __off_t);
int getdomainname(char *, size_t);
int getgrouplist(const char *, __gid_t, __gid_t *, int *);
int getgroupmembership(const char *, __gid_t, __gid_t *, int, int *);
__mode_t getmode(const void *, __mode_t);
char *getpassfd(const char *, char *, size_t, int *, int, int);
# 353 "/usr/include/unistd.h" 3 4
char *getpass_r(const char *, char *, size_t);
int getpeereid(int, __uid_t *, __gid_t *);
int getsubopt(char **, char * const *, char **);
char *getusershell(void);
int initgroups(const char *, __gid_t);
int iruserok(__uint32_t, int, const char *, const char *);
int issetugid(void);
int mkstemps(char *, int);
int nfssvc(int, void *);
int pipe2(int *, int);
int profil(char *, size_t, unsigned long, unsigned int);



void psignal(int, const char *);

int rcmd(char **, int, const char *, const char *, const char *, int *);
int reboot(int, char *);
int revoke(const char *);
int rresvport(int *);
int ruserok(const char *, int, const char *, const char *);
int setdomainname(const char *, size_t);
int setgroups(int, const __gid_t *);
int sethostid(long);
int sethostname(const char *, size_t);
int setlogin(const char *);
void *setmode(const char *);
int setrgid(__gid_t);
int setruid(__uid_t);
void setusershell(void);
void strmode(__mode_t, char *);





int swapctl(int, void *, int);
int swapon(const char *);
int syscall(int, ...);
quad_t __syscall(quad_t, ...);
int undelete(const char *);


int rcmd_af(char **, int, const char *,
    const char *, const char *, int *, int);
int rresvport_af(int *, int);
int rresvport_af_addr(int *, int, void *);
int iruserok_sa(const void *, int, int, const char *, const char *);





extern const char *const *sys_siglist __asm("__sys_siglist14");

extern int optreset;
extern char *suboptarg;


}
# 412 "/usr/include/unistd.h" 3 4
#pragma GCC visibility pop
# 412 "/usr/include/unistd.h" 3 4

# 39 "exiv2.cc" 2

# 1 "/usr/include/sys/mman.h" 1 3 4
# 37 "/usr/include/sys/mman.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 38 "/usr/include/sys/mman.h" 2 3 4
# 205 "/usr/include/sys/mman.h" 3 4

# 205 "/usr/include/sys/mman.h" 3 4
#pragma GCC visibility push(default)
# 205 "/usr/include/sys/mman.h" 3 4
extern "C" {
void * mmap(void *, size_t, int, int, int, __off_t);
int munmap(void *, size_t);
int mprotect(void *, size_t, int);

int msync(void *, size_t, int) __asm("__msync13");

int mlock(const void *, size_t);
int munlock(const void *, size_t);
int mlockall(int);
int munlockall(void);

int madvise(void *, size_t, int);
int mincore(void *, size_t, char *);
int minherit(void *, size_t, int);
void * mremap(void *, size_t, void *, size_t, int);

int posix_madvise(void *, size_t, int);
int shm_open(const char *, int, __mode_t);
int shm_unlink(const char *);
}
# 225 "/usr/include/sys/mman.h" 3 4
#pragma GCC visibility pop
# 225 "/usr/include/sys/mman.h" 3 4

# 41 "exiv2.cc" 2
# 57 "exiv2.cc"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/image.hpp" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp" 2








# 43 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
namespace Exiv2 {





   typedef int PreviewId;




   struct PreviewProperties {

       std::string mimeType_;

       std::string extension_;






# 64 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp" 3 4
      __uint32_t
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
               size_;


# 66 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp" 3 4
      __uint32_t
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
               width_;


# 68 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp" 3 4
      __uint32_t
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
               height_;

       PreviewId id_;
   };


   typedef std::vector<PreviewProperties> PreviewPropertiesList;




   class PreviewImage {
       friend class PreviewManager;
   public:



       PreviewImage(const PreviewImage& rhs);

       ~PreviewImage();





       PreviewImage& operator=(const PreviewImage& rhs);
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
       DataBuf copy() const;



       const byte* pData() const;




# 110 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp" 3 4
      __uint32_t
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
               size() const;
# 121 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
       long writeFile(const std::string& path) const;
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
       std::string mimeType() const;




       std::string extension() const;
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"

# 150 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp" 3 4
      __uint32_t
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
               width() const;




# 154 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp" 3 4
      __uint32_t
# 154 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
               height() const;



       PreviewId id() const;


   private:

       PreviewImage(const PreviewProperties& properties, DataBuf data);

       PreviewProperties properties_;
       byte* pData_;

# 167 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp" 3 4
      __uint32_t
# 167 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
               size_;

   };




   class PreviewManager {
   public:



       PreviewManager(const Image& image);
# 189 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/preview.hpp"
       PreviewPropertiesList getPreviewProperties() const;



       PreviewImage getPreviewImage(const PreviewProperties& properties) const;


   private:
const Image& image_;

   };
}
# 58 "exiv2.cc" 2



# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/convert.hpp" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/convert.hpp"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/config.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/convert.hpp" 2






namespace Exiv2 {



   class ExifData;
   class IptcData;
   class XmpData;





   void copyExifToXmp(const ExifData& exifData, XmpData& xmpData);

   void moveExifToXmp(ExifData& exifData, XmpData& xmpData);


   void copyXmpToExif(const XmpData& xmpData, ExifData& exifData);

   void moveXmpToExif(XmpData& xmpData, ExifData& exifData);


   void syncExifWithXmp(ExifData& exifData, XmpData& xmpData);


   void copyIptcToXmp(const IptcData& iptcData, XmpData& xmpData, const char *iptcCharset = 0);

   void moveIptcToXmp(IptcData& iptcData, XmpData& xmpData, const char *iptcCharset = 0);


   void copyXmpToIptc(const XmpData& xmpData, IptcData& iptcData);

   void moveXmpToIptc(XmpData& xmpData, IptcData& iptcData);
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/convert.hpp"
   bool convertStringCharset(std::string& str, const char* from, const char* to);

}
# 62 "exiv2.cc" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmpsidecar.hpp" 1
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmpsidecar.hpp"
namespace Exiv2 {





   namespace ImageType {
       const int xmp = 10;
   }




   class XmpSidecar : public Image {
   public:
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmpsidecar.hpp"
       XmpSidecar(BasicIo::AutoPtr io, bool create);




       void readMetadata();
       void writeMetadata();




       void setComment(const std::string& comment);




       std::string mimeType() const;


   private:



       XmpSidecar(const XmpSidecar& rhs);

       XmpSidecar& operator=(const XmpSidecar& rhs);


   };
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/exiv2/xmpsidecar.hpp"
   Image::AutoPtr newXmpInstance(BasicIo::AutoPtr io, bool create);


   bool isXmpType(BasicIo& iIo, bool advance);

}
# 63 "exiv2.cc" 2


extern "C" {
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/galloca.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/galloca.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h" 1
# 9 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmacros.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmacros.h"
# 1 "/usr/include/stddef.h" 1 3 4
# 38 "/usr/include/stddef.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 39 "/usr/include/stddef.h" 2 3 4
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmacros.h" 2
# 10 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h" 2


# 1 "/usr/include/float.h" 1 3 4


# 1 "/usr/include/x86/float.h" 1 3 4





# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 7 "/usr/include/x86/float.h" 2 3 4
# 18 "/usr/include/x86/float.h" 3 4
# 1 "/usr/include/sys/float_ieee754.h" 1 3 4
# 43 "/usr/include/sys/float_ieee754.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 44 "/usr/include/sys/float_ieee754.h" 2 3 4








# 51 "/usr/include/sys/float_ieee754.h" 3 4
#pragma GCC visibility push(default)
# 51 "/usr/include/sys/float_ieee754.h" 3 4

# 51 "/usr/include/sys/float_ieee754.h" 3 4
extern "C" {
extern int __flt_rounds(void);
}
# 53 "/usr/include/sys/float_ieee754.h" 3 4
#pragma GCC visibility pop
# 53 "/usr/include/sys/float_ieee754.h" 3 4

# 19 "/usr/include/x86/float.h" 2 3 4
# 3 "/usr/include/float.h" 2 3 4
# 13 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h" 2








# 20 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h"
extern "C" {
# 36 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h"
typedef signed char gint8;
typedef unsigned char guint8;
typedef signed short gint16;
typedef unsigned short guint16;



typedef signed int gint32;
typedef unsigned int guint32;





typedef signed long gint64;
typedef unsigned long guint64;
# 64 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h"
typedef signed long gssize;
typedef unsigned long gsize;
# 75 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h"
typedef gint64 goffset;
# 92 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h"
typedef signed long gintptr;
typedef unsigned long guintptr;
# 182 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h"
typedef int GPid;
# 192 "/tmp/graphics/geeqie/work/.buildlink/lib/glib-2.0/include/glibconfig.h"
}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gversionmacros.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h" 2


extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h"
typedef char gchar;
typedef short gshort;
typedef long glong;
typedef int gint;
typedef gint gboolean;

typedef unsigned char guchar;
typedef unsigned short gushort;
typedef unsigned long gulong;
typedef unsigned int guint;

typedef float gfloat;
typedef double gdouble;
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h"
typedef void* gpointer;
typedef const void *gconstpointer;

typedef gint (*GCompareFunc) (gconstpointer a,
                                                gconstpointer b);
typedef gint (*GCompareDataFunc) (gconstpointer a,
                                                gconstpointer b,
      gpointer user_data);
typedef gboolean (*GEqualFunc) (gconstpointer a,
                                                gconstpointer b);
typedef void (*GDestroyNotify) (gpointer data);
typedef void (*GFunc) (gpointer data,
                                                gpointer user_data);
typedef guint (*GHashFunc) (gconstpointer key);
typedef void (*GHFunc) (gpointer key,
                                                gpointer value,
                                                gpointer user_data);
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h"
typedef void (*GFreeFunc) (gpointer data);
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h"
typedef const gchar * (*GTranslateFunc) (const gchar *str,
      gpointer data);
# 417 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h"
static inline gboolean _GLIB_CHECKED_ADD_U32 (guint32 *dest, guint32 a, guint32 b) {
 return !__builtin_uadd_overflow(a, b, dest); }
static inline gboolean _GLIB_CHECKED_MUL_U32 (guint32 *dest, guint32 a, guint32 b) {
 return !__builtin_umul_overflow(a, b, dest); }
static inline gboolean _GLIB_CHECKED_ADD_U64 (guint64 *dest, guint64 a, guint64 b) {
 typedef char _GStaticAssertCompileTimeAssertion_0[(sizeof (unsigned long long) == sizeof (guint64)) ? 1 : -1] __attribute__((__unused__));
 return !__builtin_uaddll_overflow(a, b, (unsigned long long *) dest); }
static inline gboolean _GLIB_CHECKED_MUL_U64 (guint64 *dest, guint64 a, guint64 b) {
 return !__builtin_umulll_overflow(a, b, (unsigned long long *) dest); }
# 454 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h"
typedef union _GDoubleIEEE754 GDoubleIEEE754;
typedef union _GFloatIEEE754 GFloatIEEE754;





union _GFloatIEEE754
{
 gfloat v_float;
 struct {
   guint mantissa : 23;
   guint biased_exponent : 8;
   guint sign : 1;
 } mpn;
};
union _GDoubleIEEE754
{
 gdouble v_double;
 struct {
   guint mantissa_low : 32;
   guint mantissa_high : 20;
   guint biased_exponent : 11;
   guint sign : 1;
 } mpn;
};
# 504 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtypes.h"
typedef struct _GTimeVal GTimeVal;

struct _GTimeVal
{
 glong tv_sec;
 glong tv_usec;
};

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/galloca.h" 2
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/garray.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/garray.h"
extern "C" {

typedef struct _GBytes GBytes;
typedef struct _GArray GArray;
typedef struct _GByteArray GByteArray;
typedef struct _GPtrArray GPtrArray;

struct _GArray
{
 gchar *data;
 guint len;
};

struct _GByteArray
{
 guint8 *data;
 guint len;
};

struct _GPtrArray
{
 gpointer *pdata;
 guint len;
};
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/garray.h"
extern
GArray* g_array_new (gboolean zero_terminated,
      gboolean clear_,
      guint element_size);
extern
GArray* g_array_sized_new (gboolean zero_terminated,
      gboolean clear_,
      guint element_size,
      guint reserved_size);
extern
gchar* g_array_free (GArray *array,
      gboolean free_segment);
extern
GArray *g_array_ref (GArray *array);
extern
void g_array_unref (GArray *array);
extern
guint g_array_get_element_size (GArray *array);
extern
GArray* g_array_append_vals (GArray *array,
      gconstpointer data,
      guint len);
extern
GArray* g_array_prepend_vals (GArray *array,
      gconstpointer data,
      guint len);
extern
GArray* g_array_insert_vals (GArray *array,
      guint index_,
      gconstpointer data,
      guint len);
extern
GArray* g_array_set_size (GArray *array,
      guint length);
extern
GArray* g_array_remove_index (GArray *array,
      guint index_);
extern
GArray* g_array_remove_index_fast (GArray *array,
      guint index_);
extern
GArray* g_array_remove_range (GArray *array,
      guint index_,
      guint length);
extern
void g_array_sort (GArray *array,
      GCompareFunc compare_func);
extern
void g_array_sort_with_data (GArray *array,
      GCompareDataFunc compare_func,
      gpointer user_data);
extern
void g_array_set_clear_func (GArray *array,
                                  GDestroyNotify clear_func);






extern
GPtrArray* g_ptr_array_new (void);
extern
GPtrArray* g_ptr_array_new_with_free_func (GDestroyNotify element_free_func);
extern
GPtrArray* g_ptr_array_sized_new (guint reserved_size);
extern
GPtrArray* g_ptr_array_new_full (guint reserved_size,
       GDestroyNotify element_free_func);
extern
gpointer* g_ptr_array_free (GPtrArray *array,
       gboolean free_seg);
extern
GPtrArray* g_ptr_array_ref (GPtrArray *array);
extern
void g_ptr_array_unref (GPtrArray *array);
extern
void g_ptr_array_set_free_func (GPtrArray *array,
                                          GDestroyNotify element_free_func);
extern
void g_ptr_array_set_size (GPtrArray *array,
       gint length);
extern
gpointer g_ptr_array_remove_index (GPtrArray *array,
       guint index_);
extern
gpointer g_ptr_array_remove_index_fast (GPtrArray *array,
       guint index_);
extern
gboolean g_ptr_array_remove (GPtrArray *array,
       gpointer data);
extern
gboolean g_ptr_array_remove_fast (GPtrArray *array,
       gpointer data);
extern
GPtrArray *g_ptr_array_remove_range (GPtrArray *array,
       guint index_,
       guint length);
extern
void g_ptr_array_add (GPtrArray *array,
       gpointer data);
extern
void g_ptr_array_insert (GPtrArray *array,
                                          gint index_,
                                          gpointer data);
extern
void g_ptr_array_sort (GPtrArray *array,
       GCompareFunc compare_func);
extern
void g_ptr_array_sort_with_data (GPtrArray *array,
       GCompareDataFunc compare_func,
       gpointer user_data);
extern
void g_ptr_array_foreach (GPtrArray *array,
       GFunc func,
       gpointer user_data);






extern
GByteArray* g_byte_array_new (void);
extern
GByteArray* g_byte_array_new_take (guint8 *data,
                                           gsize len);
extern
GByteArray* g_byte_array_sized_new (guint reserved_size);
extern
guint8* g_byte_array_free (GByteArray *array,
        gboolean free_segment);
extern
GBytes* g_byte_array_free_to_bytes (GByteArray *array);
extern
GByteArray *g_byte_array_ref (GByteArray *array);
extern
void g_byte_array_unref (GByteArray *array);
extern
GByteArray* g_byte_array_append (GByteArray *array,
        const guint8 *data,
        guint len);
extern
GByteArray* g_byte_array_prepend (GByteArray *array,
        const guint8 *data,
        guint len);
extern
GByteArray* g_byte_array_set_size (GByteArray *array,
        guint length);
extern
GByteArray* g_byte_array_remove_index (GByteArray *array,
        guint index_);
extern
GByteArray* g_byte_array_remove_index_fast (GByteArray *array,
        guint index_);
extern
GByteArray* g_byte_array_remove_range (GByteArray *array,
        guint index_,
        guint length);
extern
void g_byte_array_sort (GByteArray *array,
        GCompareFunc compare_func);
extern
void g_byte_array_sort_with_data (GByteArray *array,
        GCompareDataFunc compare_func,
        gpointer user_data);

}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gasyncqueue.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gasyncqueue.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthread.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthread.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gatomic.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gatomic.h"
extern "C" {

extern
gint g_atomic_int_get (const volatile gint *atomic);
extern
void g_atomic_int_set (volatile gint *atomic,
                                                              gint newval);
extern
void g_atomic_int_inc (volatile gint *atomic);
extern
gboolean g_atomic_int_dec_and_test (volatile gint *atomic);
extern
gboolean g_atomic_int_compare_and_exchange (volatile gint *atomic,
                                                              gint oldval,
                                                              gint newval);
extern
gint g_atomic_int_add (volatile gint *atomic,
                                                              gint val);
extern
guint g_atomic_int_and (volatile guint *atomic,
                                                              guint val);
extern
guint g_atomic_int_or (volatile guint *atomic,
                                                              guint val);
extern
guint g_atomic_int_xor (volatile guint *atomic,
                                                              guint val);

extern
gpointer g_atomic_pointer_get (const volatile void *atomic);
extern
void g_atomic_pointer_set (volatile void *atomic,
                                                              gpointer newval);
extern
gboolean g_atomic_pointer_compare_and_exchange (volatile void *atomic,
                                                              gpointer oldval,
                                                              gpointer newval);
extern
gssize g_atomic_pointer_add (volatile void *atomic,
                                                              gssize val);
extern
gsize g_atomic_pointer_and (volatile void *atomic,
                                                              gsize val);
extern
gsize g_atomic_pointer_or (volatile void *atomic,
                                                              gsize val);
extern
gsize g_atomic_pointer_xor (volatile void *atomic,
                                                              gsize val);

__attribute__((__deprecated__("Use '" "g_atomic_int_add" "' instead"))) extern
gint g_atomic_int_exchange_and_add (volatile gint *atomic,
                                                              gint val);

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthread.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gerror.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gerror.h"
# 1 "/usr/include/stdarg.h" 1 3 4
# 39 "/usr/include/stdarg.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 40 "/usr/include/stdarg.h" 2 3 4
# 53 "/usr/include/stdarg.h" 3 4

# 53 "/usr/include/stdarg.h" 3 4
typedef __va_list va_list;
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gerror.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gquark.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gquark.h"

# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gquark.h"
extern "C" {

typedef guint32 GQuark;



extern
GQuark g_quark_try_string (const gchar *string);
extern
GQuark g_quark_from_static_string (const gchar *string);
extern
GQuark g_quark_from_string (const gchar *string);
extern
const gchar * g_quark_to_string (GQuark quark) __attribute__((__const__));
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gquark.h"
extern
const gchar * g_intern_string (const gchar *string);
extern
const gchar * g_intern_static_string (const gchar *string);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gerror.h" 2

extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gerror.h"
typedef struct _GError GError;

struct _GError
{
 GQuark domain;
 gint code;
 gchar *message;
};

extern
GError* g_error_new (GQuark domain,
                               gint code,
                               const gchar *format,
                               ...) __attribute__((__format__ (__printf__, 3, 4)));

extern
GError* g_error_new_literal (GQuark domain,
                               gint code,
                               const gchar *message);
extern
GError* g_error_new_valist (GQuark domain,
                               gint code,
                               const gchar *format,
                               va_list args) __attribute__((__format__ (__printf__, 3, 0)));

extern
void g_error_free (GError *error);
extern
GError* g_error_copy (const GError *error);

extern
gboolean g_error_matches (const GError *error,
                               GQuark domain,
                               gint code);




extern
void g_set_error (GError **err,
                               GQuark domain,
                               gint code,
                               const gchar *format,
                               ...) __attribute__((__format__ (__printf__, 4, 5)));

extern
void g_set_error_literal (GError **err,
                               GQuark domain,
                               gint code,
                               const gchar *message);



extern
void g_propagate_error (GError **dest,
   GError *src);


extern
void g_clear_error (GError **err);


extern
void g_prefix_error (GError **err,
                                      const gchar *format,
                                      ...) __attribute__((__format__ (__printf__, 2, 3)));


extern
void g_propagate_prefixed_error (GError **dest,
                                      GError *src,
                                      const gchar *format,
                                      ...) __attribute__((__format__ (__printf__, 3, 4)));

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthread.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
extern "C" {
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
extern
const gchar * g_get_user_name (void);
extern
const gchar * g_get_real_name (void);
extern
const gchar * g_get_home_dir (void);
extern
const gchar * g_get_tmp_dir (void);
extern
const gchar * g_get_host_name (void);
extern
const gchar * g_get_prgname (void);
extern
void g_set_prgname (const gchar *prgname);
extern
const gchar * g_get_application_name (void);
extern
void g_set_application_name (const gchar *application_name);

extern
void g_reload_user_special_dirs_cache (void);
extern
const gchar * g_get_user_data_dir (void);
extern
const gchar * g_get_user_config_dir (void);
extern
const gchar * g_get_user_cache_dir (void);
extern
const gchar * const * g_get_system_data_dirs (void);
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
extern
const gchar * const * g_get_system_config_dirs (void);

extern
const gchar * g_get_user_runtime_dir (void);
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
typedef enum {
 G_USER_DIRECTORY_DESKTOP,
 G_USER_DIRECTORY_DOCUMENTS,
 G_USER_DIRECTORY_DOWNLOAD,
 G_USER_DIRECTORY_MUSIC,
 G_USER_DIRECTORY_PICTURES,
 G_USER_DIRECTORY_PUBLIC_SHARE,
 G_USER_DIRECTORY_TEMPLATES,
 G_USER_DIRECTORY_VIDEOS,

 G_USER_N_DIRECTORIES
} GUserDirectory;

extern
const gchar * g_get_user_special_dir (GUserDirectory directory);
# 151 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
typedef struct _GDebugKey GDebugKey;
struct _GDebugKey
{
 const gchar *key;
 guint value;
};



extern
guint g_parse_debug_string (const gchar *string,
        const GDebugKey *keys,
        guint nkeys);

extern
gint g_snprintf (gchar *string,
        gulong n,
        gchar const *format,
        ...) __attribute__((__format__ (__printf__, 3, 4)));
extern
gint g_vsnprintf (gchar *string,
        gulong n,
        gchar const *format,
        va_list args)
        __attribute__((__format__ (__printf__, 3, 0)));

extern
void g_nullify_pointer (gpointer *nullify_location);

typedef enum
{
 G_FORMAT_SIZE_DEFAULT = 0,
 G_FORMAT_SIZE_LONG_FORMAT = 1 << 0,
 G_FORMAT_SIZE_IEC_UNITS = 1 << 1
} GFormatSizeFlags;

extern
gchar *g_format_size_full (guint64 size,
                            GFormatSizeFlags flags);
extern
gchar *g_format_size (guint64 size);

__attribute__((__deprecated__("Use '" "g_format_size" "' instead"))) extern
gchar *g_format_size_for_display (goffset size);
# 204 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
typedef void (*GVoidFunc) (void);

__attribute__((__deprecated__)) extern
void g_atexit (GVoidFunc func);
# 226 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
extern
gchar* g_find_program_in_path (const gchar *program);
# 244 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
extern
gint (g_bit_nth_lsf) (gulong mask,
                                gint nth_bit);
extern
gint (g_bit_nth_msf) (gulong mask,
                                gint nth_bit);
extern
guint (g_bit_storage) (gulong number);

static inline gint
g_bit_nth_lsf_impl (gulong mask,
                   gint nth_bit)
{
 if ((__builtin_expect (__extension__ ({ int _g_boolean_var_; if ((nth_bit < -1)) _g_boolean_var_ = 1; else _g_boolean_var_ = 0; _g_boolean_var_; }), 0)))
   nth_bit = -1;
 while (nth_bit < ((8 * 8) - 1))
   {
     nth_bit++;
     if (mask & (1UL << nth_bit))
       return nth_bit;
   }
 return -1;
}

static inline gint
g_bit_nth_msf_impl (gulong mask,
                   gint nth_bit)
{
 if (nth_bit < 0 || (__builtin_expect (__extension__ ({ int _g_boolean_var_; if ((nth_bit > 8 * 8)) _g_boolean_var_ = 1; else _g_boolean_var_ = 0; _g_boolean_var_; }), 0)))
   nth_bit = 8 * 8;
 while (nth_bit > 0)
   {
     nth_bit--;
     if (mask & (1UL << nth_bit))
       return nth_bit;
   }
 return -1;
}

static inline guint
g_bit_storage_impl (gulong number)
{

 return (__builtin_expect (__extension__ ({ int _g_boolean_var_; if ((number)) _g_boolean_var_ = 1; else _g_boolean_var_ = 0; _g_boolean_var_; }), 1)) ?
          ((8 * 8U - 1) ^ (guint) __builtin_clzl(number)) + 1 : 1;
# 300 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
}
# 351 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gutils.h"
}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthread.h" 2

extern "C" {


extern
GQuark g_thread_error_quark (void);

typedef enum
{
 G_THREAD_ERROR_AGAIN
} GThreadError;

typedef gpointer (*GThreadFunc) (gpointer data);

typedef struct _GThread GThread;

typedef union _GMutex GMutex;
typedef struct _GRecMutex GRecMutex;
typedef struct _GRWLock GRWLock;
typedef struct _GCond GCond;
typedef struct _GPrivate GPrivate;
typedef struct _GOnce GOnce;

union _GMutex
{

 gpointer p;
 guint i[2];
};

struct _GRWLock
{

 gpointer p;
 guint i[2];
};

struct _GCond
{

 gpointer p;
 guint i[2];
};

struct _GRecMutex
{

 gpointer p;
 guint i[2];
};


struct _GPrivate
{

 gpointer p;
 GDestroyNotify notify;
 gpointer future[2];
};

typedef enum
{
 G_ONCE_STATUS_NOTCALLED,
 G_ONCE_STATUS_PROGRESS,
 G_ONCE_STATUS_READY
} GOnceStatus;


struct _GOnce
{
 volatile GOnceStatus status;
 volatile gpointer retval;
};
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthread.h"
extern
GThread * g_thread_ref (GThread *thread);
extern
void g_thread_unref (GThread *thread);
extern
GThread * g_thread_new (const gchar *name,
                                                GThreadFunc func,
                                                gpointer data);
extern
GThread * g_thread_try_new (const gchar *name,
                                                GThreadFunc func,
                                                gpointer data,
                                                GError **error);
extern
GThread * g_thread_self (void);
extern
void g_thread_exit (gpointer retval);
extern
gpointer g_thread_join (GThread *thread);
extern
void g_thread_yield (void);


extern
void g_mutex_init (GMutex *mutex);
extern
void g_mutex_clear (GMutex *mutex);
extern
void g_mutex_lock (GMutex *mutex);
extern
gboolean g_mutex_trylock (GMutex *mutex);
extern
void g_mutex_unlock (GMutex *mutex);

extern
void g_rw_lock_init (GRWLock *rw_lock);
extern
void g_rw_lock_clear (GRWLock *rw_lock);
extern
void g_rw_lock_writer_lock (GRWLock *rw_lock);
extern
gboolean g_rw_lock_writer_trylock (GRWLock *rw_lock);
extern
void g_rw_lock_writer_unlock (GRWLock *rw_lock);
extern
void g_rw_lock_reader_lock (GRWLock *rw_lock);
extern
gboolean g_rw_lock_reader_trylock (GRWLock *rw_lock);
extern
void g_rw_lock_reader_unlock (GRWLock *rw_lock);

extern
void g_rec_mutex_init (GRecMutex *rec_mutex);
extern
void g_rec_mutex_clear (GRecMutex *rec_mutex);
extern
void g_rec_mutex_lock (GRecMutex *rec_mutex);
extern
gboolean g_rec_mutex_trylock (GRecMutex *rec_mutex);
extern
void g_rec_mutex_unlock (GRecMutex *rec_mutex);

extern
void g_cond_init (GCond *cond);
extern
void g_cond_clear (GCond *cond);
extern
void g_cond_wait (GCond *cond,
                                                GMutex *mutex);
extern
void g_cond_signal (GCond *cond);
extern
void g_cond_broadcast (GCond *cond);
extern
gboolean g_cond_wait_until (GCond *cond,
                                                GMutex *mutex,
                                                gint64 end_time);

extern
gpointer g_private_get (GPrivate *key);
extern
void g_private_set (GPrivate *key,
                                                gpointer value);
extern
void g_private_replace (GPrivate *key,
                                                gpointer value);

extern
gpointer g_once_impl (GOnce *once,
                                                GThreadFunc func,
                                                gpointer arg);
extern
gboolean g_once_init_enter (volatile void *location);
extern
void g_once_init_leave (volatile void *location,
                                                gsize result);
# 267 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthread.h"
extern
guint g_get_num_processors (void);







typedef void GMutexLocker;
# 318 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthread.h"
static inline GMutexLocker *
g_mutex_locker_new (GMutex *mutex)
{
 g_mutex_lock (mutex);
 return (GMutexLocker *) mutex;
}
# 333 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthread.h"
static inline void
g_mutex_locker_free (GMutexLocker *locker)
{
 g_mutex_unlock ((GMutex *) locker);
}

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gasyncqueue.h" 2

extern "C" {

typedef struct _GAsyncQueue GAsyncQueue;

extern
GAsyncQueue *g_async_queue_new (void);
extern
GAsyncQueue *g_async_queue_new_full (GDestroyNotify item_free_func);
extern
void g_async_queue_lock (GAsyncQueue *queue);
extern
void g_async_queue_unlock (GAsyncQueue *queue);
extern
GAsyncQueue *g_async_queue_ref (GAsyncQueue *queue);
extern
void g_async_queue_unref (GAsyncQueue *queue);

__attribute__((__deprecated__("Use '" "g_async_queue_ref" "' instead"))) extern
void g_async_queue_ref_unlocked (GAsyncQueue *queue);

__attribute__((__deprecated__("Use '" "g_async_queue_unref" "' instead"))) extern
void g_async_queue_unref_and_unlock (GAsyncQueue *queue);

extern
void g_async_queue_push (GAsyncQueue *queue,
                                                gpointer data);
extern
void g_async_queue_push_unlocked (GAsyncQueue *queue,
                                                gpointer data);
extern
void g_async_queue_push_sorted (GAsyncQueue *queue,
                                                gpointer data,
                                                GCompareDataFunc func,
                                                gpointer user_data);
extern
void g_async_queue_push_sorted_unlocked (GAsyncQueue *queue,
                                                gpointer data,
                                                GCompareDataFunc func,
                                                gpointer user_data);
extern
gpointer g_async_queue_pop (GAsyncQueue *queue);
extern
gpointer g_async_queue_pop_unlocked (GAsyncQueue *queue);
extern
gpointer g_async_queue_try_pop (GAsyncQueue *queue);
extern
gpointer g_async_queue_try_pop_unlocked (GAsyncQueue *queue);
extern
gpointer g_async_queue_timeout_pop (GAsyncQueue *queue,
                                                guint64 timeout);
extern
gpointer g_async_queue_timeout_pop_unlocked (GAsyncQueue *queue,
                                                guint64 timeout);
extern
gint g_async_queue_length (GAsyncQueue *queue);
extern
gint g_async_queue_length_unlocked (GAsyncQueue *queue);
extern
void g_async_queue_sort (GAsyncQueue *queue,
                                                GCompareDataFunc func,
                                                gpointer user_data);
extern
void g_async_queue_sort_unlocked (GAsyncQueue *queue,
                                                GCompareDataFunc func,
                                                gpointer user_data);

extern
gboolean g_async_queue_remove (GAsyncQueue *queue,
                                                gpointer item);
extern
gboolean g_async_queue_remove_unlocked (GAsyncQueue *queue,
                                                gpointer item);
extern
void g_async_queue_push_front (GAsyncQueue *queue,
                                                gpointer item);
extern
void g_async_queue_push_front_unlocked (GAsyncQueue *queue,
                                                gpointer item);

__attribute__((__deprecated__("Use '" "g_async_queue_timeout_pop" "' instead"))) extern
gpointer g_async_queue_timed_pop (GAsyncQueue *queue,
                                                GTimeVal *end_time);
__attribute__((__deprecated__("Use '" "g_async_queue_timeout_pop_unlocked" "' instead"))) extern
gpointer g_async_queue_timed_pop_unlocked (GAsyncQueue *queue,
                                                GTimeVal *end_time);

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbacktrace.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbacktrace.h"
# 1 "/usr/include/signal.h" 1 3 4
# 38 "/usr/include/signal.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 39 "/usr/include/signal.h" 2 3 4






# 1 "/usr/include/sys/signal.h" 1 3 4
# 42 "/usr/include/sys/signal.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 43 "/usr/include/sys/signal.h" 2 3 4
# 112 "/usr/include/sys/signal.h" 3 4
# 1 "/usr/include/sys/siginfo.h" 1 3 4
# 35 "/usr/include/sys/siginfo.h" 3 4
# 1 "/usr/include/amd64/signal.h" 1 3 4
# 39 "/usr/include/amd64/signal.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 40 "/usr/include/amd64/signal.h" 2 3 4


# 41 "/usr/include/amd64/signal.h" 3 4
typedef int sig_atomic_t;





# 1 "/usr/include/amd64/trap.h" 1 3 4


# 1 "/usr/include/x86/trap.h" 1 3 4
# 3 "/usr/include/amd64/trap.h" 2 3 4
# 48 "/usr/include/amd64/signal.h" 2 3 4
# 1 "/usr/include/amd64/mcontext.h" 1 3 4
# 37 "/usr/include/amd64/mcontext.h" 3 4
# 1 "/usr/include/amd64/frame_regs.h" 1 3 4
# 38 "/usr/include/amd64/mcontext.h" 2 3 4





enum { _REG_RDI = 0, _REG_RSI = 1, _REG_RDX = 2, _REG_R10 = 6, _REG_R8 = 4, _REG_R9 = 5, _REG_RCX = 3, _REG_R11 = 7, _REG_R12 = 8, _REG_R13 = 9, _REG_R14 = 10, _REG_R15 = 11, _REG_RBP = 12, _REG_RBX = 13, _REG_RAX = 14, _REG_GS = 15, _REG_FS = 16, _REG_ES = 17, _REG_DS = 18, _REG_TRAPNO = 19, _REG_ERR = 20, _REG_RIP = 21, _REG_CS = 22, _REG_RFLAGS = 23, _REG_RSP = 24, _REG_SS = 25, _NGREG = 26 };


typedef unsigned long __greg_t;
typedef __greg_t __gregset_t[_NGREG];
# 59 "/usr/include/amd64/mcontext.h" 3 4
typedef char __fpregset_t[512] __attribute__((__aligned__(8)));

typedef struct {
__gregset_t __gregs;
__greg_t _mc_tlsbase;
__fpregset_t __fpregs;
} mcontext_t;
# 86 "/usr/include/amd64/mcontext.h" 3 4
static inline void *
__lwp_getprivate_fast(void)
{
void *__tmp;

__asm volatile("movq %%fs:0, %0" : "=r" (__tmp));

return __tmp;
}
# 49 "/usr/include/amd64/signal.h" 2 3 4
# 36 "/usr/include/sys/siginfo.h" 2 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 37 "/usr/include/sys/siginfo.h" 2 3 4




typedef union sigval {
int sival_int;
void *sival_ptr;
} sigval_t;

struct _ksiginfo {
int _signo;
int _code;
int _errno;


int _pad;

union {
 struct {
  __pid_t _pid;
  __uid_t _uid;
  sigval_t _value;
 } _rt;

 struct {
  __pid_t _pid;
  __uid_t _uid;
  int _status;
  clock_t _utime;
  clock_t _stime;
 } _child;

 struct {
  void *_addr;
  int _trap;
  int _trap2;
  int _trap3;
 } _fault;

 struct {
  long _band;
  int _fd;
 } _poll;
} _reason;
};
# 133 "/usr/include/sys/siginfo.h" 3 4
typedef union siginfo {
char si_pad[128];
struct _ksiginfo _info;
} siginfo_t;
# 113 "/usr/include/sys/signal.h" 2 3 4




# 1 "/usr/include/sys/ucontext.h" 1 3 4
# 38 "/usr/include/sys/ucontext.h" 3 4
typedef struct __ucontext ucontext_t;

struct __ucontext {
unsigned int uc_flags;
ucontext_t * uc_link;
sigset_t uc_sigmask;
stack_t uc_stack;
mcontext_t uc_mcontext;



};
# 118 "/usr/include/sys/signal.h" 2 3 4





struct sigaction {
union {
 void (*_sa_handler)(int);


 void (*_sa_sigaction)(int, siginfo_t *, void *);

} _sa_u;
sigset_t sa_mask;
int sa_flags;
};
# 172 "/usr/include/sys/signal.h" 3 4
typedef void (*sig_t)(int);
# 194 "/usr/include/sys/signal.h" 3 4
struct sigstack {
void *ss_sp;
int ss_onstack;
};
# 212 "/usr/include/sys/signal.h" 3 4
struct sigevent {
int sigev_notify;
int sigev_signo;
union sigval sigev_value;
void (*sigev_notify_function)(union sigval);
void *sigev_notify_attributes;
};
# 234 "/usr/include/sys/signal.h" 3 4

# 234 "/usr/include/sys/signal.h" 3 4
#pragma GCC visibility push(default)
# 234 "/usr/include/sys/signal.h" 3 4
extern "C" {
void (*signal(int, void (*)(int)))(int);
void (*bsd_signal(int, void (*)(int)))(int);

int sigqueue(__pid_t, int, const union sigval);


int sigqueueinfo(__pid_t, const siginfo_t *);

}
# 243 "/usr/include/sys/signal.h" 3 4
#pragma GCC visibility pop
# 243 "/usr/include/sys/signal.h" 3 4

# 46 "/usr/include/signal.h" 2 3 4


extern const char *const *sys_signame __asm("__sys_signame14");





extern const int sys_nsig __asm("__sys_nsig14");



# 57 "/usr/include/signal.h" 3 4
#pragma GCC visibility push(default)
# 57 "/usr/include/signal.h" 3 4
extern "C" {
int raise(int);


int kill(__pid_t, int);
int __libc_sigaction14(int, const struct sigaction * __restrict__,
    struct sigaction * __restrict__);



int pthread_sigmask(int, const sigset_t * __restrict__,
    sigset_t * __restrict__);
int pthread_kill(pthread_t, int);
int __libc_thr_sigsetmask(int, const sigset_t * __restrict__,
    sigset_t * __restrict__);






int sigaction(int, const struct sigaction * __restrict__,
   struct sigaction * __restrict__) __asm("__sigaction14");
int sigaddset(sigset_t *, int) __asm("__sigaddset14");
int sigdelset(sigset_t *, int) __asm("__sigdelset14");
int sigemptyset(sigset_t *) __asm("__sigemptyset14");
int sigfillset(sigset_t *) __asm("__sigfillset14");
int sigismember(const sigset_t *, int) __asm("__sigismember14");
int sigpending(sigset_t *) __asm("__sigpending14");
int sigprocmask(int, const sigset_t * __restrict__, sigset_t * __restrict__)
   __asm("__sigprocmask14");
int sigsuspend(const sigset_t *) __asm("__sigsuspend14");
# 99 "/usr/include/signal.h" 3 4
int *__errno(void);
# 108 "/usr/include/signal.h" 3 4
extern inline int
sigaddset(sigset_t *set, int signo)
{
if (signo <= 0 || signo >= 64) {
 (*__errno()) = 22;
 return (-1);
}
((set)->__bits[(((unsigned int)(signo) - 1) >> 5)] |= (1 << (((unsigned int)(signo) - 1) & 31)));
return (0);
}

extern inline int
sigdelset(sigset_t *set, int signo)
{
if (signo <= 0 || signo >= 64) {
 (*__errno()) = 22;
 return (-1);
}
((set)->__bits[(((unsigned int)(signo) - 1) >> 5)] &= ~(1 << (((unsigned int)(signo) - 1) & 31)));
return (0);
}

extern inline int
sigismember(const sigset_t *set, int signo)
{
if (signo <= 0 || signo >= 64) {
 (*__errno()) = 22;
 return (-1);
}
return ((((set)->__bits[(((unsigned int)(signo) - 1) >> 5)] & (1 << (((unsigned int)(signo) - 1) & 31))) != 0));
}

extern inline int
sigemptyset(sigset_t *set)
{
((set)->__bits[0] = 0x00000000, (set)->__bits[1] = 0x00000000, (set)->__bits[2] = 0x00000000, (set)->__bits[3] = 0x00000000);
return (0);
}

extern inline int
sigfillset(sigset_t *set)
{
((set)->__bits[0] = 0xffffffff, (set)->__bits[1] = 0xffffffff, (set)->__bits[2] = 0xffffffff, (set)->__bits[3] = 0xffffffff);
return (0);
}
# 161 "/usr/include/signal.h" 3 4
int killpg(__pid_t, int);
int siginterrupt(int, int);
int sigstack(const struct sigstack *, struct sigstack *);

int sigaltstack(const stack_t * __restrict__, stack_t * __restrict__)
   __asm("__sigaltstack14");

int sighold(int);
int sigignore(int);
int sigpause(int);
int sigrelse(int);
void (*sigset (int, void (*)(int)))(int);
# 181 "/usr/include/signal.h" 3 4
int sigwait (const sigset_t * __restrict__, int * __restrict__);
int sigwaitinfo(const sigset_t * __restrict__, siginfo_t * __restrict__);
void psiginfo(const siginfo_t *, const char *);



int sigtimedwait(const sigset_t * __restrict__,
   siginfo_t * __restrict__, const struct timespec * __restrict__)
   __asm("__sigtimedwait50");
int __sigtimedwait(const sigset_t * __restrict__,
   siginfo_t * __restrict__, struct timespec * __restrict__)
   __asm("____sigtimedwait50");
# 203 "/usr/include/signal.h" 3 4
int sigblock(int);
int sigsetmask(int);



}
# 208 "/usr/include/signal.h" 3 4
#pragma GCC visibility pop
# 208 "/usr/include/signal.h" 3 4

# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbacktrace.h" 2


# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbacktrace.h"
extern "C" {

extern
void g_on_error_query (const gchar *prg_name);
extern
void g_on_error_stack_trace (const gchar *prg_name);
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbacktrace.h"
}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbase64.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbase64.h"
extern "C" {

extern
gsize g_base64_encode_step (const guchar *in,
                                gsize len,
                                gboolean break_lines,
                                gchar *out,
                                gint *state,
                                gint *save);
extern
gsize g_base64_encode_close (gboolean break_lines,
                                gchar *out,
                                gint *state,
                                gint *save);
extern
gchar* g_base64_encode (const guchar *data,
                                gsize len) __attribute__((__malloc__));
extern
gsize g_base64_decode_step (const gchar *in,
                                gsize len,
                                guchar *out,
                                gint *state,
                                guint *save);
extern
guchar *g_base64_decode (const gchar *text,
                                gsize *out_len) __attribute__((__malloc__));
extern
guchar *g_base64_decode_inplace (gchar *text,
                                gsize *out_len);


}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbitlock.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbitlock.h"
extern "C" {

extern
void g_bit_lock (volatile gint *address,
                                          gint lock_bit);
extern
gboolean g_bit_trylock (volatile gint *address,
                                          gint lock_bit);
extern
void g_bit_unlock (volatile gint *address,
                                          gint lock_bit);

extern
void g_pointer_bit_lock (volatile void *address,
                                          gint lock_bit);
extern
gboolean g_pointer_bit_trylock (volatile void *address,
                                          gint lock_bit);
extern
void g_pointer_bit_unlock (volatile void *address,
                                          gint lock_bit);
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbitlock.h"
}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbookmarkfile.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbookmarkfile.h"
extern "C" {
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbookmarkfile.h"
typedef enum
{
 G_BOOKMARK_FILE_ERROR_INVALID_URI,
 G_BOOKMARK_FILE_ERROR_INVALID_VALUE,
 G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED,
 G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND,
 G_BOOKMARK_FILE_ERROR_READ,
 G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING,
 G_BOOKMARK_FILE_ERROR_WRITE,
 G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND
} GBookmarkFileError;

extern
GQuark g_bookmark_file_error_quark (void);







typedef struct _GBookmarkFile GBookmarkFile;

extern
GBookmarkFile *g_bookmark_file_new (void);
extern
void g_bookmark_file_free (GBookmarkFile *bookmark);

extern
gboolean g_bookmark_file_load_from_file (GBookmarkFile *bookmark,
         const gchar *filename,
         GError **error);
extern
gboolean g_bookmark_file_load_from_data (GBookmarkFile *bookmark,
         const gchar *data,
         gsize length,
         GError **error);
extern
gboolean g_bookmark_file_load_from_data_dirs (GBookmarkFile *bookmark,
         const gchar *file,
         gchar **full_path,
         GError **error);
extern
gchar * g_bookmark_file_to_data (GBookmarkFile *bookmark,
         gsize *length,
         GError **error) __attribute__((__malloc__));
extern
gboolean g_bookmark_file_to_file (GBookmarkFile *bookmark,
         const gchar *filename,
         GError **error);

extern
void g_bookmark_file_set_title (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *title);
extern
gchar * g_bookmark_file_get_title (GBookmarkFile *bookmark,
         const gchar *uri,
         GError **error) __attribute__((__malloc__));
extern
void g_bookmark_file_set_description (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *description);
extern
gchar * g_bookmark_file_get_description (GBookmarkFile *bookmark,
         const gchar *uri,
         GError **error) __attribute__((__malloc__));
extern
void g_bookmark_file_set_mime_type (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *mime_type);
extern
gchar * g_bookmark_file_get_mime_type (GBookmarkFile *bookmark,
         const gchar *uri,
         GError **error) __attribute__((__malloc__));
extern
void g_bookmark_file_set_groups (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar **groups,
         gsize length);
extern
void g_bookmark_file_add_group (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *group);
extern
gboolean g_bookmark_file_has_group (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *group,
         GError **error);
extern
gchar ** g_bookmark_file_get_groups (GBookmarkFile *bookmark,
         const gchar *uri,
         gsize *length,
         GError **error) __attribute__((__malloc__));
extern
void g_bookmark_file_add_application (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *name,
         const gchar *exec);
extern
gboolean g_bookmark_file_has_application (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *name,
         GError **error);
extern
gchar ** g_bookmark_file_get_applications (GBookmarkFile *bookmark,
         const gchar *uri,
         gsize *length,
         GError **error) __attribute__((__malloc__));
extern
gboolean g_bookmark_file_set_app_info (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *name,
         const gchar *exec,
         gint count,
         time_t stamp,
         GError **error);
extern
gboolean g_bookmark_file_get_app_info (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *name,
         gchar **exec,
         guint *count,
         time_t *stamp,
         GError **error);
extern
void g_bookmark_file_set_is_private (GBookmarkFile *bookmark,
         const gchar *uri,
         gboolean is_private);
extern
gboolean g_bookmark_file_get_is_private (GBookmarkFile *bookmark,
         const gchar *uri,
         GError **error);
extern
void g_bookmark_file_set_icon (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *href,
         const gchar *mime_type);
extern
gboolean g_bookmark_file_get_icon (GBookmarkFile *bookmark,
         const gchar *uri,
         gchar **href,
         gchar **mime_type,
         GError **error);
extern
void g_bookmark_file_set_added (GBookmarkFile *bookmark,
         const gchar *uri,
         time_t added);
extern
time_t g_bookmark_file_get_added (GBookmarkFile *bookmark,
         const gchar *uri,
         GError **error);
extern
void g_bookmark_file_set_modified (GBookmarkFile *bookmark,
         const gchar *uri,
         time_t modified);
extern
time_t g_bookmark_file_get_modified (GBookmarkFile *bookmark,
         const gchar *uri,
         GError **error);
extern
void g_bookmark_file_set_visited (GBookmarkFile *bookmark,
         const gchar *uri,
         time_t visited);
extern
time_t g_bookmark_file_get_visited (GBookmarkFile *bookmark,
         const gchar *uri,
         GError **error);
extern
gboolean g_bookmark_file_has_item (GBookmarkFile *bookmark,
         const gchar *uri);
extern
gint g_bookmark_file_get_size (GBookmarkFile *bookmark);
extern
gchar ** g_bookmark_file_get_uris (GBookmarkFile *bookmark,
         gsize *length) __attribute__((__malloc__));
extern
gboolean g_bookmark_file_remove_group (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *group,
         GError **error);
extern
gboolean g_bookmark_file_remove_application (GBookmarkFile *bookmark,
         const gchar *uri,
         const gchar *name,
         GError **error);
extern
gboolean g_bookmark_file_remove_item (GBookmarkFile *bookmark,
         const gchar *uri,
         GError **error);
extern
gboolean g_bookmark_file_move_item (GBookmarkFile *bookmark,
         const gchar *old_uri,
         const gchar *new_uri,
         GError **error);

}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbytes.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gbytes.h"
extern "C" {

extern
GBytes * g_bytes_new (gconstpointer data,
                                                gsize size);

extern
GBytes * g_bytes_new_take (gpointer data,
                                                gsize size);

extern
GBytes * g_bytes_new_static (gconstpointer data,
                                                gsize size);

extern
GBytes * g_bytes_new_with_free_func (gconstpointer data,
                                                gsize size,
                                                GDestroyNotify free_func,
                                                gpointer user_data);

extern
GBytes * g_bytes_new_from_bytes (GBytes *bytes,
                                                gsize offset,
                                                gsize length);

extern
gconstpointer g_bytes_get_data (GBytes *bytes,
                                                gsize *size);

extern
gsize g_bytes_get_size (GBytes *bytes);

extern
GBytes * g_bytes_ref (GBytes *bytes);

extern
void g_bytes_unref (GBytes *bytes);

extern
gpointer g_bytes_unref_to_data (GBytes *bytes,
                                                gsize *size);

extern
GByteArray * g_bytes_unref_to_array (GBytes *bytes);

extern
guint g_bytes_hash (gconstpointer bytes);

extern
gboolean g_bytes_equal (gconstpointer bytes1,
                                                gconstpointer bytes2);

extern
gint g_bytes_compare (gconstpointer bytes1,
                                                gconstpointer bytes2);

}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gcharset.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gcharset.h"
extern "C" {

extern
gboolean g_get_charset (const char **charset);
extern
gchar * g_get_codeset (void);

extern
const gchar * const * g_get_language_names (void);
extern
gchar ** g_get_locale_variants (const gchar *locale);

}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gchecksum.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gchecksum.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gchecksum.h"
typedef enum {
 G_CHECKSUM_MD5,
 G_CHECKSUM_SHA1,
 G_CHECKSUM_SHA256,
 G_CHECKSUM_SHA512
} GChecksumType;
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gchecksum.h"
typedef struct _GChecksum GChecksum;

extern
gssize g_checksum_type_get_length (GChecksumType checksum_type);

extern
GChecksum * g_checksum_new (GChecksumType checksum_type);
extern
void g_checksum_reset (GChecksum *checksum);
extern
GChecksum * g_checksum_copy (const GChecksum *checksum);
extern
void g_checksum_free (GChecksum *checksum);
extern
void g_checksum_update (GChecksum *checksum,
                                                    const guchar *data,
                                                    gssize length);
extern
const gchar * g_checksum_get_string (GChecksum *checksum);
extern
void g_checksum_get_digest (GChecksum *checksum,
                                                    guint8 *buffer,
                                                    gsize *digest_len);

extern
gchar *g_compute_checksum_for_data (GChecksumType checksum_type,
                                                    const guchar *data,
                                                    gsize length);
extern
gchar *g_compute_checksum_for_string (GChecksumType checksum_type,
                                                    const gchar *str,
                                                    gssize length);

extern
gchar *g_compute_checksum_for_bytes (GChecksumType checksum_type,
                                                    GBytes *data);

}
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gconvert.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gconvert.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gconvert.h"
typedef enum
{
 G_CONVERT_ERROR_NO_CONVERSION,
 G_CONVERT_ERROR_ILLEGAL_SEQUENCE,
 G_CONVERT_ERROR_FAILED,
 G_CONVERT_ERROR_PARTIAL_INPUT,
 G_CONVERT_ERROR_BAD_URI,
 G_CONVERT_ERROR_NOT_ABSOLUTE_PATH,
 G_CONVERT_ERROR_NO_MEMORY
} GConvertError;
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gconvert.h"
extern
GQuark g_convert_error_quark (void);







typedef struct _GIConv *GIConv;

extern
GIConv g_iconv_open (const gchar *to_codeset,
        const gchar *from_codeset);
extern
gsize g_iconv (GIConv converter,
        gchar **inbuf,
        gsize *inbytes_left,
        gchar **outbuf,
        gsize *outbytes_left);
extern
gint g_iconv_close (GIConv converter);


extern
gchar* g_convert (const gchar *str,
   gssize len,
   const gchar *to_codeset,
   const gchar *from_codeset,
   gsize *bytes_read,
   gsize *bytes_written,
   GError **error) __attribute__((__malloc__));
extern
gchar* g_convert_with_iconv (const gchar *str,
   gssize len,
   GIConv converter,
   gsize *bytes_read,
   gsize *bytes_written,
   GError **error) __attribute__((__malloc__));
extern
gchar* g_convert_with_fallback (const gchar *str,
   gssize len,
   const gchar *to_codeset,
   const gchar *from_codeset,
   const gchar *fallback,
   gsize *bytes_read,
   gsize *bytes_written,
   GError **error) __attribute__((__malloc__));




extern
gchar* g_locale_to_utf8 (const gchar *opsysstring,
     gssize len,
     gsize *bytes_read,
     gsize *bytes_written,
     GError **error) __attribute__((__malloc__));
extern
gchar* g_locale_from_utf8 (const gchar *utf8string,
     gssize len,
     gsize *bytes_read,
     gsize *bytes_written,
     GError **error) __attribute__((__malloc__));




extern
gchar* g_filename_to_utf8 (const gchar *opsysstring,
       gssize len,
       gsize *bytes_read,
       gsize *bytes_written,
       GError **error) __attribute__((__malloc__));
extern
gchar* g_filename_from_utf8 (const gchar *utf8string,
       gssize len,
       gsize *bytes_read,
       gsize *bytes_written,
       GError **error) __attribute__((__malloc__));

extern
gchar *g_filename_from_uri (const gchar *uri,
      gchar **hostname,
      GError **error) __attribute__((__malloc__));

extern
gchar *g_filename_to_uri (const gchar *filename,
      const gchar *hostname,
      GError **error) __attribute__((__malloc__));
extern
gchar *g_filename_display_name (const gchar *filename) __attribute__((__malloc__));
extern
gboolean g_get_filename_charsets (const gchar ***charsets);

extern
gchar *g_filename_display_basename (const gchar *filename) __attribute__((__malloc__));

extern
gchar **g_uri_list_extract_uris (const gchar *uri_list) __attribute__((__malloc__));
# 199 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gconvert.h"
}
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdataset.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdataset.h"
extern "C" {

typedef struct _GData GData;

typedef void (*GDataForeachFunc) (GQuark key_id,
                                                gpointer data,
                                                gpointer user_data);



extern
void g_datalist_init (GData **datalist);
extern
void g_datalist_clear (GData **datalist);
extern
gpointer g_datalist_id_get_data (GData **datalist,
     GQuark key_id);
extern
void g_datalist_id_set_data_full (GData **datalist,
     GQuark key_id,
     gpointer data,
     GDestroyNotify destroy_func);

typedef gpointer (*GDuplicateFunc) (gpointer data, gpointer user_data);

extern
gpointer g_datalist_id_dup_data (GData **datalist,
                                        GQuark key_id,
                                        GDuplicateFunc dup_func,
     gpointer user_data);
extern
gboolean g_datalist_id_replace_data (GData **datalist,
                                        GQuark key_id,
                                        gpointer oldval,
                                        gpointer newval,
                                        GDestroyNotify destroy,
     GDestroyNotify *old_destroy);

extern
gpointer g_datalist_id_remove_no_notify (GData **datalist,
     GQuark key_id);
extern
void g_datalist_foreach (GData **datalist,
     GDataForeachFunc func,
     gpointer user_data);
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdataset.h"
extern
void g_datalist_set_flags (GData **datalist,
     guint flags);
extern
void g_datalist_unset_flags (GData **datalist,
     guint flags);
extern
guint g_datalist_get_flags (GData **datalist);
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdataset.h"
extern
void g_dataset_destroy (gconstpointer dataset_location);
extern
gpointer g_dataset_id_get_data (gconstpointer dataset_location,
                                        GQuark key_id);
extern
gpointer g_datalist_get_data (GData **datalist,
      const gchar *key);
extern
void g_dataset_id_set_data_full (gconstpointer dataset_location,
                                        GQuark key_id,
                                        gpointer data,
                                        GDestroyNotify destroy_func);
extern
gpointer g_dataset_id_remove_no_notify (gconstpointer dataset_location,
                                        GQuark key_id);
extern
void g_dataset_foreach (gconstpointer dataset_location,
                                        GDataForeachFunc func,
                                        gpointer user_data);
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdataset.h"
}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdate.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdate.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdate.h"
typedef gint32 GTime;
typedef guint16 GDateYear;
typedef guint8 GDateDay;
typedef struct _GDate GDate;


typedef enum
{
 G_DATE_DAY = 0,
 G_DATE_MONTH = 1,
 G_DATE_YEAR = 2
} GDateDMY;


typedef enum
{
 G_DATE_BAD_WEEKDAY = 0,
 G_DATE_MONDAY = 1,
 G_DATE_TUESDAY = 2,
 G_DATE_WEDNESDAY = 3,
 G_DATE_THURSDAY = 4,
 G_DATE_FRIDAY = 5,
 G_DATE_SATURDAY = 6,
 G_DATE_SUNDAY = 7
} GDateWeekday;
typedef enum
{
 G_DATE_BAD_MONTH = 0,
 G_DATE_JANUARY = 1,
 G_DATE_FEBRUARY = 2,
 G_DATE_MARCH = 3,
 G_DATE_APRIL = 4,
 G_DATE_MAY = 5,
 G_DATE_JUNE = 6,
 G_DATE_JULY = 7,
 G_DATE_AUGUST = 8,
 G_DATE_SEPTEMBER = 9,
 G_DATE_OCTOBER = 10,
 G_DATE_NOVEMBER = 11,
 G_DATE_DECEMBER = 12
} GDateMonth;
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdate.h"
struct _GDate
{
 guint julian_days : 32;





 guint julian : 1;
 guint dmy : 1;


 guint day : 6;
 guint month : 4;
 guint year : 16;
};





extern
GDate* g_date_new (void);
extern
GDate* g_date_new_dmy (GDateDay day,
                                          GDateMonth month,
                                          GDateYear year);
extern
GDate* g_date_new_julian (guint32 julian_day);
extern
void g_date_free (GDate *date);






extern
gboolean g_date_valid (const GDate *date);
extern
gboolean g_date_valid_day (GDateDay day) __attribute__((__const__));
extern
gboolean g_date_valid_month (GDateMonth month) __attribute__((__const__));
extern
gboolean g_date_valid_year (GDateYear year) __attribute__((__const__));
extern
gboolean g_date_valid_weekday (GDateWeekday weekday) __attribute__((__const__));
extern
gboolean g_date_valid_julian (guint32 julian_date) __attribute__((__const__));
extern
gboolean g_date_valid_dmy (GDateDay day,
                                          GDateMonth month,
                                          GDateYear year) __attribute__((__const__));

extern
GDateWeekday g_date_get_weekday (const GDate *date);
extern
GDateMonth g_date_get_month (const GDate *date);
extern
GDateYear g_date_get_year (const GDate *date);
extern
GDateDay g_date_get_day (const GDate *date);
extern
guint32 g_date_get_julian (const GDate *date);
extern
guint g_date_get_day_of_year (const GDate *date);






extern
guint g_date_get_monday_week_of_year (const GDate *date);
extern
guint g_date_get_sunday_week_of_year (const GDate *date);
extern
guint g_date_get_iso8601_week_of_year (const GDate *date);





extern
void g_date_clear (GDate *date,
                                          guint n_dates);





extern
void g_date_set_parse (GDate *date,
                                          const gchar *str);
extern
void g_date_set_time_t (GDate *date,
       time_t timet);
extern
void g_date_set_time_val (GDate *date,
       GTimeVal *timeval);

__attribute__((__deprecated__("Use '" "g_date_set_time_t" "' instead"))) extern
void g_date_set_time (GDate *date,
                                          GTime time_);

extern
void g_date_set_month (GDate *date,
                                          GDateMonth month);
extern
void g_date_set_day (GDate *date,
                                          GDateDay day);
extern
void g_date_set_year (GDate *date,
                                          GDateYear year);
extern
void g_date_set_dmy (GDate *date,
                                          GDateDay day,
                                          GDateMonth month,
                                          GDateYear y);
extern
void g_date_set_julian (GDate *date,
                                          guint32 julian_date);
extern
gboolean g_date_is_first_of_month (const GDate *date);
extern
gboolean g_date_is_last_of_month (const GDate *date);


extern
void g_date_add_days (GDate *date,
                                          guint n_days);
extern
void g_date_subtract_days (GDate *date,
                                          guint n_days);


extern
void g_date_add_months (GDate *date,
                                          guint n_months);
extern
void g_date_subtract_months (GDate *date,
                                          guint n_months);


extern
void g_date_add_years (GDate *date,
                                          guint n_years);
extern
void g_date_subtract_years (GDate *date,
                                          guint n_years);
extern
gboolean g_date_is_leap_year (GDateYear year) __attribute__((__const__));
extern
guint8 g_date_get_days_in_month (GDateMonth month,
                                          GDateYear year) __attribute__((__const__));
extern
guint8 g_date_get_monday_weeks_in_year (GDateYear year) __attribute__((__const__));
extern
guint8 g_date_get_sunday_weeks_in_year (GDateYear year) __attribute__((__const__));



extern
gint g_date_days_between (const GDate *date1,
       const GDate *date2);


extern
gint g_date_compare (const GDate *lhs,
                                          const GDate *rhs);
extern
void g_date_to_struct_tm (const GDate *date,
                                          struct tm *tm);

extern
void g_date_clamp (GDate *date,
       const GDate *min_date,
       const GDate *max_date);


extern
void g_date_order (GDate *date1, GDate *date2);




extern
gsize g_date_strftime (gchar *s,
                                          gsize slen,
                                          const gchar *format,
                                          const GDate *date);
# 307 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdate.h"
}
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdatetime.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdatetime.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtimezone.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtimezone.h"
extern "C" {

typedef struct _GTimeZone GTimeZone;
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtimezone.h"
typedef enum
{
 G_TIME_TYPE_STANDARD,
 G_TIME_TYPE_DAYLIGHT,
 G_TIME_TYPE_UNIVERSAL
} GTimeType;

extern
GTimeZone * g_time_zone_new (const gchar *identifier);
extern
GTimeZone * g_time_zone_new_utc (void);
extern
GTimeZone * g_time_zone_new_local (void);

extern
GTimeZone * g_time_zone_ref (GTimeZone *tz);
extern
void g_time_zone_unref (GTimeZone *tz);

extern
gint g_time_zone_find_interval (GTimeZone *tz,
                                                                        GTimeType type,
                                                                        gint64 time_);

extern
gint g_time_zone_adjust_time (GTimeZone *tz,
                                                                        GTimeType type,
                                                                        gint64 *time_);

extern
const gchar * g_time_zone_get_abbreviation (GTimeZone *tz,
                                                                        gint interval);
extern
gint32 g_time_zone_get_offset (GTimeZone *tz,
                                                                        gint interval);
extern
gboolean g_time_zone_is_dst (GTimeZone *tz,
                                                                        gint interval);

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdatetime.h" 2

extern "C" {
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdatetime.h"
typedef gint64 GTimeSpan;
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdatetime.h"
typedef struct _GDateTime GDateTime;

extern
void g_date_time_unref (GDateTime *datetime);
extern
GDateTime * g_date_time_ref (GDateTime *datetime);

extern
GDateTime * g_date_time_new_now (GTimeZone *tz);
extern
GDateTime * g_date_time_new_now_local (void);
extern
GDateTime * g_date_time_new_now_utc (void);

extern
GDateTime * g_date_time_new_from_unix_local (gint64 t);
extern
GDateTime * g_date_time_new_from_unix_utc (gint64 t);

extern
GDateTime * g_date_time_new_from_timeval_local (const GTimeVal *tv);
extern
GDateTime * g_date_time_new_from_timeval_utc (const GTimeVal *tv);

extern
GDateTime * g_date_time_new (GTimeZone *tz,
                                                                        gint year,
                                                                        gint month,
                                                                        gint day,
                                                                        gint hour,
                                                                        gint minute,
                                                                        gdouble seconds);
extern
GDateTime * g_date_time_new_local (gint year,
                                                                        gint month,
                                                                        gint day,
                                                                        gint hour,
                                                                        gint minute,
                                                                        gdouble seconds);
extern
GDateTime * g_date_time_new_utc (gint year,
                                                                        gint month,
                                                                        gint day,
                                                                        gint hour,
                                                                        gint minute,
                                                                        gdouble seconds);

extern
__attribute__((warn_unused_result))
GDateTime * g_date_time_add (GDateTime *datetime,
                                                                        GTimeSpan timespan);

extern
__attribute__((warn_unused_result))
GDateTime * g_date_time_add_years (GDateTime *datetime,
                                                                        gint years);
extern
__attribute__((warn_unused_result))
GDateTime * g_date_time_add_months (GDateTime *datetime,
                                                                        gint months);
extern
__attribute__((warn_unused_result))
GDateTime * g_date_time_add_weeks (GDateTime *datetime,
                                                                        gint weeks);
extern
__attribute__((warn_unused_result))
GDateTime * g_date_time_add_days (GDateTime *datetime,
                                                                        gint days);

extern
__attribute__((warn_unused_result))
GDateTime * g_date_time_add_hours (GDateTime *datetime,
                                                                        gint hours);
extern
__attribute__((warn_unused_result))
GDateTime * g_date_time_add_minutes (GDateTime *datetime,
                                                                        gint minutes);
extern
__attribute__((warn_unused_result))
GDateTime * g_date_time_add_seconds (GDateTime *datetime,
                                                                        gdouble seconds);

extern
__attribute__((warn_unused_result))
GDateTime * g_date_time_add_full (GDateTime *datetime,
                                                                        gint years,
                                                                        gint months,
                                                                        gint days,
                                                                        gint hours,
                                                                        gint minutes,
                                                                        gdouble seconds);

extern
gint g_date_time_compare (gconstpointer dt1,
                                                                        gconstpointer dt2);
extern
GTimeSpan g_date_time_difference (GDateTime *end,
                                                                        GDateTime *begin);
extern
guint g_date_time_hash (gconstpointer datetime);
extern
gboolean g_date_time_equal (gconstpointer dt1,
                                                                        gconstpointer dt2);

extern
void g_date_time_get_ymd (GDateTime *datetime,
                                                                        gint *year,
                                                                        gint *month,
                                                                        gint *day);

extern
gint g_date_time_get_year (GDateTime *datetime);
extern
gint g_date_time_get_month (GDateTime *datetime);
extern
gint g_date_time_get_day_of_month (GDateTime *datetime);

extern
gint g_date_time_get_week_numbering_year (GDateTime *datetime);
extern
gint g_date_time_get_week_of_year (GDateTime *datetime);
extern
gint g_date_time_get_day_of_week (GDateTime *datetime);

extern
gint g_date_time_get_day_of_year (GDateTime *datetime);

extern
gint g_date_time_get_hour (GDateTime *datetime);
extern
gint g_date_time_get_minute (GDateTime *datetime);
extern
gint g_date_time_get_second (GDateTime *datetime);
extern
gint g_date_time_get_microsecond (GDateTime *datetime);
extern
gdouble g_date_time_get_seconds (GDateTime *datetime);

extern
gint64 g_date_time_to_unix (GDateTime *datetime);
extern
gboolean g_date_time_to_timeval (GDateTime *datetime,
                                                                        GTimeVal *tv);

extern
GTimeSpan g_date_time_get_utc_offset (GDateTime *datetime);
extern
const gchar * g_date_time_get_timezone_abbreviation (GDateTime *datetime);
extern
gboolean g_date_time_is_daylight_savings (GDateTime *datetime);

extern
GDateTime * g_date_time_to_timezone (GDateTime *datetime,
                                                                        GTimeZone *tz);
extern
GDateTime * g_date_time_to_local (GDateTime *datetime);
extern
GDateTime * g_date_time_to_utc (GDateTime *datetime);

extern
gchar * g_date_time_format (GDateTime *datetime,
                                                                        const gchar *format) __attribute__((__malloc__));

}
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdir.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdir.h"
# 1 "/usr/include/dirent.h" 1 3 4
# 37 "/usr/include/dirent.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 38 "/usr/include/dirent.h" 2 3 4






# 1 "/usr/include/sys/dirent.h" 1 3 4
# 38 "/usr/include/sys/dirent.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 39 "/usr/include/sys/dirent.h" 2 3 4
# 50 "/usr/include/sys/dirent.h" 3 4

# 50 "/usr/include/sys/dirent.h" 3 4
struct dirent {
ino_t d_fileno;
__uint16_t d_reclen;
__uint16_t d_namlen;
__uint8_t d_type;


char d_name[511 + 1];



};
# 45 "/usr/include/dirent.h" 2 3 4





typedef struct _dirdesc DIR;







struct _dirdesc {



int dd_fd;



long dd_loc;
long dd_size;
char *dd_buf;
int dd_len;
__off_t dd_seek;
void *dd_internal;
int dd_flags;
void *dd_lock;
};
# 94 "/usr/include/dirent.h" 3 4

# 94 "/usr/include/dirent.h" 3 4
#pragma GCC visibility push(default)
# 94 "/usr/include/dirent.h" 3 4
extern "C" {
int closedir(DIR *);
void rewinddir(DIR *);

DIR *opendir(const char *) __asm("__opendir30");
struct dirent *readdir(DIR *) __asm("__readdir30");
int readdir_r(DIR * __restrict__, struct dirent * __restrict__,
   struct dirent ** __restrict__) __asm("__readdir_r30");


void seekdir(DIR *, long);
long telldir(DIR *);



DIR *fdopendir(int);
DIR *__opendir2(const char *, int) __asm("__opendir230");
int scandir(const char *, struct dirent ***,
   int (*)(const struct dirent *), int (*)(const void *, const void *))
   __asm("__scandir30");
int getdents(int, char *, size_t) __asm("__getdents30");
int alphasort(const void *, const void *) __asm("__alphasort30");


}
# 118 "/usr/include/dirent.h" 3 4
#pragma GCC visibility pop
# 118 "/usr/include/dirent.h" 3 4

# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdir.h" 2



# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdir.h"
extern "C" {

typedef struct _GDir GDir;

extern
GDir * g_dir_open (const gchar *path,
           guint flags,
           GError **error);
extern
const gchar * g_dir_read_name (GDir *dir);
extern
void g_dir_rewind (GDir *dir);
extern
void g_dir_close (GDir *dir);
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gdir.h"
}
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/genviron.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/genviron.h"
extern "C" {

extern
const gchar * g_getenv (const gchar *variable);
extern
gboolean g_setenv (const gchar *variable,
                                 const gchar *value,
                                 gboolean overwrite);
extern
void g_unsetenv (const gchar *variable);
extern
gchar ** g_listenv (void);

extern
gchar ** g_get_environ (void);
extern
const gchar * g_environ_getenv (gchar **envp,
                                 const gchar *variable);
extern
gchar ** g_environ_setenv (gchar **envp,
                                 const gchar *variable,
                                 const gchar *value,
                                 gboolean overwrite) __attribute__((warn_unused_result));
extern
gchar ** g_environ_unsetenv (gchar **envp,
                                 const gchar *variable) __attribute__((warn_unused_result));
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/genviron.h"
}
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gfileutils.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gfileutils.h"
extern "C" {



typedef enum
{
 G_FILE_ERROR_EXIST,
 G_FILE_ERROR_ISDIR,
 G_FILE_ERROR_ACCES,
 G_FILE_ERROR_NAMETOOLONG,
 G_FILE_ERROR_NOENT,
 G_FILE_ERROR_NOTDIR,
 G_FILE_ERROR_NXIO,
 G_FILE_ERROR_NODEV,
 G_FILE_ERROR_ROFS,
 G_FILE_ERROR_TXTBSY,
 G_FILE_ERROR_FAULT,
 G_FILE_ERROR_LOOP,
 G_FILE_ERROR_NOSPC,
 G_FILE_ERROR_NOMEM,
 G_FILE_ERROR_MFILE,
 G_FILE_ERROR_NFILE,
 G_FILE_ERROR_BADF,
 G_FILE_ERROR_INVAL,
 G_FILE_ERROR_PIPE,
 G_FILE_ERROR_AGAIN,
 G_FILE_ERROR_INTR,
 G_FILE_ERROR_IO,
 G_FILE_ERROR_PERM,
 G_FILE_ERROR_NOSYS,
 G_FILE_ERROR_FAILED
} GFileError;





typedef enum
{
 G_FILE_TEST_IS_REGULAR = 1 << 0,
 G_FILE_TEST_IS_SYMLINK = 1 << 1,
 G_FILE_TEST_IS_DIR = 1 << 2,
 G_FILE_TEST_IS_EXECUTABLE = 1 << 3,
 G_FILE_TEST_EXISTS = 1 << 4
} GFileTest;

extern
GQuark g_file_error_quark (void);

extern
GFileError g_file_error_from_errno (gint err_no);

extern
gboolean g_file_test (const gchar *filename,
                             GFileTest test);
extern
gboolean g_file_get_contents (const gchar *filename,
                             gchar **contents,
                             gsize *length,
                             GError **error);
extern
gboolean g_file_set_contents (const gchar *filename,
                             const gchar *contents,
                             gssize length,
                             GError **error);
extern
gchar *g_file_read_link (const gchar *filename,
                             GError **error);


extern
gchar *g_mkdtemp (gchar *tmpl);
extern
gchar *g_mkdtemp_full (gchar *tmpl,
                              gint mode);


extern
gint g_mkstemp (gchar *tmpl);
extern
gint g_mkstemp_full (gchar *tmpl,
                              gint flags,
                              gint mode);


extern
gint g_file_open_tmp (const gchar *tmpl,
                              gchar **name_used,
                              GError **error);
extern
gchar *g_dir_make_tmp (const gchar *tmpl,
                              GError **error);

extern
gchar *g_build_path (const gchar *separator,
                              const gchar *first_element,
                              ...) __attribute__((__malloc__)) __attribute__((__sentinel__));
extern
gchar *g_build_pathv (const gchar *separator,
                              gchar **args) __attribute__((__malloc__));

extern
gchar *g_build_filename (const gchar *first_element,
                              ...) __attribute__((__malloc__)) __attribute__((__sentinel__));
extern
gchar *g_build_filenamev (gchar **args) __attribute__((__malloc__));

extern
gint g_mkdir_with_parents (const gchar *pathname,
                              gint mode);
# 162 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gfileutils.h"
extern
gboolean g_path_is_absolute (const gchar *file_name);
extern
const gchar *g_path_skip_root (const gchar *file_name);

__attribute__((__deprecated__("Use '" "g_path_get_basename" "' instead"))) extern
const gchar *g_basename (const gchar *file_name);




extern
gchar *g_get_current_dir (void);
extern
gchar *g_path_get_basename (const gchar *file_name) __attribute__((__malloc__));
extern
gchar *g_path_get_dirname (const gchar *file_name) __attribute__((__malloc__));
# 207 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gfileutils.h"
}
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ggettext.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ggettext.h"
extern "C" {

extern
const gchar *g_strip_context (const gchar *msgid,
                             const gchar *msgval) __attribute__((__format_arg__ (1)));

extern
const gchar *g_dgettext (const gchar *domain,
                             const gchar *msgid) __attribute__((__format_arg__ (2)));
extern
const gchar *g_dcgettext (const gchar *domain,
                             const gchar *msgid,
                             gint category) __attribute__((__format_arg__ (2)));
extern
const gchar *g_dngettext (const gchar *domain,
                             const gchar *msgid,
                             const gchar *msgid_plural,
                             gulong n) __attribute__((__format_arg__ (3)));
extern
const gchar *g_dpgettext (const gchar *domain,
                             const gchar *msgctxtid,
                             gsize msgidoffset) __attribute__((__format_arg__ (2)));
extern
const gchar *g_dpgettext2 (const gchar *domain,
                             const gchar *context,
                             const gchar *msgid) __attribute__((__format_arg__ (3)));

}
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghash.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghash.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glist.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glist.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmem.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmem.h"
extern "C" {
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmem.h"
typedef struct _GMemVTable GMemVTable;
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmem.h"
extern
void g_free (gpointer mem);

extern
void g_clear_pointer (gpointer *pp,
                          GDestroyNotify destroy);

extern
gpointer g_malloc (gsize n_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
extern
gpointer g_malloc0 (gsize n_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
extern
gpointer g_realloc (gpointer mem,
     gsize n_bytes) __attribute__((warn_unused_result));
extern
gpointer g_try_malloc (gsize n_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
extern
gpointer g_try_malloc0 (gsize n_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
extern
gpointer g_try_realloc (gpointer mem,
     gsize n_bytes) __attribute__((warn_unused_result));

extern
gpointer g_malloc_n (gsize n_blocks,
     gsize n_block_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1,2)));
extern
gpointer g_malloc0_n (gsize n_blocks,
     gsize n_block_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1,2)));
extern
gpointer g_realloc_n (gpointer mem,
     gsize n_blocks,
     gsize n_block_bytes) __attribute__((warn_unused_result));
extern
gpointer g_try_malloc_n (gsize n_blocks,
     gsize n_block_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1,2)));
extern
gpointer g_try_malloc0_n (gsize n_blocks,
     gsize n_block_bytes) __attribute__((__malloc__)) __attribute__((__alloc_size__(1,2)));
extern
gpointer g_try_realloc_n (gpointer mem,
     gsize n_blocks,
     gsize n_block_bytes) __attribute__((warn_unused_result));
# 185 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmem.h"
static inline gpointer
g_steal_pointer (gpointer pp)
{
 gpointer *ptr = (gpointer *) pp;
 gpointer ref;

 ref = *ptr;
 *ptr =
# 192 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmem.h" 3 4
       __null
# 192 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmem.h"
           ;

 return ref;
}
# 344 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmem.h"
struct _GMemVTable {
 gpointer (*malloc) (gsize n_bytes);
 gpointer (*realloc) (gpointer mem,
     gsize n_bytes);
 void (*free) (gpointer mem);

 gpointer (*calloc) (gsize n_blocks,
     gsize n_block_bytes);
 gpointer (*try_malloc) (gsize n_bytes);
 gpointer (*try_realloc) (gpointer mem,
     gsize n_bytes);
};
__attribute__((__deprecated__)) extern
void g_mem_set_vtable (GMemVTable *vtable);
__attribute__((__deprecated__)) extern
gboolean g_mem_is_system_malloc (void);

extern gboolean g_mem_gc_friendly;



extern GMemVTable *glib_mem_profiler_table;
__attribute__((__deprecated__)) extern
void g_mem_profile (void);

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glist.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gnode.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gnode.h"
extern "C" {

typedef struct _GNode GNode;


typedef enum
{
 G_TRAVERSE_LEAVES = 1 << 0,
 G_TRAVERSE_NON_LEAVES = 1 << 1,
 G_TRAVERSE_ALL = G_TRAVERSE_LEAVES | G_TRAVERSE_NON_LEAVES,
 G_TRAVERSE_MASK = 0x03,
 G_TRAVERSE_LEAFS = G_TRAVERSE_LEAVES,
 G_TRAVERSE_NON_LEAFS = G_TRAVERSE_NON_LEAVES
} GTraverseFlags;


typedef enum
{
 G_IN_ORDER,
 G_PRE_ORDER,
 G_POST_ORDER,
 G_LEVEL_ORDER
} GTraverseType;

typedef gboolean (*GNodeTraverseFunc) (GNode *node,
      gpointer data);
typedef void (*GNodeForeachFunc) (GNode *node,
      gpointer data);
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gnode.h"
typedef gpointer (*GCopyFunc) (gconstpointer src,
                                                gpointer data);



struct _GNode
{
 gpointer data;
 GNode *next;
 GNode *prev;
 GNode *parent;
 GNode *children;
};
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gnode.h"
extern
GNode* g_node_new (gpointer data);
extern
void g_node_destroy (GNode *root);
extern
void g_node_unlink (GNode *node);
extern
GNode* g_node_copy_deep (GNode *node,
    GCopyFunc copy_func,
    gpointer data);
extern
GNode* g_node_copy (GNode *node);
extern
GNode* g_node_insert (GNode *parent,
    gint position,
    GNode *node);
extern
GNode* g_node_insert_before (GNode *parent,
    GNode *sibling,
    GNode *node);
extern
GNode* g_node_insert_after (GNode *parent,
    GNode *sibling,
    GNode *node);
extern
GNode* g_node_prepend (GNode *parent,
    GNode *node);
extern
guint g_node_n_nodes (GNode *root,
    GTraverseFlags flags);
extern
GNode* g_node_get_root (GNode *node);
extern
gboolean g_node_is_ancestor (GNode *node,
    GNode *descendant);
extern
guint g_node_depth (GNode *node);
extern
GNode* g_node_find (GNode *root,
    GTraverseType order,
    GTraverseFlags flags,
    gpointer data);
# 238 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gnode.h"
extern
void g_node_traverse (GNode *root,
    GTraverseType order,
    GTraverseFlags flags,
    gint max_depth,
    GNodeTraverseFunc func,
    gpointer data);






extern
guint g_node_max_height (GNode *root);

extern
void g_node_children_foreach (GNode *node,
     GTraverseFlags flags,
     GNodeForeachFunc func,
     gpointer data);
extern
void g_node_reverse_children (GNode *node);
extern
guint g_node_n_children (GNode *node);
extern
GNode* g_node_nth_child (GNode *node,
     guint n);
extern
GNode* g_node_last_child (GNode *node);
extern
GNode* g_node_find_child (GNode *node,
     GTraverseFlags flags,
     gpointer data);
extern
gint g_node_child_position (GNode *node,
     GNode *child);
extern
gint g_node_child_index (GNode *node,
     gpointer data);

extern
GNode* g_node_first_sibling (GNode *node);
extern
GNode* g_node_last_sibling (GNode *node);
# 320 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gnode.h"
}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glist.h" 2

extern "C" {

typedef struct _GList GList;

struct _GList
{
 gpointer data;
 GList *next;
 GList *prev;
};



extern
GList* g_list_alloc (void) __attribute__((warn_unused_result));
extern
void g_list_free (GList *list);
extern
void g_list_free_1 (GList *list);

extern
void g_list_free_full (GList *list,
     GDestroyNotify free_func);
extern
GList* g_list_append (GList *list,
     gpointer data) __attribute__((warn_unused_result));
extern
GList* g_list_prepend (GList *list,
     gpointer data) __attribute__((warn_unused_result));
extern
GList* g_list_insert (GList *list,
     gpointer data,
     gint position) __attribute__((warn_unused_result));
extern
GList* g_list_insert_sorted (GList *list,
     gpointer data,
     GCompareFunc func) __attribute__((warn_unused_result));
extern
GList* g_list_insert_sorted_with_data (GList *list,
     gpointer data,
     GCompareDataFunc func,
     gpointer user_data) __attribute__((warn_unused_result));
extern
GList* g_list_insert_before (GList *list,
     GList *sibling,
     gpointer data) __attribute__((warn_unused_result));
extern
GList* g_list_concat (GList *list1,
     GList *list2) __attribute__((warn_unused_result));
extern
GList* g_list_remove (GList *list,
     gconstpointer data) __attribute__((warn_unused_result));
extern
GList* g_list_remove_all (GList *list,
     gconstpointer data) __attribute__((warn_unused_result));
extern
GList* g_list_remove_link (GList *list,
     GList *llink) __attribute__((warn_unused_result));
extern
GList* g_list_delete_link (GList *list,
     GList *link_) __attribute__((warn_unused_result));
extern
GList* g_list_reverse (GList *list) __attribute__((warn_unused_result));
extern
GList* g_list_copy (GList *list) __attribute__((warn_unused_result));

extern
GList* g_list_copy_deep (GList *list,
     GCopyFunc func,
     gpointer user_data) __attribute__((warn_unused_result));

extern
GList* g_list_nth (GList *list,
     guint n);
extern
GList* g_list_nth_prev (GList *list,
     guint n);
extern
GList* g_list_find (GList *list,
     gconstpointer data);
extern
GList* g_list_find_custom (GList *list,
     gconstpointer data,
     GCompareFunc func);
extern
gint g_list_position (GList *list,
     GList *llink);
extern
gint g_list_index (GList *list,
     gconstpointer data);
extern
GList* g_list_last (GList *list);
extern
GList* g_list_first (GList *list);
extern
guint g_list_length (GList *list);
extern
void g_list_foreach (GList *list,
     GFunc func,
     gpointer user_data);
extern
GList* g_list_sort (GList *list,
     GCompareFunc compare_func) __attribute__((warn_unused_result));
extern
GList* g_list_sort_with_data (GList *list,
     GCompareDataFunc compare_func,
     gpointer user_data) __attribute__((warn_unused_result));
extern
gpointer g_list_nth_data (GList *list,
     guint n);





}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghash.h" 2

extern "C" {

typedef struct _GHashTable GHashTable;

typedef gboolean (*GHRFunc) (gpointer key,
                              gpointer value,
                              gpointer user_data);

typedef struct _GHashTableIter GHashTableIter;

struct _GHashTableIter
{

 gpointer dummy1;
 gpointer dummy2;
 gpointer dummy3;
 int dummy4;
 gboolean dummy5;
 gpointer dummy6;
};

extern
GHashTable* g_hash_table_new (GHashFunc hash_func,
                                           GEqualFunc key_equal_func);
extern
GHashTable* g_hash_table_new_full (GHashFunc hash_func,
                                           GEqualFunc key_equal_func,
                                           GDestroyNotify key_destroy_func,
                                           GDestroyNotify value_destroy_func);
extern
void g_hash_table_destroy (GHashTable *hash_table);
extern
gboolean g_hash_table_insert (GHashTable *hash_table,
                                           gpointer key,
                                           gpointer value);
extern
gboolean g_hash_table_replace (GHashTable *hash_table,
                                           gpointer key,
                                           gpointer value);
extern
gboolean g_hash_table_add (GHashTable *hash_table,
                                           gpointer key);
extern
gboolean g_hash_table_remove (GHashTable *hash_table,
                                           gconstpointer key);
extern
void g_hash_table_remove_all (GHashTable *hash_table);
extern
gboolean g_hash_table_steal (GHashTable *hash_table,
                                           gconstpointer key);
extern
void g_hash_table_steal_all (GHashTable *hash_table);
extern
gpointer g_hash_table_lookup (GHashTable *hash_table,
                                           gconstpointer key);
extern
gboolean g_hash_table_contains (GHashTable *hash_table,
                                           gconstpointer key);
extern
gboolean g_hash_table_lookup_extended (GHashTable *hash_table,
                                           gconstpointer lookup_key,
                                           gpointer *orig_key,
                                           gpointer *value);
extern
void g_hash_table_foreach (GHashTable *hash_table,
                                           GHFunc func,
                                           gpointer user_data);
extern
gpointer g_hash_table_find (GHashTable *hash_table,
                                           GHRFunc predicate,
                                           gpointer user_data);
extern
guint g_hash_table_foreach_remove (GHashTable *hash_table,
                                           GHRFunc func,
                                           gpointer user_data);
extern
guint g_hash_table_foreach_steal (GHashTable *hash_table,
                                           GHRFunc func,
                                           gpointer user_data);
extern
guint g_hash_table_size (GHashTable *hash_table);
extern
GList * g_hash_table_get_keys (GHashTable *hash_table);
extern
GList * g_hash_table_get_values (GHashTable *hash_table);
extern
gpointer * g_hash_table_get_keys_as_array (GHashTable *hash_table,
                                           guint *length);

extern
void g_hash_table_iter_init (GHashTableIter *iter,
                                           GHashTable *hash_table);
extern
gboolean g_hash_table_iter_next (GHashTableIter *iter,
                                           gpointer *key,
                                           gpointer *value);
extern
GHashTable* g_hash_table_iter_get_hash_table (GHashTableIter *iter);
extern
void g_hash_table_iter_remove (GHashTableIter *iter);
extern
void g_hash_table_iter_replace (GHashTableIter *iter,
                                           gpointer value);
extern
void g_hash_table_iter_steal (GHashTableIter *iter);

extern
GHashTable* g_hash_table_ref (GHashTable *hash_table);
extern
void g_hash_table_unref (GHashTable *hash_table);
# 153 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghash.h"
extern
gboolean g_str_equal (gconstpointer v1,
                        gconstpointer v2);
extern
guint g_str_hash (gconstpointer v);

extern
gboolean g_int_equal (gconstpointer v1,
                        gconstpointer v2);
extern
guint g_int_hash (gconstpointer v);

extern
gboolean g_int64_equal (gconstpointer v1,
                        gconstpointer v2);
extern
guint g_int64_hash (gconstpointer v);

extern
gboolean g_double_equal (gconstpointer v1,
                        gconstpointer v2);
extern
guint g_double_hash (gconstpointer v);

extern
guint g_direct_hash (gconstpointer v) __attribute__((__const__));
extern
gboolean g_direct_equal (gconstpointer v1,
                        gconstpointer v2) __attribute__((__const__));

}
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghmac.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghmac.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gchecksum.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghmac.h" 2

extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghmac.h"
typedef struct _GHmac GHmac;

extern
GHmac * g_hmac_new (GChecksumType digest_type,
                                                    const guchar *key,
                                                    gsize key_len);
extern
GHmac * g_hmac_copy (const GHmac *hmac);
extern
GHmac * g_hmac_ref (GHmac *hmac);
extern
void g_hmac_unref (GHmac *hmac);
extern
void g_hmac_update (GHmac *hmac,
                                                    const guchar *data,
                                                    gssize length);
extern
const gchar * g_hmac_get_string (GHmac *hmac);
extern
void g_hmac_get_digest (GHmac *hmac,
                                                    guint8 *buffer,
                                                    gsize *digest_len);

extern
gchar *g_compute_hmac_for_data (GChecksumType digest_type,
                                                    const guchar *key,
                                                    gsize key_len,
                                                    const guchar *data,
                                                    gsize length);
extern
gchar *g_compute_hmac_for_string (GChecksumType digest_type,
                                                    const guchar *key,
                                                    gsize key_len,
                                                    const gchar *str,
                                                    gssize length);

}
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghook.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghook.h"
extern "C" {



typedef struct _GHook GHook;
typedef struct _GHookList GHookList;

typedef gint (*GHookCompareFunc) (GHook *new_hook,
      GHook *sibling);
typedef gboolean (*GHookFindFunc) (GHook *hook,
      gpointer data);
typedef void (*GHookMarshaller) (GHook *hook,
      gpointer marshal_data);
typedef gboolean (*GHookCheckMarshaller) (GHook *hook,
      gpointer marshal_data);
typedef void (*GHookFunc) (gpointer data);
typedef gboolean (*GHookCheckFunc) (gpointer data);
typedef void (*GHookFinalizeFunc) (GHookList *hook_list,
      GHook *hook);
typedef enum
{
 G_HOOK_FLAG_ACTIVE = 1 << 0,
 G_HOOK_FLAG_IN_CALL = 1 << 1,
 G_HOOK_FLAG_MASK = 0x0f
} GHookFlagMask;




struct _GHookList
{
 gulong seq_id;
 guint hook_size : 16;
 guint is_setup : 1;
 GHook *hooks;
 gpointer dummy3;
 GHookFinalizeFunc finalize_hook;
 gpointer dummy[2];
};
struct _GHook
{
 gpointer data;
 GHook *next;
 GHook *prev;
 guint ref_count;
 gulong hook_id;
 guint flags;
 gpointer func;
 GDestroyNotify destroy;
};
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghook.h"
extern
void g_hook_list_init (GHookList *hook_list,
     guint hook_size);
extern
void g_hook_list_clear (GHookList *hook_list);
extern
GHook* g_hook_alloc (GHookList *hook_list);
extern
void g_hook_free (GHookList *hook_list,
     GHook *hook);
extern
GHook * g_hook_ref (GHookList *hook_list,
     GHook *hook);
extern
void g_hook_unref (GHookList *hook_list,
     GHook *hook);
extern
gboolean g_hook_destroy (GHookList *hook_list,
     gulong hook_id);
extern
void g_hook_destroy_link (GHookList *hook_list,
     GHook *hook);
extern
void g_hook_prepend (GHookList *hook_list,
     GHook *hook);
extern
void g_hook_insert_before (GHookList *hook_list,
     GHook *sibling,
     GHook *hook);
extern
void g_hook_insert_sorted (GHookList *hook_list,
     GHook *hook,
     GHookCompareFunc func);
extern
GHook* g_hook_get (GHookList *hook_list,
     gulong hook_id);
extern
GHook* g_hook_find (GHookList *hook_list,
     gboolean need_valids,
     GHookFindFunc func,
     gpointer data);
extern
GHook* g_hook_find_data (GHookList *hook_list,
     gboolean need_valids,
     gpointer data);
extern
GHook* g_hook_find_func (GHookList *hook_list,
     gboolean need_valids,
     gpointer func);
extern
GHook* g_hook_find_func_data (GHookList *hook_list,
     gboolean need_valids,
     gpointer func,
     gpointer data);

extern
GHook* g_hook_first_valid (GHookList *hook_list,
     gboolean may_be_in_call);



extern
GHook* g_hook_next_valid (GHookList *hook_list,
     GHook *hook,
     gboolean may_be_in_call);

extern
gint g_hook_compare_ids (GHook *new_hook,
     GHook *sibling);





extern
void g_hook_list_invoke (GHookList *hook_list,
     gboolean may_recurse);



extern
void g_hook_list_invoke_check (GHookList *hook_list,
     gboolean may_recurse);


extern
void g_hook_list_marshal (GHookList *hook_list,
     gboolean may_recurse,
     GHookMarshaller marshaller,
     gpointer marshal_data);
extern
void g_hook_list_marshal_check (GHookList *hook_list,
     gboolean may_recurse,
     GHookCheckMarshaller marshaller,
     gpointer marshal_data);

}
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghostutils.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/ghostutils.h"
extern "C" {

extern
gboolean g_hostname_is_non_ascii (const gchar *hostname);
extern
gboolean g_hostname_is_ascii_encoded (const gchar *hostname);
extern
gboolean g_hostname_is_ip_address (const gchar *hostname);

extern
gchar *g_hostname_to_ascii (const gchar *hostname);
extern
gchar *g_hostname_to_unicode (const gchar *hostname);

}
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/giochannel.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/giochannel.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h" 1
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gpoll.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gpoll.h"
extern "C" {
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gpoll.h"
typedef struct _GPollFD GPollFD;
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gpoll.h"
typedef gint (*GPollFunc) (GPollFD *ufds,
                                guint nfsd,
                                gint timeout_);
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gpoll.h"
struct _GPollFD
{





 gint fd;

 gushort events;
 gushort revents;
};
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gpoll.h"
extern
gint
g_poll (GPollFD *fds,
guint nfds,
gint timeout);

}
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gslist.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gslist.h"
extern "C" {

typedef struct _GSList GSList;

struct _GSList
{
 gpointer data;
 GSList *next;
};



extern
GSList* g_slist_alloc (void) __attribute__((warn_unused_result));
extern
void g_slist_free (GSList *list);
extern
void g_slist_free_1 (GSList *list);

extern
void g_slist_free_full (GSList *list,
      GDestroyNotify free_func);
extern
GSList* g_slist_append (GSList *list,
      gpointer data) __attribute__((warn_unused_result));
extern
GSList* g_slist_prepend (GSList *list,
      gpointer data) __attribute__((warn_unused_result));
extern
GSList* g_slist_insert (GSList *list,
      gpointer data,
      gint position) __attribute__((warn_unused_result));
extern
GSList* g_slist_insert_sorted (GSList *list,
      gpointer data,
      GCompareFunc func) __attribute__((warn_unused_result));
extern
GSList* g_slist_insert_sorted_with_data (GSList *list,
      gpointer data,
      GCompareDataFunc func,
      gpointer user_data) __attribute__((warn_unused_result));
extern
GSList* g_slist_insert_before (GSList *slist,
      GSList *sibling,
      gpointer data) __attribute__((warn_unused_result));
extern
GSList* g_slist_concat (GSList *list1,
      GSList *list2) __attribute__((warn_unused_result));
extern
GSList* g_slist_remove (GSList *list,
      gconstpointer data) __attribute__((warn_unused_result));
extern
GSList* g_slist_remove_all (GSList *list,
      gconstpointer data) __attribute__((warn_unused_result));
extern
GSList* g_slist_remove_link (GSList *list,
      GSList *link_) __attribute__((warn_unused_result));
extern
GSList* g_slist_delete_link (GSList *list,
      GSList *link_) __attribute__((warn_unused_result));
extern
GSList* g_slist_reverse (GSList *list) __attribute__((warn_unused_result));
extern
GSList* g_slist_copy (GSList *list) __attribute__((warn_unused_result));

extern
GSList* g_slist_copy_deep (GSList *list,
      GCopyFunc func,
      gpointer user_data) __attribute__((warn_unused_result));
extern
GSList* g_slist_nth (GSList *list,
      guint n);
extern
GSList* g_slist_find (GSList *list,
      gconstpointer data);
extern
GSList* g_slist_find_custom (GSList *list,
      gconstpointer data,
      GCompareFunc func);
extern
gint g_slist_position (GSList *list,
      GSList *llink);
extern
gint g_slist_index (GSList *list,
      gconstpointer data);
extern
GSList* g_slist_last (GSList *list);
extern
guint g_slist_length (GSList *list);
extern
void g_slist_foreach (GSList *list,
      GFunc func,
      gpointer user_data);
extern
GSList* g_slist_sort (GSList *list,
      GCompareFunc compare_func) __attribute__((warn_unused_result));
extern
GSList* g_slist_sort_with_data (GSList *list,
      GCompareDataFunc compare_func,
      gpointer user_data) __attribute__((warn_unused_result));
extern
gpointer g_slist_nth_data (GSList *list,
      guint n);



}
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h" 2


extern "C" {

typedef enum
{
 G_IO_IN =1,
 G_IO_OUT =4,
 G_IO_PRI =2,
 G_IO_ERR =8,
 G_IO_HUP =16,
 G_IO_NVAL =32
} GIOCondition;
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h"
typedef struct _GMainContext GMainContext;







typedef struct _GMainLoop GMainLoop;







typedef struct _GSource GSource;
typedef struct _GSourcePrivate GSourcePrivate;
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h"
typedef struct _GSourceCallbackFuncs GSourceCallbackFuncs;
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h"
typedef struct _GSourceFuncs GSourceFuncs;
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h"
typedef gboolean (*GSourceFunc) (gpointer user_data);
# 168 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h"
typedef void (*GChildWatchFunc) (GPid pid,
                                      gint status,
                                      gpointer user_data);
struct _GSource
{

 gpointer callback_data;
 GSourceCallbackFuncs *callback_funcs;

 const GSourceFuncs *source_funcs;
 guint ref_count;

 GMainContext *context;

 gint priority;
 guint flags;
 guint source_id;

 GSList *poll_fds;

 GSource *prev;
 GSource *next;

 char *name;

 GSourcePrivate *priv;
};

struct _GSourceCallbackFuncs
{
 void (*ref) (gpointer cb_data);
 void (*unref) (gpointer cb_data);
 void (*get) (gpointer cb_data,
                GSource *source,
                GSourceFunc *func,
                gpointer *data);
};







typedef void (*GSourceDummyMarshal) (void);

struct _GSourceFuncs
{
 gboolean (*prepare) (GSource *source,
                       gint *timeout_);
 gboolean (*check) (GSource *source);
 gboolean (*dispatch) (GSource *source,
                       GSourceFunc callback,
                       gpointer user_data);
 void (*finalize) (GSource *source);



 GSourceFunc closure_callback;
 GSourceDummyMarshal closure_marshal;
};
# 305 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmain.h"
extern
GMainContext *g_main_context_new (void);
extern
GMainContext *g_main_context_ref (GMainContext *context);
extern
void g_main_context_unref (GMainContext *context);
extern
GMainContext *g_main_context_default (void);

extern
gboolean g_main_context_iteration (GMainContext *context,
                                       gboolean may_block);
extern
gboolean g_main_context_pending (GMainContext *context);



extern
GSource *g_main_context_find_source_by_id (GMainContext *context,
                                                            guint source_id);
extern
GSource *g_main_context_find_source_by_user_data (GMainContext *context,
                                                            gpointer user_data);
extern
GSource *g_main_context_find_source_by_funcs_user_data (GMainContext *context,
                                                            GSourceFuncs *funcs,
                                                            gpointer user_data);



extern
void g_main_context_wakeup (GMainContext *context);
extern
gboolean g_main_context_acquire (GMainContext *context);
extern
void g_main_context_release (GMainContext *context);
extern
gboolean g_main_context_is_owner (GMainContext *context);
extern
gboolean g_main_context_wait (GMainContext *context,
                                GCond *cond,
                                GMutex *mutex);

extern
gboolean g_main_context_prepare (GMainContext *context,
                                 gint *priority);
extern
gint g_main_context_query (GMainContext *context,
                                 gint max_priority,
                                 gint *timeout_,
                                 GPollFD *fds,
                                 gint n_fds);
extern
gint g_main_context_check (GMainContext *context,
                                 gint max_priority,
                                 GPollFD *fds,
                                 gint n_fds);
extern
void g_main_context_dispatch (GMainContext *context);

extern
void g_main_context_set_poll_func (GMainContext *context,
                                      GPollFunc func);
extern
GPollFunc g_main_context_get_poll_func (GMainContext *context);



extern
void g_main_context_add_poll (GMainContext *context,
                                    GPollFD *fd,
                                    gint priority);
extern
void g_main_context_remove_poll (GMainContext *context,
                                    GPollFD *fd);

extern
gint g_main_depth (void);
extern
GSource *g_main_current_source (void);



extern
void g_main_context_push_thread_default (GMainContext *context);
extern
void g_main_context_pop_thread_default (GMainContext *context);
extern
GMainContext *g_main_context_get_thread_default (void);
extern
GMainContext *g_main_context_ref_thread_default (void);



extern
GMainLoop *g_main_loop_new (GMainContext *context,
                                  gboolean is_running);
extern
void g_main_loop_run (GMainLoop *loop);
extern
void g_main_loop_quit (GMainLoop *loop);
extern
GMainLoop *g_main_loop_ref (GMainLoop *loop);
extern
void g_main_loop_unref (GMainLoop *loop);
extern
gboolean g_main_loop_is_running (GMainLoop *loop);
extern
GMainContext *g_main_loop_get_context (GMainLoop *loop);



extern
GSource *g_source_new (GSourceFuncs *source_funcs,
                                  guint struct_size);
extern
GSource *g_source_ref (GSource *source);
extern
void g_source_unref (GSource *source);

extern
guint g_source_attach (GSource *source,
                                  GMainContext *context);
extern
void g_source_destroy (GSource *source);

extern
void g_source_set_priority (GSource *source,
                                  gint priority);
extern
gint g_source_get_priority (GSource *source);
extern
void g_source_set_can_recurse (GSource *source,
                                  gboolean can_recurse);
extern
gboolean g_source_get_can_recurse (GSource *source);
extern
guint g_source_get_id (GSource *source);

extern
GMainContext *g_source_get_context (GSource *source);

extern
void g_source_set_callback (GSource *source,
                                  GSourceFunc func,
                                  gpointer data,
                                  GDestroyNotify notify);

extern
void g_source_set_funcs (GSource *source,
                                  GSourceFuncs *funcs);
extern
gboolean g_source_is_destroyed (GSource *source);

extern
void g_source_set_name (GSource *source,
                                             const char *name);
extern
const char * g_source_get_name (GSource *source);
extern
void g_source_set_name_by_id (guint tag,
                                             const char *name);

extern
void g_source_set_ready_time (GSource *source,
                                             gint64 ready_time);
extern
gint64 g_source_get_ready_time (GSource *source);


extern
gpointer g_source_add_unix_fd (GSource *source,
                                             gint fd,
                                             GIOCondition events);
extern
void g_source_modify_unix_fd (GSource *source,
                                             gpointer tag,
                                             GIOCondition new_events);
extern
void g_source_remove_unix_fd (GSource *source,
                                             gpointer tag);
extern
GIOCondition g_source_query_unix_fd (GSource *source,
                                             gpointer tag);



extern
void g_source_set_callback_indirect (GSource *source,
                                    gpointer callback_data,
                                    GSourceCallbackFuncs *callback_funcs);

extern
void g_source_add_poll (GSource *source,
          GPollFD *fd);
extern
void g_source_remove_poll (GSource *source,
          GPollFD *fd);

extern
void g_source_add_child_source (GSource *source,
          GSource *child_source);
extern
void g_source_remove_child_source (GSource *source,
          GSource *child_source);

__attribute__((__deprecated__("Use '" "g_source_get_time" "' instead"))) extern
void g_source_get_current_time (GSource *source,
                                   GTimeVal *timeval);

extern
gint64 g_source_get_time (GSource *source);







extern
GSource *g_idle_source_new (void);
extern
GSource *g_child_watch_source_new (GPid pid);
extern
GSource *g_timeout_source_new (guint interval);
extern
GSource *g_timeout_source_new_seconds (guint interval);



extern
void g_get_current_time (GTimeVal *result);
extern
gint64 g_get_monotonic_time (void);
extern
gint64 g_get_real_time (void);



extern
gboolean g_source_remove (guint tag);
extern
gboolean g_source_remove_by_user_data (gpointer user_data);
extern
gboolean g_source_remove_by_funcs_user_data (GSourceFuncs *funcs,
                                             gpointer user_data);


extern
guint g_timeout_add_full (gint priority,
                                    guint interval,
                                    GSourceFunc function,
                                    gpointer data,
                                    GDestroyNotify notify);
extern
guint g_timeout_add (guint interval,
                                    GSourceFunc function,
                                    gpointer data);
extern
guint g_timeout_add_seconds_full (gint priority,
                                    guint interval,
                                    GSourceFunc function,
                                    gpointer data,
                                    GDestroyNotify notify);
extern
guint g_timeout_add_seconds (guint interval,
                                    GSourceFunc function,
                                    gpointer data);
extern
guint g_child_watch_add_full (gint priority,
                                    GPid pid,
                                    GChildWatchFunc function,
                                    gpointer data,
                                    GDestroyNotify notify);
extern
guint g_child_watch_add (GPid pid,
                                    GChildWatchFunc function,
                                    gpointer data);
extern
guint g_idle_add (GSourceFunc function,
                                    gpointer data);
extern
guint g_idle_add_full (gint priority,
                                    GSourceFunc function,
                                    gpointer data,
                                    GDestroyNotify notify);
extern
gboolean g_idle_remove_by_data (gpointer data);

extern
void g_main_context_invoke_full (GMainContext *context,
                                    gint priority,
                                    GSourceFunc function,
                                    gpointer data,
                                    GDestroyNotify notify);
extern
void g_main_context_invoke (GMainContext *context,
                                    GSourceFunc function,
                                    gpointer data);


extern GSourceFuncs g_timeout_funcs;
extern GSourceFuncs g_child_watch_funcs;
extern GSourceFuncs g_idle_funcs;

extern GSourceFuncs g_unix_signal_funcs;
extern GSourceFuncs g_unix_fd_source_funcs;


}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/giochannel.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstring.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstring.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h"
extern "C" {
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h"
typedef guint32 gunichar;
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h"
typedef guint16 gunichar2;
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h"
typedef enum
{
 G_UNICODE_CONTROL,
 G_UNICODE_FORMAT,
 G_UNICODE_UNASSIGNED,
 G_UNICODE_PRIVATE_USE,
 G_UNICODE_SURROGATE,
 G_UNICODE_LOWERCASE_LETTER,
 G_UNICODE_MODIFIER_LETTER,
 G_UNICODE_OTHER_LETTER,
 G_UNICODE_TITLECASE_LETTER,
 G_UNICODE_UPPERCASE_LETTER,
 G_UNICODE_SPACING_MARK,
 G_UNICODE_ENCLOSING_MARK,
 G_UNICODE_NON_SPACING_MARK,
 G_UNICODE_DECIMAL_NUMBER,
 G_UNICODE_LETTER_NUMBER,
 G_UNICODE_OTHER_NUMBER,
 G_UNICODE_CONNECT_PUNCTUATION,
 G_UNICODE_DASH_PUNCTUATION,
 G_UNICODE_CLOSE_PUNCTUATION,
 G_UNICODE_FINAL_PUNCTUATION,
 G_UNICODE_INITIAL_PUNCTUATION,
 G_UNICODE_OTHER_PUNCTUATION,
 G_UNICODE_OPEN_PUNCTUATION,
 G_UNICODE_CURRENCY_SYMBOL,
 G_UNICODE_MODIFIER_SYMBOL,
 G_UNICODE_MATH_SYMBOL,
 G_UNICODE_OTHER_SYMBOL,
 G_UNICODE_LINE_SEPARATOR,
 G_UNICODE_PARAGRAPH_SEPARATOR,
 G_UNICODE_SPACE_SEPARATOR
} GUnicodeType;
# 212 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h"
typedef enum
{
 G_UNICODE_BREAK_MANDATORY,
 G_UNICODE_BREAK_CARRIAGE_RETURN,
 G_UNICODE_BREAK_LINE_FEED,
 G_UNICODE_BREAK_COMBINING_MARK,
 G_UNICODE_BREAK_SURROGATE,
 G_UNICODE_BREAK_ZERO_WIDTH_SPACE,
 G_UNICODE_BREAK_INSEPARABLE,
 G_UNICODE_BREAK_NON_BREAKING_GLUE,
 G_UNICODE_BREAK_CONTINGENT,
 G_UNICODE_BREAK_SPACE,
 G_UNICODE_BREAK_AFTER,
 G_UNICODE_BREAK_BEFORE,
 G_UNICODE_BREAK_BEFORE_AND_AFTER,
 G_UNICODE_BREAK_HYPHEN,
 G_UNICODE_BREAK_NON_STARTER,
 G_UNICODE_BREAK_OPEN_PUNCTUATION,
 G_UNICODE_BREAK_CLOSE_PUNCTUATION,
 G_UNICODE_BREAK_QUOTATION,
 G_UNICODE_BREAK_EXCLAMATION,
 G_UNICODE_BREAK_IDEOGRAPHIC,
 G_UNICODE_BREAK_NUMERIC,
 G_UNICODE_BREAK_INFIX_SEPARATOR,
 G_UNICODE_BREAK_SYMBOL,
 G_UNICODE_BREAK_ALPHABETIC,
 G_UNICODE_BREAK_PREFIX,
 G_UNICODE_BREAK_POSTFIX,
 G_UNICODE_BREAK_COMPLEX_CONTEXT,
 G_UNICODE_BREAK_AMBIGUOUS,
 G_UNICODE_BREAK_UNKNOWN,
 G_UNICODE_BREAK_NEXT_LINE,
 G_UNICODE_BREAK_WORD_JOINER,
 G_UNICODE_BREAK_HANGUL_L_JAMO,
 G_UNICODE_BREAK_HANGUL_V_JAMO,
 G_UNICODE_BREAK_HANGUL_T_JAMO,
 G_UNICODE_BREAK_HANGUL_LV_SYLLABLE,
 G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE,
 G_UNICODE_BREAK_CLOSE_PARANTHESIS,
 G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER,
 G_UNICODE_BREAK_HEBREW_LETTER,
 G_UNICODE_BREAK_REGIONAL_INDICATOR
} GUnicodeBreakType;
# 415 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h"
typedef enum
{
 G_UNICODE_SCRIPT_INVALID_CODE = -1,
 G_UNICODE_SCRIPT_COMMON = 0,
 G_UNICODE_SCRIPT_INHERITED,
 G_UNICODE_SCRIPT_ARABIC,
 G_UNICODE_SCRIPT_ARMENIAN,
 G_UNICODE_SCRIPT_BENGALI,
 G_UNICODE_SCRIPT_BOPOMOFO,
 G_UNICODE_SCRIPT_CHEROKEE,
 G_UNICODE_SCRIPT_COPTIC,
 G_UNICODE_SCRIPT_CYRILLIC,
 G_UNICODE_SCRIPT_DESERET,
 G_UNICODE_SCRIPT_DEVANAGARI,
 G_UNICODE_SCRIPT_ETHIOPIC,
 G_UNICODE_SCRIPT_GEORGIAN,
 G_UNICODE_SCRIPT_GOTHIC,
 G_UNICODE_SCRIPT_GREEK,
 G_UNICODE_SCRIPT_GUJARATI,
 G_UNICODE_SCRIPT_GURMUKHI,
 G_UNICODE_SCRIPT_HAN,
 G_UNICODE_SCRIPT_HANGUL,
 G_UNICODE_SCRIPT_HEBREW,
 G_UNICODE_SCRIPT_HIRAGANA,
 G_UNICODE_SCRIPT_KANNADA,
 G_UNICODE_SCRIPT_KATAKANA,
 G_UNICODE_SCRIPT_KHMER,
 G_UNICODE_SCRIPT_LAO,
 G_UNICODE_SCRIPT_LATIN,
 G_UNICODE_SCRIPT_MALAYALAM,
 G_UNICODE_SCRIPT_MONGOLIAN,
 G_UNICODE_SCRIPT_MYANMAR,
 G_UNICODE_SCRIPT_OGHAM,
 G_UNICODE_SCRIPT_OLD_ITALIC,
 G_UNICODE_SCRIPT_ORIYA,
 G_UNICODE_SCRIPT_RUNIC,
 G_UNICODE_SCRIPT_SINHALA,
 G_UNICODE_SCRIPT_SYRIAC,
 G_UNICODE_SCRIPT_TAMIL,
 G_UNICODE_SCRIPT_TELUGU,
 G_UNICODE_SCRIPT_THAANA,
 G_UNICODE_SCRIPT_THAI,
 G_UNICODE_SCRIPT_TIBETAN,
 G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL,
 G_UNICODE_SCRIPT_YI,
 G_UNICODE_SCRIPT_TAGALOG,
 G_UNICODE_SCRIPT_HANUNOO,
 G_UNICODE_SCRIPT_BUHID,
 G_UNICODE_SCRIPT_TAGBANWA,


 G_UNICODE_SCRIPT_BRAILLE,
 G_UNICODE_SCRIPT_CYPRIOT,
 G_UNICODE_SCRIPT_LIMBU,
 G_UNICODE_SCRIPT_OSMANYA,
 G_UNICODE_SCRIPT_SHAVIAN,
 G_UNICODE_SCRIPT_LINEAR_B,
 G_UNICODE_SCRIPT_TAI_LE,
 G_UNICODE_SCRIPT_UGARITIC,


 G_UNICODE_SCRIPT_NEW_TAI_LUE,
 G_UNICODE_SCRIPT_BUGINESE,
 G_UNICODE_SCRIPT_GLAGOLITIC,
 G_UNICODE_SCRIPT_TIFINAGH,
 G_UNICODE_SCRIPT_SYLOTI_NAGRI,
 G_UNICODE_SCRIPT_OLD_PERSIAN,
 G_UNICODE_SCRIPT_KHAROSHTHI,


 G_UNICODE_SCRIPT_UNKNOWN,
 G_UNICODE_SCRIPT_BALINESE,
 G_UNICODE_SCRIPT_CUNEIFORM,
 G_UNICODE_SCRIPT_PHOENICIAN,
 G_UNICODE_SCRIPT_PHAGS_PA,
 G_UNICODE_SCRIPT_NKO,


 G_UNICODE_SCRIPT_KAYAH_LI,
 G_UNICODE_SCRIPT_LEPCHA,
 G_UNICODE_SCRIPT_REJANG,
 G_UNICODE_SCRIPT_SUNDANESE,
 G_UNICODE_SCRIPT_SAURASHTRA,
 G_UNICODE_SCRIPT_CHAM,
 G_UNICODE_SCRIPT_OL_CHIKI,
 G_UNICODE_SCRIPT_VAI,
 G_UNICODE_SCRIPT_CARIAN,
 G_UNICODE_SCRIPT_LYCIAN,
 G_UNICODE_SCRIPT_LYDIAN,


 G_UNICODE_SCRIPT_AVESTAN,
 G_UNICODE_SCRIPT_BAMUM,
 G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS,
 G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC,
 G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI,
 G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN,
 G_UNICODE_SCRIPT_JAVANESE,
 G_UNICODE_SCRIPT_KAITHI,
 G_UNICODE_SCRIPT_LISU,
 G_UNICODE_SCRIPT_MEETEI_MAYEK,
 G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN,
 G_UNICODE_SCRIPT_OLD_TURKIC,
 G_UNICODE_SCRIPT_SAMARITAN,
 G_UNICODE_SCRIPT_TAI_THAM,
 G_UNICODE_SCRIPT_TAI_VIET,


 G_UNICODE_SCRIPT_BATAK,
 G_UNICODE_SCRIPT_BRAHMI,
 G_UNICODE_SCRIPT_MANDAIC,


 G_UNICODE_SCRIPT_CHAKMA,
 G_UNICODE_SCRIPT_MEROITIC_CURSIVE,
 G_UNICODE_SCRIPT_MEROITIC_HIEROGLYPHS,
 G_UNICODE_SCRIPT_MIAO,
 G_UNICODE_SCRIPT_SHARADA,
 G_UNICODE_SCRIPT_SORA_SOMPENG,
 G_UNICODE_SCRIPT_TAKRI,


 G_UNICODE_SCRIPT_BASSA_VAH,
 G_UNICODE_SCRIPT_CAUCASIAN_ALBANIAN,
 G_UNICODE_SCRIPT_DUPLOYAN,
 G_UNICODE_SCRIPT_ELBASAN,
 G_UNICODE_SCRIPT_GRANTHA,
 G_UNICODE_SCRIPT_KHOJKI,
 G_UNICODE_SCRIPT_KHUDAWADI,
 G_UNICODE_SCRIPT_LINEAR_A,
 G_UNICODE_SCRIPT_MAHAJANI,
 G_UNICODE_SCRIPT_MANICHAEAN,
 G_UNICODE_SCRIPT_MENDE_KIKAKUI,
 G_UNICODE_SCRIPT_MODI,
 G_UNICODE_SCRIPT_MRO,
 G_UNICODE_SCRIPT_NABATAEAN,
 G_UNICODE_SCRIPT_OLD_NORTH_ARABIAN,
 G_UNICODE_SCRIPT_OLD_PERMIC,
 G_UNICODE_SCRIPT_PAHAWH_HMONG,
 G_UNICODE_SCRIPT_PALMYRENE,
 G_UNICODE_SCRIPT_PAU_CIN_HAU,
 G_UNICODE_SCRIPT_PSALTER_PAHLAVI,
 G_UNICODE_SCRIPT_SIDDHAM,
 G_UNICODE_SCRIPT_TIRHUTA,
 G_UNICODE_SCRIPT_WARANG_CITI,


 G_UNICODE_SCRIPT_AHOM,
 G_UNICODE_SCRIPT_ANATOLIAN_HIEROGLYPHS,
 G_UNICODE_SCRIPT_HATRAN,
 G_UNICODE_SCRIPT_MULTANI,
 G_UNICODE_SCRIPT_OLD_HUNGARIAN,
 G_UNICODE_SCRIPT_SIGNWRITING
} GUnicodeScript;

extern
guint32 g_unicode_script_to_iso15924 (GUnicodeScript script);
extern
GUnicodeScript g_unicode_script_from_iso15924 (guint32 iso15924);



extern
gboolean g_unichar_isalnum (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_isalpha (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_iscntrl (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_isdigit (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_isgraph (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_islower (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_isprint (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_ispunct (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_isspace (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_isupper (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_isxdigit (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_istitle (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_isdefined (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_iswide (gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_iswide_cjk(gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_iszerowidth(gunichar c) __attribute__((__const__));
extern
gboolean g_unichar_ismark (gunichar c) __attribute__((__const__));



extern
gunichar g_unichar_toupper (gunichar c) __attribute__((__const__));
extern
gunichar g_unichar_tolower (gunichar c) __attribute__((__const__));
extern
gunichar g_unichar_totitle (gunichar c) __attribute__((__const__));



extern
gint g_unichar_digit_value (gunichar c) __attribute__((__const__));

extern
gint g_unichar_xdigit_value (gunichar c) __attribute__((__const__));


extern
GUnicodeType g_unichar_type (gunichar c) __attribute__((__const__));


extern
GUnicodeBreakType g_unichar_break_type (gunichar c) __attribute__((__const__));


extern
gint g_unichar_combining_class (gunichar uc) __attribute__((__const__));

extern
gboolean g_unichar_get_mirror_char (gunichar ch,
                                   gunichar *mirrored_ch);

extern
GUnicodeScript g_unichar_get_script (gunichar ch) __attribute__((__const__));


extern
gboolean g_unichar_validate (gunichar ch) __attribute__((__const__));


extern
gboolean g_unichar_compose (gunichar a,
                           gunichar b,
                           gunichar *ch);
extern
gboolean g_unichar_decompose (gunichar ch,
                             gunichar *a,
                             gunichar *b);

extern
gsize g_unichar_fully_decompose (gunichar ch,
                                gboolean compat,
                                gunichar *result,
                                gsize result_len);
# 683 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h"
extern
void g_unicode_canonical_ordering (gunichar *string,
                                  gsize len);


__attribute__((__deprecated__)) extern
gunichar *g_unicode_canonical_decomposition (gunichar ch,
                                            gsize *result_len) __attribute__((__malloc__));



extern const gchar * const g_utf8_skip;
# 709 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h"
extern
gunichar g_utf8_get_char (const gchar *p) __attribute__((__pure__));
extern
gunichar g_utf8_get_char_validated (const gchar *p,
                                   gssize max_len) __attribute__((__pure__));

extern
gchar* g_utf8_offset_to_pointer (const gchar *str,
                                  glong offset) __attribute__((__pure__));
extern
glong g_utf8_pointer_to_offset (const gchar *str,
                                  const gchar *pos) __attribute__((__pure__));
extern
gchar* g_utf8_prev_char (const gchar *p) __attribute__((__pure__));
extern
gchar* g_utf8_find_next_char (const gchar *p,
                                  const gchar *end) __attribute__((__pure__));
extern
gchar* g_utf8_find_prev_char (const gchar *str,
                                  const gchar *p) __attribute__((__pure__));

extern
glong g_utf8_strlen (const gchar *p,
                                  gssize max) __attribute__((__pure__));

extern
gchar *g_utf8_substring (const gchar *str,
                                  glong start_pos,
                                  glong end_pos) __attribute__((__malloc__));

extern
gchar *g_utf8_strncpy (gchar *dest,
                                  const gchar *src,
                                  gsize n);



extern
gchar* g_utf8_strchr (const gchar *p,
                      gssize len,
                      gunichar c);
extern
gchar* g_utf8_strrchr (const gchar *p,
                      gssize len,
                      gunichar c);
extern
gchar* g_utf8_strreverse (const gchar *str,
                         gssize len);

extern
gunichar2 *g_utf8_to_utf16 (const gchar *str,
                               glong len,
                               glong *items_read,
                               glong *items_written,
                               GError **error) __attribute__((__malloc__));
extern
gunichar * g_utf8_to_ucs4 (const gchar *str,
                               glong len,
                               glong *items_read,
                               glong *items_written,
                               GError **error) __attribute__((__malloc__));
extern
gunichar * g_utf8_to_ucs4_fast (const gchar *str,
                               glong len,
                               glong *items_written) __attribute__((__malloc__));
extern
gunichar * g_utf16_to_ucs4 (const gunichar2 *str,
                               glong len,
                               glong *items_read,
                               glong *items_written,
                               GError **error) __attribute__((__malloc__));
extern
gchar* g_utf16_to_utf8 (const gunichar2 *str,
                               glong len,
                               glong *items_read,
                               glong *items_written,
                               GError **error) __attribute__((__malloc__));
extern
gunichar2 *g_ucs4_to_utf16 (const gunichar *str,
                               glong len,
                               glong *items_read,
                               glong *items_written,
                               GError **error) __attribute__((__malloc__));
extern
gchar* g_ucs4_to_utf8 (const gunichar *str,
                               glong len,
                               glong *items_read,
                               glong *items_written,
                               GError **error) __attribute__((__malloc__));

extern
gint g_unichar_to_utf8 (gunichar c,
                            gchar *outbuf);

extern
gboolean g_utf8_validate (const gchar *str,
                         gssize max_len,
                         const gchar **end);

extern
gchar *g_utf8_strup (const gchar *str,
                      gssize len) __attribute__((__malloc__));
extern
gchar *g_utf8_strdown (const gchar *str,
                      gssize len) __attribute__((__malloc__));
extern
gchar *g_utf8_casefold (const gchar *str,
                       gssize len) __attribute__((__malloc__));
# 842 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gunicode.h"
typedef enum {
 G_NORMALIZE_DEFAULT,
 G_NORMALIZE_NFD = G_NORMALIZE_DEFAULT,
 G_NORMALIZE_DEFAULT_COMPOSE,
 G_NORMALIZE_NFC = G_NORMALIZE_DEFAULT_COMPOSE,
 G_NORMALIZE_ALL,
 G_NORMALIZE_NFKD = G_NORMALIZE_ALL,
 G_NORMALIZE_ALL_COMPOSE,
 G_NORMALIZE_NFKC = G_NORMALIZE_ALL_COMPOSE
} GNormalizeMode;

extern
gchar *g_utf8_normalize (const gchar *str,
                        gssize len,
                        GNormalizeMode mode) __attribute__((__malloc__));

extern
gint g_utf8_collate (const gchar *str1,
                          const gchar *str2) __attribute__((__pure__));
extern
gchar *g_utf8_collate_key (const gchar *str,
                          gssize len) __attribute__((__malloc__));
extern
gchar *g_utf8_collate_key_for_filename (const gchar *str,
                                       gssize len) __attribute__((__malloc__));



gchar *_g_utf8_make_valid (const gchar *name);

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstring.h" 2



extern "C" {

typedef struct _GString GString;

struct _GString
{
 gchar *str;
 gsize len;
 gsize allocated_len;
};

extern
GString* g_string_new (const gchar *init);
extern
GString* g_string_new_len (const gchar *init,
                                        gssize len);
extern
GString* g_string_sized_new (gsize dfl_size);
extern
gchar* g_string_free (GString *string,
                                        gboolean free_segment);
extern
GBytes* g_string_free_to_bytes (GString *string);
extern
gboolean g_string_equal (const GString *v,
                                        const GString *v2);
extern
guint g_string_hash (const GString *str);
extern
GString* g_string_assign (GString *string,
                                        const gchar *rval);
extern
GString* g_string_truncate (GString *string,
                                        gsize len);
extern
GString* g_string_set_size (GString *string,
                                        gsize len);
extern
GString* g_string_insert_len (GString *string,
                                        gssize pos,
                                        const gchar *val,
                                        gssize len);
extern
GString* g_string_append (GString *string,
                                        const gchar *val);
extern
GString* g_string_append_len (GString *string,
                                        const gchar *val,
                                        gssize len);
extern
GString* g_string_append_c (GString *string,
                                        gchar c);
extern
GString* g_string_append_unichar (GString *string,
                                        gunichar wc);
extern
GString* g_string_prepend (GString *string,
                                        const gchar *val);
extern
GString* g_string_prepend_c (GString *string,
                                        gchar c);
extern
GString* g_string_prepend_unichar (GString *string,
                                        gunichar wc);
extern
GString* g_string_prepend_len (GString *string,
                                        const gchar *val,
                                        gssize len);
extern
GString* g_string_insert (GString *string,
                                        gssize pos,
                                        const gchar *val);
extern
GString* g_string_insert_c (GString *string,
                                        gssize pos,
                                        gchar c);
extern
GString* g_string_insert_unichar (GString *string,
                                        gssize pos,
                                        gunichar wc);
extern
GString* g_string_overwrite (GString *string,
                                        gsize pos,
                                        const gchar *val);
extern
GString* g_string_overwrite_len (GString *string,
                                        gsize pos,
                                        const gchar *val,
                                        gssize len);
extern
GString* g_string_erase (GString *string,
                                        gssize pos,
                                        gssize len);
extern
GString* g_string_ascii_down (GString *string);
extern
GString* g_string_ascii_up (GString *string);
extern
void g_string_vprintf (GString *string,
                                        const gchar *format,
                                        va_list args)
                                        __attribute__((__format__ (__printf__, 2, 0)));
extern
void g_string_printf (GString *string,
                                        const gchar *format,
                                        ...) __attribute__((__format__ (__printf__, 2, 3)));
extern
void g_string_append_vprintf (GString *string,
                                        const gchar *format,
                                        va_list args)
                                        __attribute__((__format__ (__printf__, 2, 0)));
extern
void g_string_append_printf (GString *string,
                                        const gchar *format,
                                        ...) __attribute__((__format__ (__printf__, 2, 3)));
extern
GString* g_string_append_uri_escaped (GString *string,
                                         const gchar *unescaped,
                                         const gchar *reserved_chars_allowed,
                                         gboolean allow_utf8);



static inline GString*
g_string_append_c_inline (GString *gstring,
                         gchar c)
{
 if (gstring->len + 1 < gstring->allocated_len)
   {
     gstring->str[gstring->len++] = c;
     gstring->str[gstring->len] = 0;
   }
 else
   g_string_insert_c (gstring, -1, c);
 return gstring;
}




__attribute__((__deprecated__)) extern
GString *g_string_down (GString *string);
__attribute__((__deprecated__)) extern
GString *g_string_up (GString *string);






}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/giochannel.h" 2

extern "C" {




typedef struct _GIOChannel GIOChannel;
typedef struct _GIOFuncs GIOFuncs;

typedef enum
{
 G_IO_ERROR_NONE,
 G_IO_ERROR_AGAIN,
 G_IO_ERROR_INVAL,
 G_IO_ERROR_UNKNOWN
} GIOError;



typedef enum
{

 G_IO_CHANNEL_ERROR_FBIG,
 G_IO_CHANNEL_ERROR_INVAL,
 G_IO_CHANNEL_ERROR_IO,
 G_IO_CHANNEL_ERROR_ISDIR,
 G_IO_CHANNEL_ERROR_NOSPC,
 G_IO_CHANNEL_ERROR_NXIO,
 G_IO_CHANNEL_ERROR_OVERFLOW,
 G_IO_CHANNEL_ERROR_PIPE,

 G_IO_CHANNEL_ERROR_FAILED
} GIOChannelError;

typedef enum
{
 G_IO_STATUS_ERROR,
 G_IO_STATUS_NORMAL,
 G_IO_STATUS_EOF,
 G_IO_STATUS_AGAIN
} GIOStatus;

typedef enum
{
 G_SEEK_CUR,
 G_SEEK_SET,
 G_SEEK_END
} GSeekType;

typedef enum
{
 G_IO_FLAG_APPEND = 1 << 0,
 G_IO_FLAG_NONBLOCK = 1 << 1,
 G_IO_FLAG_IS_READABLE = 1 << 2,
 G_IO_FLAG_IS_WRITABLE = 1 << 3,
 G_IO_FLAG_IS_WRITEABLE = 1 << 3,
 G_IO_FLAG_IS_SEEKABLE = 1 << 4,
 G_IO_FLAG_MASK = (1 << 5) - 1,
 G_IO_FLAG_GET_MASK = G_IO_FLAG_MASK,
 G_IO_FLAG_SET_MASK = G_IO_FLAG_APPEND | G_IO_FLAG_NONBLOCK
} GIOFlags;

struct _GIOChannel
{

 gint ref_count;
 GIOFuncs *funcs;

 gchar *encoding;
 GIConv read_cd;
 GIConv write_cd;
 gchar *line_term;
 guint line_term_len;

 gsize buf_size;
 GString *read_buf;
 GString *encoded_read_buf;
 GString *write_buf;
 gchar partial_write_buf[6];



 guint use_buffer : 1;
 guint do_encode : 1;
 guint close_on_unref : 1;
 guint is_readable : 1;
 guint is_writeable : 1;
 guint is_seekable : 1;

 gpointer reserved1;
 gpointer reserved2;
};

typedef gboolean (*GIOFunc) (GIOChannel *source,
       GIOCondition condition,
       gpointer data);
struct _GIOFuncs
{
 GIOStatus (*io_read) (GIOChannel *channel,
            gchar *buf,
     gsize count,
     gsize *bytes_read,
     GError **err);
 GIOStatus (*io_write) (GIOChannel *channel,
     const gchar *buf,
     gsize count,
     gsize *bytes_written,
     GError **err);
 GIOStatus (*io_seek) (GIOChannel *channel,
     gint64 offset,
     GSeekType type,
     GError **err);
 GIOStatus (*io_close) (GIOChannel *channel,
     GError **err);
 GSource* (*io_create_watch) (GIOChannel *channel,
     GIOCondition condition);
 void (*io_free) (GIOChannel *channel);
 GIOStatus (*io_set_flags) (GIOChannel *channel,
                                 GIOFlags flags,
     GError **err);
 GIOFlags (*io_get_flags) (GIOChannel *channel);
};

extern
void g_io_channel_init (GIOChannel *channel);
extern
GIOChannel *g_io_channel_ref (GIOChannel *channel);
extern
void g_io_channel_unref (GIOChannel *channel);

__attribute__((__deprecated__("Use '" "g_io_channel_read_chars" "' instead"))) extern
GIOError g_io_channel_read (GIOChannel *channel,
                                gchar *buf,
                                gsize count,
                                gsize *bytes_read);

__attribute__((__deprecated__("Use '" "g_io_channel_write_chars" "' instead"))) extern
GIOError g_io_channel_write (GIOChannel *channel,
                                const gchar *buf,
                                gsize count,
                                gsize *bytes_written);

__attribute__((__deprecated__("Use '" "g_io_channel_seek_position" "' instead"))) extern
GIOError g_io_channel_seek (GIOChannel *channel,
                                gint64 offset,
                                GSeekType type);

__attribute__((__deprecated__("Use '" "g_io_channel_shutdown" "' instead"))) extern
void g_io_channel_close (GIOChannel *channel);

extern
GIOStatus g_io_channel_shutdown (GIOChannel *channel,
    gboolean flush,
    GError **err);
extern
guint g_io_add_watch_full (GIOChannel *channel,
    gint priority,
    GIOCondition condition,
    GIOFunc func,
    gpointer user_data,
    GDestroyNotify notify);
extern
GSource * g_io_create_watch (GIOChannel *channel,
    GIOCondition condition);
extern
guint g_io_add_watch (GIOChannel *channel,
    GIOCondition condition,
    GIOFunc func,
    gpointer user_data);




extern
void g_io_channel_set_buffer_size (GIOChannel *channel,
       gsize size);
extern
gsize g_io_channel_get_buffer_size (GIOChannel *channel);
extern
GIOCondition g_io_channel_get_buffer_condition (GIOChannel *channel);
extern
GIOStatus g_io_channel_set_flags (GIOChannel *channel,
       GIOFlags flags,
       GError **error);
extern
GIOFlags g_io_channel_get_flags (GIOChannel *channel);
extern
void g_io_channel_set_line_term (GIOChannel *channel,
       const gchar *line_term,
       gint length);
extern
const gchar * g_io_channel_get_line_term (GIOChannel *channel,
       gint *length);
extern
void g_io_channel_set_buffered (GIOChannel *channel,
       gboolean buffered);
extern
gboolean g_io_channel_get_buffered (GIOChannel *channel);
extern
GIOStatus g_io_channel_set_encoding (GIOChannel *channel,
       const gchar *encoding,
       GError **error);
extern
const gchar * g_io_channel_get_encoding (GIOChannel *channel);
extern
void g_io_channel_set_close_on_unref (GIOChannel *channel,
       gboolean do_close);
extern
gboolean g_io_channel_get_close_on_unref (GIOChannel *channel);


extern
GIOStatus g_io_channel_flush (GIOChannel *channel,
       GError **error);
extern
GIOStatus g_io_channel_read_line (GIOChannel *channel,
       gchar **str_return,
       gsize *length,
       gsize *terminator_pos,
       GError **error);
extern
GIOStatus g_io_channel_read_line_string (GIOChannel *channel,
       GString *buffer,
       gsize *terminator_pos,
       GError **error);
extern
GIOStatus g_io_channel_read_to_end (GIOChannel *channel,
       gchar **str_return,
       gsize *length,
       GError **error);
extern
GIOStatus g_io_channel_read_chars (GIOChannel *channel,
       gchar *buf,
       gsize count,
       gsize *bytes_read,
       GError **error);
extern
GIOStatus g_io_channel_read_unichar (GIOChannel *channel,
       gunichar *thechar,
       GError **error);
extern
GIOStatus g_io_channel_write_chars (GIOChannel *channel,
       const gchar *buf,
       gssize count,
       gsize *bytes_written,
       GError **error);
extern
GIOStatus g_io_channel_write_unichar (GIOChannel *channel,
       gunichar thechar,
       GError **error);
extern
GIOStatus g_io_channel_seek_position (GIOChannel *channel,
       gint64 offset,
       GSeekType type,
       GError **error);
extern
GIOChannel* g_io_channel_new_file (const gchar *filename,
       const gchar *mode,
       GError **error);



extern
GQuark g_io_channel_error_quark (void);
extern
GIOChannelError g_io_channel_error_from_errno (gint en);
# 320 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/giochannel.h"
extern
GIOChannel* g_io_channel_unix_new (int fd);
extern
gint g_io_channel_unix_get_fd (GIOChannel *channel);



extern GSourceFuncs g_io_watch_funcs;
# 413 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/giochannel.h"
}
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gkeyfile.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gkeyfile.h"
extern "C" {

typedef enum
{
 G_KEY_FILE_ERROR_UNKNOWN_ENCODING,
 G_KEY_FILE_ERROR_PARSE,
 G_KEY_FILE_ERROR_NOT_FOUND,
 G_KEY_FILE_ERROR_KEY_NOT_FOUND,
 G_KEY_FILE_ERROR_GROUP_NOT_FOUND,
 G_KEY_FILE_ERROR_INVALID_VALUE
} GKeyFileError;



extern
GQuark g_key_file_error_quark (void);

typedef struct _GKeyFile GKeyFile;

typedef enum
{
 G_KEY_FILE_NONE = 0,
 G_KEY_FILE_KEEP_COMMENTS = 1 << 0,
 G_KEY_FILE_KEEP_TRANSLATIONS = 1 << 1
} GKeyFileFlags;

extern
GKeyFile *g_key_file_new (void);
extern
GKeyFile *g_key_file_ref (GKeyFile *key_file);
extern
void g_key_file_unref (GKeyFile *key_file);
extern
void g_key_file_free (GKeyFile *key_file);
extern
void g_key_file_set_list_separator (GKeyFile *key_file,
         gchar separator);
extern
gboolean g_key_file_load_from_file (GKeyFile *key_file,
         const gchar *file,
         GKeyFileFlags flags,
         GError **error);
extern
gboolean g_key_file_load_from_data (GKeyFile *key_file,
         const gchar *data,
         gsize length,
         GKeyFileFlags flags,
         GError **error);
extern
gboolean g_key_file_load_from_dirs (GKeyFile *key_file,
         const gchar *file,
         const gchar **search_dirs,
         gchar **full_path,
         GKeyFileFlags flags,
         GError **error);
extern
gboolean g_key_file_load_from_data_dirs (GKeyFile *key_file,
         const gchar *file,
         gchar **full_path,
         GKeyFileFlags flags,
         GError **error);
extern
gchar *g_key_file_to_data (GKeyFile *key_file,
         gsize *length,
         GError **error) __attribute__((__malloc__));
extern
gboolean g_key_file_save_to_file (GKeyFile *key_file,
                                            const gchar *filename,
                                            GError **error);
extern
gchar *g_key_file_get_start_group (GKeyFile *key_file) __attribute__((__malloc__));
extern
gchar **g_key_file_get_groups (GKeyFile *key_file,
         gsize *length) __attribute__((__malloc__));
extern
gchar **g_key_file_get_keys (GKeyFile *key_file,
         const gchar *group_name,
         gsize *length,
         GError **error) __attribute__((__malloc__));
extern
gboolean g_key_file_has_group (GKeyFile *key_file,
         const gchar *group_name);
extern
gboolean g_key_file_has_key (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         GError **error);
extern
gchar *g_key_file_get_value (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         GError **error) __attribute__((__malloc__));
extern
void g_key_file_set_value (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         const gchar *value);
extern
gchar *g_key_file_get_string (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         GError **error) __attribute__((__malloc__));
extern
void g_key_file_set_string (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         const gchar *string);
extern
gchar *g_key_file_get_locale_string (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         const gchar *locale,
         GError **error) __attribute__((__malloc__));
extern
void g_key_file_set_locale_string (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         const gchar *locale,
         const gchar *string);
extern
gboolean g_key_file_get_boolean (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         GError **error);
extern
void g_key_file_set_boolean (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         gboolean value);
extern
gint g_key_file_get_integer (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         GError **error);
extern
void g_key_file_set_integer (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         gint value);
extern
gint64 g_key_file_get_int64 (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         GError **error);
extern
void g_key_file_set_int64 (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         gint64 value);
extern
guint64 g_key_file_get_uint64 (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         GError **error);
extern
void g_key_file_set_uint64 (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         guint64 value);
extern
gdouble g_key_file_get_double (GKeyFile *key_file,
                                            const gchar *group_name,
                                            const gchar *key,
                                            GError **error);
extern
void g_key_file_set_double (GKeyFile *key_file,
                                            const gchar *group_name,
                                            const gchar *key,
                                            gdouble value);
extern
gchar **g_key_file_get_string_list (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         gsize *length,
         GError **error) __attribute__((__malloc__));
extern
void g_key_file_set_string_list (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         const gchar * const list[],
         gsize length);
extern
gchar **g_key_file_get_locale_string_list (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         const gchar *locale,
         gsize *length,
         GError **error) __attribute__((__malloc__));
extern
void g_key_file_set_locale_string_list (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         const gchar *locale,
         const gchar * const list[],
         gsize length);
extern
gboolean *g_key_file_get_boolean_list (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         gsize *length,
         GError **error) __attribute__((__malloc__));
extern
void g_key_file_set_boolean_list (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         gboolean list[],
         gsize length);
extern
gint *g_key_file_get_integer_list (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         gsize *length,
         GError **error) __attribute__((__malloc__));
extern
void g_key_file_set_double_list (GKeyFile *key_file,
                                            const gchar *group_name,
                                            const gchar *key,
                                            gdouble list[],
                                            gsize length);
extern
gdouble *g_key_file_get_double_list (GKeyFile *key_file,
                                            const gchar *group_name,
                                            const gchar *key,
                                            gsize *length,
                                            GError **error) __attribute__((__malloc__));
extern
void g_key_file_set_integer_list (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         gint list[],
         gsize length);
extern
gboolean g_key_file_set_comment (GKeyFile *key_file,
                                            const gchar *group_name,
                                            const gchar *key,
                                            const gchar *comment,
                                            GError **error);
extern
gchar *g_key_file_get_comment (GKeyFile *key_file,
                                            const gchar *group_name,
                                            const gchar *key,
                                            GError **error) __attribute__((__malloc__));

extern
gboolean g_key_file_remove_comment (GKeyFile *key_file,
                                            const gchar *group_name,
                                            const gchar *key,
         GError **error);
extern
gboolean g_key_file_remove_key (GKeyFile *key_file,
         const gchar *group_name,
         const gchar *key,
         GError **error);
extern
gboolean g_key_file_remove_group (GKeyFile *key_file,
         const gchar *group_name,
         GError **error);
# 318 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gkeyfile.h"
}
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2



# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmappedfile.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmappedfile.h"
extern "C" {

typedef struct _GMappedFile GMappedFile;

extern
GMappedFile *g_mapped_file_new (const gchar *filename,
            gboolean writable,
            GError **error) __attribute__((__malloc__));
extern
GMappedFile *g_mapped_file_new_from_fd (gint fd,
     gboolean writable,
     GError **error) __attribute__((__malloc__));
extern
gsize g_mapped_file_get_length (GMappedFile *file);
extern
gchar *g_mapped_file_get_contents (GMappedFile *file);
extern
GBytes * g_mapped_file_get_bytes (GMappedFile *file);
extern
GMappedFile *g_mapped_file_ref (GMappedFile *file);
extern
void g_mapped_file_unref (GMappedFile *file);

__attribute__((__deprecated__("Use '" "g_mapped_file_unref" "' instead"))) extern
void g_mapped_file_free (GMappedFile *file);

}
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmarkup.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmarkup.h"
extern "C" {
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmarkup.h"
typedef enum
{
 G_MARKUP_ERROR_BAD_UTF8,
 G_MARKUP_ERROR_EMPTY,
 G_MARKUP_ERROR_PARSE,



 G_MARKUP_ERROR_UNKNOWN_ELEMENT,
 G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
 G_MARKUP_ERROR_INVALID_CONTENT,
 G_MARKUP_ERROR_MISSING_ATTRIBUTE
} GMarkupError;
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmarkup.h"
extern
GQuark g_markup_error_quark (void);
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmarkup.h"
typedef enum
{
 G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG = 1 << 0,
 G_MARKUP_TREAT_CDATA_AS_TEXT = 1 << 1,
 G_MARKUP_PREFIX_ERROR_POSITION = 1 << 2,
 G_MARKUP_IGNORE_QUALIFIED = 1 << 3
} GMarkupParseFlags;
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmarkup.h"
typedef struct _GMarkupParseContext GMarkupParseContext;
typedef struct _GMarkupParser GMarkupParser;
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmarkup.h"
struct _GMarkupParser
{

 void (*start_element) (GMarkupParseContext *context,
                         const gchar *element_name,
                         const gchar **attribute_names,
                         const gchar **attribute_values,
                         gpointer user_data,
                         GError **error);


 void (*end_element) (GMarkupParseContext *context,
                         const gchar *element_name,
                         gpointer user_data,
                         GError **error);



 void (*text) (GMarkupParseContext *context,
                         const gchar *text,
                         gsize text_len,
                         gpointer user_data,
                         GError **error);






 void (*passthrough) (GMarkupParseContext *context,
                         const gchar *passthrough_text,
                         gsize text_len,
                         gpointer user_data,
                         GError **error);




 void (*error) (GMarkupParseContext *context,
                         GError *error,
                         gpointer user_data);
};

extern
GMarkupParseContext *g_markup_parse_context_new (const GMarkupParser *parser,
                                                  GMarkupParseFlags flags,
                                                  gpointer user_data,
                                                  GDestroyNotify user_data_dnotify);
extern
GMarkupParseContext *g_markup_parse_context_ref (GMarkupParseContext *context);
extern
void g_markup_parse_context_unref (GMarkupParseContext *context);
extern
void g_markup_parse_context_free (GMarkupParseContext *context);
extern
gboolean g_markup_parse_context_parse (GMarkupParseContext *context,
                                                  const gchar *text,
                                                  gssize text_len,
                                                  GError **error);
extern
void g_markup_parse_context_push (GMarkupParseContext *context,
                                                  const GMarkupParser *parser,
                                                  gpointer user_data);
extern
gpointer g_markup_parse_context_pop (GMarkupParseContext *context);

extern
gboolean g_markup_parse_context_end_parse (GMarkupParseContext *context,
                                                      GError **error);
extern
const gchar * g_markup_parse_context_get_element (GMarkupParseContext *context);
extern
const GSList * g_markup_parse_context_get_element_stack (GMarkupParseContext *context);


extern
void g_markup_parse_context_get_position (GMarkupParseContext *context,
                                                         gint *line_number,
                                                         gint *char_number);
extern
gpointer g_markup_parse_context_get_user_data (GMarkupParseContext *context);


extern
gchar* g_markup_escape_text (const gchar *text,
                            gssize length);

extern
gchar *g_markup_printf_escaped (const char *format,
   ...) __attribute__((__format__ (__printf__, 1, 2)));
extern
gchar *g_markup_vprintf_escaped (const char *format,
    va_list args) __attribute__((__format__ (__printf__, 1, 0)));

typedef enum
{
 G_MARKUP_COLLECT_INVALID,
 G_MARKUP_COLLECT_STRING,
 G_MARKUP_COLLECT_STRDUP,
 G_MARKUP_COLLECT_BOOLEAN,
 G_MARKUP_COLLECT_TRISTATE,

 G_MARKUP_COLLECT_OPTIONAL = (1 << 16)
} GMarkupCollectType;



extern
gboolean g_markup_collect_attributes (const gchar *element_name,
                                       const gchar **attribute_names,
                                       const gchar **attribute_values,
                                       GError **error,
                                       GMarkupCollectType first_type,
                                       const gchar *first_attr,
                                       ...);

}
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmessages.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmessages.h"
extern "C" {



extern
gsize g_printf_string_upper_bound (const gchar* format,
        va_list args) __attribute__((__format__ (__printf__, 1, 0)));
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmessages.h"
typedef enum
{

 G_LOG_FLAG_RECURSION = 1 << 0,
 G_LOG_FLAG_FATAL = 1 << 1,


 G_LOG_LEVEL_ERROR = 1 << 2,
 G_LOG_LEVEL_CRITICAL = 1 << 3,
 G_LOG_LEVEL_WARNING = 1 << 4,
 G_LOG_LEVEL_MESSAGE = 1 << 5,
 G_LOG_LEVEL_INFO = 1 << 6,
 G_LOG_LEVEL_DEBUG = 1 << 7,

 G_LOG_LEVEL_MASK = ~(G_LOG_FLAG_RECURSION | G_LOG_FLAG_FATAL)
} GLogLevelFlags;




typedef void (*GLogFunc) (const gchar *log_domain,
                                                GLogLevelFlags log_level,
                                                const gchar *message,
                                                gpointer user_data);



extern
guint g_log_set_handler (const gchar *log_domain,
                                        GLogLevelFlags log_levels,
                                        GLogFunc log_func,
                                        gpointer user_data);
extern
guint g_log_set_handler_full (const gchar *log_domain,
                                        GLogLevelFlags log_levels,
                                        GLogFunc log_func,
                                        gpointer user_data,
                                        GDestroyNotify destroy);
extern
void g_log_remove_handler (const gchar *log_domain,
                                        guint handler_id);
extern
void g_log_default_handler (const gchar *log_domain,
                                        GLogLevelFlags log_level,
                                        const gchar *message,
                                        gpointer unused_data);
extern
GLogFunc g_log_set_default_handler (GLogFunc log_func,
       gpointer user_data);
extern
void g_log (const gchar *log_domain,
                                        GLogLevelFlags log_level,
                                        const gchar *format,
                                        ...) __attribute__((__format__ (__printf__, 3, 4)));
extern
void g_logv (const gchar *log_domain,
                                        GLogLevelFlags log_level,
                                        const gchar *format,
                                        va_list args) __attribute__((__format__ (__printf__, 3, 0)));
extern
GLogLevelFlags g_log_set_fatal_mask (const gchar *log_domain,
                                        GLogLevelFlags fatal_mask);
extern
GLogLevelFlags g_log_set_always_fatal (GLogLevelFlags fatal_mask);


void _g_log_fallback_handler (const gchar *log_domain,
      GLogLevelFlags log_level,
      const gchar *message,
      gpointer unused_data);


extern
void g_return_if_fail_warning (const char *log_domain,
         const char *pretty_function,
         const char *expression) ;
extern
void g_warn_message (const char *domain,
                              const char *file,
                              int line,
                              const char *func,
                              const char *warnexpr) ;
__attribute__((__deprecated__)) extern
void g_assert_warning (const char *log_domain,
         const char *file,
         const int line,
                const char *pretty_function,
                const char *expression) __attribute__((__noreturn__));
# 263 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmessages.h"
typedef void (*GPrintFunc) (const gchar *string);
extern
void g_print (const gchar *format,
                                        ...) __attribute__((__format__ (__printf__, 1, 2)));
extern
GPrintFunc g_set_print_handler (GPrintFunc func);
extern
void g_printerr (const gchar *format,
                                        ...) __attribute__((__format__ (__printf__, 1, 2)));
extern
GPrintFunc g_set_printerr_handler (GPrintFunc func);
# 405 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gmessages.h"
}
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
typedef struct _GOptionContext GOptionContext;
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
typedef struct _GOptionGroup GOptionGroup;
typedef struct _GOptionEntry GOptionEntry;
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
typedef enum
{
 G_OPTION_FLAG_NONE = 0,
 G_OPTION_FLAG_HIDDEN = 1 << 0,
 G_OPTION_FLAG_IN_MAIN = 1 << 1,
 G_OPTION_FLAG_REVERSE = 1 << 2,
 G_OPTION_FLAG_NO_ARG = 1 << 3,
 G_OPTION_FLAG_FILENAME = 1 << 4,
 G_OPTION_FLAG_OPTIONAL_ARG = 1 << 5,
 G_OPTION_FLAG_NOALIAS = 1 << 6
} GOptionFlags;
# 118 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
typedef enum
{
 G_OPTION_ARG_NONE,
 G_OPTION_ARG_STRING,
 G_OPTION_ARG_INT,
 G_OPTION_ARG_CALLBACK,
 G_OPTION_ARG_FILENAME,
 G_OPTION_ARG_STRING_ARRAY,
 G_OPTION_ARG_FILENAME_ARRAY,
 G_OPTION_ARG_DOUBLE,
 G_OPTION_ARG_INT64
} GOptionArg;
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
typedef gboolean (*GOptionArgFunc) (const gchar *option_name,
       const gchar *value,
       gpointer data,
       GError **error);
# 166 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
typedef gboolean (*GOptionParseFunc) (GOptionContext *context,
         GOptionGroup *group,
         gpointer data,
         GError **error);
# 181 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
typedef void (*GOptionErrorFunc) (GOptionContext *context,
     GOptionGroup *group,
     gpointer data,
     GError **error);
# 205 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
typedef enum
{
 G_OPTION_ERROR_UNKNOWN_OPTION,
 G_OPTION_ERROR_BAD_VALUE,
 G_OPTION_ERROR_FAILED
} GOptionError;

extern
GQuark g_option_error_quark (void);
# 257 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
struct _GOptionEntry
{
 const gchar *long_name;
 gchar short_name;
 gint flags;

 GOptionArg arg;
 gpointer arg_data;

 const gchar *description;
 const gchar *arg_description;
};
# 288 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/goption.h"
extern
GOptionContext *g_option_context_new (const gchar *parameter_string);
extern
void g_option_context_set_summary (GOptionContext *context,
                                                  const gchar *summary);
extern
const gchar * g_option_context_get_summary (GOptionContext *context);
extern
void g_option_context_set_description (GOptionContext *context,
                                                  const gchar *description);
extern
const gchar * g_option_context_get_description (GOptionContext *context);
extern
void g_option_context_free (GOptionContext *context);
extern
void g_option_context_set_help_enabled (GOptionContext *context,
        gboolean help_enabled);
extern
gboolean g_option_context_get_help_enabled (GOptionContext *context);
extern
void g_option_context_set_ignore_unknown_options (GOptionContext *context,
           gboolean ignore_unknown);
extern
gboolean g_option_context_get_ignore_unknown_options (GOptionContext *context);

extern
void g_option_context_set_strict_posix (GOptionContext *context,
                                                            gboolean strict_posix);
extern
gboolean g_option_context_get_strict_posix (GOptionContext *context);

extern
void g_option_context_add_main_entries (GOptionContext *context,
        const GOptionEntry *entries,
        const gchar *translation_domain);
extern
gboolean g_option_context_parse (GOptionContext *context,
        gint *argc,
        gchar ***argv,
        GError **error);
extern
gboolean g_option_context_parse_strv (GOptionContext *context,
                                                  gchar ***arguments,
                                                  GError **error);
extern
void g_option_context_set_translate_func (GOptionContext *context,
          GTranslateFunc func,
          gpointer data,
          GDestroyNotify destroy_notify);
extern
void g_option_context_set_translation_domain (GOptionContext *context,
       const gchar *domain);

extern
void g_option_context_add_group (GOptionContext *context,
      GOptionGroup *group);
extern
void g_option_context_set_main_group (GOptionContext *context,
           GOptionGroup *group);
extern
GOptionGroup *g_option_context_get_main_group (GOptionContext *context);
extern
gchar *g_option_context_get_help (GOptionContext *context,
                                              gboolean main_help,
                                              GOptionGroup *group);

extern
GOptionGroup *g_option_group_new (const gchar *name,
          const gchar *description,
          const gchar *help_description,
          gpointer user_data,
          GDestroyNotify destroy);
extern
void g_option_group_set_parse_hooks (GOptionGroup *group,
          GOptionParseFunc pre_parse_func,
          GOptionParseFunc post_parse_func);
extern
void g_option_group_set_error_hook (GOptionGroup *group,
          GOptionErrorFunc error_func);
__attribute__((__deprecated__)) extern
void g_option_group_free (GOptionGroup *group);
extern
GOptionGroup *g_option_group_ref (GOptionGroup *group);
extern
void g_option_group_unref (GOptionGroup *group);
extern
void g_option_group_add_entries (GOptionGroup *group,
          const GOptionEntry *entries);
extern
void g_option_group_set_translate_func (GOptionGroup *group,
          GTranslateFunc func,
          gpointer data,
          GDestroyNotify destroy_notify);
extern
void g_option_group_set_translation_domain (GOptionGroup *group,
          const gchar *domain);

}
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gpattern.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gpattern.h"
extern "C" {


typedef struct _GPatternSpec GPatternSpec;

extern
GPatternSpec* g_pattern_spec_new (const gchar *pattern);
extern
void g_pattern_spec_free (GPatternSpec *pspec);
extern
gboolean g_pattern_spec_equal (GPatternSpec *pspec1,
    GPatternSpec *pspec2);
extern
gboolean g_pattern_match (GPatternSpec *pspec,
    guint string_length,
    const gchar *string,
    const gchar *string_reversed);
extern
gboolean g_pattern_match_string (GPatternSpec *pspec,
    const gchar *string);
extern
gboolean g_pattern_match_simple (const gchar *pattern,
    const gchar *string);

}
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gprimes.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gprimes.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gprimes.h"
extern
guint g_spaced_primes_closest (guint num) __attribute__((__const__));

}
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gqsort.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gqsort.h"
extern "C" {

extern
void g_qsort_with_data (gconstpointer pbase,
  gint total_elems,
  gsize size,
  GCompareDataFunc compare_func,
  gpointer user_data);

}
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gqueue.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gqueue.h"
extern "C" {

typedef struct _GQueue GQueue;
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gqueue.h"
struct _GQueue
{
 GList *head;
 GList *tail;
 guint length;
};
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gqueue.h"
extern
GQueue* g_queue_new (void);
extern
void g_queue_free (GQueue *queue);
extern
void g_queue_free_full (GQueue *queue,
   GDestroyNotify free_func);
extern
void g_queue_init (GQueue *queue);
extern
void g_queue_clear (GQueue *queue);
extern
gboolean g_queue_is_empty (GQueue *queue);
extern
guint g_queue_get_length (GQueue *queue);
extern
void g_queue_reverse (GQueue *queue);
extern
GQueue * g_queue_copy (GQueue *queue);
extern
void g_queue_foreach (GQueue *queue,
                                GFunc func,
                                gpointer user_data);
extern
GList * g_queue_find (GQueue *queue,
                                gconstpointer data);
extern
GList * g_queue_find_custom (GQueue *queue,
                                gconstpointer data,
                                GCompareFunc func);
extern
void g_queue_sort (GQueue *queue,
                                GCompareDataFunc compare_func,
                                gpointer user_data);

extern
void g_queue_push_head (GQueue *queue,
                                gpointer data);
extern
void g_queue_push_tail (GQueue *queue,
                                gpointer data);
extern
void g_queue_push_nth (GQueue *queue,
                                gpointer data,
                                gint n);
extern
gpointer g_queue_pop_head (GQueue *queue);
extern
gpointer g_queue_pop_tail (GQueue *queue);
extern
gpointer g_queue_pop_nth (GQueue *queue,
                                guint n);
extern
gpointer g_queue_peek_head (GQueue *queue);
extern
gpointer g_queue_peek_tail (GQueue *queue);
extern
gpointer g_queue_peek_nth (GQueue *queue,
                                guint n);
extern
gint g_queue_index (GQueue *queue,
                                gconstpointer data);
extern
gboolean g_queue_remove (GQueue *queue,
                                gconstpointer data);
extern
guint g_queue_remove_all (GQueue *queue,
                                gconstpointer data);
extern
void g_queue_insert_before (GQueue *queue,
                                GList *sibling,
                                gpointer data);
extern
void g_queue_insert_after (GQueue *queue,
                                GList *sibling,
                                gpointer data);
extern
void g_queue_insert_sorted (GQueue *queue,
                                gpointer data,
                                GCompareDataFunc func,
                                gpointer user_data);

extern
void g_queue_push_head_link (GQueue *queue,
                                GList *link_);
extern
void g_queue_push_tail_link (GQueue *queue,
                                GList *link_);
extern
void g_queue_push_nth_link (GQueue *queue,
                                gint n,
                                GList *link_);
extern
GList* g_queue_pop_head_link (GQueue *queue);
extern
GList* g_queue_pop_tail_link (GQueue *queue);
extern
GList* g_queue_pop_nth_link (GQueue *queue,
                                guint n);
extern
GList* g_queue_peek_head_link (GQueue *queue);
extern
GList* g_queue_peek_tail_link (GQueue *queue);
extern
GList* g_queue_peek_nth_link (GQueue *queue,
                                guint n);
extern
gint g_queue_link_index (GQueue *queue,
                                GList *link_);
extern
void g_queue_unlink (GQueue *queue,
                                GList *link_);
extern
void g_queue_delete_link (GQueue *queue,
                                GList *link_);

}
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/grand.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/grand.h"
extern "C" {

typedef struct _GRand GRand;
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/grand.h"
extern
GRand* g_rand_new_with_seed (guint32 seed);
extern
GRand* g_rand_new_with_seed_array (const guint32 *seed,
       guint seed_length);
extern
GRand* g_rand_new (void);
extern
void g_rand_free (GRand *rand_);
extern
GRand* g_rand_copy (GRand *rand_);
extern
void g_rand_set_seed (GRand *rand_,
         guint32 seed);
extern
void g_rand_set_seed_array (GRand *rand_,
         const guint32 *seed,
         guint seed_length);



extern
guint32 g_rand_int (GRand *rand_);
extern
gint32 g_rand_int_range (GRand *rand_,
         gint32 begin,
         gint32 end);
extern
gdouble g_rand_double (GRand *rand_);
extern
gdouble g_rand_double_range (GRand *rand_,
         gdouble begin,
         gdouble end);
extern
void g_random_set_seed (guint32 seed);



extern
guint32 g_random_int (void);
extern
gint32 g_random_int_range (gint32 begin,
         gint32 end);
extern
gdouble g_random_double (void);
extern
gdouble g_random_double_range (gdouble begin,
         gdouble end);


}
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gregex.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gregex.h"
extern "C" {
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gregex.h"
typedef enum
{
 G_REGEX_ERROR_COMPILE,
 G_REGEX_ERROR_OPTIMIZE,
 G_REGEX_ERROR_REPLACE,
 G_REGEX_ERROR_MATCH,
 G_REGEX_ERROR_INTERNAL,


 G_REGEX_ERROR_STRAY_BACKSLASH = 101,
 G_REGEX_ERROR_MISSING_CONTROL_CHAR = 102,
 G_REGEX_ERROR_UNRECOGNIZED_ESCAPE = 103,
 G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER = 104,
 G_REGEX_ERROR_QUANTIFIER_TOO_BIG = 105,
 G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS = 106,
 G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS = 107,
 G_REGEX_ERROR_RANGE_OUT_OF_ORDER = 108,
 G_REGEX_ERROR_NOTHING_TO_REPEAT = 109,
 G_REGEX_ERROR_UNRECOGNIZED_CHARACTER = 112,
 G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS = 113,
 G_REGEX_ERROR_UNMATCHED_PARENTHESIS = 114,
 G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE = 115,
 G_REGEX_ERROR_UNTERMINATED_COMMENT = 118,
 G_REGEX_ERROR_EXPRESSION_TOO_LARGE = 120,
 G_REGEX_ERROR_MEMORY_ERROR = 121,
 G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND = 125,
 G_REGEX_ERROR_MALFORMED_CONDITION = 126,
 G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES = 127,
 G_REGEX_ERROR_ASSERTION_EXPECTED = 128,
 G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME = 130,
 G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED = 131,
 G_REGEX_ERROR_HEX_CODE_TOO_LARGE = 134,
 G_REGEX_ERROR_INVALID_CONDITION = 135,
 G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND = 136,
 G_REGEX_ERROR_INFINITE_LOOP = 140,
 G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR = 142,
 G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME = 143,
 G_REGEX_ERROR_MALFORMED_PROPERTY = 146,
 G_REGEX_ERROR_UNKNOWN_PROPERTY = 147,
 G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG = 148,
 G_REGEX_ERROR_TOO_MANY_SUBPATTERNS = 149,
 G_REGEX_ERROR_INVALID_OCTAL_VALUE = 151,
 G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE = 154,
 G_REGEX_ERROR_DEFINE_REPETION = 155,
 G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS = 156,
 G_REGEX_ERROR_MISSING_BACK_REFERENCE = 157,
 G_REGEX_ERROR_INVALID_RELATIVE_REFERENCE = 158,
 G_REGEX_ERROR_BACKTRACKING_CONTROL_VERB_ARGUMENT_FORBIDDEN = 159,
 G_REGEX_ERROR_UNKNOWN_BACKTRACKING_CONTROL_VERB = 160,
 G_REGEX_ERROR_NUMBER_TOO_BIG = 161,
 G_REGEX_ERROR_MISSING_SUBPATTERN_NAME = 162,
 G_REGEX_ERROR_MISSING_DIGIT = 163,
 G_REGEX_ERROR_INVALID_DATA_CHARACTER = 164,
 G_REGEX_ERROR_EXTRA_SUBPATTERN_NAME = 165,
 G_REGEX_ERROR_BACKTRACKING_CONTROL_VERB_ARGUMENT_REQUIRED = 166,
 G_REGEX_ERROR_INVALID_CONTROL_CHAR = 168,
 G_REGEX_ERROR_MISSING_NAME = 169,
 G_REGEX_ERROR_NOT_SUPPORTED_IN_CLASS = 171,
 G_REGEX_ERROR_TOO_MANY_FORWARD_REFERENCES = 172,
 G_REGEX_ERROR_NAME_TOO_LONG = 175,
 G_REGEX_ERROR_CHARACTER_VALUE_TOO_LARGE = 176
} GRegexError;
# 215 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gregex.h"
extern
GQuark g_regex_error_quark (void);
# 297 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gregex.h"
typedef enum
{
 G_REGEX_CASELESS = 1 << 0,
 G_REGEX_MULTILINE = 1 << 1,
 G_REGEX_DOTALL = 1 << 2,
 G_REGEX_EXTENDED = 1 << 3,
 G_REGEX_ANCHORED = 1 << 4,
 G_REGEX_DOLLAR_ENDONLY = 1 << 5,
 G_REGEX_UNGREEDY = 1 << 9,
 G_REGEX_RAW = 1 << 11,
 G_REGEX_NO_AUTO_CAPTURE = 1 << 12,
 G_REGEX_OPTIMIZE = 1 << 13,
 G_REGEX_FIRSTLINE = 1 << 18,
 G_REGEX_DUPNAMES = 1 << 19,
 G_REGEX_NEWLINE_CR = 1 << 20,
 G_REGEX_NEWLINE_LF = 1 << 21,
 G_REGEX_NEWLINE_CRLF = G_REGEX_NEWLINE_CR | G_REGEX_NEWLINE_LF,
 G_REGEX_NEWLINE_ANYCRLF = G_REGEX_NEWLINE_CR | 1 << 22,
 G_REGEX_BSR_ANYCRLF = 1 << 23,
 G_REGEX_JAVASCRIPT_COMPAT = 1 << 25
} GRegexCompileFlags;
# 387 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gregex.h"
typedef enum
{
 G_REGEX_MATCH_ANCHORED = 1 << 4,
 G_REGEX_MATCH_NOTBOL = 1 << 7,
 G_REGEX_MATCH_NOTEOL = 1 << 8,
 G_REGEX_MATCH_NOTEMPTY = 1 << 10,
 G_REGEX_MATCH_PARTIAL = 1 << 15,
 G_REGEX_MATCH_NEWLINE_CR = 1 << 20,
 G_REGEX_MATCH_NEWLINE_LF = 1 << 21,
 G_REGEX_MATCH_NEWLINE_CRLF = G_REGEX_MATCH_NEWLINE_CR | G_REGEX_MATCH_NEWLINE_LF,
 G_REGEX_MATCH_NEWLINE_ANY = 1 << 22,
 G_REGEX_MATCH_NEWLINE_ANYCRLF = G_REGEX_MATCH_NEWLINE_CR | G_REGEX_MATCH_NEWLINE_ANY,
 G_REGEX_MATCH_BSR_ANYCRLF = 1 << 23,
 G_REGEX_MATCH_BSR_ANY = 1 << 24,
 G_REGEX_MATCH_PARTIAL_SOFT = G_REGEX_MATCH_PARTIAL,
 G_REGEX_MATCH_PARTIAL_HARD = 1 << 27,
 G_REGEX_MATCH_NOTEMPTY_ATSTART = 1 << 28
} GRegexMatchFlags;
# 414 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gregex.h"
typedef struct _GRegex GRegex;
# 423 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gregex.h"
typedef struct _GMatchInfo GMatchInfo;
# 442 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gregex.h"
typedef gboolean (*GRegexEvalCallback) (const GMatchInfo *match_info,
      GString *result,
      gpointer user_data);


extern
GRegex *g_regex_new (const gchar *pattern,
      GRegexCompileFlags compile_options,
      GRegexMatchFlags match_options,
      GError **error);
extern
GRegex *g_regex_ref (GRegex *regex);
extern
void g_regex_unref (GRegex *regex);
extern
const gchar *g_regex_get_pattern (const GRegex *regex);
extern
gint g_regex_get_max_backref (const GRegex *regex);
extern
gint g_regex_get_capture_count (const GRegex *regex);
extern
gboolean g_regex_get_has_cr_or_lf (const GRegex *regex);
extern
gint g_regex_get_max_lookbehind (const GRegex *regex);
extern
gint g_regex_get_string_number (const GRegex *regex,
      const gchar *name);
extern
gchar *g_regex_escape_string (const gchar *string,
      gint length);
extern
gchar *g_regex_escape_nul (const gchar *string,
      gint length);

extern
GRegexCompileFlags g_regex_get_compile_flags (const GRegex *regex);
extern
GRegexMatchFlags g_regex_get_match_flags (const GRegex *regex);


extern
gboolean g_regex_match_simple (const gchar *pattern,
      const gchar *string,
      GRegexCompileFlags compile_options,
      GRegexMatchFlags match_options);
extern
gboolean g_regex_match (const GRegex *regex,
      const gchar *string,
      GRegexMatchFlags match_options,
      GMatchInfo **match_info);
extern
gboolean g_regex_match_full (const GRegex *regex,
      const gchar *string,
      gssize string_len,
      gint start_position,
      GRegexMatchFlags match_options,
      GMatchInfo **match_info,
      GError **error);
extern
gboolean g_regex_match_all (const GRegex *regex,
      const gchar *string,
      GRegexMatchFlags match_options,
      GMatchInfo **match_info);
extern
gboolean g_regex_match_all_full (const GRegex *regex,
      const gchar *string,
      gssize string_len,
      gint start_position,
      GRegexMatchFlags match_options,
      GMatchInfo **match_info,
      GError **error);


extern
gchar **g_regex_split_simple (const gchar *pattern,
      const gchar *string,
      GRegexCompileFlags compile_options,
      GRegexMatchFlags match_options);
extern
gchar **g_regex_split (const GRegex *regex,
      const gchar *string,
      GRegexMatchFlags match_options);
extern
gchar **g_regex_split_full (const GRegex *regex,
      const gchar *string,
      gssize string_len,
      gint start_position,
      GRegexMatchFlags match_options,
      gint max_tokens,
      GError **error);


extern
gchar *g_regex_replace (const GRegex *regex,
      const gchar *string,
      gssize string_len,
      gint start_position,
      const gchar *replacement,
      GRegexMatchFlags match_options,
      GError **error);
extern
gchar *g_regex_replace_literal (const GRegex *regex,
      const gchar *string,
      gssize string_len,
      gint start_position,
      const gchar *replacement,
      GRegexMatchFlags match_options,
      GError **error);
extern
gchar *g_regex_replace_eval (const GRegex *regex,
      const gchar *string,
      gssize string_len,
      gint start_position,
      GRegexMatchFlags match_options,
      GRegexEvalCallback eval,
      gpointer user_data,
      GError **error);
extern
gboolean g_regex_check_replacement (const gchar *replacement,
      gboolean *has_references,
      GError **error);


extern
GRegex *g_match_info_get_regex (const GMatchInfo *match_info);
extern
const gchar *g_match_info_get_string (const GMatchInfo *match_info);

extern
GMatchInfo *g_match_info_ref (GMatchInfo *match_info);
extern
void g_match_info_unref (GMatchInfo *match_info);
extern
void g_match_info_free (GMatchInfo *match_info);
extern
gboolean g_match_info_next (GMatchInfo *match_info,
      GError **error);
extern
gboolean g_match_info_matches (const GMatchInfo *match_info);
extern
gint g_match_info_get_match_count (const GMatchInfo *match_info);
extern
gboolean g_match_info_is_partial_match (const GMatchInfo *match_info);
extern
gchar *g_match_info_expand_references(const GMatchInfo *match_info,
      const gchar *string_to_expand,
      GError **error);
extern
gchar *g_match_info_fetch (const GMatchInfo *match_info,
      gint match_num);
extern
gboolean g_match_info_fetch_pos (const GMatchInfo *match_info,
      gint match_num,
      gint *start_pos,
      gint *end_pos);
extern
gchar *g_match_info_fetch_named (const GMatchInfo *match_info,
      const gchar *name);
extern
gboolean g_match_info_fetch_named_pos (const GMatchInfo *match_info,
      const gchar *name,
      gint *start_pos,
      gint *end_pos);
extern
gchar **g_match_info_fetch_all (const GMatchInfo *match_info);

}
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gscanner.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gscanner.h"
extern "C" {

typedef struct _GScanner GScanner;
typedef struct _GScannerConfig GScannerConfig;
typedef union _GTokenValue GTokenValue;

typedef void (*GScannerMsgFunc) (GScanner *scanner,
      gchar *message,
      gboolean error);
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gscanner.h"
typedef enum
{
 G_ERR_UNKNOWN,
 G_ERR_UNEXP_EOF,
 G_ERR_UNEXP_EOF_IN_STRING,
 G_ERR_UNEXP_EOF_IN_COMMENT,
 G_ERR_NON_DIGIT_IN_CONST,
 G_ERR_DIGIT_RADIX,
 G_ERR_FLOAT_RADIX,
 G_ERR_FLOAT_MALFORMED
} GErrorType;


typedef enum
{
 G_TOKEN_EOF = 0,

 G_TOKEN_LEFT_PAREN = '(',
 G_TOKEN_RIGHT_PAREN = ')',
 G_TOKEN_LEFT_CURLY = '{',
 G_TOKEN_RIGHT_CURLY = '}',
 G_TOKEN_LEFT_BRACE = '[',
 G_TOKEN_RIGHT_BRACE = ']',
 G_TOKEN_EQUAL_SIGN = '=',
 G_TOKEN_COMMA = ',',

 G_TOKEN_NONE = 256,

 G_TOKEN_ERROR,

 G_TOKEN_CHAR,
 G_TOKEN_BINARY,
 G_TOKEN_OCTAL,
 G_TOKEN_INT,
 G_TOKEN_HEX,
 G_TOKEN_FLOAT,
 G_TOKEN_STRING,

 G_TOKEN_SYMBOL,
 G_TOKEN_IDENTIFIER,
 G_TOKEN_IDENTIFIER_NULL,

 G_TOKEN_COMMENT_SINGLE,
 G_TOKEN_COMMENT_MULTI,


 G_TOKEN_LAST
} GTokenType;

union _GTokenValue
{
 gpointer v_symbol;
 gchar *v_identifier;
 gulong v_binary;
 gulong v_octal;
 gulong v_int;
 guint64 v_int64;
 gdouble v_float;
 gulong v_hex;
 gchar *v_string;
 gchar *v_comment;
 guchar v_char;
 guint v_error;
};

struct _GScannerConfig
{


 gchar *cset_skip_characters;
 gchar *cset_identifier_first;
 gchar *cset_identifier_nth;
 gchar *cpair_comment_single;



 guint case_sensitive : 1;




 guint skip_comment_multi : 1;
 guint skip_comment_single : 1;
 guint scan_comment_multi : 1;
 guint scan_identifier : 1;
 guint scan_identifier_1char : 1;
 guint scan_identifier_NULL : 1;
 guint scan_symbols : 1;
 guint scan_binary : 1;
 guint scan_octal : 1;
 guint scan_float : 1;
 guint scan_hex : 1;
 guint scan_hex_dollar : 1;
 guint scan_string_sq : 1;
 guint scan_string_dq : 1;
 guint numbers_2_int : 1;
 guint int_2_float : 1;
 guint identifier_2_string : 1;
 guint char_2_token : 1;
 guint symbol_2_token : 1;
 guint scope_0_fallback : 1;
 guint store_int64 : 1;


 guint padding_dummy;
};

struct _GScanner
{

 gpointer user_data;
 guint max_parse_errors;


 guint parse_errors;


 const gchar *input_name;


 GData *qdata;


 GScannerConfig *config;


 GTokenType token;
 GTokenValue value;
 guint line;
 guint position;


 GTokenType next_token;
 GTokenValue next_value;
 guint next_line;
 guint next_position;



 GHashTable *symbol_table;
 gint input_fd;
 const gchar *text;
 const gchar *text_end;
 gchar *buffer;
 guint scope_id;



 GScannerMsgFunc msg_handler;
};

extern
GScanner* g_scanner_new (const GScannerConfig *config_templ);
extern
void g_scanner_destroy (GScanner *scanner);
extern
void g_scanner_input_file (GScanner *scanner,
      gint input_fd);
extern
void g_scanner_sync_file_offset (GScanner *scanner);
extern
void g_scanner_input_text (GScanner *scanner,
      const gchar *text,
      guint text_len);
extern
GTokenType g_scanner_get_next_token (GScanner *scanner);
extern
GTokenType g_scanner_peek_next_token (GScanner *scanner);
extern
GTokenType g_scanner_cur_token (GScanner *scanner);
extern
GTokenValue g_scanner_cur_value (GScanner *scanner);
extern
guint g_scanner_cur_line (GScanner *scanner);
extern
guint g_scanner_cur_position (GScanner *scanner);
extern
gboolean g_scanner_eof (GScanner *scanner);
extern
guint g_scanner_set_scope (GScanner *scanner,
      guint scope_id);
extern
void g_scanner_scope_add_symbol (GScanner *scanner,
      guint scope_id,
      const gchar *symbol,
      gpointer value);
extern
void g_scanner_scope_remove_symbol (GScanner *scanner,
      guint scope_id,
      const gchar *symbol);
extern
gpointer g_scanner_scope_lookup_symbol (GScanner *scanner,
      guint scope_id,
      const gchar *symbol);
extern
void g_scanner_scope_foreach_symbol (GScanner *scanner,
      guint scope_id,
      GHFunc func,
      gpointer user_data);
extern
gpointer g_scanner_lookup_symbol (GScanner *scanner,
      const gchar *symbol);
extern
void g_scanner_unexp_token (GScanner *scanner,
      GTokenType expected_token,
      const gchar *identifier_spec,
      const gchar *symbol_spec,
      const gchar *symbol_name,
      const gchar *message,
      gint is_error);
extern
void g_scanner_error (GScanner *scanner,
      const gchar *format,
      ...) __attribute__((__format__ (__printf__, 2, 3)));
extern
void g_scanner_warn (GScanner *scanner,
      const gchar *format,
      ...) __attribute__((__format__ (__printf__, 2, 3)));
# 301 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gscanner.h"
}
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gsequence.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gsequence.h"
extern "C" {

typedef struct _GSequence GSequence;
typedef struct _GSequenceNode GSequenceIter;

typedef gint (* GSequenceIterCompareFunc) (GSequenceIter *a,
                                          GSequenceIter *b,
                                          gpointer data);



extern
GSequence * g_sequence_new (GDestroyNotify data_destroy);
extern
void g_sequence_free (GSequence *seq);
extern
gint g_sequence_get_length (GSequence *seq);
extern
void g_sequence_foreach (GSequence *seq,
                                             GFunc func,
                                             gpointer user_data);
extern
void g_sequence_foreach_range (GSequenceIter *begin,
                                             GSequenceIter *end,
                                             GFunc func,
                                             gpointer user_data);
extern
void g_sequence_sort (GSequence *seq,
                                             GCompareDataFunc cmp_func,
                                             gpointer cmp_data);
extern
void g_sequence_sort_iter (GSequence *seq,
                                             GSequenceIterCompareFunc cmp_func,
                                             gpointer cmp_data);
extern
gboolean g_sequence_is_empty (GSequence *seq);



extern
GSequenceIter *g_sequence_get_begin_iter (GSequence *seq);
extern
GSequenceIter *g_sequence_get_end_iter (GSequence *seq);
extern
GSequenceIter *g_sequence_get_iter_at_pos (GSequence *seq,
                                             gint pos);
extern
GSequenceIter *g_sequence_append (GSequence *seq,
                                             gpointer data);
extern
GSequenceIter *g_sequence_prepend (GSequence *seq,
                                             gpointer data);
extern
GSequenceIter *g_sequence_insert_before (GSequenceIter *iter,
                                             gpointer data);
extern
void g_sequence_move (GSequenceIter *src,
                                             GSequenceIter *dest);
extern
void g_sequence_swap (GSequenceIter *a,
                                             GSequenceIter *b);
extern
GSequenceIter *g_sequence_insert_sorted (GSequence *seq,
                                             gpointer data,
                                             GCompareDataFunc cmp_func,
                                             gpointer cmp_data);
extern
GSequenceIter *g_sequence_insert_sorted_iter (GSequence *seq,
                                             gpointer data,
                                             GSequenceIterCompareFunc iter_cmp,
                                             gpointer cmp_data);
extern
void g_sequence_sort_changed (GSequenceIter *iter,
                                             GCompareDataFunc cmp_func,
                                             gpointer cmp_data);
extern
void g_sequence_sort_changed_iter (GSequenceIter *iter,
                                             GSequenceIterCompareFunc iter_cmp,
                                             gpointer cmp_data);
extern
void g_sequence_remove (GSequenceIter *iter);
extern
void g_sequence_remove_range (GSequenceIter *begin,
                                             GSequenceIter *end);
extern
void g_sequence_move_range (GSequenceIter *dest,
                                             GSequenceIter *begin,
                                             GSequenceIter *end);
extern
GSequenceIter *g_sequence_search (GSequence *seq,
                                             gpointer data,
                                             GCompareDataFunc cmp_func,
                                             gpointer cmp_data);
extern
GSequenceIter *g_sequence_search_iter (GSequence *seq,
                                             gpointer data,
                                             GSequenceIterCompareFunc iter_cmp,
                                             gpointer cmp_data);
extern
GSequenceIter *g_sequence_lookup (GSequence *seq,
                                             gpointer data,
                                             GCompareDataFunc cmp_func,
                                             gpointer cmp_data);
extern
GSequenceIter *g_sequence_lookup_iter (GSequence *seq,
                                             gpointer data,
                                             GSequenceIterCompareFunc iter_cmp,
                                             gpointer cmp_data);



extern
gpointer g_sequence_get (GSequenceIter *iter);
extern
void g_sequence_set (GSequenceIter *iter,
                                             gpointer data);


extern
gboolean g_sequence_iter_is_begin (GSequenceIter *iter);
extern
gboolean g_sequence_iter_is_end (GSequenceIter *iter);
extern
GSequenceIter *g_sequence_iter_next (GSequenceIter *iter);
extern
GSequenceIter *g_sequence_iter_prev (GSequenceIter *iter);
extern
gint g_sequence_iter_get_position (GSequenceIter *iter);
extern
GSequenceIter *g_sequence_iter_move (GSequenceIter *iter,
                                             gint delta);
extern
GSequence * g_sequence_iter_get_sequence (GSequenceIter *iter);



extern
gint g_sequence_iter_compare (GSequenceIter *a,
                                             GSequenceIter *b);
extern
GSequenceIter *g_sequence_range_get_midpoint (GSequenceIter *begin,
                                             GSequenceIter *end);

}
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gshell.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gshell.h"
extern "C" {



typedef enum
{

 G_SHELL_ERROR_BAD_QUOTING,

 G_SHELL_ERROR_EMPTY_STRING,
 G_SHELL_ERROR_FAILED
} GShellError;

extern
GQuark g_shell_error_quark (void);

extern
gchar* g_shell_quote (const gchar *unquoted_string);
extern
gchar* g_shell_unquote (const gchar *quoted_string,
                            GError **error);
extern
gboolean g_shell_parse_argv (const gchar *command_line,
                            gint *argcp,
                            gchar ***argvp,
                            GError **error);

}
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gslice.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gslice.h"
extern "C" {



extern
gpointer g_slice_alloc (gsize block_size) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
extern
gpointer g_slice_alloc0 (gsize block_size) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
extern
gpointer g_slice_copy (gsize block_size,
                                        gconstpointer mem_block) __attribute__((__malloc__)) __attribute__((__alloc_size__(1)));
extern
void g_slice_free1 (gsize block_size,
     gpointer mem_block);
extern
void g_slice_free_chain_with_offset (gsize block_size,
     gpointer mem_chain,
     gsize next_offset);
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gslice.h"
typedef enum {
 G_SLICE_CONFIG_ALWAYS_MALLOC = 1,
 G_SLICE_CONFIG_BYPASS_MAGAZINES,
 G_SLICE_CONFIG_WORKING_SET_MSECS,
 G_SLICE_CONFIG_COLOR_INCREMENT,
 G_SLICE_CONFIG_CHUNK_SIZES,
 G_SLICE_CONFIG_CONTENTION_COUNTER
} GSliceConfig;

__attribute__((__deprecated__)) extern
void g_slice_set_config (GSliceConfig ckey, gint64 value);
__attribute__((__deprecated__)) extern
gint64 g_slice_get_config (GSliceConfig ckey);
__attribute__((__deprecated__)) extern
gint64* g_slice_get_config_state (GSliceConfig ckey, gint64 address, guint *n_values);






}
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gspawn.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gspawn.h"
extern "C" {
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gspawn.h"
typedef enum
{
 G_SPAWN_ERROR_FORK,
 G_SPAWN_ERROR_READ,
 G_SPAWN_ERROR_CHDIR,
 G_SPAWN_ERROR_ACCES,
 G_SPAWN_ERROR_PERM,
 G_SPAWN_ERROR_TOO_BIG,

 G_SPAWN_ERROR_2BIG = G_SPAWN_ERROR_TOO_BIG,

 G_SPAWN_ERROR_NOEXEC,
 G_SPAWN_ERROR_NAMETOOLONG,
 G_SPAWN_ERROR_NOENT,
 G_SPAWN_ERROR_NOMEM,
 G_SPAWN_ERROR_NOTDIR,
 G_SPAWN_ERROR_LOOP,
 G_SPAWN_ERROR_TXTBUSY,
 G_SPAWN_ERROR_IO,
 G_SPAWN_ERROR_NFILE,
 G_SPAWN_ERROR_MFILE,
 G_SPAWN_ERROR_INVAL,
 G_SPAWN_ERROR_ISDIR,
 G_SPAWN_ERROR_LIBBAD,
 G_SPAWN_ERROR_FAILED


} GSpawnError;
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gspawn.h"
typedef void (* GSpawnChildSetupFunc) (gpointer user_data);
# 172 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gspawn.h"
typedef enum
{
 G_SPAWN_DEFAULT = 0,
 G_SPAWN_LEAVE_DESCRIPTORS_OPEN = 1 << 0,
 G_SPAWN_DO_NOT_REAP_CHILD = 1 << 1,

 G_SPAWN_SEARCH_PATH = 1 << 2,

 G_SPAWN_STDOUT_TO_DEV_NULL = 1 << 3,
 G_SPAWN_STDERR_TO_DEV_NULL = 1 << 4,
 G_SPAWN_CHILD_INHERITS_STDIN = 1 << 5,
 G_SPAWN_FILE_AND_ARGV_ZERO = 1 << 6,
 G_SPAWN_SEARCH_PATH_FROM_ENVP = 1 << 7,
 G_SPAWN_CLOEXEC_PIPES = 1 << 8
} GSpawnFlags;

extern
GQuark g_spawn_error_quark (void);
extern
GQuark g_spawn_exit_error_quark (void);

extern
gboolean g_spawn_async (const gchar *working_directory,
                       gchar **argv,
                       gchar **envp,
                       GSpawnFlags flags,
                       GSpawnChildSetupFunc child_setup,
                       gpointer user_data,
                       GPid *child_pid,
                       GError **error);





extern
gboolean g_spawn_async_with_pipes (const gchar *working_directory,
                                  gchar **argv,
                                  gchar **envp,
                                  GSpawnFlags flags,
                                  GSpawnChildSetupFunc child_setup,
                                  gpointer user_data,
                                  GPid *child_pid,
                                  gint *standard_input,
                                  gint *standard_output,
                                  gint *standard_error,
                                  GError **error);






extern
gboolean g_spawn_sync (const gchar *working_directory,
                              gchar **argv,
                              gchar **envp,
                              GSpawnFlags flags,
                              GSpawnChildSetupFunc child_setup,
                              gpointer user_data,
                              gchar **standard_output,
                              gchar **standard_error,
                              gint *exit_status,
                              GError **error);

extern
gboolean g_spawn_command_line_sync (const gchar *command_line,
                                    gchar **standard_output,
                                    gchar **standard_error,
                                    gint *exit_status,
                                    GError **error);
extern
gboolean g_spawn_command_line_async (const gchar *command_line,
                                    GError **error);

extern
gboolean g_spawn_check_exit_status (gint exit_status,
       GError **error);

extern
void g_spawn_close_pid (GPid pid);
# 307 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gspawn.h"
}
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstrfuncs.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstrfuncs.h"
extern "C" {


typedef enum {
 G_ASCII_ALNUM = 1 << 0,
 G_ASCII_ALPHA = 1 << 1,
 G_ASCII_CNTRL = 1 << 2,
 G_ASCII_DIGIT = 1 << 3,
 G_ASCII_GRAPH = 1 << 4,
 G_ASCII_LOWER = 1 << 5,
 G_ASCII_PRINT = 1 << 6,
 G_ASCII_PUNCT = 1 << 7,
 G_ASCII_SPACE = 1 << 8,
 G_ASCII_UPPER = 1 << 9,
 G_ASCII_XDIGIT = 1 << 10
} GAsciiType;

extern const guint16 * const g_ascii_table;
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstrfuncs.h"
extern
gchar g_ascii_tolower (gchar c) __attribute__((__const__));
extern
gchar g_ascii_toupper (gchar c) __attribute__((__const__));

extern
gint g_ascii_digit_value (gchar c) __attribute__((__const__));
extern
gint g_ascii_xdigit_value (gchar c) __attribute__((__const__));





extern
gchar* g_strdelimit (gchar *string,
    const gchar *delimiters,
    gchar new_delimiter);
extern
gchar* g_strcanon (gchar *string,
    const gchar *valid_chars,
    gchar substitutor);
extern
const gchar * g_strerror (gint errnum) __attribute__((__const__));
extern
const gchar * g_strsignal (gint signum) __attribute__((__const__));
extern
gchar * g_strreverse (gchar *string);
extern
gsize g_strlcpy (gchar *dest,
    const gchar *src,
    gsize dest_size);
extern
gsize g_strlcat (gchar *dest,
    const gchar *src,
    gsize dest_size);
extern
gchar * g_strstr_len (const gchar *haystack,
    gssize haystack_len,
    const gchar *needle);
extern
gchar * g_strrstr (const gchar *haystack,
    const gchar *needle);
extern
gchar * g_strrstr_len (const gchar *haystack,
    gssize haystack_len,
    const gchar *needle);

extern
gboolean g_str_has_suffix (const gchar *str,
    const gchar *suffix);
extern
gboolean g_str_has_prefix (const gchar *str,
    const gchar *prefix);



extern
gdouble g_strtod (const gchar *nptr,
    gchar **endptr);
extern
gdouble g_ascii_strtod (const gchar *nptr,
    gchar **endptr);
extern
guint64 g_ascii_strtoull (const gchar *nptr,
    gchar **endptr,
    guint base);
extern
gint64 g_ascii_strtoll (const gchar *nptr,
    gchar **endptr,
    guint base);




extern
gchar * g_ascii_dtostr (gchar *buffer,
    gint buf_len,
    gdouble d);
extern
gchar * g_ascii_formatd (gchar *buffer,
    gint buf_len,
    const gchar *format,
    gdouble d);


extern
gchar* g_strchug (gchar *string);

extern
gchar* g_strchomp (gchar *string);



extern
gint g_ascii_strcasecmp (const gchar *s1,
       const gchar *s2);
extern
gint g_ascii_strncasecmp (const gchar *s1,
       const gchar *s2,
       gsize n);
extern
gchar* g_ascii_strdown (const gchar *str,
       gssize len) __attribute__((__malloc__));
extern
gchar* g_ascii_strup (const gchar *str,
       gssize len) __attribute__((__malloc__));

extern
gboolean g_str_is_ascii (const gchar *str);

__attribute__((__deprecated__)) extern
gint g_strcasecmp (const gchar *s1,
                                       const gchar *s2);
__attribute__((__deprecated__)) extern
gint g_strncasecmp (const gchar *s1,
                                       const gchar *s2,
                                       guint n);
__attribute__((__deprecated__)) extern
gchar* g_strdown (gchar *string);
__attribute__((__deprecated__)) extern
gchar* g_strup (gchar *string);





extern
gchar* g_strdup (const gchar *str) __attribute__((__malloc__));
extern
gchar* g_strdup_printf (const gchar *format,
    ...) __attribute__((__format__ (__printf__, 1, 2))) __attribute__((__malloc__));
extern
gchar* g_strdup_vprintf (const gchar *format,
    va_list args) __attribute__((__format__ (__printf__, 1, 0))) __attribute__((__malloc__));
extern
gchar* g_strndup (const gchar *str,
    gsize n) __attribute__((__malloc__));
extern
gchar* g_strnfill (gsize length,
    gchar fill_char) __attribute__((__malloc__));
extern
gchar* g_strconcat (const gchar *string1,
    ...) __attribute__((__malloc__)) __attribute__((__sentinel__));
extern
gchar* g_strjoin (const gchar *separator,
    ...) __attribute__((__malloc__)) __attribute__((__sentinel__));





extern
gchar* g_strcompress (const gchar *source) __attribute__((__malloc__));
# 251 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstrfuncs.h"
extern
gchar* g_strescape (const gchar *source,
    const gchar *exceptions) __attribute__((__malloc__));

extern
gpointer g_memdup (gconstpointer mem,
    guint byte_size) __attribute__((__malloc__)) __attribute__((__alloc_size__(2)));
# 268 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstrfuncs.h"
typedef gchar** GStrv;
extern
gchar** g_strsplit (const gchar *string,
    const gchar *delimiter,
    gint max_tokens) __attribute__((__malloc__));
extern
gchar ** g_strsplit_set (const gchar *string,
    const gchar *delimiters,
    gint max_tokens) __attribute__((__malloc__));
extern
gchar* g_strjoinv (const gchar *separator,
    gchar **str_array) __attribute__((__malloc__));
extern
void g_strfreev (gchar **str_array);
extern
gchar** g_strdupv (gchar **str_array) __attribute__((__malloc__));
extern
guint g_strv_length (gchar **str_array);

extern
gchar* g_stpcpy (gchar *dest,
                                       const char *src);

extern
gchar * g_str_to_ascii (const gchar *str,
                                                                        const gchar *from_locale);

extern
gchar ** g_str_tokenize_and_fold (const gchar *string,
                                                                        const gchar *translit_locale,
                                                                        gchar ***ascii_alternates);

extern
gboolean g_str_match_string (const gchar *search_term,
                                                                        const gchar *potential_hit,
                                                                        gboolean accept_alternates);

extern
gboolean g_strv_contains (const gchar * const *strv,
                                       const gchar *str);

}
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstringchunk.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gstringchunk.h"
extern "C" {

typedef struct _GStringChunk GStringChunk;

extern
GStringChunk* g_string_chunk_new (gsize size);
extern
void g_string_chunk_free (GStringChunk *chunk);
extern
void g_string_chunk_clear (GStringChunk *chunk);
extern
gchar* g_string_chunk_insert (GStringChunk *chunk,
                                          const gchar *string);
extern
gchar* g_string_chunk_insert_len (GStringChunk *chunk,
                                          const gchar *string,
                                          gssize len);
extern
gchar* g_string_chunk_insert_const (GStringChunk *chunk,
                                          const gchar *string);

}
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtestutils.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtestutils.h"
extern "C" {

typedef struct GTestCase GTestCase;
typedef struct GTestSuite GTestSuite;
typedef void (*GTestFunc) (void);
typedef void (*GTestDataFunc) (gconstpointer user_data);
typedef void (*GTestFixtureFunc) (gpointer fixture,
                                 gconstpointer user_data);
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtestutils.h"
extern
int g_strcmp0 (const char *str1,
                                        const char *str2);


extern
void g_test_minimized_result (double minimized_quantity,
                                        const char *format,
                                        ...) __attribute__((__format__ (__printf__, 2, 3)));
extern
void g_test_maximized_result (double maximized_quantity,
                                        const char *format,
                                        ...) __attribute__((__format__ (__printf__, 2, 3)));


extern
void g_test_init (int *argc,
                                        char ***argv,
                                        ...) __attribute__((__sentinel__));
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtestutils.h"
extern
gboolean g_test_subprocess (void);


extern
int g_test_run (void);

extern
void g_test_add_func (const char *testpath,
                                        GTestFunc test_func);

extern
void g_test_add_data_func (const char *testpath,
                                        gconstpointer test_data,
                                        GTestDataFunc test_func);

extern
void g_test_add_data_func_full (const char *testpath,
                                        gpointer test_data,
                                        GTestDataFunc test_func,
                                        GDestroyNotify data_free_func);


extern
void g_test_fail (void);
extern
void g_test_incomplete (const gchar *msg);
extern
void g_test_skip (const gchar *msg);
extern
gboolean g_test_failed (void);
extern
void g_test_set_nonfatal_assertions (void);
# 198 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtestutils.h"
extern
void g_test_message (const char *format,
                                        ...) __attribute__((__format__ (__printf__, 1, 2)));
extern
void g_test_bug_base (const char *uri_pattern);
extern
void g_test_bug (const char *bug_uri_snippet);

extern
void g_test_timer_start (void);
extern
double g_test_timer_elapsed (void);
extern
double g_test_timer_last (void);


extern
void g_test_queue_free (gpointer gfree_pointer);
extern
void g_test_queue_destroy (GDestroyNotify destroy_func,
                                        gpointer destroy_data);


typedef enum {
 G_TEST_TRAP_SILENCE_STDOUT = 1 << 7,
 G_TEST_TRAP_SILENCE_STDERR = 1 << 8,
 G_TEST_TRAP_INHERIT_STDIN = 1 << 9
} GTestTrapFlags;

__attribute__((__deprecated__("Use '" "g_test_trap_subprocess" "' instead"))) extern
gboolean g_test_trap_fork (guint64 usec_timeout,
                                        GTestTrapFlags test_trap_flags);

typedef enum {
 G_TEST_SUBPROCESS_INHERIT_STDIN = 1 << 0,
 G_TEST_SUBPROCESS_INHERIT_STDOUT = 1 << 1,
 G_TEST_SUBPROCESS_INHERIT_STDERR = 1 << 2
} GTestSubprocessFlags;

extern
void g_test_trap_subprocess (const char *test_path,
                                        guint64 usec_timeout,
                                        GTestSubprocessFlags test_flags);

extern
gboolean g_test_trap_has_passed (void);
extern
gboolean g_test_trap_reached_timeout (void);
# 255 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtestutils.h"
extern
gint32 g_test_rand_int (void);
extern
gint32 g_test_rand_int_range (gint32 begin,
                                        gint32 end);
extern
double g_test_rand_double (void);
extern
double g_test_rand_double_range (double range_start,
                                        double range_end);






extern
GTestCase* g_test_create_case (const char *test_name,
                                        gsize data_size,
                                        gconstpointer test_data,
                                        GTestFixtureFunc data_setup,
                                        GTestFixtureFunc data_test,
                                        GTestFixtureFunc data_teardown);
extern
GTestSuite* g_test_create_suite (const char *suite_name);
extern
GTestSuite* g_test_get_root (void);
extern
void g_test_suite_add (GTestSuite *suite,
                                        GTestCase *test_case);
extern
void g_test_suite_add_suite (GTestSuite *suite,
                                        GTestSuite *nestedsuite);
extern
int g_test_run_suite (GTestSuite *suite);

extern
void g_test_trap_assertions (const char *domain,
                                        const char *file,
                                        int line,
                                        const char *func,
                                        guint64 assertion_flags,
                                        const char *pattern);
extern
void g_assertion_message (const char *domain,
                                        const char *file,
                                        int line,
                                        const char *func,
                                        const char *message);
extern
void g_assertion_message_expr (const char *domain,
                                        const char *file,
                                        int line,
                                        const char *func,
                                        const char *expr) __attribute__((__noreturn__));
extern
void g_assertion_message_cmpstr (const char *domain,
                                        const char *file,
                                        int line,
                                        const char *func,
                                        const char *expr,
                                        const char *arg1,
                                        const char *cmp,
                                        const char *arg2);
extern
void g_assertion_message_cmpnum (const char *domain,
                                        const char *file,
                                        int line,
                                        const char *func,
                                        const char *expr,
                                        long double arg1,
                                        const char *cmp,
                                        long double arg2,
                                        char numtype);
extern
void g_assertion_message_error (const char *domain,
                                        const char *file,
                                        int line,
                                        const char *func,
                                        const char *expr,
                                        const GError *error,
                                        GQuark error_domain,
                                        int error_code);
extern
void g_test_add_vtable (const char *testpath,
                                        gsize data_size,
                                        gconstpointer test_data,
                                        GTestFixtureFunc data_setup,
                                        GTestFixtureFunc data_test,
                                        GTestFixtureFunc data_teardown);
typedef struct {
 gboolean test_initialized;
 gboolean test_quick;
 gboolean test_perf;
 gboolean test_verbose;
 gboolean test_quiet;
 gboolean test_undefined;
} GTestConfig;
extern const GTestConfig * const g_test_config_vars;


typedef enum {
 G_TEST_LOG_NONE,
 G_TEST_LOG_ERROR,
 G_TEST_LOG_START_BINARY,
 G_TEST_LOG_LIST_CASE,
 G_TEST_LOG_SKIP_CASE,
 G_TEST_LOG_START_CASE,
 G_TEST_LOG_STOP_CASE,
 G_TEST_LOG_MIN_RESULT,
 G_TEST_LOG_MAX_RESULT,
 G_TEST_LOG_MESSAGE,
 G_TEST_LOG_START_SUITE,
 G_TEST_LOG_STOP_SUITE
} GTestLogType;

typedef struct {
 GTestLogType log_type;
 guint n_strings;
 gchar **strings;
 guint n_nums;
 long double *nums;
} GTestLogMsg;
typedef struct {

 GString *data;
 GSList *msgs;
} GTestLogBuffer;

extern
const char* g_test_log_type_name (GTestLogType log_type);
extern
GTestLogBuffer* g_test_log_buffer_new (void);
extern
void g_test_log_buffer_free (GTestLogBuffer *tbuffer);
extern
void g_test_log_buffer_push (GTestLogBuffer *tbuffer,
                                        guint n_bytes,
                                        const guint8 *bytes);
extern
GTestLogMsg* g_test_log_buffer_pop (GTestLogBuffer *tbuffer);
extern
void g_test_log_msg_free (GTestLogMsg *tmsg);
# 412 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtestutils.h"
typedef gboolean (*GTestLogFatalFunc) (const gchar *log_domain,
                                                GLogLevelFlags log_level,
                                                const gchar *message,
                                                gpointer user_data);
extern
void
g_test_log_set_fatal_handler (GTestLogFatalFunc log_func,
                                        gpointer user_data);

extern
void g_test_expect_message (const gchar *log_domain,
                                                 GLogLevelFlags log_level,
                                                 const gchar *pattern);
extern
void g_test_assert_expected_messages_internal (const char *domain,
                                                 const char *file,
                                                 int line,
                                                 const char *func);

typedef enum
{
 G_TEST_DIST,
 G_TEST_BUILT
} GTestFileType;

extern
gchar * g_test_build_filename (GTestFileType file_type,
                                                 const gchar *first_path,
                                                 ...) __attribute__((__sentinel__));
extern
const gchar *g_test_get_dir (GTestFileType file_type);
extern
const gchar *g_test_get_filename (GTestFileType file_type,
                                                 const gchar *first_path,
                                                 ...) __attribute__((__sentinel__));



}
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthreadpool.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gthreadpool.h"
extern "C" {

typedef struct _GThreadPool GThreadPool;




struct _GThreadPool
{
 GFunc func;
 gpointer user_data;
 gboolean exclusive;
};

extern
GThreadPool * g_thread_pool_new (GFunc func,
                                                gpointer user_data,
                                                gint max_threads,
                                                gboolean exclusive,
                                                GError **error);
extern
void g_thread_pool_free (GThreadPool *pool,
                                                gboolean immediate,
                                                gboolean wait_);
extern
gboolean g_thread_pool_push (GThreadPool *pool,
                                                gpointer data,
                                                GError **error);
extern
guint g_thread_pool_unprocessed (GThreadPool *pool);
extern
void g_thread_pool_set_sort_function (GThreadPool *pool,
                                                GCompareDataFunc func,
                                                gpointer user_data);
extern
gboolean g_thread_pool_move_to_front (GThreadPool *pool,
                                                gpointer data);

extern
gboolean g_thread_pool_set_max_threads (GThreadPool *pool,
                                                gint max_threads,
                                                GError **error);
extern
gint g_thread_pool_get_max_threads (GThreadPool *pool);
extern
guint g_thread_pool_get_num_threads (GThreadPool *pool);

extern
void g_thread_pool_set_max_unused_threads (gint max_threads);
extern
gint g_thread_pool_get_max_unused_threads (void);
extern
guint g_thread_pool_get_num_unused_threads (void);
extern
void g_thread_pool_stop_unused_threads (void);
extern
void g_thread_pool_set_max_idle_time (guint interval);
extern
guint g_thread_pool_get_max_idle_time (void);

}
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtimer.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtimer.h"
extern "C" {





typedef struct _GTimer GTimer;



extern
GTimer* g_timer_new (void);
extern
void g_timer_destroy (GTimer *timer);
extern
void g_timer_start (GTimer *timer);
extern
void g_timer_stop (GTimer *timer);
extern
void g_timer_reset (GTimer *timer);
extern
void g_timer_continue (GTimer *timer);
extern
gdouble g_timer_elapsed (GTimer *timer,
     gulong *microseconds);

extern
void g_usleep (gulong microseconds);

extern
void g_time_val_add (GTimeVal *time_,
                                 glong microseconds);
extern
gboolean g_time_val_from_iso8601 (const gchar *iso_date,
     GTimeVal *time_);
extern
gchar* g_time_val_to_iso8601 (GTimeVal *time_) __attribute__((__malloc__));

}
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtrashstack.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtrashstack.h"
extern "C" {

typedef struct _GTrashStack GTrashStack;
struct _GTrashStack
{
 GTrashStack *next;
};

__attribute__((__deprecated__)) extern
void g_trash_stack_push (GTrashStack **stack_p,
                               gpointer data_p);
__attribute__((__deprecated__)) extern
gpointer g_trash_stack_pop (GTrashStack **stack_p);
__attribute__((__deprecated__)) extern
gpointer g_trash_stack_peek (GTrashStack **stack_p);
__attribute__((__deprecated__)) extern
guint g_trash_stack_height (GTrashStack **stack_p);

}
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtree.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gtree.h"
extern "C" {

typedef struct _GTree GTree;

typedef gboolean (*GTraverseFunc) (gpointer key,
                                  gpointer value,
                                  gpointer data);



extern
GTree* g_tree_new (GCompareFunc key_compare_func);
extern
GTree* g_tree_new_with_data (GCompareDataFunc key_compare_func,
                                gpointer key_compare_data);
extern
GTree* g_tree_new_full (GCompareDataFunc key_compare_func,
                                gpointer key_compare_data,
                                GDestroyNotify key_destroy_func,
                                GDestroyNotify value_destroy_func);
extern
GTree* g_tree_ref (GTree *tree);
extern
void g_tree_unref (GTree *tree);
extern
void g_tree_destroy (GTree *tree);
extern
void g_tree_insert (GTree *tree,
                                gpointer key,
                                gpointer value);
extern
void g_tree_replace (GTree *tree,
                                gpointer key,
                                gpointer value);
extern
gboolean g_tree_remove (GTree *tree,
                                gconstpointer key);
extern
gboolean g_tree_steal (GTree *tree,
                                gconstpointer key);
extern
gpointer g_tree_lookup (GTree *tree,
                                gconstpointer key);
extern
gboolean g_tree_lookup_extended (GTree *tree,
                                gconstpointer lookup_key,
                                gpointer *orig_key,
                                gpointer *value);
extern
void g_tree_foreach (GTree *tree,
                                GTraverseFunc func,
                                gpointer user_data);

__attribute__((__deprecated__)) extern
void g_tree_traverse (GTree *tree,
                                GTraverseFunc traverse_func,
                                GTraverseType traverse_type,
                                gpointer user_data);

extern
gpointer g_tree_search (GTree *tree,
                                GCompareFunc search_func,
                                gconstpointer user_data);
extern
gint g_tree_height (GTree *tree);
extern
gint g_tree_nnodes (GTree *tree);

}
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gurifuncs.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gurifuncs.h"
extern "C" {
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gurifuncs.h"
extern
char * g_uri_unescape_string (const char *escaped_string,
         const char *illegal_characters);
extern
char * g_uri_unescape_segment (const char *escaped_string,
         const char *escaped_string_end,
         const char *illegal_characters);
extern
char * g_uri_parse_scheme (const char *uri);
extern
char * g_uri_escape_string (const char *unescaped,
         const char *reserved_chars_allowed,
         gboolean allow_utf8);

}
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gvarianttype.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gvarianttype.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gvarianttype.h"
typedef struct _GVariantType GVariantType;
# 295 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gvarianttype.h"
extern
gboolean g_variant_type_string_is_valid (const gchar *type_string);
extern
gboolean g_variant_type_string_scan (const gchar *string,
                                                                        const gchar *limit,
                                                                        const gchar **endptr);


extern
void g_variant_type_free (GVariantType *type);
extern
GVariantType * g_variant_type_copy (const GVariantType *type);
extern
GVariantType * g_variant_type_new (const gchar *type_string);


extern
gsize g_variant_type_get_string_length (const GVariantType *type);
extern
const gchar * g_variant_type_peek_string (const GVariantType *type);
extern
gchar * g_variant_type_dup_string (const GVariantType *type);


extern
gboolean g_variant_type_is_definite (const GVariantType *type);
extern
gboolean g_variant_type_is_container (const GVariantType *type);
extern
gboolean g_variant_type_is_basic (const GVariantType *type);
extern
gboolean g_variant_type_is_maybe (const GVariantType *type);
extern
gboolean g_variant_type_is_array (const GVariantType *type);
extern
gboolean g_variant_type_is_tuple (const GVariantType *type);
extern
gboolean g_variant_type_is_dict_entry (const GVariantType *type);
extern
gboolean g_variant_type_is_variant (const GVariantType *type);


extern
guint g_variant_type_hash (gconstpointer type);
extern
gboolean g_variant_type_equal (gconstpointer type1,
                                                                        gconstpointer type2);


extern
gboolean g_variant_type_is_subtype_of (const GVariantType *type,
                                                                        const GVariantType *supertype);


extern
const GVariantType * g_variant_type_element (const GVariantType *type);
extern
const GVariantType * g_variant_type_first (const GVariantType *type);
extern
const GVariantType * g_variant_type_next (const GVariantType *type);
extern
gsize g_variant_type_n_items (const GVariantType *type);
extern
const GVariantType * g_variant_type_key (const GVariantType *type);
extern
const GVariantType * g_variant_type_value (const GVariantType *type);


extern
GVariantType * g_variant_type_new_array (const GVariantType *element);
extern
GVariantType * g_variant_type_new_maybe (const GVariantType *element);
extern
GVariantType * g_variant_type_new_tuple (const GVariantType * const *items,
                                                                        gint length);
extern
GVariantType * g_variant_type_new_dict_entry (const GVariantType *key,
                                                                        const GVariantType *value);


extern
const GVariantType * g_variant_type_checked_ (const gchar *);

}
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gvariant.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gvariant.h"
extern "C" {

typedef struct _GVariant GVariant;

typedef enum
{
 G_VARIANT_CLASS_BOOLEAN = 'b',
 G_VARIANT_CLASS_BYTE = 'y',
 G_VARIANT_CLASS_INT16 = 'n',
 G_VARIANT_CLASS_UINT16 = 'q',
 G_VARIANT_CLASS_INT32 = 'i',
 G_VARIANT_CLASS_UINT32 = 'u',
 G_VARIANT_CLASS_INT64 = 'x',
 G_VARIANT_CLASS_UINT64 = 't',
 G_VARIANT_CLASS_HANDLE = 'h',
 G_VARIANT_CLASS_DOUBLE = 'd',
 G_VARIANT_CLASS_STRING = 's',
 G_VARIANT_CLASS_OBJECT_PATH = 'o',
 G_VARIANT_CLASS_SIGNATURE = 'g',
 G_VARIANT_CLASS_VARIANT = 'v',
 G_VARIANT_CLASS_MAYBE = 'm',
 G_VARIANT_CLASS_ARRAY = 'a',
 G_VARIANT_CLASS_TUPLE = '(',
 G_VARIANT_CLASS_DICT_ENTRY = '{'
} GVariantClass;

extern
void g_variant_unref (GVariant *value);
extern
GVariant * g_variant_ref (GVariant *value);
extern
GVariant * g_variant_ref_sink (GVariant *value);
extern
gboolean g_variant_is_floating (GVariant *value);
extern
GVariant * g_variant_take_ref (GVariant *value);

extern
const GVariantType * g_variant_get_type (GVariant *value);
extern
const gchar * g_variant_get_type_string (GVariant *value);
extern
gboolean g_variant_is_of_type (GVariant *value,
                                                                        const GVariantType *type);
extern
gboolean g_variant_is_container (GVariant *value);
extern
GVariantClass g_variant_classify (GVariant *value);
extern
GVariant * g_variant_new_boolean (gboolean value);
extern
GVariant * g_variant_new_byte (guchar value);
extern
GVariant * g_variant_new_int16 (gint16 value);
extern
GVariant * g_variant_new_uint16 (guint16 value);
extern
GVariant * g_variant_new_int32 (gint32 value);
extern
GVariant * g_variant_new_uint32 (guint32 value);
extern
GVariant * g_variant_new_int64 (gint64 value);
extern
GVariant * g_variant_new_uint64 (guint64 value);
extern
GVariant * g_variant_new_handle (gint32 value);
extern
GVariant * g_variant_new_double (gdouble value);
extern
GVariant * g_variant_new_string (const gchar *string);
extern
GVariant * g_variant_new_take_string (gchar *string);
extern
GVariant * g_variant_new_printf (const gchar *format_string,
                                                                        ...) __attribute__((__format__ (__printf__, 1, 2)));
extern
GVariant * g_variant_new_object_path (const gchar *object_path);
extern
gboolean g_variant_is_object_path (const gchar *string);
extern
GVariant * g_variant_new_signature (const gchar *signature);
extern
gboolean g_variant_is_signature (const gchar *string);
extern
GVariant * g_variant_new_variant (GVariant *value);
extern
GVariant * g_variant_new_strv (const gchar * const *strv,
                                                                        gssize length);
extern
GVariant * g_variant_new_objv (const gchar * const *strv,
                                                                        gssize length);
extern
GVariant * g_variant_new_bytestring (const gchar *string);
extern
GVariant * g_variant_new_bytestring_array (const gchar * const *strv,
                                                                        gssize length);
extern
GVariant * g_variant_new_fixed_array (const GVariantType *element_type,
                                                                        gconstpointer elements,
                                                                        gsize n_elements,
                                                                        gsize element_size);
extern
gboolean g_variant_get_boolean (GVariant *value);
extern
guchar g_variant_get_byte (GVariant *value);
extern
gint16 g_variant_get_int16 (GVariant *value);
extern
guint16 g_variant_get_uint16 (GVariant *value);
extern
gint32 g_variant_get_int32 (GVariant *value);
extern
guint32 g_variant_get_uint32 (GVariant *value);
extern
gint64 g_variant_get_int64 (GVariant *value);
extern
guint64 g_variant_get_uint64 (GVariant *value);
extern
gint32 g_variant_get_handle (GVariant *value);
extern
gdouble g_variant_get_double (GVariant *value);
extern
GVariant * g_variant_get_variant (GVariant *value);
extern
const gchar * g_variant_get_string (GVariant *value,
                                                                        gsize *length);
extern
gchar * g_variant_dup_string (GVariant *value,
                                                                        gsize *length);
extern
const gchar ** g_variant_get_strv (GVariant *value,
                                                                        gsize *length);
extern
gchar ** g_variant_dup_strv (GVariant *value,
                                                                        gsize *length);
extern
const gchar ** g_variant_get_objv (GVariant *value,
                                                                        gsize *length);
extern
gchar ** g_variant_dup_objv (GVariant *value,
                                                                        gsize *length);
extern
const gchar * g_variant_get_bytestring (GVariant *value);
extern
gchar * g_variant_dup_bytestring (GVariant *value,
                                                                        gsize *length);
extern
const gchar ** g_variant_get_bytestring_array (GVariant *value,
                                                                        gsize *length);
extern
gchar ** g_variant_dup_bytestring_array (GVariant *value,
                                                                        gsize *length);

extern
GVariant * g_variant_new_maybe (const GVariantType *child_type,
                                                                        GVariant *child);
extern
GVariant * g_variant_new_array (const GVariantType *child_type,
                                                                        GVariant * const *children,
                                                                        gsize n_children);
extern
GVariant * g_variant_new_tuple (GVariant * const *children,
                                                                        gsize n_children);
extern
GVariant * g_variant_new_dict_entry (GVariant *key,
                                                                        GVariant *value);

extern
GVariant * g_variant_get_maybe (GVariant *value);
extern
gsize g_variant_n_children (GVariant *value);
extern
void g_variant_get_child (GVariant *value,
                                                                        gsize index_,
                                                                        const gchar *format_string,
                                                                        ...);
extern
GVariant * g_variant_get_child_value (GVariant *value,
                                                                        gsize index_);
extern
gboolean g_variant_lookup (GVariant *dictionary,
                                                                        const gchar *key,
                                                                        const gchar *format_string,
                                                                        ...);
extern
GVariant * g_variant_lookup_value (GVariant *dictionary,
                                                                        const gchar *key,
                                                                        const GVariantType *expected_type);
extern
gconstpointer g_variant_get_fixed_array (GVariant *value,
                                                                        gsize *n_elements,
                                                                        gsize element_size);

extern
gsize g_variant_get_size (GVariant *value);
extern
gconstpointer g_variant_get_data (GVariant *value);
extern
GBytes * g_variant_get_data_as_bytes (GVariant *value);
extern
void g_variant_store (GVariant *value,
                                                                        gpointer data);

extern
gchar * g_variant_print (GVariant *value,
                                                                        gboolean type_annotate);
extern
GString * g_variant_print_string (GVariant *value,
                                                                        GString *string,
                                                                        gboolean type_annotate);

extern
guint g_variant_hash (gconstpointer value);
extern
gboolean g_variant_equal (gconstpointer one,
                                                                        gconstpointer two);

extern
GVariant * g_variant_get_normal_form (GVariant *value);
extern
gboolean g_variant_is_normal_form (GVariant *value);
extern
GVariant * g_variant_byteswap (GVariant *value);

extern
GVariant * g_variant_new_from_bytes (const GVariantType *type,
                                                                        GBytes *bytes,
                                                                        gboolean trusted);
extern
GVariant * g_variant_new_from_data (const GVariantType *type,
                                                                        gconstpointer data,
                                                                        gsize size,
                                                                        gboolean trusted,
                                                                        GDestroyNotify notify,
                                                                        gpointer user_data);

typedef struct _GVariantIter GVariantIter;
struct _GVariantIter {

 gsize x[16];
};

extern
GVariantIter * g_variant_iter_new (GVariant *value);
extern
gsize g_variant_iter_init (GVariantIter *iter,
                                                                        GVariant *value);
extern
GVariantIter * g_variant_iter_copy (GVariantIter *iter);
extern
gsize g_variant_iter_n_children (GVariantIter *iter);
extern
void g_variant_iter_free (GVariantIter *iter);
extern
GVariant * g_variant_iter_next_value (GVariantIter *iter);
extern
gboolean g_variant_iter_next (GVariantIter *iter,
                                                                        const gchar *format_string,
                                                                        ...);
extern
gboolean g_variant_iter_loop (GVariantIter *iter,
                                                                        const gchar *format_string,
                                                                        ...);


typedef struct _GVariantBuilder GVariantBuilder;
struct _GVariantBuilder {

 gsize x[16];
};

typedef enum
{
 G_VARIANT_PARSE_ERROR_FAILED,
 G_VARIANT_PARSE_ERROR_BASIC_TYPE_EXPECTED,
 G_VARIANT_PARSE_ERROR_CANNOT_INFER_TYPE,
 G_VARIANT_PARSE_ERROR_DEFINITE_TYPE_EXPECTED,
 G_VARIANT_PARSE_ERROR_INPUT_NOT_AT_END,
 G_VARIANT_PARSE_ERROR_INVALID_CHARACTER,
 G_VARIANT_PARSE_ERROR_INVALID_FORMAT_STRING,
 G_VARIANT_PARSE_ERROR_INVALID_OBJECT_PATH,
 G_VARIANT_PARSE_ERROR_INVALID_SIGNATURE,
 G_VARIANT_PARSE_ERROR_INVALID_TYPE_STRING,
 G_VARIANT_PARSE_ERROR_NO_COMMON_TYPE,
 G_VARIANT_PARSE_ERROR_NUMBER_OUT_OF_RANGE,
 G_VARIANT_PARSE_ERROR_NUMBER_TOO_BIG,
 G_VARIANT_PARSE_ERROR_TYPE_ERROR,
 G_VARIANT_PARSE_ERROR_UNEXPECTED_TOKEN,
 G_VARIANT_PARSE_ERROR_UNKNOWN_KEYWORD,
 G_VARIANT_PARSE_ERROR_UNTERMINATED_STRING_CONSTANT,
 G_VARIANT_PARSE_ERROR_VALUE_EXPECTED
} GVariantParseError;


__attribute__((__deprecated__("Use '" "g_variant_parse_error_quark" "' instead"))) extern
GQuark g_variant_parser_get_error_quark (void);

extern
GQuark g_variant_parse_error_quark (void);

extern
GVariantBuilder * g_variant_builder_new (const GVariantType *type);
extern
void g_variant_builder_unref (GVariantBuilder *builder);
extern
GVariantBuilder * g_variant_builder_ref (GVariantBuilder *builder);
extern
void g_variant_builder_init (GVariantBuilder *builder,
                                                                        const GVariantType *type);
extern
GVariant * g_variant_builder_end (GVariantBuilder *builder);
extern
void g_variant_builder_clear (GVariantBuilder *builder);
extern
void g_variant_builder_open (GVariantBuilder *builder,
                                                                        const GVariantType *type);
extern
void g_variant_builder_close (GVariantBuilder *builder);
extern
void g_variant_builder_add_value (GVariantBuilder *builder,
                                                                        GVariant *value);
extern
void g_variant_builder_add (GVariantBuilder *builder,
                                                                        const gchar *format_string,
                                                                        ...);
extern
void g_variant_builder_add_parsed (GVariantBuilder *builder,
                                                                        const gchar *format,
                                                                        ...);

extern
GVariant * g_variant_new (const gchar *format_string,
                                                                        ...);
extern
void g_variant_get (GVariant *value,
                                                                        const gchar *format_string,
                                                                        ...);
extern
GVariant * g_variant_new_va (const gchar *format_string,
                                                                        const gchar **endptr,
                                                                        va_list *app);
extern
void g_variant_get_va (GVariant *value,
                                                                        const gchar *format_string,
                                                                        const gchar **endptr,
                                                                        va_list *app);
extern
gboolean g_variant_check_format_string (GVariant *value,
                                                                        const gchar *format_string,
                                                                        gboolean copy_only);

extern
GVariant * g_variant_parse (const GVariantType *type,
                                                                        const gchar *text,
                                                                        const gchar *limit,
                                                                        const gchar **endptr,
                                                                        GError **error);
extern
GVariant * g_variant_new_parsed (const gchar *format,
                                                                        ...);
extern
GVariant * g_variant_new_parsed_va (const gchar *format,
                                                                        va_list *app);

extern
gchar * g_variant_parse_error_print_context (GError *error,
                                                                        const gchar *source_str);

extern
gint g_variant_compare (gconstpointer one,
                                                                        gconstpointer two);

typedef struct _GVariantDict GVariantDict;
struct _GVariantDict {

 gsize x[16];
};

extern
GVariantDict * g_variant_dict_new (GVariant *from_asv);

extern
void g_variant_dict_init (GVariantDict *dict,
                                                                        GVariant *from_asv);

extern
gboolean g_variant_dict_lookup (GVariantDict *dict,
                                                                        const gchar *key,
                                                                        const gchar *format_string,
                                                                        ...);
extern
GVariant * g_variant_dict_lookup_value (GVariantDict *dict,
                                                                        const gchar *key,
                                                                        const GVariantType *expected_type);
extern
gboolean g_variant_dict_contains (GVariantDict *dict,
                                                                        const gchar *key);
extern
void g_variant_dict_insert (GVariantDict *dict,
                                                                        const gchar *key,
                                                                        const gchar *format_string,
                                                                        ...);
extern
void g_variant_dict_insert_value (GVariantDict *dict,
                                                                        const gchar *key,
                                                                        GVariant *value);
extern
gboolean g_variant_dict_remove (GVariantDict *dict,
                                                                        const gchar *key);
extern
void g_variant_dict_clear (GVariantDict *dict);
extern
GVariant * g_variant_dict_end (GVariantDict *dict);
extern
GVariantDict * g_variant_dict_ref (GVariantDict *dict);
extern
void g_variant_dict_unref (GVariantDict *dict);

}
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gversion.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/gversion.h"
extern "C" {

extern const guint glib_major_version;
extern const guint glib_minor_version;
extern const guint glib_micro_version;
extern const guint glib_interface_age;
extern const guint glib_binary_age;

extern
const gchar * glib_check_version (guint required_major,
                                 guint required_minor,
                                 guint required_micro);







}
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2






# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gallocator.h" 1
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gallocator.h"
extern "C" {

typedef struct _GAllocator GAllocator;
typedef struct _GMemChunk GMemChunk;
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gallocator.h"
__attribute__((__deprecated__)) extern
GMemChunk * g_mem_chunk_new (const gchar *name,
                                        gint atom_size,
                                        gsize area_size,
                                        gint type);
__attribute__((__deprecated__)) extern
void g_mem_chunk_destroy (GMemChunk *mem_chunk);
__attribute__((__deprecated__)) extern
gpointer g_mem_chunk_alloc (GMemChunk *mem_chunk);
__attribute__((__deprecated__)) extern
gpointer g_mem_chunk_alloc0 (GMemChunk *mem_chunk);
__attribute__((__deprecated__)) extern
void g_mem_chunk_free (GMemChunk *mem_chunk,
                                        gpointer mem);
__attribute__((__deprecated__)) extern
void g_mem_chunk_clean (GMemChunk *mem_chunk);
__attribute__((__deprecated__)) extern
void g_mem_chunk_reset (GMemChunk *mem_chunk);
__attribute__((__deprecated__)) extern
void g_mem_chunk_print (GMemChunk *mem_chunk);
__attribute__((__deprecated__)) extern
void g_mem_chunk_info (void);
__attribute__((__deprecated__)) extern
void g_blow_chunks (void);


__attribute__((__deprecated__)) extern
GAllocator * g_allocator_new (const gchar *name,
                                        guint n_preallocs);
__attribute__((__deprecated__)) extern
void g_allocator_free (GAllocator *allocator);
__attribute__((__deprecated__)) extern
void g_list_push_allocator (GAllocator *allocator);
__attribute__((__deprecated__)) extern
void g_list_pop_allocator (void);
__attribute__((__deprecated__)) extern
void g_slist_push_allocator (GAllocator *allocator);
__attribute__((__deprecated__)) extern
void g_slist_pop_allocator (void);
__attribute__((__deprecated__)) extern
void g_node_push_allocator (GAllocator *allocator);
__attribute__((__deprecated__)) extern
void g_node_pop_allocator (void);

}
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gcache.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gcache.h"
extern "C" {



typedef struct _GCache GCache;

typedef gpointer (*GCacheNewFunc) (gpointer key);
typedef gpointer (*GCacheDupFunc) (gpointer value);
typedef void (*GCacheDestroyFunc) (gpointer value);



__attribute__((__deprecated__)) extern
GCache* g_cache_new (GCacheNewFunc value_new_func,
                               GCacheDestroyFunc value_destroy_func,
                               GCacheDupFunc key_dup_func,
                               GCacheDestroyFunc key_destroy_func,
                               GHashFunc hash_key_func,
                               GHashFunc hash_value_func,
                               GEqualFunc key_equal_func);
__attribute__((__deprecated__)) extern
void g_cache_destroy (GCache *cache);
__attribute__((__deprecated__)) extern
gpointer g_cache_insert (GCache *cache,
                               gpointer key);
__attribute__((__deprecated__)) extern
void g_cache_remove (GCache *cache,
                               gconstpointer value);
__attribute__((__deprecated__)) extern
void g_cache_key_foreach (GCache *cache,
                               GHFunc func,
                               gpointer user_data);
__attribute__((__deprecated__)) extern
void g_cache_value_foreach (GCache *cache,
                               GHFunc func,
                               gpointer user_data);



}
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gcompletion.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gcompletion.h"
extern "C" {

typedef struct _GCompletion GCompletion;

typedef gchar* (*GCompletionFunc) (gpointer);




typedef gint (*GCompletionStrncmpFunc) (const gchar *s1,
                                       const gchar *s2,
                                       gsize n);

struct _GCompletion
{
 GList* items;
 GCompletionFunc func;

 gchar* prefix;
 GList* cache;
 GCompletionStrncmpFunc strncmp_func;
};

__attribute__((__deprecated__)) extern
GCompletion* g_completion_new (GCompletionFunc func);
__attribute__((__deprecated__)) extern
void g_completion_add_items (GCompletion* cmp,
                                        GList* items);
__attribute__((__deprecated__)) extern
void g_completion_remove_items (GCompletion* cmp,
                                        GList* items);
__attribute__((__deprecated__)) extern
void g_completion_clear_items (GCompletion* cmp);
__attribute__((__deprecated__)) extern
GList* g_completion_complete (GCompletion* cmp,
                                        const gchar* prefix,
                                        gchar** new_prefix);
__attribute__((__deprecated__)) extern
GList* g_completion_complete_utf8 (GCompletion *cmp,
                                        const gchar* prefix,
                                        gchar** new_prefix);
__attribute__((__deprecated__)) extern
void g_completion_set_compare (GCompletion *cmp,
                                        GCompletionStrncmpFunc strncmp_func);
__attribute__((__deprecated__)) extern
void g_completion_free (GCompletion* cmp);

}
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gmain.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gmain.h"
extern "C" {
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gmain.h"
}
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/grel.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/grel.h"
extern "C" {

typedef struct _GRelation GRelation;
typedef struct _GTuples GTuples;

struct _GTuples
{
 guint len;
};
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/grel.h"
__attribute__((__deprecated__)) extern
GRelation* g_relation_new (gint fields);
__attribute__((__deprecated__)) extern
void g_relation_destroy (GRelation *relation);
__attribute__((__deprecated__)) extern
void g_relation_index (GRelation *relation,
                              gint field,
                              GHashFunc hash_func,
                              GEqualFunc key_equal_func);
__attribute__((__deprecated__)) extern
void g_relation_insert (GRelation *relation,
                              ...);
__attribute__((__deprecated__)) extern
gint g_relation_delete (GRelation *relation,
                              gconstpointer key,
                              gint field);
__attribute__((__deprecated__)) extern
GTuples* g_relation_select (GRelation *relation,
                              gconstpointer key,
                              gint field);
__attribute__((__deprecated__)) extern
gint g_relation_count (GRelation *relation,
                              gconstpointer key,
                              gint field);
__attribute__((__deprecated__)) extern
gboolean g_relation_exists (GRelation *relation,
                              ...);
__attribute__((__deprecated__)) extern
void g_relation_print (GRelation *relation);
__attribute__((__deprecated__)) extern
void g_tuples_destroy (GTuples *tuples);
__attribute__((__deprecated__)) extern
gpointer g_tuples_index (GTuples *tuples,
                              gint index_,
                              gint field);

}
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gthread.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gthread.h"
extern "C" {



typedef enum
{
 G_THREAD_PRIORITY_LOW,
 G_THREAD_PRIORITY_NORMAL,
 G_THREAD_PRIORITY_HIGH,
 G_THREAD_PRIORITY_URGENT
} GThreadPriority;



struct _GThread
{

 GThreadFunc func;
 gpointer data;
 gboolean joinable;
 GThreadPriority priority;
};



typedef struct _GThreadFunctions GThreadFunctions;
struct _GThreadFunctions
{
 GMutex* (*mutex_new) (void);
 void (*mutex_lock) (GMutex *mutex);
 gboolean (*mutex_trylock) (GMutex *mutex);
 void (*mutex_unlock) (GMutex *mutex);
 void (*mutex_free) (GMutex *mutex);
 GCond* (*cond_new) (void);
 void (*cond_signal) (GCond *cond);
 void (*cond_broadcast) (GCond *cond);
 void (*cond_wait) (GCond *cond,
                                  GMutex *mutex);
 gboolean (*cond_timed_wait) (GCond *cond,
                                  GMutex *mutex,
                                  GTimeVal *end_time);
 void (*cond_free) (GCond *cond);
 GPrivate* (*private_new) (GDestroyNotify destructor);
 gpointer (*private_get) (GPrivate *private_key);
 void (*private_set) (GPrivate *private_key,
                                  gpointer data);
 void (*thread_create) (GThreadFunc func,
                                  gpointer data,
                                  gulong stack_size,
                                  gboolean joinable,
                                  gboolean bound,
                                  GThreadPriority priority,
                                  gpointer thread,
                                  GError **error);
 void (*thread_yield) (void);
 void (*thread_join) (gpointer thread);
 void (*thread_exit) (void);
 void (*thread_set_priority)(gpointer thread,
                                  GThreadPriority priority);
 void (*thread_self) (gpointer thread);
 gboolean (*thread_equal) (gpointer thread1,
                                  gpointer thread2);
};

extern GThreadFunctions g_thread_functions_for_glib_use;
extern gboolean g_thread_use_default_impl;

extern guint64 (*g_thread_gettime) (void);

__attribute__((__deprecated__("Use '" "g_thread_new" "' instead"))) extern
GThread *g_thread_create (GThreadFunc func,
                               gpointer data,
                               gboolean joinable,
                               GError **error);

__attribute__((__deprecated__("Use '" "g_thread_new" "' instead"))) extern
GThread *g_thread_create_full (GThreadFunc func,
                               gpointer data,
                               gulong stack_size,
                               gboolean joinable,
                               gboolean bound,
                               GThreadPriority priority,
                               GError **error);

__attribute__((__deprecated__)) extern
void g_thread_set_priority (GThread *thread,
                               GThreadPriority priority);

__attribute__((__deprecated__)) extern
void g_thread_foreach (GFunc thread_func,
                               gpointer user_data);
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gthread.h"
typedef struct
{
 GMutex *mutex;


 pthread_mutex_t unused;

} GStaticMutex;
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/deprecated/gthread.h"
__attribute__((__deprecated__("Use '" "g_mutex_init" "' instead"))) extern
void g_static_mutex_init (GStaticMutex *mutex);
__attribute__((__deprecated__("Use '" "g_mutex_clear" "' instead"))) extern
void g_static_mutex_free (GStaticMutex *mutex);
__attribute__((__deprecated__("Use '" "GMutex" "' instead"))) extern
GMutex *g_static_mutex_get_mutex_impl (GStaticMutex *mutex);

typedef struct _GStaticRecMutex GStaticRecMutex;
struct _GStaticRecMutex
{

 GStaticMutex mutex;
 guint depth;


 union {



   pthread_t owner;

   gdouble dummy;
 } unused;
};


__attribute__((__deprecated__("Use '" "g_rec_mutex_init" "' instead"))) extern
void g_static_rec_mutex_init (GStaticRecMutex *mutex);

__attribute__((__deprecated__("Use '" "g_rec_mutex_lock" "' instead"))) extern
void g_static_rec_mutex_lock (GStaticRecMutex *mutex);

__attribute__((__deprecated__("Use '" "g_rec_mutex_try_lock" "' instead"))) extern
gboolean g_static_rec_mutex_trylock (GStaticRecMutex *mutex);

__attribute__((__deprecated__("Use '" "g_rec_mutex_unlock" "' instead"))) extern
void g_static_rec_mutex_unlock (GStaticRecMutex *mutex);

__attribute__((__deprecated__)) extern
void g_static_rec_mutex_lock_full (GStaticRecMutex *mutex,
                                        guint depth);

__attribute__((__deprecated__)) extern
guint g_static_rec_mutex_unlock_full (GStaticRecMutex *mutex);

__attribute__((__deprecated__("Use '" "g_rec_mutex_free" "' instead"))) extern
void g_static_rec_mutex_free (GStaticRecMutex *mutex);

typedef struct _GStaticRWLock GStaticRWLock;
struct _GStaticRWLock
{

 GStaticMutex mutex;
 GCond *read_cond;
 GCond *write_cond;
 guint read_counter;
 gboolean have_writer;
 guint want_to_read;
 guint want_to_write;
};



__attribute__((__deprecated__("Use '" "g_rw_lock_init" "' instead"))) extern
void g_static_rw_lock_init (GStaticRWLock *lock);

__attribute__((__deprecated__("Use '" "g_rw_lock_reader_lock" "' instead"))) extern
void g_static_rw_lock_reader_lock (GStaticRWLock *lock);

__attribute__((__deprecated__("Use '" "g_rw_lock_reader_trylock" "' instead"))) extern
gboolean g_static_rw_lock_reader_trylock (GStaticRWLock *lock);

__attribute__((__deprecated__("Use '" "g_rw_lock_reader_unlock" "' instead"))) extern
void g_static_rw_lock_reader_unlock (GStaticRWLock *lock);

__attribute__((__deprecated__("Use '" "g_rw_lock_writer_lock" "' instead"))) extern
void g_static_rw_lock_writer_lock (GStaticRWLock *lock);

__attribute__((__deprecated__("Use '" "g_rw_lock_writer_trylock" "' instead"))) extern
gboolean g_static_rw_lock_writer_trylock (GStaticRWLock *lock);

__attribute__((__deprecated__("Use '" "g_rw_lock_writer_unlock" "' instead"))) extern
void g_static_rw_lock_writer_unlock (GStaticRWLock *lock);

__attribute__((__deprecated__("Use '" "g_rw_lock_free" "' instead"))) extern
void g_static_rw_lock_free (GStaticRWLock *lock);

__attribute__((__deprecated__)) extern
GPrivate * g_private_new (GDestroyNotify notify);

typedef struct _GStaticPrivate GStaticPrivate;
struct _GStaticPrivate
{

 guint index;
};


__attribute__((__deprecated__)) extern
void g_static_private_init (GStaticPrivate *private_key);

__attribute__((__deprecated__("Use '" "g_private_get" "' instead"))) extern
gpointer g_static_private_get (GStaticPrivate *private_key);

__attribute__((__deprecated__("Use '" "g_private_set" "' instead"))) extern
void g_static_private_set (GStaticPrivate *private_key,
                                         gpointer data,
                                         GDestroyNotify notify);

__attribute__((__deprecated__)) extern
void g_static_private_free (GStaticPrivate *private_key);

__attribute__((__deprecated__)) extern
gboolean g_once_init_enter_impl (volatile gsize *location);

__attribute__((__deprecated__)) extern
void g_thread_init (gpointer vtable);
__attribute__((__deprecated__)) extern
void g_thread_init_with_errorcheck_mutexes (gpointer vtable);

__attribute__((__deprecated__)) extern
gboolean g_thread_get_initialized (void);

extern gboolean g_threads_got_initialized;



__attribute__((__deprecated__)) extern
GMutex * g_mutex_new (void);
__attribute__((__deprecated__)) extern
void g_mutex_free (GMutex *mutex);
__attribute__((__deprecated__)) extern
GCond * g_cond_new (void);
__attribute__((__deprecated__)) extern
void g_cond_free (GCond *cond);
__attribute__((__deprecated__)) extern
gboolean g_cond_timed_wait (GCond *cond,
                                        GMutex *mutex,
                                        GTimeVal *timeval);



}
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h" 1
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void
g_autoptr_cleanup_generic_gfree (void *p)
{
 void **pp = (void**)p;
 g_free (*pp);
}

static inline void
g_autoptr_cleanup_gstring_free (GString *string)
{
 if (string)
   g_string_free (string, (!(0)));
}




typedef GAsyncQueue *GAsyncQueue_autoptr;
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GAsyncQueue (GAsyncQueue **_ptr) { if (*_ptr) (g_async_queue_unref) (*_ptr); }
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GBookmarkFile *GBookmarkFile_autoptr;
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GBookmarkFile (GBookmarkFile **_ptr) { if (*_ptr) (g_bookmark_file_free) (*_ptr); }
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GBytes *GBytes_autoptr;
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GBytes (GBytes **_ptr) { if (*_ptr) (g_bytes_unref) (*_ptr); }
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GChecksum *GChecksum_autoptr;
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GChecksum (GChecksum **_ptr) { if (*_ptr) (g_checksum_free) (*_ptr); }
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GDateTime *GDateTime_autoptr;
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GDateTime (GDateTime **_ptr) { if (*_ptr) (g_date_time_unref) (*_ptr); }
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GDir *GDir_autoptr;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GDir (GDir **_ptr) { if (*_ptr) (g_dir_close) (*_ptr); }
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GError *GError_autoptr;
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GError (GError **_ptr) { if (*_ptr) (g_error_free) (*_ptr); }
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GHashTable *GHashTable_autoptr;
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GHashTable (GHashTable **_ptr) { if (*_ptr) (g_hash_table_unref) (*_ptr); }
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GHmac *GHmac_autoptr;
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GHmac (GHmac **_ptr) { if (*_ptr) (g_hmac_unref) (*_ptr); }
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GIOChannel *GIOChannel_autoptr;
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GIOChannel (GIOChannel **_ptr) { if (*_ptr) (g_io_channel_unref) (*_ptr); }
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GKeyFile *GKeyFile_autoptr;
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GKeyFile (GKeyFile **_ptr) { if (*_ptr) (g_key_file_unref) (*_ptr); }
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GList *GList_autoptr;
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GList (GList **_ptr) { if (*_ptr) (g_list_free) (*_ptr); }
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GArray *GArray_autoptr;
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GArray (GArray **_ptr) { if (*_ptr) (g_array_unref) (*_ptr); }
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GPtrArray *GPtrArray_autoptr;
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GPtrArray (GPtrArray **_ptr) { if (*_ptr) (g_ptr_array_unref) (*_ptr); }
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GByteArray *GByteArray_autoptr;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GByteArray (GByteArray **_ptr) { if (*_ptr) (g_byte_array_unref) (*_ptr); }
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GMainContext *GMainContext_autoptr;
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GMainContext (GMainContext **_ptr) { if (*_ptr) (g_main_context_unref) (*_ptr); }
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GMainLoop *GMainLoop_autoptr;
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GMainLoop (GMainLoop **_ptr) { if (*_ptr) (g_main_loop_unref) (*_ptr); }
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GSource *GSource_autoptr;
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GSource (GSource **_ptr) { if (*_ptr) (g_source_unref) (*_ptr); }
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GMappedFile *GMappedFile_autoptr;
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GMappedFile (GMappedFile **_ptr) { if (*_ptr) (g_mapped_file_unref) (*_ptr); }
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GMarkupParseContext *GMarkupParseContext_autoptr;
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GMarkupParseContext (GMarkupParseContext **_ptr) { if (*_ptr) (g_markup_parse_context_unref) (*_ptr); }
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GNode *GNode_autoptr;
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GNode (GNode **_ptr) { if (*_ptr) (g_node_destroy) (*_ptr); }
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GOptionContext *GOptionContext_autoptr;
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GOptionContext (GOptionContext **_ptr) { if (*_ptr) (g_option_context_free) (*_ptr); }
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GOptionGroup *GOptionGroup_autoptr;
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GOptionGroup (GOptionGroup **_ptr) { if (*_ptr) (g_option_group_unref) (*_ptr); }
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GPatternSpec *GPatternSpec_autoptr;
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GPatternSpec (GPatternSpec **_ptr) { if (*_ptr) (g_pattern_spec_free) (*_ptr); }
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GQueue *GQueue_autoptr;
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GQueue (GQueue **_ptr) { if (*_ptr) (g_queue_free) (*_ptr); }
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"


# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_auto_cleanup_GQueue (GQueue *_ptr) { (g_queue_clear) (_ptr); }
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GRand *GRand_autoptr;
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GRand (GRand **_ptr) { if (*_ptr) (g_rand_free) (*_ptr); }
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GRegex *GRegex_autoptr;
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GRegex (GRegex **_ptr) { if (*_ptr) (g_regex_unref) (*_ptr); }
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GMatchInfo *GMatchInfo_autoptr;
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GMatchInfo (GMatchInfo **_ptr) { if (*_ptr) (g_match_info_unref) (*_ptr); }
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GScanner *GScanner_autoptr;
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GScanner (GScanner **_ptr) { if (*_ptr) (g_scanner_destroy) (*_ptr); }
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GSequence *GSequence_autoptr;
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GSequence (GSequence **_ptr) { if (*_ptr) (g_sequence_free) (*_ptr); }
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GSList *GSList_autoptr;
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GSList (GSList **_ptr) { if (*_ptr) (g_slist_free) (*_ptr); }
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GString *GString_autoptr;
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GString (GString **_ptr) { if (*_ptr) (g_autoptr_cleanup_gstring_free) (*_ptr); }
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GStringChunk *GStringChunk_autoptr;
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GStringChunk (GStringChunk **_ptr) { if (*_ptr) (g_string_chunk_free) (*_ptr); }
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GThread *GThread_autoptr;
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GThread (GThread **_ptr) { if (*_ptr) (g_thread_unref) (*_ptr); }
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"


# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_auto_cleanup_GMutex (GMutex *_ptr) { (g_mutex_clear) (_ptr); }
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GMutexLocker *GMutexLocker_autoptr;
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GMutexLocker (GMutexLocker **_ptr) { if (*_ptr) (g_mutex_locker_free) (*_ptr); }
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"


# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_auto_cleanup_GCond (GCond *_ptr) { (g_cond_clear) (_ptr); }
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GTimer *GTimer_autoptr;
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GTimer (GTimer **_ptr) { if (*_ptr) (g_timer_destroy) (*_ptr); }
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GTimeZone *GTimeZone_autoptr;
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GTimeZone (GTimeZone **_ptr) { if (*_ptr) (g_time_zone_unref) (*_ptr); }
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GTree *GTree_autoptr;
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GTree (GTree **_ptr) { if (*_ptr) (g_tree_unref) (*_ptr); }
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GVariant *GVariant_autoptr;
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GVariant (GVariant **_ptr) { if (*_ptr) (g_variant_unref) (*_ptr); }
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GVariantBuilder *GVariantBuilder_autoptr;
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GVariantBuilder (GVariantBuilder **_ptr) { if (*_ptr) (g_variant_builder_unref) (*_ptr); }
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"


# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_auto_cleanup_GVariantBuilder (GVariantBuilder *_ptr) { (g_variant_builder_clear) (_ptr); }
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GVariantIter *GVariantIter_autoptr;
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GVariantIter (GVariantIter **_ptr) { if (*_ptr) (g_variant_iter_free) (*_ptr); }
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GVariantDict *GVariantDict_autoptr;
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GVariantDict (GVariantDict **_ptr) { if (*_ptr) (g_variant_dict_unref) (*_ptr); }
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"


# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_auto_cleanup_GVariantDict (GVariantDict *_ptr) { (g_variant_dict_clear) (_ptr); }
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

typedef GVariantType *GVariantType_autoptr;
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_autoptr_cleanup_GVariantType (GVariantType **_ptr) { if (*_ptr) (g_variant_type_free) (*_ptr); }
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"


# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic push
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
static inline void glib_auto_cleanup_GStrv (GStrv *_ptr) { if (*_ptr !=
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h" 3 4
__null
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
) (g_strfreev) (*_ptr); }
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"
#pragma GCC diagnostic pop
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib/glib-autocleanups.h"

# 111 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib.h" 2
# 67 "exiv2.cc" 2

# 1 "main.h" 1
# 35 "main.h"
# 1 "intl.h" 1
# 26 "intl.h"
# 1 "/usr/include/libintl.h" 1 3 4
# 53 "/usr/include/libintl.h" 3 4

# 53 "/usr/include/libintl.h" 3 4
#pragma GCC visibility push(default)
# 53 "/usr/include/libintl.h" 3 4

# 53 "/usr/include/libintl.h" 3 4
extern "C" {
char *gettext(const char *) __attribute__((__format_arg__ (1)));
char *dgettext(const char *, const char *) __attribute__((__format_arg__ (2)));
char *dcgettext(const char *, const char *, int) __attribute__((__format_arg__ (2)));
char *ngettext(const char *, const char *, unsigned long int)
       __attribute__((__format_arg__ (1))) __attribute__((__format_arg__ (2)));
char *dngettext(const char *, const char *, const char *, unsigned long int)
 __attribute__((__format_arg__ (2))) __attribute__((__format_arg__ (3)));
char *dcngettext(const char *, const char *, const char *, unsigned long int,
  int) __attribute__((__format_arg__ (2))) __attribute__((__format_arg__ (3)));
const char *pgettext(const char *, const char *) __attribute__((__format_arg__ (2)));
const char *dpgettext(const char *, const char *, const char *)
       __attribute__((__format_arg__ (3)));
const char *dcpgettext(const char *, const char *, const char *, int)
        __attribute__((__format_arg__ (3)));
const char *npgettext(const char *, const char *, const char *,
       unsigned long int) __attribute__((__format_arg__ (2))) __attribute__((__format_arg__ (3)));
const char *dnpgettext(const char *, const char *, const char *,
        const char *, unsigned long int) __attribute__((__format_arg__ (3)))
        __attribute__((__format_arg__ (4)));
const char *dcnpgettext(const char *, const char *, const char *,
  const char *, unsigned long int, int) __attribute__((__format_arg__ (3)))
  __attribute__((__format_arg__ (4)));

char *textdomain(const char *);
char *bindtextdomain(const char *, const char *);
char *bind_textdomain_codeset(const char *, const char *);

}
# 81 "/usr/include/libintl.h" 3 4
#pragma GCC visibility pop
# 81 "/usr/include/libintl.h" 3 4

# 27 "intl.h" 2
# 36 "main.h" 2
# 44 "main.h"
# 1 "/usr/include/pwd.h" 1 3 4
# 68 "/usr/include/pwd.h" 3 4
# 1 "/usr/include/sys/featuretest.h" 1 3 4
# 69 "/usr/include/pwd.h" 2 3 4
# 107 "/usr/include/pwd.h" 3 4
struct passwd {
char *pw_name;
char *pw_passwd;
__uid_t pw_uid;
__gid_t pw_gid;
time_t pw_change;
char *pw_class;
char *pw_gecos;
char *pw_dir;
char *pw_shell;
time_t pw_expire;
};


# 120 "/usr/include/pwd.h" 3 4
#pragma GCC visibility push(default)
# 120 "/usr/include/pwd.h" 3 4
extern "C" {

struct passwd *getpwuid(__uid_t) __asm("__getpwuid50");
struct passwd *getpwnam(const char *) __asm("__getpwnam50");




int getpwnam_r(const char *, struct passwd *, char *, size_t,
   struct passwd **) __asm("__getpwnam_r50");
int getpwuid_r(__uid_t, struct passwd *, char *, size_t,
   struct passwd **) __asm("__getpwuid_r50");




struct passwd *getpwent(void) __asm("__getpwent50");

void setpwent(void);
void endpwent(void);


int pw_gensalt(char *, size_t, const char *, const char *);

int pw_scan(char *, struct passwd *, int *) __asm("__pw_scan50");
int getpwent_r(struct passwd *, char *, size_t, struct passwd **)
   __asm("__getpwent_r50");

int setpassent(int);
const char *user_from_uid(__uid_t, int);
int uid_from_user(const char *, __uid_t *);

int pwcache_userdb(int (*)(int), void (*)(void),
   struct passwd * (*)(const char *), struct passwd * (*)(__uid_t))
   __asm("__pwcache_userdb50");


}
# 157 "/usr/include/pwd.h" 3 4
#pragma GCC visibility pop
# 157 "/usr/include/pwd.h" 3 4

# 45 "main.h" 2
# 62 "main.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkapplaunchcontext.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkapplaunchcontext.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 1
# 23 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gbinding.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gbinding.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h" 1
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"

# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
extern "C" {
# 384 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef gulong GType;

typedef struct _GValue GValue;
typedef union _GTypeCValue GTypeCValue;
typedef struct _GTypePlugin GTypePlugin;
typedef struct _GTypeClass GTypeClass;
typedef struct _GTypeInterface GTypeInterface;
typedef struct _GTypeInstance GTypeInstance;
typedef struct _GTypeInfo GTypeInfo;
typedef struct _GTypeFundamentalInfo GTypeFundamentalInfo;
typedef struct _GInterfaceInfo GInterfaceInfo;
typedef struct _GTypeValueTable GTypeValueTable;
typedef struct _GTypeQuery GTypeQuery;
# 406 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
struct _GTypeClass
{

 GType g_type;
};





struct _GTypeInstance
{

 GTypeClass *g_class;
};





struct _GTypeInterface
{

 GType g_type;
 GType g_instance_type;
};
# 442 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
struct _GTypeQuery
{
 GType type;
 const gchar *type_name;
 guint class_size;
 guint instance_size;
};
# 669 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef enum
{
 G_TYPE_DEBUG_NONE = 0,
 G_TYPE_DEBUG_OBJECTS = 1 << 0,
 G_TYPE_DEBUG_SIGNALS = 1 << 1,
 G_TYPE_DEBUG_INSTANCE_COUNT = 1 << 2,
 G_TYPE_DEBUG_MASK = 0x07
} GTypeDebugFlags;



__attribute__((__deprecated__)) extern
void g_type_init (void);
__attribute__((__deprecated__)) extern
void g_type_init_with_debug_flags (GTypeDebugFlags debug_flags);
extern
const gchar * g_type_name (GType type);
extern
GQuark g_type_qname (GType type);
extern
GType g_type_from_name (const gchar *name);
extern
GType g_type_parent (GType type);
extern
guint g_type_depth (GType type);
extern
GType g_type_next_base (GType leaf_type,
           GType root_type);
extern
gboolean g_type_is_a (GType type,
           GType is_a_type);
extern
gpointer g_type_class_ref (GType type);
extern
gpointer g_type_class_peek (GType type);
extern
gpointer g_type_class_peek_static (GType type);
extern
void g_type_class_unref (gpointer g_class);
extern
gpointer g_type_class_peek_parent (gpointer g_class);
extern
gpointer g_type_interface_peek (gpointer instance_class,
           GType iface_type);
extern
gpointer g_type_interface_peek_parent (gpointer g_iface);

extern
gpointer g_type_default_interface_ref (GType g_type);
extern
gpointer g_type_default_interface_peek (GType g_type);
extern
void g_type_default_interface_unref (gpointer g_iface);


extern
GType* g_type_children (GType type,
           guint *n_children);
extern
GType* g_type_interfaces (GType type,
           guint *n_interfaces);


extern
void g_type_set_qdata (GType type,
           GQuark quark,
           gpointer data);
extern
gpointer g_type_get_qdata (GType type,
           GQuark quark);
extern
void g_type_query (GType type,
           GTypeQuery *query);

extern
int g_type_get_instance_count (GType type);
# 760 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef void (*GBaseInitFunc) (gpointer g_class);
# 771 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef void (*GBaseFinalizeFunc) (gpointer g_class);
# 873 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef void (*GClassInitFunc) (gpointer g_class,
          gpointer class_data);
# 888 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef void (*GClassFinalizeFunc) (gpointer g_class,
          gpointer class_data);
# 908 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef void (*GInstanceInitFunc) (GTypeInstance *instance,
          gpointer g_class);
# 922 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef void (*GInterfaceInitFunc) (gpointer g_iface,
          gpointer iface_data);
# 933 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef void (*GInterfaceFinalizeFunc) (gpointer g_iface,
          gpointer iface_data);
# 954 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef gboolean (*GTypeClassCacheFunc) (gpointer cache_data,
          GTypeClass *g_class);
# 967 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef void (*GTypeInterfaceCheckFunc) (gpointer check_data,
          gpointer g_iface);
# 979 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef enum
{
 G_TYPE_FLAG_CLASSED = (1 << 0),
 G_TYPE_FLAG_INSTANTIATABLE = (1 << 1),
 G_TYPE_FLAG_DERIVABLE = (1 << 2),
 G_TYPE_FLAG_DEEP_DERIVABLE = (1 << 3)
} GTypeFundamentalFlags;
# 996 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
typedef enum
{
 G_TYPE_FLAG_ABSTRACT = (1 << 4),
 G_TYPE_FLAG_VALUE_ABSTRACT = (1 << 5)
} GTypeFlags;
# 1032 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
struct _GTypeInfo
{

 guint16 class_size;

 GBaseInitFunc base_init;
 GBaseFinalizeFunc base_finalize;


 GClassInitFunc class_init;
 GClassFinalizeFunc class_finalize;
 gconstpointer class_data;


 guint16 instance_size;
 guint16 n_preallocs;
 GInstanceInitFunc instance_init;


 const GTypeValueTable *value_table;
};







struct _GTypeFundamentalInfo
{
 GTypeFundamentalFlags type_flags;
};
# 1073 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
struct _GInterfaceInfo
{
 GInterfaceInitFunc interface_init;
 GInterfaceFinalizeFunc interface_finalize;
 gpointer interface_data;
};
# 1237 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
struct _GTypeValueTable
{
 void (*value_init) (GValue *value);
 void (*value_free) (GValue *value);
 void (*value_copy) (const GValue *src_value,
     GValue *dest_value);

 gpointer (*value_peek_pointer) (const GValue *value);
 const gchar *collect_format;
 gchar* (*collect_value) (GValue *value,
     guint n_collect_values,
     GTypeCValue *collect_values,
     guint collect_flags);
 const gchar *lcopy_format;
 gchar* (*lcopy_value) (const GValue *value,
     guint n_collect_values,
     GTypeCValue *collect_values,
     guint collect_flags);
};
extern
GType g_type_register_static (GType parent_type,
     const gchar *type_name,
     const GTypeInfo *info,
     GTypeFlags flags);
extern
GType g_type_register_static_simple (GType parent_type,
     const gchar *type_name,
     guint class_size,
     GClassInitFunc class_init,
     guint instance_size,
     GInstanceInitFunc instance_init,
     GTypeFlags flags);

extern
GType g_type_register_dynamic (GType parent_type,
     const gchar *type_name,
     GTypePlugin *plugin,
     GTypeFlags flags);
extern
GType g_type_register_fundamental (GType type_id,
     const gchar *type_name,
     const GTypeInfo *info,
     const GTypeFundamentalInfo *finfo,
     GTypeFlags flags);
extern
void g_type_add_interface_static (GType instance_type,
     GType interface_type,
     const GInterfaceInfo *info);
extern
void g_type_add_interface_dynamic (GType instance_type,
     GType interface_type,
     GTypePlugin *plugin);
extern
void g_type_interface_add_prerequisite (GType interface_type,
     GType prerequisite_type);
extern
GType*g_type_interface_prerequisites (GType interface_type,
     guint *n_prerequisites);
extern
void g_type_class_add_private (gpointer g_class,
                                        gsize private_size);
extern
gint g_type_add_instance_private (GType class_type,
                                        gsize private_size);
extern
gpointer g_type_instance_get_private (GTypeInstance *instance,
                                        GType private_type);
extern
void g_type_class_adjust_private_offset (gpointer g_class,
                                            gint *private_size_or_offset);

extern
void g_type_add_class_private (GType class_type,
     gsize private_size);
extern
gpointer g_type_class_get_private (GTypeClass *klass,
     GType private_type);
extern
gint g_type_class_get_instance_private_offset (gpointer g_class);

extern
void g_type_ensure (GType type);
extern
guint g_type_get_type_registration_serial (void);
# 2133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
extern
GTypePlugin* g_type_get_plugin (GType type);
extern
GTypePlugin* g_type_interface_get_plugin (GType instance_type,
      GType interface_type);
extern
GType g_type_fundamental_next (void);
extern
GType g_type_fundamental (GType type_id);
extern
GTypeInstance* g_type_create_instance (GType type);
extern
void g_type_free_instance (GTypeInstance *instance);

extern
void g_type_add_class_cache_func (gpointer cache_data,
      GTypeClassCacheFunc cache_func);
extern
void g_type_remove_class_cache_func (gpointer cache_data,
      GTypeClassCacheFunc cache_func);
extern
void g_type_class_unref_uncached (gpointer g_class);

extern
void g_type_add_interface_check (gpointer check_data,
      GTypeInterfaceCheckFunc check_func);
extern
void g_type_remove_interface_check (gpointer check_data,
      GTypeInterfaceCheckFunc check_func);

extern
GTypeValueTable* g_type_value_table_peek (GType type);



extern
gboolean g_type_check_instance (GTypeInstance *instance) __attribute__((__pure__));
extern
GTypeInstance* g_type_check_instance_cast (GTypeInstance *instance,
      GType iface_type);
extern
gboolean g_type_check_instance_is_a (GTypeInstance *instance,
      GType iface_type) __attribute__((__pure__));
extern
gboolean g_type_check_instance_is_fundamentally_a (GTypeInstance *instance,
                                                          GType fundamental_type) __attribute__((__pure__));
extern
GTypeClass* g_type_check_class_cast (GTypeClass *g_class,
      GType is_a_type);
extern
gboolean g_type_check_class_is_a (GTypeClass *g_class,
      GType is_a_type) __attribute__((__pure__));
extern
gboolean g_type_check_is_value_type (GType type) __attribute__((__const__));
extern
gboolean g_type_check_value (GValue *value) __attribute__((__pure__));
extern
gboolean g_type_check_value_holds (GValue *value,
      GType type) __attribute__((__pure__));
extern
gboolean g_type_test_flags (GType type,
      guint flags) __attribute__((__const__));



extern
const gchar * g_type_name_from_instance (GTypeInstance *instance);
extern
const gchar * g_type_name_from_class (GTypeClass *g_class);
# 2262 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtype.h"
}
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvalue.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvalue.h"
extern "C" {
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvalue.h"
typedef void (*GValueTransform) (const GValue *src_value,
    GValue *dest_value);
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvalue.h"
struct _GValue
{

 GType g_type;


 union {
   gint v_int;
   guint v_uint;
   glong v_long;
   gulong v_ulong;
   gint64 v_int64;
   guint64 v_uint64;
   gfloat v_float;
   gdouble v_double;
   gpointer v_pointer;
 } data[2];
};



extern
GValue* g_value_init (GValue *value,
     GType g_type);
extern
void g_value_copy (const GValue *src_value,
     GValue *dest_value);
extern
GValue* g_value_reset (GValue *value);
extern
void g_value_unset (GValue *value);
extern
void g_value_set_instance (GValue *value,
     gpointer instance);
extern
void g_value_init_from_instance (GValue *value,
                                             gpointer instance);



extern
gboolean g_value_fits_pointer (const GValue *value);
extern
gpointer g_value_peek_pointer (const GValue *value);



extern
gboolean g_value_type_compatible (GType src_type,
     GType dest_type);
extern
gboolean g_value_type_transformable (GType src_type,
     GType dest_type);
extern
gboolean g_value_transform (const GValue *src_value,
     GValue *dest_value);
extern
void g_value_register_transform_func (GType src_type,
     GType dest_type,
     GValueTransform transform_func);
# 192 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvalue.h"
}
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparam.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparam.h"
extern "C" {
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparam.h"
typedef enum
{
 G_PARAM_READABLE = 1 << 0,
 G_PARAM_WRITABLE = 1 << 1,
 G_PARAM_READWRITE = (G_PARAM_READABLE | G_PARAM_WRITABLE),
 G_PARAM_CONSTRUCT = 1 << 2,
 G_PARAM_CONSTRUCT_ONLY = 1 << 3,
 G_PARAM_LAX_VALIDATION = 1 << 4,
 G_PARAM_STATIC_NAME = 1 << 5,

 G_PARAM_PRIVATE = G_PARAM_STATIC_NAME,

 G_PARAM_STATIC_NICK = 1 << 6,
 G_PARAM_STATIC_BLURB = 1 << 7,

 G_PARAM_EXPLICIT_NOTIFY = 1 << 30,
 G_PARAM_DEPRECATED = 1 << 31
} GParamFlags;
# 193 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparam.h"
typedef struct _GParamSpec GParamSpec;
typedef struct _GParamSpecClass GParamSpecClass;
typedef struct _GParameter GParameter;
typedef struct _GParamSpecPool GParamSpecPool;
# 208 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparam.h"
struct _GParamSpec
{
 GTypeInstance g_type_instance;

 const gchar *name;
 GParamFlags flags;
 GType value_type;
 GType owner_type;


 gchar *_nick;
 gchar *_blurb;
 GData *qdata;
 guint ref_count;
 guint param_id;
};
# 243 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparam.h"
struct _GParamSpecClass
{
 GTypeClass g_type_class;

 GType value_type;

 void (*finalize) (GParamSpec *pspec);


 void (*value_set_default) (GParamSpec *pspec,
     GValue *value);
 gboolean (*value_validate) (GParamSpec *pspec,
     GValue *value);
 gint (*values_cmp) (GParamSpec *pspec,
     const GValue *value1,
     const GValue *value2);

 gpointer dummy[4];
};
# 270 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparam.h"
struct _GParameter
{
 const gchar *name;
 GValue value;
};



extern
GParamSpec* g_param_spec_ref (GParamSpec *pspec);
extern
void g_param_spec_unref (GParamSpec *pspec);
extern
void g_param_spec_sink (GParamSpec *pspec);
extern
GParamSpec* g_param_spec_ref_sink (GParamSpec *pspec);
extern
gpointer g_param_spec_get_qdata (GParamSpec *pspec,
      GQuark quark);
extern
void g_param_spec_set_qdata (GParamSpec *pspec,
      GQuark quark,
      gpointer data);
extern
void g_param_spec_set_qdata_full (GParamSpec *pspec,
      GQuark quark,
      gpointer data,
      GDestroyNotify destroy);
extern
gpointer g_param_spec_steal_qdata (GParamSpec *pspec,
      GQuark quark);
extern
GParamSpec* g_param_spec_get_redirect_target (GParamSpec *pspec);

extern
void g_param_value_set_default (GParamSpec *pspec,
      GValue *value);
extern
gboolean g_param_value_defaults (GParamSpec *pspec,
      GValue *value);
extern
gboolean g_param_value_validate (GParamSpec *pspec,
      GValue *value);
extern
gboolean g_param_value_convert (GParamSpec *pspec,
      const GValue *src_value,
      GValue *dest_value,
      gboolean strict_validation);
extern
gint g_param_values_cmp (GParamSpec *pspec,
      const GValue *value1,
      const GValue *value2);
extern
const gchar * g_param_spec_get_name (GParamSpec *pspec);
extern
const gchar * g_param_spec_get_nick (GParamSpec *pspec);
extern
const gchar * g_param_spec_get_blurb (GParamSpec *pspec);
extern
void g_value_set_param (GValue *value,
      GParamSpec *param);
extern
GParamSpec* g_value_get_param (const GValue *value);
extern
GParamSpec* g_value_dup_param (const GValue *value);


extern
void g_value_take_param (GValue *value,
             GParamSpec *param);
__attribute__((__deprecated__("Use '" "g_value_take_param" "' instead"))) extern
void g_value_set_param_take_ownership (GValue *value,
                                                GParamSpec *param);
extern
const GValue * g_param_spec_get_default_value (GParamSpec *pspec);

extern
GQuark g_param_spec_get_name_quark (GParamSpec *pspec);


typedef struct _GParamSpecTypeInfo GParamSpecTypeInfo;
# 375 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparam.h"
struct _GParamSpecTypeInfo
{

 guint16 instance_size;
 guint16 n_preallocs;
 void (*instance_init) (GParamSpec *pspec);


 GType value_type;
 void (*finalize) (GParamSpec *pspec);
 void (*value_set_default) (GParamSpec *pspec,
     GValue *value);
 gboolean (*value_validate) (GParamSpec *pspec,
     GValue *value);
 gint (*values_cmp) (GParamSpec *pspec,
     const GValue *value1,
     const GValue *value2);
};
extern
GType g_param_type_register_static (const gchar *name,
     const GParamSpecTypeInfo *pspec_info);


GType _g_param_type_register_static_constant (const gchar *name,
           const GParamSpecTypeInfo *pspec_info,
           GType opt_type);



extern
gpointer g_param_spec_internal (GType param_type,
      const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      GParamFlags flags);
extern
GParamSpecPool* g_param_spec_pool_new (gboolean type_prefixing);
extern
void g_param_spec_pool_insert (GParamSpecPool *pool,
      GParamSpec *pspec,
      GType owner_type);
extern
void g_param_spec_pool_remove (GParamSpecPool *pool,
      GParamSpec *pspec);
extern
GParamSpec* g_param_spec_pool_lookup (GParamSpecPool *pool,
      const gchar *param_name,
      GType owner_type,
      gboolean walk_ancestors);
extern
GList* g_param_spec_pool_list_owned (GParamSpecPool *pool,
      GType owner_type);
extern
GParamSpec** g_param_spec_pool_list (GParamSpecPool *pool,
      GType owner_type,
      guint *n_pspecs_p);
# 449 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparam.h"
}
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
extern "C" {
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
typedef struct _GClosure GClosure;
typedef struct _GClosureNotifyData GClosureNotifyData;
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
typedef void (*GCallback) (void);
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
typedef void (*GClosureNotify) (gpointer data,
     GClosure *closure);
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
typedef void (*GClosureMarshal) (GClosure *closure,
     GValue *return_value,
     guint n_param_values,
     const GValue *param_values,
     gpointer invocation_hint,
     gpointer marshal_data);
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
typedef void (* GVaClosureMarshal) (GClosure *closure,
       GValue *return_value,
       gpointer instance,
       va_list args,
       gpointer marshal_data,
       int n_params,
       GType *param_types);
# 157 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
typedef struct _GCClosure GCClosure;



struct _GClosureNotifyData
{
 gpointer data;
 GClosureNotify notify;
};
# 175 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
struct _GClosure
{

 volatile guint ref_count : 15;


 volatile guint meta_marshal_nouse : 1;
 volatile guint n_guards : 1;
 volatile guint n_fnotifiers : 2;
 volatile guint n_inotifiers : 8;
 volatile guint in_inotify : 1;
 volatile guint floating : 1;

 volatile guint derivative_flag : 1;

 volatile guint in_marshal : 1;
 volatile guint is_invalid : 1;

                 void (*marshal) (GClosure *closure,
        GValue *return_value,
        guint n_param_values,
        const GValue *param_values,
        gpointer invocation_hint,
        gpointer marshal_data);
                   gpointer data;

                 GClosureNotifyData *notifiers;
# 213 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
};


struct _GCClosure
{
 GClosure closure;
 gpointer callback;
};



extern
GClosure* g_cclosure_new (GCallback callback_func,
      gpointer user_data,
      GClosureNotify destroy_data);
extern
GClosure* g_cclosure_new_swap (GCallback callback_func,
      gpointer user_data,
      GClosureNotify destroy_data);
extern
GClosure* g_signal_type_cclosure_new (GType itype,
      guint struct_offset);



extern
GClosure* g_closure_ref (GClosure *closure);
extern
void g_closure_sink (GClosure *closure);
extern
void g_closure_unref (GClosure *closure);

extern
GClosure* g_closure_new_simple (guint sizeof_closure,
      gpointer data);
extern
void g_closure_add_finalize_notifier (GClosure *closure,
      gpointer notify_data,
      GClosureNotify notify_func);
extern
void g_closure_remove_finalize_notifier (GClosure *closure,
      gpointer notify_data,
      GClosureNotify notify_func);
extern
void g_closure_add_invalidate_notifier (GClosure *closure,
      gpointer notify_data,
      GClosureNotify notify_func);
extern
void g_closure_remove_invalidate_notifier (GClosure *closure,
      gpointer notify_data,
      GClosureNotify notify_func);
extern
void g_closure_add_marshal_guards (GClosure *closure,
      gpointer pre_marshal_data,
      GClosureNotify pre_marshal_notify,
      gpointer post_marshal_data,
      GClosureNotify post_marshal_notify);
extern
void g_closure_set_marshal (GClosure *closure,
      GClosureMarshal marshal);
extern
void g_closure_set_meta_marshal (GClosure *closure,
      gpointer marshal_data,
      GClosureMarshal meta_marshal);
extern
void g_closure_invalidate (GClosure *closure);
extern
void g_closure_invoke (GClosure *closure,
      GValue *return_value,
      guint n_param_values,
      const GValue *param_values,
      gpointer invocation_hint);
# 297 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gclosure.h"
extern
void g_cclosure_marshal_generic (GClosure *closure,
                                GValue *return_gvalue,
                                guint n_param_values,
                                const GValue *param_values,
                                gpointer invocation_hint,
                                gpointer marshal_data);

extern
void g_cclosure_marshal_generic_va (GClosure *closure,
       GValue *return_value,
       gpointer instance,
       va_list args_list,
       gpointer marshal_data,
       int n_params,
       GType *param_types);


}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gmarshal.h" 1




extern "C" {


extern
void g_cclosure_marshal_VOID__VOID (GClosure *closure,
                                   GValue *return_value,
                                   guint n_param_values,
                                   const GValue *param_values,
                                   gpointer invocation_hint,
                                   gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__VOIDv (GClosure *closure,
                                    GValue *return_value,
                                    gpointer instance,
                                    va_list args,
                                    gpointer marshal_data,
                                    int n_params,
                                    GType *param_types);


extern
void g_cclosure_marshal_VOID__BOOLEAN (GClosure *closure,
                                      GValue *return_value,
                                      guint n_param_values,
                                      const GValue *param_values,
                                      gpointer invocation_hint,
                                      gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__BOOLEANv (GClosure *closure,
                                       GValue *return_value,
                                       gpointer instance,
                                       va_list args,
                                       gpointer marshal_data,
                                       int n_params,
                                       GType *param_types);


extern
void g_cclosure_marshal_VOID__CHAR (GClosure *closure,
                                   GValue *return_value,
                                   guint n_param_values,
                                   const GValue *param_values,
                                   gpointer invocation_hint,
                                   gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__CHARv (GClosure *closure,
                                    GValue *return_value,
                                    gpointer instance,
                                    va_list args,
                                    gpointer marshal_data,
                                    int n_params,
                                    GType *param_types);


extern
void g_cclosure_marshal_VOID__UCHAR (GClosure *closure,
                                    GValue *return_value,
                                    guint n_param_values,
                                    const GValue *param_values,
                                    gpointer invocation_hint,
                                    gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__UCHARv (GClosure *closure,
                                     GValue *return_value,
                                     gpointer instance,
                                     va_list args,
                                     gpointer marshal_data,
                                     int n_params,
                                     GType *param_types);


extern
void g_cclosure_marshal_VOID__INT (GClosure *closure,
                                  GValue *return_value,
                                  guint n_param_values,
                                  const GValue *param_values,
                                  gpointer invocation_hint,
                                  gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__INTv (GClosure *closure,
                                   GValue *return_value,
                                   gpointer instance,
                                   va_list args,
                                   gpointer marshal_data,
                                   int n_params,
                                   GType *param_types);


extern
void g_cclosure_marshal_VOID__UINT (GClosure *closure,
                                   GValue *return_value,
                                   guint n_param_values,
                                   const GValue *param_values,
                                   gpointer invocation_hint,
                                   gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__UINTv (GClosure *closure,
                                    GValue *return_value,
                                    gpointer instance,
                                    va_list args,
                                    gpointer marshal_data,
                                    int n_params,
                                    GType *param_types);


extern
void g_cclosure_marshal_VOID__LONG (GClosure *closure,
                                   GValue *return_value,
                                   guint n_param_values,
                                   const GValue *param_values,
                                   gpointer invocation_hint,
                                   gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__LONGv (GClosure *closure,
                                    GValue *return_value,
                                    gpointer instance,
                                    va_list args,
                                    gpointer marshal_data,
                                    int n_params,
                                    GType *param_types);


extern
void g_cclosure_marshal_VOID__ULONG (GClosure *closure,
                                    GValue *return_value,
                                    guint n_param_values,
                                    const GValue *param_values,
                                    gpointer invocation_hint,
                                    gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__ULONGv (GClosure *closure,
                                     GValue *return_value,
                                     gpointer instance,
                                     va_list args,
                                     gpointer marshal_data,
                                     int n_params,
                                     GType *param_types);


extern
void g_cclosure_marshal_VOID__ENUM (GClosure *closure,
                                   GValue *return_value,
                                   guint n_param_values,
                                   const GValue *param_values,
                                   gpointer invocation_hint,
                                   gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__ENUMv (GClosure *closure,
                                    GValue *return_value,
                                    gpointer instance,
                                    va_list args,
                                    gpointer marshal_data,
                                    int n_params,
                                    GType *param_types);


extern
void g_cclosure_marshal_VOID__FLAGS (GClosure *closure,
                                    GValue *return_value,
                                    guint n_param_values,
                                    const GValue *param_values,
                                    gpointer invocation_hint,
                                    gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__FLAGSv (GClosure *closure,
                                     GValue *return_value,
                                     gpointer instance,
                                     va_list args,
                                     gpointer marshal_data,
                                     int n_params,
                                     GType *param_types);


extern
void g_cclosure_marshal_VOID__FLOAT (GClosure *closure,
                                    GValue *return_value,
                                    guint n_param_values,
                                    const GValue *param_values,
                                    gpointer invocation_hint,
                                    gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__FLOATv (GClosure *closure,
                                     GValue *return_value,
                                     gpointer instance,
                                     va_list args,
                                     gpointer marshal_data,
                                     int n_params,
                                     GType *param_types);


extern
void g_cclosure_marshal_VOID__DOUBLE (GClosure *closure,
                                     GValue *return_value,
                                     guint n_param_values,
                                     const GValue *param_values,
                                     gpointer invocation_hint,
                                     gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__DOUBLEv (GClosure *closure,
                                      GValue *return_value,
                                      gpointer instance,
                                      va_list args,
                                      gpointer marshal_data,
                                      int n_params,
                                      GType *param_types);


extern
void g_cclosure_marshal_VOID__STRING (GClosure *closure,
                                     GValue *return_value,
                                     guint n_param_values,
                                     const GValue *param_values,
                                     gpointer invocation_hint,
                                     gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__STRINGv (GClosure *closure,
                                      GValue *return_value,
                                      gpointer instance,
                                      va_list args,
                                      gpointer marshal_data,
                                      int n_params,
                                      GType *param_types);


extern
void g_cclosure_marshal_VOID__PARAM (GClosure *closure,
                                    GValue *return_value,
                                    guint n_param_values,
                                    const GValue *param_values,
                                    gpointer invocation_hint,
                                    gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__PARAMv (GClosure *closure,
                                     GValue *return_value,
                                     gpointer instance,
                                     va_list args,
                                     gpointer marshal_data,
                                     int n_params,
                                     GType *param_types);


extern
void g_cclosure_marshal_VOID__BOXED (GClosure *closure,
                                    GValue *return_value,
                                    guint n_param_values,
                                    const GValue *param_values,
                                    gpointer invocation_hint,
                                    gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__BOXEDv (GClosure *closure,
                                     GValue *return_value,
                                     gpointer instance,
                                     va_list args,
                                     gpointer marshal_data,
                                     int n_params,
                                     GType *param_types);


extern
void g_cclosure_marshal_VOID__POINTER (GClosure *closure,
                                      GValue *return_value,
                                      guint n_param_values,
                                      const GValue *param_values,
                                      gpointer invocation_hint,
                                      gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__POINTERv (GClosure *closure,
                                       GValue *return_value,
                                       gpointer instance,
                                       va_list args,
                                       gpointer marshal_data,
                                       int n_params,
                                       GType *param_types);


extern
void g_cclosure_marshal_VOID__OBJECT (GClosure *closure,
                                     GValue *return_value,
                                     guint n_param_values,
                                     const GValue *param_values,
                                     gpointer invocation_hint,
                                     gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__OBJECTv (GClosure *closure,
                                      GValue *return_value,
                                      gpointer instance,
                                      va_list args,
                                      gpointer marshal_data,
                                      int n_params,
                                      GType *param_types);


extern
void g_cclosure_marshal_VOID__VARIANT (GClosure *closure,
                                      GValue *return_value,
                                      guint n_param_values,
                                      const GValue *param_values,
                                      gpointer invocation_hint,
                                      gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__VARIANTv (GClosure *closure,
                                       GValue *return_value,
                                       gpointer instance,
                                       va_list args,
                                       gpointer marshal_data,
                                       int n_params,
                                       GType *param_types);


extern
void g_cclosure_marshal_VOID__UINT_POINTER (GClosure *closure,
                                           GValue *return_value,
                                           guint n_param_values,
                                           const GValue *param_values,
                                           gpointer invocation_hint,
                                           gpointer marshal_data);
extern
void g_cclosure_marshal_VOID__UINT_POINTERv (GClosure *closure,
                                            GValue *return_value,
                                            gpointer instance,
                                            va_list args,
                                            gpointer marshal_data,
                                            int n_params,
                                            GType *param_types);


extern
void g_cclosure_marshal_BOOLEAN__FLAGS (GClosure *closure,
                                       GValue *return_value,
                                       guint n_param_values,
                                       const GValue *param_values,
                                       gpointer invocation_hint,
                                       gpointer marshal_data);
extern
void g_cclosure_marshal_BOOLEAN__FLAGSv (GClosure *closure,
                                        GValue *return_value,
                                        gpointer instance,
                                        va_list args,
                                        gpointer marshal_data,
                                        int n_params,
                                        GType *param_types);



extern
void g_cclosure_marshal_STRING__OBJECT_POINTER (GClosure *closure,
                                               GValue *return_value,
                                               guint n_param_values,
                                               const GValue *param_values,
                                               gpointer invocation_hint,
                                               gpointer marshal_data);
extern
void g_cclosure_marshal_STRING__OBJECT_POINTERv (GClosure *closure,
                                                GValue *return_value,
                                                gpointer instance,
                                                va_list args,
                                                gpointer marshal_data,
                                                int n_params,
                                                GType *param_types);


extern
void g_cclosure_marshal_BOOLEAN__BOXED_BOXED (GClosure *closure,
                                             GValue *return_value,
                                             guint n_param_values,
                                             const GValue *param_values,
                                             gpointer invocation_hint,
                                             gpointer marshal_data);
extern
void g_cclosure_marshal_BOOLEAN__BOXED_BOXEDv (GClosure *closure,
                                              GValue *return_value,
                                              gpointer instance,
                                              va_list args,
                                              gpointer marshal_data,
                                              int n_params,
                                              GType *param_types);


}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h" 2

extern "C" {


typedef struct _GSignalQuery GSignalQuery;
typedef struct _GSignalInvocationHint GSignalInvocationHint;
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
typedef GClosureMarshal GSignalCMarshaller;







typedef GVaClosureMarshal GSignalCVaMarshaller;
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
typedef gboolean (*GSignalEmissionHook) (GSignalInvocationHint *ihint,
     guint n_param_values,
     const GValue *param_values,
     gpointer data);
# 93 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
typedef gboolean (*GSignalAccumulator) (GSignalInvocationHint *ihint,
     GValue *return_accu,
     const GValue *handler_return,
     gpointer data);
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
typedef enum
{
 G_SIGNAL_RUN_FIRST = 1 << 0,
 G_SIGNAL_RUN_LAST = 1 << 1,
 G_SIGNAL_RUN_CLEANUP = 1 << 2,
 G_SIGNAL_NO_RECURSE = 1 << 3,
 G_SIGNAL_DETAILED = 1 << 4,
 G_SIGNAL_ACTION = 1 << 5,
 G_SIGNAL_NO_HOOKS = 1 << 6,
 G_SIGNAL_MUST_COLLECT = 1 << 7,
 G_SIGNAL_DEPRECATED = 1 << 8
} GSignalFlags;
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
typedef enum
{
 G_CONNECT_AFTER = 1 << 0,
 G_CONNECT_SWAPPED = 1 << 1
} GConnectFlags;
# 173 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
typedef enum
{
 G_SIGNAL_MATCH_ID = 1 << 0,
 G_SIGNAL_MATCH_DETAIL = 1 << 1,
 G_SIGNAL_MATCH_CLOSURE = 1 << 2,
 G_SIGNAL_MATCH_FUNC = 1 << 3,
 G_SIGNAL_MATCH_DATA = 1 << 4,
 G_SIGNAL_MATCH_UNBLOCKED = 1 << 5
} GSignalMatchType;
# 223 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
struct _GSignalInvocationHint
{
 guint signal_id;
 GQuark detail;
 GSignalFlags run_type;
};
# 249 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
struct _GSignalQuery
{
 guint signal_id;
 const gchar *signal_name;
 GType itype;
 GSignalFlags signal_flags;
 GType return_type;
 guint n_params;
 const GType *param_types;
};



extern
guint g_signal_newv (const gchar *signal_name,
         GType itype,
         GSignalFlags signal_flags,
         GClosure *class_closure,
         GSignalAccumulator accumulator,
         gpointer accu_data,
         GSignalCMarshaller c_marshaller,
         GType return_type,
         guint n_params,
         GType *param_types);
extern
guint g_signal_new_valist (const gchar *signal_name,
         GType itype,
         GSignalFlags signal_flags,
         GClosure *class_closure,
         GSignalAccumulator accumulator,
         gpointer accu_data,
         GSignalCMarshaller c_marshaller,
         GType return_type,
         guint n_params,
         va_list args);
extern
guint g_signal_new (const gchar *signal_name,
         GType itype,
         GSignalFlags signal_flags,
         guint class_offset,
         GSignalAccumulator accumulator,
         gpointer accu_data,
         GSignalCMarshaller c_marshaller,
         GType return_type,
         guint n_params,
         ...);
extern
guint g_signal_new_class_handler (const gchar *signal_name,
                                            GType itype,
                                            GSignalFlags signal_flags,
                                            GCallback class_handler,
                                            GSignalAccumulator accumulator,
                                            gpointer accu_data,
                                            GSignalCMarshaller c_marshaller,
                                            GType return_type,
                                            guint n_params,
                                            ...);
extern
void g_signal_set_va_marshaller (guint signal_id,
         GType instance_type,
         GSignalCVaMarshaller va_marshaller);

extern
void g_signal_emitv (const GValue *instance_and_params,
         guint signal_id,
         GQuark detail,
         GValue *return_value);
extern
void g_signal_emit_valist (gpointer instance,
         guint signal_id,
         GQuark detail,
         va_list var_args);
extern
void g_signal_emit (gpointer instance,
         guint signal_id,
         GQuark detail,
         ...);
extern
void g_signal_emit_by_name (gpointer instance,
         const gchar *detailed_signal,
         ...);
extern
guint g_signal_lookup (const gchar *name,
         GType itype);
extern
const gchar * g_signal_name (guint signal_id);
extern
void g_signal_query (guint signal_id,
         GSignalQuery *query);
extern
guint* g_signal_list_ids (GType itype,
         guint *n_ids);
extern
gboolean g_signal_parse_name (const gchar *detailed_signal,
         GType itype,
         guint *signal_id_p,
         GQuark *detail_p,
         gboolean force_detail_quark);
extern
GSignalInvocationHint* g_signal_get_invocation_hint (gpointer instance);



extern
void g_signal_stop_emission (gpointer instance,
         guint signal_id,
         GQuark detail);
extern
void g_signal_stop_emission_by_name (gpointer instance,
         const gchar *detailed_signal);
extern
gulong g_signal_add_emission_hook (guint signal_id,
         GQuark detail,
         GSignalEmissionHook hook_func,
         gpointer hook_data,
         GDestroyNotify data_destroy);
extern
void g_signal_remove_emission_hook (guint signal_id,
         gulong hook_id);



extern
gboolean g_signal_has_handler_pending (gpointer instance,
           guint signal_id,
           GQuark detail,
           gboolean may_be_blocked);
extern
gulong g_signal_connect_closure_by_id (gpointer instance,
           guint signal_id,
           GQuark detail,
           GClosure *closure,
           gboolean after);
extern
gulong g_signal_connect_closure (gpointer instance,
           const gchar *detailed_signal,
           GClosure *closure,
           gboolean after);
extern
gulong g_signal_connect_data (gpointer instance,
           const gchar *detailed_signal,
           GCallback c_handler,
           gpointer data,
           GClosureNotify destroy_data,
           GConnectFlags connect_flags);
extern
void g_signal_handler_block (gpointer instance,
           gulong handler_id);
extern
void g_signal_handler_unblock (gpointer instance,
           gulong handler_id);
extern
void g_signal_handler_disconnect (gpointer instance,
           gulong handler_id);
extern
gboolean g_signal_handler_is_connected (gpointer instance,
           gulong handler_id);
extern
gulong g_signal_handler_find (gpointer instance,
           GSignalMatchType mask,
           guint signal_id,
           GQuark detail,
           GClosure *closure,
           gpointer func,
           gpointer data);
extern
guint g_signal_handlers_block_matched (gpointer instance,
           GSignalMatchType mask,
           guint signal_id,
           GQuark detail,
           GClosure *closure,
           gpointer func,
           gpointer data);
extern
guint g_signal_handlers_unblock_matched (gpointer instance,
           GSignalMatchType mask,
           guint signal_id,
           GQuark detail,
           GClosure *closure,
           gpointer func,
           gpointer data);
extern
guint g_signal_handlers_disconnect_matched (gpointer instance,
           GSignalMatchType mask,
           guint signal_id,
           GQuark detail,
           GClosure *closure,
           gpointer func,
           gpointer data);



extern
void g_signal_override_class_closure (guint signal_id,
                                              GType instance_type,
                                              GClosure *class_closure);
extern
void g_signal_override_class_handler (const gchar *signal_name,
                                              GType instance_type,
                                              GCallback class_handler);
extern
void g_signal_chain_from_overridden (const GValue *instance_and_params,
                                              GValue *return_value);
extern
void g_signal_chain_from_overridden_handler (gpointer instance,
                                              ...);
# 588 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsignal.h"
extern
gboolean g_signal_accumulator_true_handled (GSignalInvocationHint *ihint,
        GValue *return_accu,
        const GValue *handler_return,
        gpointer dummy);

extern
gboolean g_signal_accumulator_first_wins (GSignalInvocationHint *ihint,
                                           GValue *return_accu,
                                           const GValue *handler_return,
                                           gpointer dummy);


extern
void g_signal_handlers_destroy (gpointer instance);
void _g_signals_destroy (GType itype);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gboxed.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gboxed.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/glib-types.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/glib-types.h"
extern "C" {
# 300 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/glib-types.h"
extern
GType g_date_get_type (void) __attribute__((__const__));
extern
GType g_strv_get_type (void) __attribute__((__const__));
extern
GType g_gstring_get_type (void) __attribute__((__const__));
extern
GType g_hash_table_get_type (void) __attribute__((__const__));
extern
GType g_array_get_type (void) __attribute__((__const__));
extern
GType g_byte_array_get_type (void) __attribute__((__const__));
extern
GType g_ptr_array_get_type (void) __attribute__((__const__));
extern
GType g_bytes_get_type (void) __attribute__((__const__));
extern
GType g_variant_type_get_gtype (void) __attribute__((__const__));
extern
GType g_regex_get_type (void) __attribute__((__const__));
extern
GType g_match_info_get_type (void) __attribute__((__const__));
extern
GType g_error_get_type (void) __attribute__((__const__));
extern
GType g_date_time_get_type (void) __attribute__((__const__));
extern
GType g_time_zone_get_type (void) __attribute__((__const__));
extern
GType g_io_channel_get_type (void) __attribute__((__const__));
extern
GType g_io_condition_get_type (void) __attribute__((__const__));
extern
GType g_variant_builder_get_type (void) __attribute__((__const__));
extern
GType g_variant_dict_get_type (void) __attribute__((__const__));
extern
GType g_key_file_get_type (void) __attribute__((__const__));
extern
GType g_main_loop_get_type (void) __attribute__((__const__));
extern
GType g_main_context_get_type (void) __attribute__((__const__));
extern
GType g_source_get_type (void) __attribute__((__const__));
extern
GType g_pollfd_get_type (void) __attribute__((__const__));
extern
GType g_thread_get_type (void) __attribute__((__const__));
extern
GType g_checksum_get_type (void) __attribute__((__const__));
extern
GType g_markup_parse_context_get_type (void) __attribute__((__const__));
extern
GType g_mapped_file_get_type (void) __attribute__((__const__));
extern
GType g_option_group_get_type (void) __attribute__((__const__));

__attribute__((__deprecated__("Use '" "'G_TYPE_VARIANT'" "' instead"))) extern
GType g_variant_get_gtype (void) __attribute__((__const__));

}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gboxed.h" 2


extern "C" {
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gboxed.h"
typedef gpointer (*GBoxedCopyFunc) (gpointer boxed);
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gboxed.h"
typedef void (*GBoxedFreeFunc) (gpointer boxed);



extern
gpointer g_boxed_copy (GType boxed_type,
                                          gconstpointer src_boxed);
extern
void g_boxed_free (GType boxed_type,
                                          gpointer boxed);
extern
void g_value_set_boxed (GValue *value,
                                          gconstpointer v_boxed);
extern
void g_value_set_static_boxed (GValue *value,
                                          gconstpointer v_boxed);
extern
void g_value_take_boxed (GValue *value,
                                          gconstpointer v_boxed);
__attribute__((__deprecated__("Use '" "g_value_take_boxed" "' instead"))) extern
void g_value_set_boxed_take_ownership (GValue *value,
                                          gconstpointer v_boxed);
extern
gpointer g_value_get_boxed (const GValue *value);
extern
gpointer g_value_dup_boxed (const GValue *value);



extern
GType g_boxed_type_register_static (const gchar *name,
                                          GBoxedCopyFunc boxed_copy,
                                          GBoxedFreeFunc boxed_free);
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gboxed.h"
extern
GType g_closure_get_type (void) __attribute__((__const__));
extern
GType g_value_get_type (void) __attribute__((__const__));

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h" 2

extern "C" {
# 187 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
typedef struct _GObject GObject;
typedef struct _GObjectClass GObjectClass;
typedef struct _GObject GInitiallyUnowned;
typedef struct _GObjectClass GInitiallyUnownedClass;
typedef struct _GObjectConstructParam GObjectConstructParam;
# 202 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
typedef void (*GObjectGetPropertyFunc) (GObject *object,
                                        guint property_id,
                                        GValue *value,
                                        GParamSpec *pspec);
# 216 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
typedef void (*GObjectSetPropertyFunc) (GObject *object,
                                        guint property_id,
                                        const GValue *value,
                                        GParamSpec *pspec);






typedef void (*GObjectFinalizeFunc) (GObject *object);
# 237 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
typedef void (*GWeakNotify) (gpointer data,
     GObject *where_the_object_was);






struct _GObject
{
 GTypeInstance g_type_instance;


 volatile guint ref_count;
 GData *qdata;
};
# 316 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
struct _GObjectClass
{
 GTypeClass g_type_class;


 GSList *construct_properties;



 GObject* (*constructor) (GType type,
                                guint n_construct_properties,
                                GObjectConstructParam *construct_properties);

 void (*set_property) (GObject *object,
                                        guint property_id,
                                        const GValue *value,
                                        GParamSpec *pspec);
 void (*get_property) (GObject *object,
                                        guint property_id,
                                        GValue *value,
                                        GParamSpec *pspec);
 void (*dispose) (GObject *object);
 void (*finalize) (GObject *object);

 void (*dispatch_properties_changed) (GObject *object,
         guint n_pspecs,
         GParamSpec **pspecs);

 void (*notify) (GObject *object,
     GParamSpec *pspec);


 void (*constructed) (GObject *object);


 gsize flags;


 gpointer pdummy[6];
};
# 365 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
struct _GObjectConstructParam
{
 GParamSpec *pspec;
 GValue *value;
};
# 386 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
extern
GType g_initially_unowned_get_type (void);
extern
void g_object_class_install_property (GObjectClass *oclass,
           guint property_id,
           GParamSpec *pspec);
extern
GParamSpec* g_object_class_find_property (GObjectClass *oclass,
           const gchar *property_name);
extern
GParamSpec**g_object_class_list_properties (GObjectClass *oclass,
           guint *n_properties);
extern
void g_object_class_override_property (GObjectClass *oclass,
           guint property_id,
           const gchar *name);
extern
void g_object_class_install_properties (GObjectClass *oclass,
                                              guint n_pspecs,
                                              GParamSpec **pspecs);

extern
void g_object_interface_install_property (gpointer g_iface,
      GParamSpec *pspec);
extern
GParamSpec* g_object_interface_find_property (gpointer g_iface,
      const gchar *property_name);
extern
GParamSpec**g_object_interface_list_properties (gpointer g_iface,
      guint *n_properties_p);

extern
GType g_object_get_type (void) __attribute__((__const__));
extern
gpointer g_object_new (GType object_type,
           const gchar *first_property_name,
           ...);
extern
gpointer g_object_newv (GType object_type,
           guint n_parameters,
           GParameter *parameters);
extern
GObject* g_object_new_valist (GType object_type,
           const gchar *first_property_name,
           va_list var_args);
extern
void g_object_set (gpointer object,
           const gchar *first_property_name,
           ...) __attribute__((__sentinel__));
extern
void g_object_get (gpointer object,
           const gchar *first_property_name,
           ...) __attribute__((__sentinel__));
extern
gpointer g_object_connect (gpointer object,
           const gchar *signal_spec,
           ...) __attribute__((__sentinel__));
extern
void g_object_disconnect (gpointer object,
           const gchar *signal_spec,
           ...) __attribute__((__sentinel__));
extern
void g_object_set_valist (GObject *object,
           const gchar *first_property_name,
           va_list var_args);
extern
void g_object_get_valist (GObject *object,
           const gchar *first_property_name,
           va_list var_args);
extern
void g_object_set_property (GObject *object,
           const gchar *property_name,
           const GValue *value);
extern
void g_object_get_property (GObject *object,
           const gchar *property_name,
           GValue *value);
extern
void g_object_freeze_notify (GObject *object);
extern
void g_object_notify (GObject *object,
           const gchar *property_name);
extern
void g_object_notify_by_pspec (GObject *object,
           GParamSpec *pspec);
extern
void g_object_thaw_notify (GObject *object);
extern
gboolean g_object_is_floating (gpointer object);
extern
gpointer g_object_ref_sink (gpointer object);
extern
gpointer g_object_ref (gpointer object);
extern
void g_object_unref (gpointer object);
extern
void g_object_weak_ref (GObject *object,
           GWeakNotify notify,
           gpointer data);
extern
void g_object_weak_unref (GObject *object,
           GWeakNotify notify,
           gpointer data);
extern
void g_object_add_weak_pointer (GObject *object,
                                              gpointer *weak_pointer_location);
extern
void g_object_remove_weak_pointer (GObject *object,
                                              gpointer *weak_pointer_location);
# 508 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
typedef void (*GToggleNotify) (gpointer data,
         GObject *object,
         gboolean is_last_ref);

extern
void g_object_add_toggle_ref (GObject *object,
    GToggleNotify notify,
    gpointer data);
extern
void g_object_remove_toggle_ref (GObject *object,
    GToggleNotify notify,
    gpointer data);

extern
gpointer g_object_get_qdata (GObject *object,
           GQuark quark);
extern
void g_object_set_qdata (GObject *object,
           GQuark quark,
           gpointer data);
extern
void g_object_set_qdata_full (GObject *object,
           GQuark quark,
           gpointer data,
           GDestroyNotify destroy);
extern
gpointer g_object_steal_qdata (GObject *object,
           GQuark quark);

extern
gpointer g_object_dup_qdata (GObject *object,
                                              GQuark quark,
                                              GDuplicateFunc dup_func,
           gpointer user_data);
extern
gboolean g_object_replace_qdata (GObject *object,
                                              GQuark quark,
                                              gpointer oldval,
                                              gpointer newval,
                                              GDestroyNotify destroy,
           GDestroyNotify *old_destroy);

extern
gpointer g_object_get_data (GObject *object,
           const gchar *key);
extern
void g_object_set_data (GObject *object,
           const gchar *key,
           gpointer data);
extern
void g_object_set_data_full (GObject *object,
           const gchar *key,
           gpointer data,
           GDestroyNotify destroy);
extern
gpointer g_object_steal_data (GObject *object,
           const gchar *key);

extern
gpointer g_object_dup_data (GObject *object,
                                              const gchar *key,
                                              GDuplicateFunc dup_func,
           gpointer user_data);
extern
gboolean g_object_replace_data (GObject *object,
                                              const gchar *key,
                                              gpointer oldval,
                                              gpointer newval,
                                              GDestroyNotify destroy,
           GDestroyNotify *old_destroy);


extern
void g_object_watch_closure (GObject *object,
           GClosure *closure);
extern
GClosure* g_cclosure_new_object (GCallback callback_func,
           GObject *object);
extern
GClosure* g_cclosure_new_object_swap (GCallback callback_func,
           GObject *object);
extern
GClosure* g_closure_new_object (guint sizeof_closure,
           GObject *object);
extern
void g_value_set_object (GValue *value,
           gpointer v_object);
extern
gpointer g_value_get_object (const GValue *value);
extern
gpointer g_value_dup_object (const GValue *value);
extern
gulong g_signal_connect_object (gpointer instance,
           const gchar *detailed_signal,
           GCallback c_handler,
           gpointer gobject,
           GConnectFlags connect_flags);


extern
void g_object_force_floating (GObject *object);
extern
void g_object_run_dispose (GObject *object);


extern
void g_value_take_object (GValue *value,
           gpointer v_object);
__attribute__((__deprecated__("Use '" "g_value_take_object" "' instead"))) extern
void g_value_set_object_take_ownership (GValue *value,
                                              gpointer v_object);

__attribute__((__deprecated__)) extern
gsize g_object_compat_control (gsize what,
           gpointer data);
# 650 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
extern
void g_clear_object (volatile GObject **object_ptr);
# 689 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
static inline gboolean
(g_set_object) (GObject **object_ptr,
               GObject *new_object)
{
 GObject *old_object = *object_ptr;







 if (old_object == new_object)
   return (0);

 if (new_object !=
# 704 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h" 3 4
                  __null
# 704 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
                      )
   g_object_ref (new_object);

 *object_ptr = new_object;

 if (old_object !=
# 709 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h" 3 4
                  __null
# 709 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject.h"
                      )
   g_object_unref (old_object);

 return (!(0));
}







typedef struct {

   union { gpointer p; } priv;
} GWeakRef;

extern
void g_weak_ref_init (GWeakRef *weak_ref,
                               gpointer object);
extern
void g_weak_ref_clear (GWeakRef *weak_ref);
extern
gpointer g_weak_ref_get (GWeakRef *weak_ref);
extern
void g_weak_ref_set (GWeakRef *weak_ref,
                               gpointer object);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gbinding.h" 2

extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gbinding.h"
typedef struct _GBinding GBinding;
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gbinding.h"
typedef gboolean (* GBindingTransformFunc) (GBinding *binding,
                                           const GValue *from_value,
                                           GValue *to_value,
                                           gpointer user_data);
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gbinding.h"
typedef enum {
 G_BINDING_DEFAULT = 0,

 G_BINDING_BIDIRECTIONAL = 1 << 0,
 G_BINDING_SYNC_CREATE = 1 << 1,
 G_BINDING_INVERT_BOOLEAN = 1 << 2
} GBindingFlags;

extern
GType g_binding_flags_get_type (void) __attribute__((__const__));
extern
GType g_binding_get_type (void) __attribute__((__const__));

extern
GBindingFlags g_binding_get_flags (GBinding *binding);
extern
GObject * g_binding_get_source (GBinding *binding);
extern
GObject * g_binding_get_target (GBinding *binding);
extern
const gchar * g_binding_get_source_property (GBinding *binding);
extern
const gchar * g_binding_get_target_property (GBinding *binding);
extern
void g_binding_unbind (GBinding *binding);

extern
GBinding *g_object_bind_property (gpointer source,
                                               const gchar *source_property,
                                               gpointer target,
                                               const gchar *target_property,
                                               GBindingFlags flags);
extern
GBinding *g_object_bind_property_full (gpointer source,
                                               const gchar *source_property,
                                               gpointer target,
                                               const gchar *target_property,
                                               GBindingFlags flags,
                                               GBindingTransformFunc transform_to,
                                               GBindingTransformFunc transform_from,
                                               gpointer user_data,
                                               GDestroyNotify notify);
extern
GBinding *g_object_bind_property_with_closures (gpointer source,
                                               const gchar *source_property,
                                               gpointer target,
                                               const gchar *target_property,
                                               GBindingFlags flags,
                                               GClosure *transform_to,
                                               GClosure *transform_from);

}
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/genums.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/genums.h"
extern "C" {
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/genums.h"
typedef struct _GEnumClass GEnumClass;
typedef struct _GFlagsClass GFlagsClass;
typedef struct _GEnumValue GEnumValue;
typedef struct _GFlagsValue GFlagsValue;
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/genums.h"
struct _GEnumClass
{
 GTypeClass g_type_class;


 gint minimum;
 gint maximum;
 guint n_values;
 GEnumValue *values;
};
# 176 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/genums.h"
struct _GFlagsClass
{
 GTypeClass g_type_class;


 guint mask;
 guint n_values;
 GFlagsValue *values;
};
# 194 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/genums.h"
struct _GEnumValue
{
 gint value;
 const gchar *value_name;
 const gchar *value_nick;
};
# 209 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/genums.h"
struct _GFlagsValue
{
 guint value;
 const gchar *value_name;
 const gchar *value_nick;
};



extern
GEnumValue* g_enum_get_value (GEnumClass *enum_class,
      gint value);
extern
GEnumValue* g_enum_get_value_by_name (GEnumClass *enum_class,
      const gchar *name);
extern
GEnumValue* g_enum_get_value_by_nick (GEnumClass *enum_class,
      const gchar *nick);
extern
GFlagsValue* g_flags_get_first_value (GFlagsClass *flags_class,
      guint value);
extern
GFlagsValue* g_flags_get_value_by_name (GFlagsClass *flags_class,
      const gchar *name);
extern
GFlagsValue* g_flags_get_value_by_nick (GFlagsClass *flags_class,
      const gchar *nick);
extern
void g_value_set_enum (GValue *value,
      gint v_enum);
extern
gint g_value_get_enum (const GValue *value);
extern
void g_value_set_flags (GValue *value,
      guint v_flags);
extern
guint g_value_get_flags (const GValue *value);







extern
GType g_enum_register_static (const gchar *name,
       const GEnumValue *const_static_values);
extern
GType g_flags_register_static (const gchar *name,
       const GFlagsValue *const_static_values);



extern
void g_enum_complete_type_info (GType g_enum_type,
       GTypeInfo *info,
       const GEnumValue *const_values);
extern
void g_flags_complete_type_info (GType g_flags_type,
       GTypeInfo *info,
       const GFlagsValue *const_values);

}
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
extern "C" {
# 586 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
typedef struct _GParamSpecChar GParamSpecChar;
typedef struct _GParamSpecUChar GParamSpecUChar;
typedef struct _GParamSpecBoolean GParamSpecBoolean;
typedef struct _GParamSpecInt GParamSpecInt;
typedef struct _GParamSpecUInt GParamSpecUInt;
typedef struct _GParamSpecLong GParamSpecLong;
typedef struct _GParamSpecULong GParamSpecULong;
typedef struct _GParamSpecInt64 GParamSpecInt64;
typedef struct _GParamSpecUInt64 GParamSpecUInt64;
typedef struct _GParamSpecUnichar GParamSpecUnichar;
typedef struct _GParamSpecEnum GParamSpecEnum;
typedef struct _GParamSpecFlags GParamSpecFlags;
typedef struct _GParamSpecFloat GParamSpecFloat;
typedef struct _GParamSpecDouble GParamSpecDouble;
typedef struct _GParamSpecString GParamSpecString;
typedef struct _GParamSpecParam GParamSpecParam;
typedef struct _GParamSpecBoxed GParamSpecBoxed;
typedef struct _GParamSpecPointer GParamSpecPointer;
typedef struct _GParamSpecValueArray GParamSpecValueArray;
typedef struct _GParamSpecObject GParamSpecObject;
typedef struct _GParamSpecOverride GParamSpecOverride;
typedef struct _GParamSpecGType GParamSpecGType;
typedef struct _GParamSpecVariant GParamSpecVariant;
# 619 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecChar
{
 GParamSpec parent_instance;

 gint8 minimum;
 gint8 maximum;
 gint8 default_value;
};
# 636 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecUChar
{
 GParamSpec parent_instance;

 guint8 minimum;
 guint8 maximum;
 guint8 default_value;
};







struct _GParamSpecBoolean
{
 GParamSpec parent_instance;

 gboolean default_value;
};
# 666 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecInt
{
 GParamSpec parent_instance;

 gint minimum;
 gint maximum;
 gint default_value;
};
# 683 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecUInt
{
 GParamSpec parent_instance;

 guint minimum;
 guint maximum;
 guint default_value;
};
# 700 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecLong
{
 GParamSpec parent_instance;

 glong minimum;
 glong maximum;
 glong default_value;
};
# 717 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecULong
{
 GParamSpec parent_instance;

 gulong minimum;
 gulong maximum;
 gulong default_value;
};
# 734 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecInt64
{
 GParamSpec parent_instance;

 gint64 minimum;
 gint64 maximum;
 gint64 default_value;
};
# 751 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecUInt64
{
 GParamSpec parent_instance;

 guint64 minimum;
 guint64 maximum;
 guint64 default_value;
};







struct _GParamSpecUnichar
{
 GParamSpec parent_instance;

 gunichar default_value;
};
# 781 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecEnum
{
 GParamSpec parent_instance;

 GEnumClass *enum_class;
 gint default_value;
};
# 797 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecFlags
{
 GParamSpec parent_instance;

 GFlagsClass *flags_class;
 guint default_value;
};
# 815 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecFloat
{
 GParamSpec parent_instance;

 gfloat minimum;
 gfloat maximum;
 gfloat default_value;
 gfloat epsilon;
};
# 835 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecDouble
{
 GParamSpec parent_instance;

 gdouble minimum;
 gdouble maximum;
 gdouble default_value;
 gdouble epsilon;
};
# 857 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecString
{
 GParamSpec parent_instance;

 gchar *default_value;
 gchar *cset_first;
 gchar *cset_nth;
 gchar substitutor;
 guint null_fold_if_empty : 1;
 guint ensure_non_null : 1;
};







struct _GParamSpecParam
{
 GParamSpec parent_instance;
};






struct _GParamSpecBoxed
{
 GParamSpec parent_instance;
};






struct _GParamSpecPointer
{
 GParamSpec parent_instance;
};
# 907 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecValueArray
{
 GParamSpec parent_instance;
 GParamSpec *element_spec;
 guint fixed_n_elements;
};






struct _GParamSpecObject
{
 GParamSpec parent_instance;
};
# 937 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecOverride
{

 GParamSpec parent_instance;
 GParamSpec *overridden;
};
# 952 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecGType
{
 GParamSpec parent_instance;
 GType is_a_type;
};
# 967 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
struct _GParamSpecVariant
{
 GParamSpec parent_instance;
 GVariantType *type;
 GVariant *default_value;


 gpointer padding[4];
};


extern
GParamSpec* g_param_spec_char (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      gint8 minimum,
      gint8 maximum,
      gint8 default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_uchar (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      guint8 minimum,
      guint8 maximum,
      guint8 default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_boolean (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      gboolean default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_int (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      gint minimum,
      gint maximum,
      gint default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_uint (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      guint minimum,
      guint maximum,
      guint default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_long (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      glong minimum,
      glong maximum,
      glong default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_ulong (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      gulong minimum,
      gulong maximum,
      gulong default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_int64 (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      gint64 minimum,
      gint64 maximum,
      gint64 default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_uint64 (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      guint64 minimum,
      guint64 maximum,
      guint64 default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_unichar (const gchar *name,
             const gchar *nick,
             const gchar *blurb,
             gunichar default_value,
             GParamFlags flags);
extern
GParamSpec* g_param_spec_enum (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      GType enum_type,
      gint default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_flags (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      GType flags_type,
      guint default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_float (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      gfloat minimum,
      gfloat maximum,
      gfloat default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_double (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      gdouble minimum,
      gdouble maximum,
      gdouble default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_string (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      const gchar *default_value,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_param (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      GType param_type,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_boxed (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      GType boxed_type,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_pointer (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_value_array (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      GParamSpec *element_spec,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_object (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      GType object_type,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_override (const gchar *name,
      GParamSpec *overridden);
extern
GParamSpec* g_param_spec_gtype (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      GType is_a_type,
      GParamFlags flags);
extern
GParamSpec* g_param_spec_variant (const gchar *name,
      const gchar *nick,
      const gchar *blurb,
      const GVariantType *type,
      GVariant *default_value,
      GParamFlags flags);
# 1160 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gparamspecs.h"
extern GType *g_param_spec_types;

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsourceclosure.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gsourceclosure.h"
extern "C" {

extern
void g_source_set_closure (GSource *source,
     GClosure *closure);

extern
void g_source_set_dummy_callback (GSource *source);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypemodule.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypemodule.h"
extern "C" {

typedef struct _GTypeModule GTypeModule;
typedef struct _GTypeModuleClass GTypeModuleClass;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypemodule.h"
struct _GTypeModule
{
 GObject parent_instance;

 guint use_count;
 GSList *type_infos;
 GSList *interface_infos;


 gchar *name;
};
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypemodule.h"
struct _GTypeModuleClass
{
 GObjectClass parent_class;


 gboolean (* load) (GTypeModule *module);
 void (* unload) (GTypeModule *module);



 void (*reserved1) (void);
 void (*reserved2) (void);
 void (*reserved3) (void);
 void (*reserved4) (void);
};
# 262 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypemodule.h"
extern
GType g_type_module_get_type (void) __attribute__((__const__));
extern
gboolean g_type_module_use (GTypeModule *module);
extern
void g_type_module_unuse (GTypeModule *module);
extern
void g_type_module_set_name (GTypeModule *module,
                                      const gchar *name);
extern
GType g_type_module_register_type (GTypeModule *module,
                                      GType parent_type,
                                      const gchar *type_name,
                                      const GTypeInfo *type_info,
                                      GTypeFlags flags);
extern
void g_type_module_add_interface (GTypeModule *module,
                                      GType instance_type,
                                      GType interface_type,
                                      const GInterfaceInfo *interface_info);
extern
GType g_type_module_register_enum (GTypeModule *module,
                                      const gchar *name,
                                      const GEnumValue *const_static_values);
extern
GType g_type_module_register_flags (GTypeModule *module,
                                      const gchar *name,
                                      const GFlagsValue *const_static_values);

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypeplugin.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypeplugin.h"
extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypeplugin.h"
typedef struct _GTypePluginClass GTypePluginClass;







typedef void (*GTypePluginUse) (GTypePlugin *plugin);






typedef void (*GTypePluginUnuse) (GTypePlugin *plugin);
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypeplugin.h"
typedef void (*GTypePluginCompleteTypeInfo) (GTypePlugin *plugin,
        GType g_type,
        GTypeInfo *info,
        GTypeValueTable *value_table);
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypeplugin.h"
typedef void (*GTypePluginCompleteInterfaceInfo) (GTypePlugin *plugin,
        GType instance_type,
        GType interface_type,
        GInterfaceInfo *info);
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gtypeplugin.h"
struct _GTypePluginClass
{

 GTypeInterface base_iface;


 GTypePluginUse use_plugin;
 GTypePluginUnuse unuse_plugin;
 GTypePluginCompleteTypeInfo complete_type_info;
 GTypePluginCompleteInterfaceInfo complete_interface_info;
};



extern
GType g_type_plugin_get_type (void) __attribute__((__const__));
extern
void g_type_plugin_use (GTypePlugin *plugin);
extern
void g_type_plugin_unuse (GTypePlugin *plugin);
extern
void g_type_plugin_complete_type_info (GTypePlugin *plugin,
      GType g_type,
      GTypeInfo *info,
      GTypeValueTable *value_table);
extern
void g_type_plugin_complete_interface_info (GTypePlugin *plugin,
      GType instance_type,
      GType interface_type,
      GInterfaceInfo *info);

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvaluearray.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvaluearray.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvaluearray.h"
typedef struct _GValueArray GValueArray;







struct _GValueArray
{
 guint n_values;
 GValue *values;


 guint n_prealloced;
};


__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GType g_value_array_get_type (void) __attribute__((__const__));

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GValue* g_value_array_get_nth (GValueArray *value_array,
          guint index_);

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GValueArray* g_value_array_new (guint n_prealloced);

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
void g_value_array_free (GValueArray *value_array);

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GValueArray* g_value_array_copy (const GValueArray *value_array);

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GValueArray* g_value_array_prepend (GValueArray *value_array,
          const GValue *value);

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GValueArray* g_value_array_append (GValueArray *value_array,
          const GValue *value);

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GValueArray* g_value_array_insert (GValueArray *value_array,
          guint index_,
          const GValue *value);

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GValueArray* g_value_array_remove (GValueArray *value_array,
          guint index_);

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GValueArray* g_value_array_sort (GValueArray *value_array,
          GCompareFunc compare_func);

__attribute__((__deprecated__("Use '" "GArray" "' instead"))) extern
GValueArray* g_value_array_sort_with_data (GValueArray *value_array,
          GCompareDataFunc compare_func,
          gpointer user_data);


}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvaluetypes.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvaluetypes.h"
extern "C" {
# 178 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvaluetypes.h"
__attribute__((__deprecated__("Use '" "g_value_set_schar" "' instead"))) extern
void g_value_set_char (GValue *value,
                                                gchar v_char);
__attribute__((__deprecated__("Use '" "g_value_get_schar" "' instead"))) extern
gchar g_value_get_char (const GValue *value);
extern
void g_value_set_schar (GValue *value,
      gint8 v_char);
extern
gint8 g_value_get_schar (const GValue *value);
extern
void g_value_set_uchar (GValue *value,
      guchar v_uchar);
extern
guchar g_value_get_uchar (const GValue *value);
extern
void g_value_set_boolean (GValue *value,
      gboolean v_boolean);
extern
gboolean g_value_get_boolean (const GValue *value);
extern
void g_value_set_int (GValue *value,
      gint v_int);
extern
gint g_value_get_int (const GValue *value);
extern
void g_value_set_uint (GValue *value,
      guint v_uint);
extern
guint g_value_get_uint (const GValue *value);
extern
void g_value_set_long (GValue *value,
      glong v_long);
extern
glong g_value_get_long (const GValue *value);
extern
void g_value_set_ulong (GValue *value,
      gulong v_ulong);
extern
gulong g_value_get_ulong (const GValue *value);
extern
void g_value_set_int64 (GValue *value,
      gint64 v_int64);
extern
gint64 g_value_get_int64 (const GValue *value);
extern
void g_value_set_uint64 (GValue *value,
      guint64 v_uint64);
extern
guint64 g_value_get_uint64 (const GValue *value);
extern
void g_value_set_float (GValue *value,
      gfloat v_float);
extern
gfloat g_value_get_float (const GValue *value);
extern
void g_value_set_double (GValue *value,
      gdouble v_double);
extern
gdouble g_value_get_double (const GValue *value);
extern
void g_value_set_string (GValue *value,
      const gchar *v_string);
extern
void g_value_set_static_string (GValue *value,
      const gchar *v_string);
extern
const gchar * g_value_get_string (const GValue *value);
extern
gchar* g_value_dup_string (const GValue *value);
extern
void g_value_set_pointer (GValue *value,
      gpointer v_pointer);
extern
gpointer g_value_get_pointer (const GValue *value);
extern
GType g_gtype_get_type (void);
extern
void g_value_set_gtype (GValue *value,
      GType v_gtype);
extern
GType g_value_get_gtype (const GValue *value);
extern
void g_value_set_variant (GValue *value,
      GVariant *variant);
extern
void g_value_take_variant (GValue *value,
      GVariant *variant);
extern
GVariant* g_value_get_variant (const GValue *value);
extern
GVariant* g_value_dup_variant (const GValue *value);



extern
GType g_pointer_type_register_static (const gchar *name);


extern
gchar* g_strdup_value_contents (const GValue *value);


extern
void g_value_take_string (GValue *value,
      gchar *v_string);
__attribute__((__deprecated__("Use '" "g_value_take_string" "' instead"))) extern
void g_value_set_string_take_ownership (GValue *value,
                                                gchar *v_string);
# 295 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gvaluetypes.h"
typedef gchar* gchararray;


}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h" 1
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
typedef GObject *GObject_autoptr;
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
#pragma GCC diagnostic push
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"

# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
static inline void glib_autoptr_cleanup_GObject (GObject **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
#pragma GCC diagnostic pop
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"

typedef GInitiallyUnowned *GInitiallyUnowned_autoptr;
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
#pragma GCC diagnostic push
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"

# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
static inline void glib_autoptr_cleanup_GInitiallyUnowned (GInitiallyUnowned **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
#pragma GCC diagnostic pop
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"


# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
#pragma GCC diagnostic push
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"

# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
static inline void glib_auto_cleanup_GValue (GValue *_ptr) { (g_value_unset) (_ptr); }
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"
#pragma GCC diagnostic pop
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gobject/gobject-autocleanups.h"

# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/glib-object.h" 2
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h" 2

extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_APP_INFO_CREATE_NONE = 0,
 G_APP_INFO_CREATE_NEEDS_TERMINAL = (1 << 0),
 G_APP_INFO_CREATE_SUPPORTS_URIS = (1 << 1),
 G_APP_INFO_CREATE_SUPPORTS_STARTUP_NOTIFICATION = (1 << 2)
} GAppInfoCreateFlags;
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_CONVERTER_NO_FLAGS = 0,
 G_CONVERTER_INPUT_AT_END = (1 << 0),
 G_CONVERTER_FLUSH = (1 << 1)
} GConverterFlags;
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_CONVERTER_ERROR = 0,
 G_CONVERTER_CONVERTED = 1,
 G_CONVERTER_FINISHED = 2,
 G_CONVERTER_FLUSHED = 3
} GConverterResult;
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DATA_STREAM_BYTE_ORDER_BIG_ENDIAN,
 G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN,
 G_DATA_STREAM_BYTE_ORDER_HOST_ENDIAN
} GDataStreamByteOrder;
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DATA_STREAM_NEWLINE_TYPE_LF,
 G_DATA_STREAM_NEWLINE_TYPE_CR,
 G_DATA_STREAM_NEWLINE_TYPE_CR_LF,
 G_DATA_STREAM_NEWLINE_TYPE_ANY
} GDataStreamNewlineType;
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_ATTRIBUTE_TYPE_INVALID = 0,
 G_FILE_ATTRIBUTE_TYPE_STRING,
 G_FILE_ATTRIBUTE_TYPE_BYTE_STRING,
 G_FILE_ATTRIBUTE_TYPE_BOOLEAN,
 G_FILE_ATTRIBUTE_TYPE_UINT32,
 G_FILE_ATTRIBUTE_TYPE_INT32,
 G_FILE_ATTRIBUTE_TYPE_UINT64,
 G_FILE_ATTRIBUTE_TYPE_INT64,
 G_FILE_ATTRIBUTE_TYPE_OBJECT,
 G_FILE_ATTRIBUTE_TYPE_STRINGV
} GFileAttributeType;
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_ATTRIBUTE_INFO_NONE = 0,
 G_FILE_ATTRIBUTE_INFO_COPY_WITH_FILE = (1 << 0),
 G_FILE_ATTRIBUTE_INFO_COPY_WHEN_MOVED = (1 << 1)
} GFileAttributeInfoFlags;
# 170 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_ATTRIBUTE_STATUS_UNSET = 0,
 G_FILE_ATTRIBUTE_STATUS_SET,
 G_FILE_ATTRIBUTE_STATUS_ERROR_SETTING
} GFileAttributeStatus;
# 184 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_QUERY_INFO_NONE = 0,
 G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS = (1 << 0)
} GFileQueryInfoFlags;
# 206 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_CREATE_NONE = 0,
 G_FILE_CREATE_PRIVATE = (1 << 0),
 G_FILE_CREATE_REPLACE_DESTINATION = (1 << 1)
} GFileCreateFlags;
# 229 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_MEASURE_NONE = 0,
 G_FILE_MEASURE_REPORT_ANY_ERROR = (1 << 1),
 G_FILE_MEASURE_APPARENT_SIZE = (1 << 2),
 G_FILE_MEASURE_NO_XDEV = (1 << 3)
} GFileMeasureFlags;







typedef enum {
 G_MOUNT_MOUNT_NONE = 0
} GMountMountFlags;
# 255 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_MOUNT_UNMOUNT_NONE = 0,
 G_MOUNT_UNMOUNT_FORCE = (1 << 0)
} GMountUnmountFlags;
# 268 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DRIVE_START_NONE = 0
} GDriveStartFlags;
# 292 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DRIVE_START_STOP_TYPE_UNKNOWN,
 G_DRIVE_START_STOP_TYPE_SHUTDOWN,
 G_DRIVE_START_STOP_TYPE_NETWORK,
 G_DRIVE_START_STOP_TYPE_MULTIDISK,
 G_DRIVE_START_STOP_TYPE_PASSWORD
} GDriveStartStopType;
# 312 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_COPY_NONE = 0,
 G_FILE_COPY_OVERWRITE = (1 << 0),
 G_FILE_COPY_BACKUP = (1 << 1),
 G_FILE_COPY_NOFOLLOW_SYMLINKS = (1 << 2),
 G_FILE_COPY_ALL_METADATA = (1 << 3),
 G_FILE_COPY_NO_FALLBACK_FOR_MOVE = (1 << 4),
 G_FILE_COPY_TARGET_DEFAULT_PERMS = (1 << 5)
} GFileCopyFlags;
# 342 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_MONITOR_NONE = 0,
 G_FILE_MONITOR_WATCH_MOUNTS = (1 << 0),
 G_FILE_MONITOR_SEND_MOVED = (1 << 1),
 G_FILE_MONITOR_WATCH_HARD_LINKS = (1 << 2),
 G_FILE_MONITOR_WATCH_MOVES = (1 << 3)
} GFileMonitorFlags;
# 365 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_TYPE_UNKNOWN = 0,
 G_FILE_TYPE_REGULAR,
 G_FILE_TYPE_DIRECTORY,
 G_FILE_TYPE_SYMBOLIC_LINK,
 G_FILE_TYPE_SPECIAL,
 G_FILE_TYPE_SHORTCUT,
 G_FILE_TYPE_MOUNTABLE
} GFileType;
# 386 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILESYSTEM_PREVIEW_TYPE_IF_ALWAYS = 0,
 G_FILESYSTEM_PREVIEW_TYPE_IF_LOCAL,
 G_FILESYSTEM_PREVIEW_TYPE_NEVER
} GFilesystemPreviewType;
# 416 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_FILE_MONITOR_EVENT_CHANGED,
 G_FILE_MONITOR_EVENT_CHANGES_DONE_HINT,
 G_FILE_MONITOR_EVENT_DELETED,
 G_FILE_MONITOR_EVENT_CREATED,
 G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED,
 G_FILE_MONITOR_EVENT_PRE_UNMOUNT,
 G_FILE_MONITOR_EVENT_UNMOUNTED,
 G_FILE_MONITOR_EVENT_MOVED,
 G_FILE_MONITOR_EVENT_RENAMED,
 G_FILE_MONITOR_EVENT_MOVED_IN,
 G_FILE_MONITOR_EVENT_MOVED_OUT
} GFileMonitorEvent;
# 516 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_IO_ERROR_FAILED,
 G_IO_ERROR_NOT_FOUND,
 G_IO_ERROR_EXISTS,
 G_IO_ERROR_IS_DIRECTORY,
 G_IO_ERROR_NOT_DIRECTORY,
 G_IO_ERROR_NOT_EMPTY,
 G_IO_ERROR_NOT_REGULAR_FILE,
 G_IO_ERROR_NOT_SYMBOLIC_LINK,
 G_IO_ERROR_NOT_MOUNTABLE_FILE,
 G_IO_ERROR_FILENAME_TOO_LONG,
 G_IO_ERROR_INVALID_FILENAME,
 G_IO_ERROR_TOO_MANY_LINKS,
 G_IO_ERROR_NO_SPACE,
 G_IO_ERROR_INVALID_ARGUMENT,
 G_IO_ERROR_PERMISSION_DENIED,
 G_IO_ERROR_NOT_SUPPORTED,
 G_IO_ERROR_NOT_MOUNTED,
 G_IO_ERROR_ALREADY_MOUNTED,
 G_IO_ERROR_CLOSED,
 G_IO_ERROR_CANCELLED,
 G_IO_ERROR_PENDING,
 G_IO_ERROR_READ_ONLY,
 G_IO_ERROR_CANT_CREATE_BACKUP,
 G_IO_ERROR_WRONG_ETAG,
 G_IO_ERROR_TIMED_OUT,
 G_IO_ERROR_WOULD_RECURSE,
 G_IO_ERROR_BUSY,
 G_IO_ERROR_WOULD_BLOCK,
 G_IO_ERROR_HOST_NOT_FOUND,
 G_IO_ERROR_WOULD_MERGE,
 G_IO_ERROR_FAILED_HANDLED,
 G_IO_ERROR_TOO_MANY_OPEN_FILES,
 G_IO_ERROR_NOT_INITIALIZED,
 G_IO_ERROR_ADDRESS_IN_USE,
 G_IO_ERROR_PARTIAL_INPUT,
 G_IO_ERROR_INVALID_DATA,
 G_IO_ERROR_DBUS_ERROR,
 G_IO_ERROR_HOST_UNREACHABLE,
 G_IO_ERROR_NETWORK_UNREACHABLE,
 G_IO_ERROR_CONNECTION_REFUSED,
 G_IO_ERROR_PROXY_FAILED,
 G_IO_ERROR_PROXY_AUTH_FAILED,
 G_IO_ERROR_PROXY_NEED_AUTH,
 G_IO_ERROR_PROXY_NOT_ALLOWED,
 G_IO_ERROR_BROKEN_PIPE,
 G_IO_ERROR_CONNECTION_CLOSED = G_IO_ERROR_BROKEN_PIPE,
 G_IO_ERROR_NOT_CONNECTED,
 G_IO_ERROR_MESSAGE_TOO_LARGE
} GIOErrorEnum;
# 580 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_ASK_PASSWORD_NEED_PASSWORD = (1 << 0),
 G_ASK_PASSWORD_NEED_USERNAME = (1 << 1),
 G_ASK_PASSWORD_NEED_DOMAIN = (1 << 2),
 G_ASK_PASSWORD_SAVING_SUPPORTED = (1 << 3),
 G_ASK_PASSWORD_ANONYMOUS_SUPPORTED = (1 << 4)
} GAskPasswordFlags;
# 600 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_PASSWORD_SAVE_NEVER,
 G_PASSWORD_SAVE_FOR_SESSION,
 G_PASSWORD_SAVE_PERMANENTLY
} GPasswordSave;
# 619 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_MOUNT_OPERATION_HANDLED,
 G_MOUNT_OPERATION_ABORTED,
 G_MOUNT_OPERATION_UNHANDLED
} GMountOperationResult;
# 636 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_OUTPUT_STREAM_SPLICE_NONE = 0,
 G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE = (1 << 0),
 G_OUTPUT_STREAM_SPLICE_CLOSE_TARGET = (1 << 1)
} GOutputStreamSpliceFlags;
# 657 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_IO_STREAM_SPLICE_NONE = 0,
 G_IO_STREAM_SPLICE_CLOSE_STREAM1 = (1 << 0),
 G_IO_STREAM_SPLICE_CLOSE_STREAM2 = (1 << 1),
 G_IO_STREAM_SPLICE_WAIT_FOR_BOTH = (1 << 2)
} GIOStreamSpliceFlags;
# 676 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_EMBLEM_ORIGIN_UNKNOWN,
 G_EMBLEM_ORIGIN_DEVICE,
 G_EMBLEM_ORIGIN_LIVEMETADATA,
 G_EMBLEM_ORIGIN_TAG
} GEmblemOrigin;
# 696 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_RESOLVER_ERROR_NOT_FOUND,
 G_RESOLVER_ERROR_TEMPORARY_FAILURE,
 G_RESOLVER_ERROR_INTERNAL
} GResolverError;
# 737 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_RESOLVER_RECORD_SRV = 1,
 G_RESOLVER_RECORD_MX,
 G_RESOLVER_RECORD_TXT,
 G_RESOLVER_RECORD_SOA,
 G_RESOLVER_RECORD_NS
} GResolverRecordType;
# 755 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_RESOURCE_ERROR_NOT_FOUND,
 G_RESOURCE_ERROR_INTERNAL
} GResourceError;
# 770 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_RESOURCE_FLAGS_NONE = 0,
 G_RESOURCE_FLAGS_COMPRESSED = (1<<0)
} GResourceFlags;
# 783 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_RESOURCE_LOOKUP_FLAGS_NONE = 0
} GResourceLookupFlags;
# 800 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_SOCKET_FAMILY_INVALID,
 G_SOCKET_FAMILY_UNIX = 1,
 G_SOCKET_FAMILY_IPV4 = 2,
 G_SOCKET_FAMILY_IPV6 = 24
} GSocketFamily;
# 821 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_SOCKET_TYPE_INVALID,
 G_SOCKET_TYPE_STREAM,
 G_SOCKET_TYPE_DATAGRAM,
 G_SOCKET_TYPE_SEQPACKET
} GSocketType;
# 846 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_SOCKET_MSG_NONE,
 G_SOCKET_MSG_OOB = 1,
 G_SOCKET_MSG_PEEK = 2,
 G_SOCKET_MSG_DONTROUTE = 4
} GSocketMsgFlags;
# 872 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_SOCKET_PROTOCOL_UNKNOWN = -1,
 G_SOCKET_PROTOCOL_DEFAULT = 0,
 G_SOCKET_PROTOCOL_TCP = 6,
 G_SOCKET_PROTOCOL_UDP = 17,
 G_SOCKET_PROTOCOL_SCTP = 132
} GSocketProtocol;
# 891 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_ZLIB_COMPRESSOR_FORMAT_ZLIB,
 G_ZLIB_COMPRESSOR_FORMAT_GZIP,
 G_ZLIB_COMPRESSOR_FORMAT_RAW
} GZlibCompressorFormat;
# 922 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_UNIX_SOCKET_ADDRESS_INVALID,
 G_UNIX_SOCKET_ADDRESS_ANONYMOUS,
 G_UNIX_SOCKET_ADDRESS_PATH,
 G_UNIX_SOCKET_ADDRESS_ABSTRACT,
 G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED
} GUnixSocketAddressType;
# 941 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_BUS_TYPE_STARTER = -1,
 G_BUS_TYPE_NONE = 0,
 G_BUS_TYPE_SYSTEM = 1,
 G_BUS_TYPE_SESSION = 2
} GBusType;
# 960 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_BUS_NAME_OWNER_FLAGS_NONE = 0,
 G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT = (1<<0),
 G_BUS_NAME_OWNER_FLAGS_REPLACE = (1<<1)
} GBusNameOwnerFlags;
# 978 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_BUS_NAME_WATCHER_FLAGS_NONE = 0,
 G_BUS_NAME_WATCHER_FLAGS_AUTO_START = (1<<0)
} GBusNameWatcherFlags;
# 1002 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_DBUS_PROXY_FLAGS_NONE = 0,
 G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES = (1<<0),
 G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS = (1<<1),
 G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START = (1<<2),
 G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES = (1<<3),
 G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START_AT_CONSTRUCTION = (1<<4)
} GDBusProxyFlags;
# 1119 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{

 G_DBUS_ERROR_FAILED,
 G_DBUS_ERROR_NO_MEMORY,
 G_DBUS_ERROR_SERVICE_UNKNOWN,
 G_DBUS_ERROR_NAME_HAS_NO_OWNER,
 G_DBUS_ERROR_NO_REPLY,
 G_DBUS_ERROR_IO_ERROR,
 G_DBUS_ERROR_BAD_ADDRESS,
 G_DBUS_ERROR_NOT_SUPPORTED,
 G_DBUS_ERROR_LIMITS_EXCEEDED,
 G_DBUS_ERROR_ACCESS_DENIED,
 G_DBUS_ERROR_AUTH_FAILED,
 G_DBUS_ERROR_NO_SERVER,
 G_DBUS_ERROR_TIMEOUT,
 G_DBUS_ERROR_NO_NETWORK,
 G_DBUS_ERROR_ADDRESS_IN_USE,
 G_DBUS_ERROR_DISCONNECTED,
 G_DBUS_ERROR_INVALID_ARGS,
 G_DBUS_ERROR_FILE_NOT_FOUND,
 G_DBUS_ERROR_FILE_EXISTS,
 G_DBUS_ERROR_UNKNOWN_METHOD,
 G_DBUS_ERROR_TIMED_OUT,
 G_DBUS_ERROR_MATCH_RULE_NOT_FOUND,
 G_DBUS_ERROR_MATCH_RULE_INVALID,
 G_DBUS_ERROR_SPAWN_EXEC_FAILED,
 G_DBUS_ERROR_SPAWN_FORK_FAILED,
 G_DBUS_ERROR_SPAWN_CHILD_EXITED,
 G_DBUS_ERROR_SPAWN_CHILD_SIGNALED,
 G_DBUS_ERROR_SPAWN_FAILED,
 G_DBUS_ERROR_SPAWN_SETUP_FAILED,
 G_DBUS_ERROR_SPAWN_CONFIG_INVALID,
 G_DBUS_ERROR_SPAWN_SERVICE_INVALID,
 G_DBUS_ERROR_SPAWN_SERVICE_NOT_FOUND,
 G_DBUS_ERROR_SPAWN_PERMISSIONS_INVALID,
 G_DBUS_ERROR_SPAWN_FILE_INVALID,
 G_DBUS_ERROR_SPAWN_NO_MEMORY,
 G_DBUS_ERROR_UNIX_PROCESS_ID_UNKNOWN,
 G_DBUS_ERROR_INVALID_SIGNATURE,
 G_DBUS_ERROR_INVALID_FILE_CONTENT,
 G_DBUS_ERROR_SELINUX_SECURITY_CONTEXT_UNKNOWN,
 G_DBUS_ERROR_ADT_AUDIT_DATA_UNKNOWN,
 G_DBUS_ERROR_OBJECT_PATH_IN_USE,
 G_DBUS_ERROR_UNKNOWN_OBJECT,
 G_DBUS_ERROR_UNKNOWN_INTERFACE,
 G_DBUS_ERROR_UNKNOWN_PROPERTY,
 G_DBUS_ERROR_PROPERTY_READ_ONLY
} GDBusError;
# 1187 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DBUS_CONNECTION_FLAGS_NONE = 0,
 G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT = (1<<0),
 G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER = (1<<1),
 G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS = (1<<2),
 G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION = (1<<3),
 G_DBUS_CONNECTION_FLAGS_DELAY_MESSAGE_PROCESSING = (1<<4)
} GDBusConnectionFlags;
# 1206 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DBUS_CAPABILITY_FLAGS_NONE = 0,
 G_DBUS_CAPABILITY_FLAGS_UNIX_FD_PASSING = (1<<0)
} GDBusCapabilityFlags;
# 1224 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DBUS_CALL_FLAGS_NONE = 0,
 G_DBUS_CALL_FLAGS_NO_AUTO_START = (1<<0),
 G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION = (1<<1)
} GDBusCallFlags;
# 1243 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DBUS_MESSAGE_TYPE_INVALID,
 G_DBUS_MESSAGE_TYPE_METHOD_CALL,
 G_DBUS_MESSAGE_TYPE_METHOD_RETURN,
 G_DBUS_MESSAGE_TYPE_ERROR,
 G_DBUS_MESSAGE_TYPE_SIGNAL
} GDBusMessageType;
# 1265 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DBUS_MESSAGE_FLAGS_NONE = 0,
 G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED = (1<<0),
 G_DBUS_MESSAGE_FLAGS_NO_AUTO_START = (1<<1),
 G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION = (1<<2)
} GDBusMessageFlags;
# 1289 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_DBUS_MESSAGE_HEADER_FIELD_INVALID,
 G_DBUS_MESSAGE_HEADER_FIELD_PATH,
 G_DBUS_MESSAGE_HEADER_FIELD_INTERFACE,
 G_DBUS_MESSAGE_HEADER_FIELD_MEMBER,
 G_DBUS_MESSAGE_HEADER_FIELD_ERROR_NAME,
 G_DBUS_MESSAGE_HEADER_FIELD_REPLY_SERIAL,
 G_DBUS_MESSAGE_HEADER_FIELD_DESTINATION,
 G_DBUS_MESSAGE_HEADER_FIELD_SENDER,
 G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE,
 G_DBUS_MESSAGE_HEADER_FIELD_NUM_UNIX_FDS
} GDBusMessageHeaderField;
# 1312 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_DBUS_PROPERTY_INFO_FLAGS_NONE = 0,
 G_DBUS_PROPERTY_INFO_FLAGS_READABLE = (1<<0),
 G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE = (1<<1)
} GDBusPropertyInfoFlags;
# 1330 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_DBUS_SUBTREE_FLAGS_NONE = 0,
 G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES = (1<<0)
} GDBusSubtreeFlags;
# 1349 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_DBUS_SERVER_FLAGS_NONE = 0,
 G_DBUS_SERVER_FLAGS_RUN_IN_THREAD = (1<<0),
 G_DBUS_SERVER_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS = (1<<1)
} GDBusServerFlags;
# 1372 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_DBUS_SIGNAL_FLAGS_NONE = 0,
 G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE = (1<<0),
 G_DBUS_SIGNAL_FLAGS_MATCH_ARG0_NAMESPACE = (1<<1),
 G_DBUS_SIGNAL_FLAGS_MATCH_ARG0_PATH = (1<<2)
} GDBusSignalFlags;
# 1391 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_DBUS_SEND_MESSAGE_FLAGS_NONE = 0,
 G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL = (1<<0)
} GDBusSendMessageFlags;
# 1411 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_CREDENTIALS_TYPE_INVALID,
 G_CREDENTIALS_TYPE_LINUX_UCRED,
 G_CREDENTIALS_TYPE_FREEBSD_CMSGCRED,
 G_CREDENTIALS_TYPE_OPENBSD_SOCKPEERCRED,
 G_CREDENTIALS_TYPE_SOLARIS_UCRED,
 G_CREDENTIALS_TYPE_NETBSD_UNPCBID
} GCredentialsType;
# 1430 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_DBUS_MESSAGE_BYTE_ORDER_BIG_ENDIAN = 'B',
 G_DBUS_MESSAGE_BYTE_ORDER_LITTLE_ENDIAN = 'l'
} GDBusMessageByteOrder;
# 1475 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_APPLICATION_FLAGS_NONE,
 G_APPLICATION_IS_SERVICE = (1 << 0),
 G_APPLICATION_IS_LAUNCHER = (1 << 1),

 G_APPLICATION_HANDLES_OPEN = (1 << 2),
 G_APPLICATION_HANDLES_COMMAND_LINE = (1 << 3),
 G_APPLICATION_SEND_ENVIRONMENT = (1 << 4),

 G_APPLICATION_NON_UNIQUE = (1 << 5),

 G_APPLICATION_CAN_OVERRIDE_APP_ID = (1 << 6)
} GApplicationFlags;
# 1511 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_TLS_ERROR_UNAVAILABLE,
 G_TLS_ERROR_MISC,
 G_TLS_ERROR_BAD_CERTIFICATE,
 G_TLS_ERROR_NOT_TLS,
 G_TLS_ERROR_HANDSHAKE,
 G_TLS_ERROR_CERTIFICATE_REQUIRED,
 G_TLS_ERROR_EOF
} GTlsError;
# 1547 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_TLS_CERTIFICATE_UNKNOWN_CA = (1 << 0),
 G_TLS_CERTIFICATE_BAD_IDENTITY = (1 << 1),
 G_TLS_CERTIFICATE_NOT_ACTIVATED = (1 << 2),
 G_TLS_CERTIFICATE_EXPIRED = (1 << 3),
 G_TLS_CERTIFICATE_REVOKED = (1 << 4),
 G_TLS_CERTIFICATE_INSECURE = (1 << 5),
 G_TLS_CERTIFICATE_GENERIC_ERROR = (1 << 6),

 G_TLS_CERTIFICATE_VALIDATE_ALL = 0x007f
} GTlsCertificateFlags;
# 1569 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_TLS_AUTHENTICATION_NONE,
 G_TLS_AUTHENTICATION_REQUESTED,
 G_TLS_AUTHENTICATION_REQUIRED
} GTlsAuthenticationMode;
# 1586 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_TLS_REHANDSHAKE_NEVER,
 G_TLS_REHANDSHAKE_SAFELY,
 G_TLS_REHANDSHAKE_UNSAFELY
} GTlsRehandshakeMode;
# 1606 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum _GTlsPasswordFlags
{
 G_TLS_PASSWORD_NONE = 0,
 G_TLS_PASSWORD_RETRY = 1 << 1,
 G_TLS_PASSWORD_MANY_TRIES = 1 << 2,
 G_TLS_PASSWORD_FINAL_TRY = 1 << 3
} GTlsPasswordFlags;
# 1628 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_TLS_INTERACTION_UNHANDLED,
 G_TLS_INTERACTION_HANDLED,
 G_TLS_INTERACTION_FAILED
} GTlsInteractionResult;
# 1646 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_DBUS_INTERFACE_SKELETON_FLAGS_NONE = 0,
 G_DBUS_INTERFACE_SKELETON_FLAGS_HANDLE_METHOD_INVOCATIONS_IN_THREAD = (1<<0)
} GDBusInterfaceSkeletonFlags;
# 1664 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum
{
 G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_NONE = 0,
 G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START = (1<<0)
} GDBusObjectManagerClientFlags;
# 1678 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_TLS_DATABASE_VERIFY_NONE = 0
} GTlsDatabaseVerifyFlags;
# 1694 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_TLS_DATABASE_LOOKUP_NONE = 0,
 G_TLS_DATABASE_LOOKUP_KEYPAIR = 1
} GTlsDatabaseLookupFlags;
# 1709 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_TLS_CERTIFICATE_REQUEST_NONE = 0
} GTlsCertificateRequestFlags;
# 1724 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_IO_MODULE_SCOPE_NONE,
 G_IO_MODULE_SCOPE_BLOCK_DUPLICATES
} GIOModuleScopeFlags;
# 1755 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_SOCKET_CLIENT_RESOLVING,
 G_SOCKET_CLIENT_RESOLVED,
 G_SOCKET_CLIENT_CONNECTING,
 G_SOCKET_CLIENT_CONNECTED,
 G_SOCKET_CLIENT_PROXY_NEGOTIATING,
 G_SOCKET_CLIENT_PROXY_NEGOTIATED,
 G_SOCKET_CLIENT_TLS_HANDSHAKING,
 G_SOCKET_CLIENT_TLS_HANDSHAKED,
 G_SOCKET_CLIENT_COMPLETE
} GSocketClientEvent;
# 1783 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_SOCKET_LISTENER_BINDING,
 G_SOCKET_LISTENER_BOUND,
 G_SOCKET_LISTENER_LISTENING,
 G_SOCKET_LISTENER_LISTENED
} GSocketListenerEvent;
# 1798 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_TEST_DBUS_NONE = 0
} GTestDBusFlags;
# 1840 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_SUBPROCESS_FLAGS_NONE = 0,
 G_SUBPROCESS_FLAGS_STDIN_PIPE = (1u << 0),
 G_SUBPROCESS_FLAGS_STDIN_INHERIT = (1u << 1),
 G_SUBPROCESS_FLAGS_STDOUT_PIPE = (1u << 2),
 G_SUBPROCESS_FLAGS_STDOUT_SILENCE = (1u << 3),
 G_SUBPROCESS_FLAGS_STDERR_PIPE = (1u << 4),
 G_SUBPROCESS_FLAGS_STDERR_SILENCE = (1u << 5),
 G_SUBPROCESS_FLAGS_STDERR_MERGE = (1u << 6),
 G_SUBPROCESS_FLAGS_INHERIT_FDS = (1u << 7)
} GSubprocessFlags;
# 1871 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_NOTIFICATION_PRIORITY_NORMAL,
 G_NOTIFICATION_PRIORITY_LOW,
 G_NOTIFICATION_PRIORITY_HIGH,
 G_NOTIFICATION_PRIORITY_URGENT
} GNotificationPriority;
# 1895 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenums.h"
typedef enum {
 G_NETWORK_CONNECTIVITY_LOCAL = 1,
 G_NETWORK_CONNECTIVITY_LIMITED = 2,
 G_NETWORK_CONNECTIVITY_PORTAL = 3,
 G_NETWORK_CONNECTIVITY_FULL = 4
} GNetworkConnectivity;

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h" 2

extern "C" {

typedef struct _GAppLaunchContext GAppLaunchContext;
typedef struct _GAppInfo GAppInfo;
typedef struct _GAsyncResult GAsyncResult;
typedef struct _GAsyncInitable GAsyncInitable;
typedef struct _GBufferedInputStream GBufferedInputStream;
typedef struct _GBufferedOutputStream GBufferedOutputStream;
typedef struct _GCancellable GCancellable;
typedef struct _GCharsetConverter GCharsetConverter;
typedef struct _GConverter GConverter;
typedef struct _GConverterInputStream GConverterInputStream;
typedef struct _GConverterOutputStream GConverterOutputStream;
typedef struct _GDatagramBased GDatagramBased;
typedef struct _GDataInputStream GDataInputStream;
typedef struct _GSimplePermission GSimplePermission;
typedef struct _GZlibCompressor GZlibCompressor;
typedef struct _GZlibDecompressor GZlibDecompressor;

typedef struct _GSimpleActionGroup GSimpleActionGroup;
typedef struct _GRemoteActionGroup GRemoteActionGroup;
typedef struct _GDBusActionGroup GDBusActionGroup;
typedef struct _GActionMap GActionMap;
typedef struct _GActionGroup GActionGroup;
typedef struct _GPropertyAction GPropertyAction;
typedef struct _GSimpleAction GSimpleAction;
typedef struct _GAction GAction;
typedef struct _GApplication GApplication;
typedef struct _GApplicationCommandLine GApplicationCommandLine;
typedef struct _GSettingsBackend GSettingsBackend;
typedef struct _GSettings GSettings;
typedef struct _GPermission GPermission;

typedef struct _GMenuModel GMenuModel;
typedef struct _GNotification GNotification;






typedef struct _GDrive GDrive;
typedef struct _GFileEnumerator GFileEnumerator;
typedef struct _GFileMonitor GFileMonitor;
typedef struct _GFilterInputStream GFilterInputStream;
typedef struct _GFilterOutputStream GFilterOutputStream;
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GFile GFile;
typedef struct _GFileInfo GFileInfo;






typedef struct _GFileAttributeMatcher GFileAttributeMatcher;
typedef struct _GFileAttributeInfo GFileAttributeInfo;
typedef struct _GFileAttributeInfoList GFileAttributeInfoList;
typedef struct _GFileDescriptorBased GFileDescriptorBased;
typedef struct _GFileInputStream GFileInputStream;
typedef struct _GFileOutputStream GFileOutputStream;
typedef struct _GFileIOStream GFileIOStream;
typedef struct _GFileIcon GFileIcon;
typedef struct _GFilenameCompleter GFilenameCompleter;


typedef struct _GIcon GIcon;
typedef struct _GInetAddress GInetAddress;
typedef struct _GInetAddressMask GInetAddressMask;
typedef struct _GInetSocketAddress GInetSocketAddress;
typedef struct _GNativeSocketAddress GNativeSocketAddress;
typedef struct _GInputStream GInputStream;
typedef struct _GInitable GInitable;
typedef struct _GIOModule GIOModule;
typedef struct _GIOExtensionPoint GIOExtensionPoint;
typedef struct _GIOExtension GIOExtension;






typedef struct _GIOSchedulerJob GIOSchedulerJob;
typedef struct _GIOStreamAdapter GIOStreamAdapter;
typedef struct _GLoadableIcon GLoadableIcon;
typedef struct _GBytesIcon GBytesIcon;
typedef struct _GMemoryInputStream GMemoryInputStream;
typedef struct _GMemoryOutputStream GMemoryOutputStream;






typedef struct _GMount GMount;
typedef struct _GMountOperation GMountOperation;
typedef struct _GNetworkAddress GNetworkAddress;
typedef struct _GNetworkMonitor GNetworkMonitor;
typedef struct _GNetworkService GNetworkService;
typedef struct _GOutputStream GOutputStream;
typedef struct _GIOStream GIOStream;
typedef struct _GSimpleIOStream GSimpleIOStream;
typedef struct _GPollableInputStream GPollableInputStream;
typedef struct _GPollableOutputStream GPollableOutputStream;
typedef struct _GResolver GResolver;
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GResource GResource;
typedef struct _GSeekable GSeekable;
typedef struct _GSimpleAsyncResult GSimpleAsyncResult;
# 161 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GSocket GSocket;







typedef struct _GSocketControlMessage GSocketControlMessage;







typedef struct _GSocketClient GSocketClient;







typedef struct _GSocketConnection GSocketConnection;







typedef struct _GSocketListener GSocketListener;
# 202 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GSocketService GSocketService;
typedef struct _GSocketAddress GSocketAddress;
typedef struct _GSocketAddressEnumerator GSocketAddressEnumerator;
typedef struct _GSocketConnectable GSocketConnectable;
typedef struct _GSrvTarget GSrvTarget;
typedef struct _GTask GTask;







typedef struct _GTcpConnection GTcpConnection;
typedef struct _GTcpWrapperConnection GTcpWrapperConnection;
# 225 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GThreadedSocketService GThreadedSocketService;
typedef struct _GDtlsConnection GDtlsConnection;
typedef struct _GDtlsClientConnection GDtlsClientConnection;
typedef struct _GDtlsServerConnection GDtlsServerConnection;
typedef struct _GThemedIcon GThemedIcon;
typedef struct _GTlsCertificate GTlsCertificate;
typedef struct _GTlsClientConnection GTlsClientConnection;
typedef struct _GTlsConnection GTlsConnection;
typedef struct _GTlsDatabase GTlsDatabase;
typedef struct _GTlsFileDatabase GTlsFileDatabase;
typedef struct _GTlsInteraction GTlsInteraction;
typedef struct _GTlsPassword GTlsPassword;
typedef struct _GTlsServerConnection GTlsServerConnection;
typedef struct _GVfs GVfs;
# 247 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GProxyResolver GProxyResolver;
typedef struct _GProxy GProxy;
typedef struct _GProxyAddress GProxyAddress;
typedef struct _GProxyAddressEnumerator GProxyAddressEnumerator;






typedef struct _GVolume GVolume;
typedef struct _GVolumeMonitor GVolumeMonitor;
# 269 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef void (*GAsyncReadyCallback) (GObject *source_object,
        GAsyncResult *res,
        gpointer user_data);
# 283 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef void (*GFileProgressCallback) (goffset current_num_bytes,
                                      goffset total_num_bytes,
                                      gpointer user_data);
# 300 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef gboolean (* GFileReadMoreCallback) (const char *file_contents,
                                           goffset file_size,
                                           gpointer callback_data);
# 342 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef void (* GFileMeasureProgressCallback) (gboolean reporting,
                                              guint64 current_size,
                                              guint64 num_dirs,
                                              guint64 num_files,
                                              gpointer user_data);
# 362 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef gboolean (*GIOSchedulerJobFunc) (GIOSchedulerJob *job,
     GCancellable *cancellable,
     gpointer user_data);
# 375 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef void (*GSimpleAsyncThreadFunc) (GSimpleAsyncResult *res,
                                       GObject *object,
                                       GCancellable *cancellable);
# 392 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef gboolean (*GSocketSourceFunc) (GSocket *socket,
          GIOCondition condition,
          gpointer user_data);
# 410 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef gboolean (*GDatagramBasedSourceFunc) (GDatagramBased *datagram_based,
                                             GIOCondition condition,
                                             gpointer user_data);
# 426 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GInputVector GInputVector;

struct _GInputVector {
 gpointer buffer;
 gsize size;
};
# 472 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GInputMessage GInputMessage;

struct _GInputMessage {
 GSocketAddress **address;

 GInputVector *vectors;
 guint num_vectors;

 gsize bytes_received;
 gint flags;

 GSocketControlMessage ***control_messages;
 guint *num_control_messages;
};
# 499 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GOutputVector GOutputVector;

struct _GOutputVector {
 gconstpointer buffer;
 gsize size;
};
# 527 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GOutputMessage GOutputMessage;

struct _GOutputMessage {
 GSocketAddress *address;

 GOutputVector *vectors;
 guint num_vectors;

 guint bytes_sent;

 GSocketControlMessage **control_messages;
 guint num_control_messages;
};

typedef struct _GCredentials GCredentials;
typedef struct _GUnixCredentialsMessage GUnixCredentialsMessage;
typedef struct _GUnixFDList GUnixFDList;
typedef struct _GDBusMessage GDBusMessage;
typedef struct _GDBusConnection GDBusConnection;
typedef struct _GDBusProxy GDBusProxy;
typedef struct _GDBusMethodInvocation GDBusMethodInvocation;
typedef struct _GDBusServer GDBusServer;
typedef struct _GDBusAuthObserver GDBusAuthObserver;
typedef struct _GDBusErrorEntry GDBusErrorEntry;
typedef struct _GDBusInterfaceVTable GDBusInterfaceVTable;
typedef struct _GDBusSubtreeVTable GDBusSubtreeVTable;
typedef struct _GDBusAnnotationInfo GDBusAnnotationInfo;
typedef struct _GDBusArgInfo GDBusArgInfo;
typedef struct _GDBusMethodInfo GDBusMethodInfo;
typedef struct _GDBusSignalInfo GDBusSignalInfo;
typedef struct _GDBusPropertyInfo GDBusPropertyInfo;
typedef struct _GDBusInterfaceInfo GDBusInterfaceInfo;
typedef struct _GDBusNodeInfo GDBusNodeInfo;
# 573 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef gboolean (*GCancellableSourceFunc) (GCancellable *cancellable,
        gpointer user_data);
# 589 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef gboolean (*GPollableSourceFunc) (GObject *pollable_stream,
     gpointer user_data);

typedef struct _GDBusInterface GDBusInterface;
typedef struct _GDBusInterfaceSkeleton GDBusInterfaceSkeleton;
typedef struct _GDBusObject GDBusObject;
typedef struct _GDBusObjectSkeleton GDBusObjectSkeleton;
typedef struct _GDBusObjectProxy GDBusObjectProxy;
typedef struct _GDBusObjectManager GDBusObjectManager;
typedef struct _GDBusObjectManagerClient GDBusObjectManagerClient;
typedef struct _GDBusObjectManagerServer GDBusObjectManagerServer;
# 622 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef GType (*GDBusProxyTypeFunc) (GDBusObjectManagerClient *manager,
                                    const gchar *object_path,
                                    const gchar *interface_name,
                                    gpointer user_data);

typedef struct _GTestDBus GTestDBus;
# 636 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h"
typedef struct _GSubprocess GSubprocess;







typedef struct _GSubprocessLauncher GSubprocessLauncher;

}
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gaction.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gaction.h"
extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gaction.h"
typedef struct _GActionInterface GActionInterface;

struct _GActionInterface
{
 GTypeInterface g_iface;


 const gchar * (* get_name) (GAction *action);
 const GVariantType * (* get_parameter_type) (GAction *action);
 const GVariantType * (* get_state_type) (GAction *action);
 GVariant * (* get_state_hint) (GAction *action);

 gboolean (* get_enabled) (GAction *action);
 GVariant * (* get_state) (GAction *action);

 void (* change_state) (GAction *action,
                                                GVariant *value);
 void (* activate) (GAction *action,
                                                GVariant *parameter);
};

extern
GType g_action_get_type (void) __attribute__((__const__));

extern
const gchar * g_action_get_name (GAction *action);
extern
const GVariantType * g_action_get_parameter_type (GAction *action);
extern
const GVariantType * g_action_get_state_type (GAction *action);
extern
GVariant * g_action_get_state_hint (GAction *action);

extern
gboolean g_action_get_enabled (GAction *action);
extern
GVariant * g_action_get_state (GAction *action);

extern
void g_action_change_state (GAction *action,
                                                                        GVariant *value);
extern
void g_action_activate (GAction *action,
                                                                        GVariant *parameter);

extern
gboolean g_action_name_is_valid (const gchar *action_name);

extern
gboolean g_action_parse_detailed_name (const gchar *detailed_name,
                                                                        gchar **action_name,
                                                                        GVariant **target_value,
                                                                        GError **error);

extern
gchar * g_action_print_detailed_name (const gchar *action_name,
                                                                        GVariant *target_value);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactiongroup.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactiongroup.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactiongroup.h"
typedef struct _GActionGroupInterface GActionGroupInterface;

struct _GActionGroupInterface
{
 GTypeInterface g_iface;


 gboolean (* has_action) (GActionGroup *action_group,
                                                       const gchar *action_name);

 gchar ** (* list_actions) (GActionGroup *action_group);

 gboolean (* get_action_enabled) (GActionGroup *action_group,
                                                       const gchar *action_name);

 const GVariantType * (* get_action_parameter_type) (GActionGroup *action_group,
                                                       const gchar *action_name);

 const GVariantType * (* get_action_state_type) (GActionGroup *action_group,
                                                       const gchar *action_name);

 GVariant * (* get_action_state_hint) (GActionGroup *action_group,
                                                       const gchar *action_name);

 GVariant * (* get_action_state) (GActionGroup *action_group,
                                                       const gchar *action_name);

 void (* change_action_state) (GActionGroup *action_group,
                                                       const gchar *action_name,
                                                       GVariant *value);

 void (* activate_action) (GActionGroup *action_group,
                                                       const gchar *action_name,
                                                       GVariant *parameter);


 void (* action_added) (GActionGroup *action_group,
                                                       const gchar *action_name);
 void (* action_removed) (GActionGroup *action_group,
                                                       const gchar *action_name);
 void (* action_enabled_changed) (GActionGroup *action_group,
                                                       const gchar *action_name,
                                                       gboolean enabled);
 void (* action_state_changed) (GActionGroup *action_group,
                                                       const gchar *action_name,
                                                       GVariant *state);


 gboolean (* query_action) (GActionGroup *action_group,
                                                       const gchar *action_name,
                                                       gboolean *enabled,
                                                       const GVariantType **parameter_type,
                                                       const GVariantType **state_type,
                                                       GVariant **state_hint,
                                                       GVariant **state);
};

extern
GType g_action_group_get_type (void) __attribute__((__const__));

extern
gboolean g_action_group_has_action (GActionGroup *action_group,
                                                                        const gchar *action_name);
extern
gchar ** g_action_group_list_actions (GActionGroup *action_group);

extern
const GVariantType * g_action_group_get_action_parameter_type (GActionGroup *action_group,
                                                                        const gchar *action_name);
extern
const GVariantType * g_action_group_get_action_state_type (GActionGroup *action_group,
                                                                        const gchar *action_name);
extern
GVariant * g_action_group_get_action_state_hint (GActionGroup *action_group,
                                                                        const gchar *action_name);

extern
gboolean g_action_group_get_action_enabled (GActionGroup *action_group,
                                                                        const gchar *action_name);

extern
GVariant * g_action_group_get_action_state (GActionGroup *action_group,
                                                                        const gchar *action_name);
extern
void g_action_group_change_action_state (GActionGroup *action_group,
                                                                        const gchar *action_name,
                                                                        GVariant *value);

extern
void g_action_group_activate_action (GActionGroup *action_group,
                                                                        const gchar *action_name,
                                                                        GVariant *parameter);


extern
void g_action_group_action_added (GActionGroup *action_group,
                                                                        const gchar *action_name);
extern
void g_action_group_action_removed (GActionGroup *action_group,
                                                                        const gchar *action_name);
extern
void g_action_group_action_enabled_changed (GActionGroup *action_group,
                                                                        const gchar *action_name,
                                                                        gboolean enabled);

extern
void g_action_group_action_state_changed (GActionGroup *action_group,
                                                                        const gchar *action_name,
                                                                        GVariant *state);

extern
gboolean g_action_group_query_action (GActionGroup *action_group,
                                                                        const gchar *action_name,
                                                                        gboolean *enabled,
                                                                        const GVariantType **parameter_type,
                                                                        const GVariantType **state_type,
                                                                        GVariant **state_hint,
                                                                        GVariant **state);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactiongroupexporter.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactiongroupexporter.h"
extern "C" {

extern
guint g_dbus_connection_export_action_group (GDBusConnection *connection,
                                                                        const gchar *object_path,
                                                                        GActionGroup *action_group,
                                                                        GError **error);

extern
void g_dbus_connection_unexport_action_group (GDBusConnection *connection,
                                                                        guint export_id);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactionmap.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactionmap.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactionmap.h"
typedef struct _GActionMapInterface GActionMapInterface;
typedef struct _GActionEntry GActionEntry;

struct _GActionMapInterface
{
 GTypeInterface g_iface;

 GAction * (* lookup_action) (GActionMap *action_map,
                              const gchar *action_name);
 void (* add_action) (GActionMap *action_map,
                              GAction *action);
 void (* remove_action) (GActionMap *action_map,
                              const gchar *action_name);
};

struct _GActionEntry
{
 const gchar *name;

 void (* activate) (GSimpleAction *action,
                    GVariant *parameter,
                    gpointer user_data);

 const gchar *parameter_type;

 const gchar *state;

 void (* change_state) (GSimpleAction *action,
                        GVariant *value,
                        gpointer user_data);


 gsize padding[3];
};

extern
GType g_action_map_get_type (void) __attribute__((__const__));

extern
GAction * g_action_map_lookup_action (GActionMap *action_map,
                                                                        const gchar *action_name);
extern
void g_action_map_add_action (GActionMap *action_map,
                                                                        GAction *action);
extern
void g_action_map_remove_action (GActionMap *action_map,
                                                                        const gchar *action_name);
extern
void g_action_map_add_action_entries (GActionMap *action_map,
                                                                        const GActionEntry *entries,
                                                                        gint n_entries,
                                                                        gpointer user_data);

}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gappinfo.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gappinfo.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gappinfo.h"
typedef struct _GAppLaunchContextClass GAppLaunchContextClass;
typedef struct _GAppLaunchContextPrivate GAppLaunchContextPrivate;
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gappinfo.h"
typedef struct _GAppInfoIface GAppInfoIface;

struct _GAppInfoIface
{
 GTypeInterface g_iface;



 GAppInfo * (* dup) (GAppInfo *appinfo);
 gboolean (* equal) (GAppInfo *appinfo1,
                                                GAppInfo *appinfo2);
 const char * (* get_id) (GAppInfo *appinfo);
 const char * (* get_name) (GAppInfo *appinfo);
 const char * (* get_description) (GAppInfo *appinfo);
 const char * (* get_executable) (GAppInfo *appinfo);
 GIcon * (* get_icon) (GAppInfo *appinfo);
 gboolean (* launch) (GAppInfo *appinfo,
                                                GList *files,
                                                GAppLaunchContext *launch_context,
                                                GError **error);
 gboolean (* supports_uris) (GAppInfo *appinfo);
 gboolean (* supports_files) (GAppInfo *appinfo);
 gboolean (* launch_uris) (GAppInfo *appinfo,
                                                GList *uris,
                                                GAppLaunchContext *launch_context,
                                                GError **error);
 gboolean (* should_show) (GAppInfo *appinfo);


 gboolean (* set_as_default_for_type) (GAppInfo *appinfo,
                                                const char *content_type,
                                                GError **error);
 gboolean (* set_as_default_for_extension) (GAppInfo *appinfo,
                                                const char *extension,
                                                GError **error);
 gboolean (* add_supports_type) (GAppInfo *appinfo,
                                                const char *content_type,
                                                GError **error);
 gboolean (* can_remove_supports_type) (GAppInfo *appinfo);
 gboolean (* remove_supports_type) (GAppInfo *appinfo,
                                                const char *content_type,
                                                GError **error);
 gboolean (* can_delete) (GAppInfo *appinfo);
 gboolean (* do_delete) (GAppInfo *appinfo);
 const char * (* get_commandline) (GAppInfo *appinfo);
 const char * (* get_display_name) (GAppInfo *appinfo);
 gboolean (* set_as_last_used_for_type) (GAppInfo *appinfo,
                                                const char *content_type,
                                                GError **error);
 const char ** (* get_supported_types) (GAppInfo *appinfo);
};

extern
GType g_app_info_get_type (void) __attribute__((__const__));
extern
GAppInfo * g_app_info_create_from_commandline (const char *commandline,
                                                    const char *application_name,
                                                    GAppInfoCreateFlags flags,
                                                    GError **error);
extern
GAppInfo * g_app_info_dup (GAppInfo *appinfo);
extern
gboolean g_app_info_equal (GAppInfo *appinfo1,
                                                    GAppInfo *appinfo2);
extern
const char *g_app_info_get_id (GAppInfo *appinfo);
extern
const char *g_app_info_get_name (GAppInfo *appinfo);
extern
const char *g_app_info_get_display_name (GAppInfo *appinfo);
extern
const char *g_app_info_get_description (GAppInfo *appinfo);
extern
const char *g_app_info_get_executable (GAppInfo *appinfo);
extern
const char *g_app_info_get_commandline (GAppInfo *appinfo);
extern
GIcon * g_app_info_get_icon (GAppInfo *appinfo);
extern
gboolean g_app_info_launch (GAppInfo *appinfo,
                                                    GList *files,
                                                    GAppLaunchContext *launch_context,
                                                    GError **error);
extern
gboolean g_app_info_supports_uris (GAppInfo *appinfo);
extern
gboolean g_app_info_supports_files (GAppInfo *appinfo);
extern
gboolean g_app_info_launch_uris (GAppInfo *appinfo,
                                                    GList *uris,
                                                    GAppLaunchContext *launch_context,
                                                    GError **error);
extern
gboolean g_app_info_should_show (GAppInfo *appinfo);

extern
gboolean g_app_info_set_as_default_for_type (GAppInfo *appinfo,
                                                    const char *content_type,
                                                    GError **error);
extern
gboolean g_app_info_set_as_default_for_extension (GAppInfo *appinfo,
                                                    const char *extension,
                                                    GError **error);
extern
gboolean g_app_info_add_supports_type (GAppInfo *appinfo,
                                                    const char *content_type,
                                                    GError **error);
extern
gboolean g_app_info_can_remove_supports_type (GAppInfo *appinfo);
extern
gboolean g_app_info_remove_supports_type (GAppInfo *appinfo,
                                                    const char *content_type,
                                                    GError **error);
extern
const char **g_app_info_get_supported_types (GAppInfo *appinfo);

extern
gboolean g_app_info_can_delete (GAppInfo *appinfo);
extern
gboolean g_app_info_delete (GAppInfo *appinfo);

extern
gboolean g_app_info_set_as_last_used_for_type (GAppInfo *appinfo,
                                                    const char *content_type,
                                                    GError **error);

extern
GList * g_app_info_get_all (void);
extern
GList * g_app_info_get_all_for_type (const char *content_type);
extern
GList * g_app_info_get_recommended_for_type (const gchar *content_type);
extern
GList * g_app_info_get_fallback_for_type (const gchar *content_type);

extern
void g_app_info_reset_type_associations (const char *content_type);
extern
GAppInfo *g_app_info_get_default_for_type (const char *content_type,
                                                 gboolean must_support_uris);
extern
GAppInfo *g_app_info_get_default_for_uri_scheme (const char *uri_scheme);

extern
gboolean g_app_info_launch_default_for_uri (const char *uri,
                                                 GAppLaunchContext *launch_context,
                                                 GError **error);
# 240 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gappinfo.h"
struct _GAppLaunchContext
{
 GObject parent_instance;


 GAppLaunchContextPrivate *priv;
};

struct _GAppLaunchContextClass
{
 GObjectClass parent_class;

 char * (* get_display) (GAppLaunchContext *context,
                                   GAppInfo *info,
                                   GList *files);
 char * (* get_startup_notify_id) (GAppLaunchContext *context,
                                   GAppInfo *info,
                                   GList *files);
 void (* launch_failed) (GAppLaunchContext *context,
                                   const char *startup_notify_id);
 void (* launched) (GAppLaunchContext *context,
                                   GAppInfo *info,
                                   GVariant *platform_data);


 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
};

extern
GType g_app_launch_context_get_type (void) __attribute__((__const__));
extern
GAppLaunchContext *g_app_launch_context_new (void);

extern
void g_app_launch_context_setenv (GAppLaunchContext *context,
                                                              const char *variable,
                                                              const char *value);
extern
void g_app_launch_context_unsetenv (GAppLaunchContext *context,
                                                              const char *variable);
extern
char ** g_app_launch_context_get_environment (GAppLaunchContext *context);

extern
char * g_app_launch_context_get_display (GAppLaunchContext *context,
                                                              GAppInfo *info,
                                                              GList *files);
extern
char * g_app_launch_context_get_startup_notify_id (GAppLaunchContext *context,
                                                              GAppInfo *info,
                                                              GList *files);
extern
void g_app_launch_context_launch_failed (GAppLaunchContext *context,
                                                              const char * startup_notify_id);







typedef struct _GAppInfoMonitor GAppInfoMonitor;

extern
GType g_app_info_monitor_get_type (void);

extern
GAppInfoMonitor * g_app_info_monitor_get (void);

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gapplication.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gapplication.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gapplication.h"
typedef struct _GApplicationPrivate GApplicationPrivate;
typedef struct _GApplicationClass GApplicationClass;

struct _GApplication
{

 GObject parent_instance;

 GApplicationPrivate *priv;
};

struct _GApplicationClass
{

 GObjectClass parent_class;



 void (* startup) (GApplication *application);

 void (* activate) (GApplication *application);

 void (* open) (GApplication *application,
                                                    GFile **files,
                                                    gint n_files,
                                                    const gchar *hint);

 int (* command_line) (GApplication *application,
                                                    GApplicationCommandLine *command_line);
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gapplication.h"
 gboolean (* local_command_line) (GApplication *application,
                                                    gchar ***arguments,
                                                    int *exit_status);

 void (* before_emit) (GApplication *application,
                                                    GVariant *platform_data);
 void (* after_emit) (GApplication *application,
                                                    GVariant *platform_data);
 void (* add_platform_data) (GApplication *application,
                                                    GVariantBuilder *builder);
 void (* quit_mainloop) (GApplication *application);
 void (* run_mainloop) (GApplication *application);
 void (* shutdown) (GApplication *application);

 gboolean (* dbus_register) (GApplication *application,
                                                    GDBusConnection *connection,
                                                    const gchar *object_path,
                                                    GError **error);
 void (* dbus_unregister) (GApplication *application,
                                                    GDBusConnection *connection,
                                                    const gchar *object_path);
 gint (* handle_local_options)(GApplication *application,
                                                    GVariantDict *options);


 gpointer padding[8];
};

extern
GType g_application_get_type (void) __attribute__((__const__));

extern
gboolean g_application_id_is_valid (const gchar *application_id);

extern
GApplication * g_application_new (const gchar *application_id,
                                                                        GApplicationFlags flags);

extern
const gchar * g_application_get_application_id (GApplication *application);
extern
void g_application_set_application_id (GApplication *application,
                                                                        const gchar *application_id);

extern
GDBusConnection * g_application_get_dbus_connection (GApplication *application);
extern
const gchar * g_application_get_dbus_object_path (GApplication *application);

extern
guint g_application_get_inactivity_timeout (GApplication *application);
extern
void g_application_set_inactivity_timeout (GApplication *application,
                                                                        guint inactivity_timeout);

extern
GApplicationFlags g_application_get_flags (GApplication *application);
extern
void g_application_set_flags (GApplication *application,
                                                                        GApplicationFlags flags);

extern
const gchar * g_application_get_resource_base_path (GApplication *application);
extern
void g_application_set_resource_base_path (GApplication *application,
                                                                        const gchar *resource_path);

__attribute__((__deprecated__)) extern
void g_application_set_action_group (GApplication *application,
                                                                        GActionGroup *action_group);

extern
void g_application_add_main_option_entries (GApplication *application,
                                                                        const GOptionEntry *entries);

extern
void g_application_add_main_option (GApplication *application,
                                                                        const char *long_name,
                                                                        char short_name,
                                                                        GOptionFlags flags,
                                                                        GOptionArg arg,
                                                                        const char *description,
                                                                        const char *arg_description);
extern
void g_application_add_option_group (GApplication *application,
                                                                        GOptionGroup *group);

extern
gboolean g_application_get_is_registered (GApplication *application);
extern
gboolean g_application_get_is_remote (GApplication *application);

extern
gboolean g_application_register (GApplication *application,
                                                                        GCancellable *cancellable,
                                                                        GError **error);

extern
void g_application_hold (GApplication *application);
extern
void g_application_release (GApplication *application);

extern
void g_application_activate (GApplication *application);

extern
void g_application_open (GApplication *application,
                                                                        GFile **files,
                                                                        gint n_files,
                                                                        const gchar *hint);

extern
int g_application_run (GApplication *application,
                                                                        int argc,
                                                                        char **argv);

extern
void g_application_quit (GApplication *application);

extern
GApplication * g_application_get_default (void);
extern
void g_application_set_default (GApplication *application);

extern
void g_application_mark_busy (GApplication *application);
extern
void g_application_unmark_busy (GApplication *application);
extern
gboolean g_application_get_is_busy (GApplication *application);

extern
void g_application_send_notification (GApplication *application,
                                                                        const gchar *id,
                                                                        GNotification *notification);
extern
void g_application_withdraw_notification (GApplication *application,
                                                                        const gchar *id);

extern
void g_application_bind_busy_property (GApplication *application,
                                                                        gpointer object,
                                                                        const gchar *property);

extern
void g_application_unbind_busy_property (GApplication *application,
                                                                        gpointer object,
                                                                        const gchar *property);

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gapplicationcommandline.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gapplicationcommandline.h"
extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gapplicationcommandline.h"
typedef struct _GApplicationCommandLinePrivate GApplicationCommandLinePrivate;
typedef struct _GApplicationCommandLineClass GApplicationCommandLineClass;

struct _GApplicationCommandLine
{

 GObject parent_instance;

 GApplicationCommandLinePrivate *priv;
};

struct _GApplicationCommandLineClass
{

 GObjectClass parent_class;

 void (* print_literal) (GApplicationCommandLine *cmdline,
                                                const gchar *message);
 void (* printerr_literal) (GApplicationCommandLine *cmdline,
                                                const gchar *message);
 GInputStream * (* get_stdin) (GApplicationCommandLine *cmdline);

 gpointer padding[11];
};

extern
GType g_application_command_line_get_type (void) __attribute__((__const__));

extern
gchar ** g_application_command_line_get_arguments (GApplicationCommandLine *cmdline,
                                                                        int *argc);

extern
GVariantDict * g_application_command_line_get_options_dict (GApplicationCommandLine *cmdline);

extern
GInputStream * g_application_command_line_get_stdin (GApplicationCommandLine *cmdline);

extern
const gchar * const * g_application_command_line_get_environ (GApplicationCommandLine *cmdline);

extern
const gchar * g_application_command_line_getenv (GApplicationCommandLine *cmdline,
                                                                        const gchar *name);

extern
const gchar * g_application_command_line_get_cwd (GApplicationCommandLine *cmdline);

extern
gboolean g_application_command_line_get_is_remote (GApplicationCommandLine *cmdline);

extern
void g_application_command_line_print (GApplicationCommandLine *cmdline,
                                                                        const gchar *format,
                                                                        ...) __attribute__((__format__ (__printf__, 2, 3)));
extern
void g_application_command_line_printerr (GApplicationCommandLine *cmdline,
                                                                        const gchar *format,
                                                                        ...) __attribute__((__format__ (__printf__, 2, 3)));

extern
int g_application_command_line_get_exit_status (GApplicationCommandLine *cmdline);
extern
void g_application_command_line_set_exit_status (GApplicationCommandLine *cmdline,
                                                                        int exit_status);

extern
GVariant * g_application_command_line_get_platform_data (GApplicationCommandLine *cmdline);

extern
GFile * g_application_command_line_create_file_for_arg (GApplicationCommandLine *cmdline,
                                                                        const gchar *arg);

}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gasyncinitable.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gasyncinitable.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginitable.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginitable.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginitable.h"
typedef struct _GInitableIface GInitableIface;
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginitable.h"
struct _GInitableIface
{
 GTypeInterface g_iface;



 gboolean (* init) (GInitable *initable,
  GCancellable *cancellable,
  GError **error);
};


extern
GType g_initable_get_type (void) __attribute__((__const__));

extern
gboolean g_initable_init (GInitable *initable,
   GCancellable *cancellable,
   GError **error);

extern
gpointer g_initable_new (GType object_type,
   GCancellable *cancellable,
   GError **error,
   const gchar *first_property_name,
   ...);
extern
gpointer g_initable_newv (GType object_type,
   guint n_parameters,
   GParameter *parameters,
   GCancellable *cancellable,
   GError **error);
extern
GObject* g_initable_new_valist (GType object_type,
   const gchar *first_property_name,
   va_list var_args,
   GCancellable *cancellable,
   GError **error);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gasyncinitable.h" 2

extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gasyncinitable.h"
typedef struct _GAsyncInitableIface GAsyncInitableIface;
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gasyncinitable.h"
struct _GAsyncInitableIface
{
 GTypeInterface g_iface;



 void (* init_async) (GAsyncInitable *initable,
      int io_priority,
      GCancellable *cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data);
 gboolean (* init_finish) (GAsyncInitable *initable,
      GAsyncResult *res,
      GError **error);
};

extern
GType g_async_initable_get_type (void) __attribute__((__const__));


extern
void g_async_initable_init_async (GAsyncInitable *initable,
        int io_priority,
        GCancellable *cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data);
extern
gboolean g_async_initable_init_finish (GAsyncInitable *initable,
        GAsyncResult *res,
        GError **error);

extern
void g_async_initable_new_async (GType object_type,
        int io_priority,
        GCancellable *cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data,
        const gchar *first_property_name,
        ...);
extern
void g_async_initable_newv_async (GType object_type,
        guint n_parameters,
        GParameter *parameters,
        int io_priority,
        GCancellable *cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data);
extern
void g_async_initable_new_valist_async (GType object_type,
        const gchar *first_property_name,
        va_list var_args,
        int io_priority,
        GCancellable *cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data);
extern
GObject *g_async_initable_new_finish (GAsyncInitable *initable,
        GAsyncResult *res,
        GError **error);



}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gasyncresult.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gasyncresult.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gasyncresult.h"
typedef struct _GAsyncResultIface GAsyncResultIface;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gasyncresult.h"
struct _GAsyncResultIface
{
 GTypeInterface g_iface;



 gpointer (* get_user_data) (GAsyncResult *res);
 GObject * (* get_source_object) (GAsyncResult *res);

 gboolean (* is_tagged) (GAsyncResult *res,
      gpointer source_tag);
};

extern
GType g_async_result_get_type (void) __attribute__((__const__));

extern
gpointer g_async_result_get_user_data (GAsyncResult *res);
extern
GObject *g_async_result_get_source_object (GAsyncResult *res);

extern
gboolean g_async_result_legacy_propagate_error (GAsyncResult *res,
     GError **error);
extern
gboolean g_async_result_is_tagged (GAsyncResult *res,
     gpointer source_tag);

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbufferedinputstream.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbufferedinputstream.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilterinputstream.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilterinputstream.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginputstream.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginputstream.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginputstream.h"
typedef struct _GInputStreamClass GInputStreamClass;
typedef struct _GInputStreamPrivate GInputStreamPrivate;

struct _GInputStream
{
 GObject parent_instance;


 GInputStreamPrivate *priv;
};

struct _GInputStreamClass
{
 GObjectClass parent_class;



 gssize (* read_fn) (GInputStream *stream,
                            void *buffer,
                            gsize count,
                            GCancellable *cancellable,
                            GError **error);
 gssize (* skip) (GInputStream *stream,
                            gsize count,
                            GCancellable *cancellable,
                            GError **error);
 gboolean (* close_fn) (GInputStream *stream,
                            GCancellable *cancellable,
                            GError **error);


 void (* read_async) (GInputStream *stream,
                            void *buffer,
                            gsize count,
                            int io_priority,
                            GCancellable *cancellable,
                            GAsyncReadyCallback callback,
                            gpointer user_data);
 gssize (* read_finish) (GInputStream *stream,
                            GAsyncResult *result,
                            GError **error);
 void (* skip_async) (GInputStream *stream,
                            gsize count,
                            int io_priority,
                            GCancellable *cancellable,
                            GAsyncReadyCallback callback,
                            gpointer user_data);
 gssize (* skip_finish) (GInputStream *stream,
                            GAsyncResult *result,
                            GError **error);
 void (* close_async) (GInputStream *stream,
                            int io_priority,
                            GCancellable *cancellable,
                            GAsyncReadyCallback callback,
                            gpointer user_data);
 gboolean (* close_finish) (GInputStream *stream,
                            GAsyncResult *result,
                            GError **error);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_input_stream_get_type (void) __attribute__((__const__));

extern
gssize g_input_stream_read (GInputStream *stream,
          void *buffer,
          gsize count,
          GCancellable *cancellable,
          GError **error);
extern
gboolean g_input_stream_read_all (GInputStream *stream,
          void *buffer,
          gsize count,
          gsize *bytes_read,
          GCancellable *cancellable,
          GError **error);
extern
GBytes *g_input_stream_read_bytes (GInputStream *stream,
          gsize count,
          GCancellable *cancellable,
          GError **error);
extern
gssize g_input_stream_skip (GInputStream *stream,
          gsize count,
          GCancellable *cancellable,
          GError **error);
extern
gboolean g_input_stream_close (GInputStream *stream,
          GCancellable *cancellable,
          GError **error);
extern
void g_input_stream_read_async (GInputStream *stream,
          void *buffer,
          gsize count,
          int io_priority,
          GCancellable *cancellable,
          GAsyncReadyCallback callback,
          gpointer user_data);
extern
gssize g_input_stream_read_finish (GInputStream *stream,
          GAsyncResult *result,
          GError **error);

extern
void g_input_stream_read_all_async (GInputStream *stream,
                                          void *buffer,
                                          gsize count,
                                          int io_priority,
                                          GCancellable *cancellable,
                                          GAsyncReadyCallback callback,
                                          gpointer user_data);
extern
gboolean g_input_stream_read_all_finish (GInputStream *stream,
                                          GAsyncResult *result,
                                          gsize *bytes_read,
                                          GError **error);

extern
void g_input_stream_read_bytes_async (GInputStream *stream,
       gsize count,
       int io_priority,
       GCancellable *cancellable,
       GAsyncReadyCallback callback,
       gpointer user_data);
extern
GBytes *g_input_stream_read_bytes_finish (GInputStream *stream,
       GAsyncResult *result,
       GError **error);
extern
void g_input_stream_skip_async (GInputStream *stream,
          gsize count,
          int io_priority,
          GCancellable *cancellable,
          GAsyncReadyCallback callback,
          gpointer user_data);
extern
gssize g_input_stream_skip_finish (GInputStream *stream,
          GAsyncResult *result,
          GError **error);
extern
void g_input_stream_close_async (GInputStream *stream,
          int io_priority,
          GCancellable *cancellable,
          GAsyncReadyCallback callback,
          gpointer user_data);
extern
gboolean g_input_stream_close_finish (GInputStream *stream,
          GAsyncResult *result,
          GError **error);



extern
gboolean g_input_stream_is_closed (GInputStream *stream);
extern
gboolean g_input_stream_has_pending (GInputStream *stream);
extern
gboolean g_input_stream_set_pending (GInputStream *stream,
          GError **error);
extern
void g_input_stream_clear_pending (GInputStream *stream);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilterinputstream.h" 2

extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilterinputstream.h"
typedef struct _GFilterInputStreamClass GFilterInputStreamClass;

struct _GFilterInputStream
{
 GInputStream parent_instance;


 GInputStream *base_stream;
};

struct _GFilterInputStreamClass
{
 GInputStreamClass parent_class;



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
};


extern
GType g_filter_input_stream_get_type (void) __attribute__((__const__));
extern
GInputStream * g_filter_input_stream_get_base_stream (GFilterInputStream *stream);
extern
gboolean g_filter_input_stream_get_close_base_stream (GFilterInputStream *stream);
extern
void g_filter_input_stream_set_close_base_stream (GFilterInputStream *stream,
                                                           gboolean close_base);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbufferedinputstream.h" 2

extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbufferedinputstream.h"
typedef struct _GBufferedInputStreamClass GBufferedInputStreamClass;
typedef struct _GBufferedInputStreamPrivate GBufferedInputStreamPrivate;

struct _GBufferedInputStream
{
 GFilterInputStream parent_instance;


 GBufferedInputStreamPrivate *priv;
};

struct _GBufferedInputStreamClass
{
 GFilterInputStreamClass parent_class;

 gssize (* fill) (GBufferedInputStream *stream,
      gssize count,
      GCancellable *cancellable,
      GError **error);


 void (* fill_async) (GBufferedInputStream *stream,
      gssize count,
      int io_priority,
      GCancellable *cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data);
 gssize (* fill_finish) (GBufferedInputStream *stream,
      GAsyncResult *result,
      GError **error);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};


extern
GType g_buffered_input_stream_get_type (void) __attribute__((__const__));
extern
GInputStream* g_buffered_input_stream_new (GInputStream *base_stream);
extern
GInputStream* g_buffered_input_stream_new_sized (GInputStream *base_stream,
            gsize size);

extern
gsize g_buffered_input_stream_get_buffer_size (GBufferedInputStream *stream);
extern
void g_buffered_input_stream_set_buffer_size (GBufferedInputStream *stream,
            gsize size);
extern
gsize g_buffered_input_stream_get_available (GBufferedInputStream *stream);
extern
gsize g_buffered_input_stream_peek (GBufferedInputStream *stream,
            void *buffer,
            gsize offset,
            gsize count);
extern
const void* g_buffered_input_stream_peek_buffer (GBufferedInputStream *stream,
            gsize *count);

extern
gssize g_buffered_input_stream_fill (GBufferedInputStream *stream,
            gssize count,
            GCancellable *cancellable,
            GError **error);
extern
void g_buffered_input_stream_fill_async (GBufferedInputStream *stream,
            gssize count,
            int io_priority,
            GCancellable *cancellable,
            GAsyncReadyCallback callback,
            gpointer user_data);
extern
gssize g_buffered_input_stream_fill_finish (GBufferedInputStream *stream,
            GAsyncResult *result,
            GError **error);

extern
int g_buffered_input_stream_read_byte (GBufferedInputStream *stream,
            GCancellable *cancellable,
            GError **error);

}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbufferedoutputstream.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbufferedoutputstream.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilteroutputstream.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilteroutputstream.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/goutputstream.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/goutputstream.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/goutputstream.h"
typedef struct _GOutputStreamClass GOutputStreamClass;
typedef struct _GOutputStreamPrivate GOutputStreamPrivate;

struct _GOutputStream
{
 GObject parent_instance;


 GOutputStreamPrivate *priv;
};


struct _GOutputStreamClass
{
 GObjectClass parent_class;



 gssize (* write_fn) (GOutputStream *stream,
                                const void *buffer,
                                gsize count,
                                GCancellable *cancellable,
                                GError **error);
 gssize (* splice) (GOutputStream *stream,
                                GInputStream *source,
                                GOutputStreamSpliceFlags flags,
                                GCancellable *cancellable,
                                GError **error);
 gboolean (* flush) (GOutputStream *stream,
                                GCancellable *cancellable,
                                GError **error);
 gboolean (* close_fn) (GOutputStream *stream,
                                GCancellable *cancellable,
                                GError **error);



 void (* write_async) (GOutputStream *stream,
                                const void *buffer,
                                gsize count,
                                int io_priority,
                                GCancellable *cancellable,
                                GAsyncReadyCallback callback,
                                gpointer user_data);
 gssize (* write_finish) (GOutputStream *stream,
                                GAsyncResult *result,
                                GError **error);
 void (* splice_async) (GOutputStream *stream,
                                GInputStream *source,
                                GOutputStreamSpliceFlags flags,
                                int io_priority,
                                GCancellable *cancellable,
                                GAsyncReadyCallback callback,
                                gpointer user_data);
 gssize (* splice_finish) (GOutputStream *stream,
                                GAsyncResult *result,
                                GError **error);
 void (* flush_async) (GOutputStream *stream,
                                int io_priority,
                                GCancellable *cancellable,
                                GAsyncReadyCallback callback,
                                gpointer user_data);
 gboolean (* flush_finish) (GOutputStream *stream,
                                GAsyncResult *result,
                                GError **error);
 void (* close_async) (GOutputStream *stream,
                                int io_priority,
                                GCancellable *cancellable,
                                GAsyncReadyCallback callback,
                                gpointer user_data);
 gboolean (* close_finish) (GOutputStream *stream,
                                GAsyncResult *result,
                                GError **error);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
 void (*_g_reserved7) (void);
 void (*_g_reserved8) (void);
};

extern
GType g_output_stream_get_type (void) __attribute__((__const__));

extern
gssize g_output_stream_write (GOutputStream *stream,
    const void *buffer,
    gsize count,
    GCancellable *cancellable,
    GError **error);
extern
gboolean g_output_stream_write_all (GOutputStream *stream,
    const void *buffer,
    gsize count,
    gsize *bytes_written,
    GCancellable *cancellable,
    GError **error);
extern
gboolean g_output_stream_printf (GOutputStream *stream,
                                       gsize *bytes_written,
                                       GCancellable *cancellable,
                                       GError **error,
                                       const gchar *format,
                                       ...) __attribute__((__format__ (__printf__, 5, 6)));
extern
gboolean g_output_stream_vprintf (GOutputStream *stream,
                                       gsize *bytes_written,
                                       GCancellable *cancellable,
                                       GError **error,
                                       const gchar *format,
                                       va_list args) __attribute__((__format__ (__printf__, 5, 0)));
extern
gssize g_output_stream_write_bytes (GOutputStream *stream,
    GBytes *bytes,
    GCancellable *cancellable,
    GError **error);
extern
gssize g_output_stream_splice (GOutputStream *stream,
    GInputStream *source,
    GOutputStreamSpliceFlags flags,
    GCancellable *cancellable,
    GError **error);
extern
gboolean g_output_stream_flush (GOutputStream *stream,
    GCancellable *cancellable,
    GError **error);
extern
gboolean g_output_stream_close (GOutputStream *stream,
    GCancellable *cancellable,
    GError **error);
extern
void g_output_stream_write_async (GOutputStream *stream,
    const void *buffer,
    gsize count,
    int io_priority,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);
extern
gssize g_output_stream_write_finish (GOutputStream *stream,
    GAsyncResult *result,
    GError **error);

extern
void g_output_stream_write_all_async (GOutputStream *stream,
                                         const void *buffer,
                                         gsize count,
                                         int io_priority,
                                         GCancellable *cancellable,
                                         GAsyncReadyCallback callback,
                                         gpointer user_data);

extern
gboolean g_output_stream_write_all_finish (GOutputStream *stream,
                                          GAsyncResult *result,
                                          gsize *bytes_written,
                                          GError **error);

extern
void g_output_stream_write_bytes_async (GOutputStream *stream,
         GBytes *bytes,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gssize g_output_stream_write_bytes_finish (GOutputStream *stream,
         GAsyncResult *result,
         GError **error);
extern
void g_output_stream_splice_async (GOutputStream *stream,
    GInputStream *source,
    GOutputStreamSpliceFlags flags,
    int io_priority,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);
extern
gssize g_output_stream_splice_finish (GOutputStream *stream,
    GAsyncResult *result,
    GError **error);
extern
void g_output_stream_flush_async (GOutputStream *stream,
    int io_priority,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);
extern
gboolean g_output_stream_flush_finish (GOutputStream *stream,
    GAsyncResult *result,
    GError **error);
extern
void g_output_stream_close_async (GOutputStream *stream,
    int io_priority,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);
extern
gboolean g_output_stream_close_finish (GOutputStream *stream,
    GAsyncResult *result,
    GError **error);

extern
gboolean g_output_stream_is_closed (GOutputStream *stream);
extern
gboolean g_output_stream_is_closing (GOutputStream *stream);
extern
gboolean g_output_stream_has_pending (GOutputStream *stream);
extern
gboolean g_output_stream_set_pending (GOutputStream *stream,
    GError **error);
extern
void g_output_stream_clear_pending (GOutputStream *stream);


}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilteroutputstream.h" 2

extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilteroutputstream.h"
typedef struct _GFilterOutputStreamClass GFilterOutputStreamClass;

struct _GFilterOutputStream
{
 GOutputStream parent_instance;


 GOutputStream *base_stream;
};

struct _GFilterOutputStreamClass
{
 GOutputStreamClass parent_class;



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
};


extern
GType g_filter_output_stream_get_type (void) __attribute__((__const__));
extern
GOutputStream * g_filter_output_stream_get_base_stream (GFilterOutputStream *stream);
extern
gboolean g_filter_output_stream_get_close_base_stream (GFilterOutputStream *stream);
extern
void g_filter_output_stream_set_close_base_stream (GFilterOutputStream *stream,
                                                             gboolean close_base);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbufferedoutputstream.h" 2

extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbufferedoutputstream.h"
typedef struct _GBufferedOutputStreamClass GBufferedOutputStreamClass;
typedef struct _GBufferedOutputStreamPrivate GBufferedOutputStreamPrivate;

struct _GBufferedOutputStream
{
 GFilterOutputStream parent_instance;


 GBufferedOutputStreamPrivate *priv;
};

struct _GBufferedOutputStreamClass
{
 GFilterOutputStreamClass parent_class;



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
};


extern
GType g_buffered_output_stream_get_type (void) __attribute__((__const__));
extern
GOutputStream* g_buffered_output_stream_new (GOutputStream *base_stream);
extern
GOutputStream* g_buffered_output_stream_new_sized (GOutputStream *base_stream,
       gsize size);
extern
gsize g_buffered_output_stream_get_buffer_size (GBufferedOutputStream *stream);
extern
void g_buffered_output_stream_set_buffer_size (GBufferedOutputStream *stream,
       gsize size);
extern
gboolean g_buffered_output_stream_get_auto_grow (GBufferedOutputStream *stream);
extern
void g_buffered_output_stream_set_auto_grow (GBufferedOutputStream *stream,
       gboolean auto_grow);

}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbytesicon.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbytesicon.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gbytesicon.h"
extern
GType g_bytes_icon_get_type (void) __attribute__((__const__));

extern
GIcon * g_bytes_icon_new (GBytes *bytes);

extern
GBytes * g_bytes_icon_get_bytes (GBytesIcon *icon);

}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcancellable.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcancellable.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcancellable.h"
typedef struct _GCancellableClass GCancellableClass;
typedef struct _GCancellablePrivate GCancellablePrivate;

struct _GCancellable
{
 GObject parent_instance;


 GCancellablePrivate *priv;
};

struct _GCancellableClass
{
 GObjectClass parent_class;

 void (* cancelled) (GCancellable *cancellable);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_cancellable_get_type (void) __attribute__((__const__));

extern
GCancellable *g_cancellable_new (void);


extern
gboolean g_cancellable_is_cancelled (GCancellable *cancellable);
extern
gboolean g_cancellable_set_error_if_cancelled (GCancellable *cancellable,
         GError **error);

extern
int g_cancellable_get_fd (GCancellable *cancellable);
extern
gboolean g_cancellable_make_pollfd (GCancellable *cancellable,
         GPollFD *pollfd);
extern
void g_cancellable_release_fd (GCancellable *cancellable);

extern
GSource * g_cancellable_source_new (GCancellable *cancellable);

extern
GCancellable *g_cancellable_get_current (void);
extern
void g_cancellable_push_current (GCancellable *cancellable);
extern
void g_cancellable_pop_current (GCancellable *cancellable);
extern
void g_cancellable_reset (GCancellable *cancellable);
extern
gulong g_cancellable_connect (GCancellable *cancellable,
         GCallback callback,
         gpointer data,
         GDestroyNotify data_destroy_func);
extern
void g_cancellable_disconnect (GCancellable *cancellable,
         gulong handler_id);



extern
void g_cancellable_cancel (GCancellable *cancellable);

}
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcharsetconverter.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcharsetconverter.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverter.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverter.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverter.h"
typedef struct _GConverterIface GConverterIface;
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverter.h"
struct _GConverterIface
{
 GTypeInterface g_iface;



 GConverterResult (* convert) (GConverter *converter,
   const void *inbuf,
   gsize inbuf_size,
   void *outbuf,
   gsize outbuf_size,
   GConverterFlags flags,
   gsize *bytes_read,
   gsize *bytes_written,
   GError **error);
 void (* reset) (GConverter *converter);
};

extern
GType g_converter_get_type (void) __attribute__((__const__));

extern
GConverterResult g_converter_convert (GConverter *converter,
         const void *inbuf,
         gsize inbuf_size,
         void *outbuf,
         gsize outbuf_size,
         GConverterFlags flags,
         gsize *bytes_read,
         gsize *bytes_written,
         GError **error);
extern
void g_converter_reset (GConverter *converter);


}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcharsetconverter.h" 2

extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcharsetconverter.h"
typedef struct _GCharsetConverterClass GCharsetConverterClass;

struct _GCharsetConverterClass
{
 GObjectClass parent_class;
};

extern
GType g_charset_converter_get_type (void) __attribute__((__const__));

extern
GCharsetConverter *g_charset_converter_new (const gchar *to_charset,
            const gchar *from_charset,
            GError **error);
extern
void g_charset_converter_set_use_fallback (GCharsetConverter *converter,
       gboolean use_fallback);
extern
gboolean g_charset_converter_get_use_fallback (GCharsetConverter *converter);
extern
guint g_charset_converter_get_num_fallbacks (GCharsetConverter *converter);

}
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcontenttype.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcontenttype.h"
extern "C" {

extern
gboolean g_content_type_equals (const gchar *type1,
                                          const gchar *type2);
extern
gboolean g_content_type_is_a (const gchar *type,
                                          const gchar *supertype);
extern
gboolean g_content_type_is_unknown (const gchar *type);
extern
gchar * g_content_type_get_description (const gchar *type);
extern
gchar * g_content_type_get_mime_type (const gchar *type);
extern
GIcon * g_content_type_get_icon (const gchar *type);
extern
GIcon * g_content_type_get_symbolic_icon (const gchar *type);
extern
gchar * g_content_type_get_generic_icon_name (const gchar *type);

extern
gboolean g_content_type_can_be_executable (const gchar *type);

extern
gchar * g_content_type_from_mime_type (const gchar *mime_type);

extern
gchar * g_content_type_guess (const gchar *filename,
                                          const guchar *data,
                                          gsize data_size,
                                          gboolean *result_uncertain);

extern
gchar ** g_content_type_guess_for_tree (GFile *root);

extern
GList * g_content_types_get_registered (void);

}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverterinputstream.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverterinputstream.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverterinputstream.h"
typedef struct _GConverterInputStreamClass GConverterInputStreamClass;
typedef struct _GConverterInputStreamPrivate GConverterInputStreamPrivate;

struct _GConverterInputStream
{
 GFilterInputStream parent_instance;


 GConverterInputStreamPrivate *priv;
};

struct _GConverterInputStreamClass
{
 GFilterInputStreamClass parent_class;



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_converter_input_stream_get_type (void) __attribute__((__const__));
extern
GInputStream *g_converter_input_stream_new (GInputStream *base_stream,
                                                              GConverter *converter);
extern
GConverter *g_converter_input_stream_get_converter (GConverterInputStream *converter_stream);

}
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverteroutputstream.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverteroutputstream.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gconverteroutputstream.h"
typedef struct _GConverterOutputStreamClass GConverterOutputStreamClass;
typedef struct _GConverterOutputStreamPrivate GConverterOutputStreamPrivate;

struct _GConverterOutputStream
{
 GFilterOutputStream parent_instance;


 GConverterOutputStreamPrivate *priv;
};

struct _GConverterOutputStreamClass
{
 GFilterOutputStreamClass parent_class;



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_converter_output_stream_get_type (void) __attribute__((__const__));
extern
GOutputStream *g_converter_output_stream_new (GOutputStream *base_stream,
                                                                GConverter *converter);
extern
GConverter *g_converter_output_stream_get_converter (GConverterOutputStream *converter_stream);

}
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcredentials.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcredentials.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcredentials.h"
typedef struct _GCredentialsClass GCredentialsClass;

extern
GType g_credentials_get_type (void) __attribute__((__const__));

extern
GCredentials *g_credentials_new (void);

extern
gchar *g_credentials_to_string (GCredentials *credentials);

extern
gpointer g_credentials_get_native (GCredentials *credentials,
                                                  GCredentialsType native_type);

extern
void g_credentials_set_native (GCredentials *credentials,
                                                  GCredentialsType native_type,
                                                  gpointer native);

extern
gboolean g_credentials_is_same_user (GCredentials *credentials,
                                                  GCredentials *other_credentials,
                                                  GError **error);


extern

# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcredentials.h" 3 4
__pid_t
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcredentials.h"
               g_credentials_get_unix_pid (GCredentials *credentials,
                                                  GError **error);
extern

# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcredentials.h" 3 4
__uid_t
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcredentials.h"
               g_credentials_get_unix_user (GCredentials *credentials,
                                                  GError **error);
extern
gboolean g_credentials_set_unix_user (GCredentials *credentials,

# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcredentials.h" 3 4
                                                 __uid_t
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gcredentials.h"
                                                                 uid,
                                                  GError **error);


}
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdatagrambased.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdatagrambased.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdatagrambased.h"
typedef struct _GDatagramBasedInterface GDatagramBasedInterface;
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdatagrambased.h"
struct _GDatagramBasedInterface
{
 GTypeInterface g_iface;


 gint (*receive_messages) (GDatagramBased *datagram_based,
                                        GInputMessage *messages,
                                        guint num_messages,
                                        gint flags,
                                        gint64 timeout,
                                        GCancellable *cancellable,
                                        GError **error);
 gint (*send_messages) (GDatagramBased *datagram_based,
                                        GOutputMessage *messages,
                                        guint num_messages,
                                        gint flags,
                                        gint64 timeout,
                                        GCancellable *cancellable,
                                        GError **error);

 GSource *(*create_source) (GDatagramBased *datagram_based,
                                        GIOCondition condition,
                                        GCancellable *cancellable);
 GIOCondition (*condition_check) (GDatagramBased *datagram_based,
                                        GIOCondition condition);
 gboolean (*condition_wait) (GDatagramBased *datagram_based,
                                        GIOCondition condition,
                                        gint64 timeout,
                                        GCancellable *cancellable,
                                        GError **error);
};

extern
GType
g_datagram_based_get_type (void);

extern
gint
g_datagram_based_receive_messages (GDatagramBased *datagram_based,
                                      GInputMessage *messages,
                                      guint num_messages,
                                      gint flags,
                                      gint64 timeout,
                                      GCancellable *cancellable,
                                      GError **error);

extern
gint
g_datagram_based_send_messages (GDatagramBased *datagram_based,
                                      GOutputMessage *messages,
                                      guint num_messages,
                                      gint flags,
                                      gint64 timeout,
                                      GCancellable *cancellable,
                                      GError **error);

extern
GSource *
g_datagram_based_create_source (GDatagramBased *datagram_based,
                                      GIOCondition condition,
                                      GCancellable *cancellable);
extern
GIOCondition
g_datagram_based_condition_check (GDatagramBased *datagram_based,
                                      GIOCondition condition);
extern
gboolean
g_datagram_based_condition_wait (GDatagramBased *datagram_based,
                                      GIOCondition condition,
                                      gint64 timeout,
                                      GCancellable *cancellable,
                                      GError **error);

}
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdatainputstream.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdatainputstream.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdatainputstream.h"
typedef struct _GDataInputStreamClass GDataInputStreamClass;
typedef struct _GDataInputStreamPrivate GDataInputStreamPrivate;

struct _GDataInputStream
{
 GBufferedInputStream parent_instance;


 GDataInputStreamPrivate *priv;
};

struct _GDataInputStreamClass
{
 GBufferedInputStreamClass parent_class;



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_data_input_stream_get_type (void) __attribute__((__const__));
extern
GDataInputStream * g_data_input_stream_new (GInputStream *base_stream);

extern
void g_data_input_stream_set_byte_order (GDataInputStream *stream,
                                                                GDataStreamByteOrder order);
extern
GDataStreamByteOrder g_data_input_stream_get_byte_order (GDataInputStream *stream);
extern
void g_data_input_stream_set_newline_type (GDataInputStream *stream,
                                                                GDataStreamNewlineType type);
extern
GDataStreamNewlineType g_data_input_stream_get_newline_type (GDataInputStream *stream);
extern
guchar g_data_input_stream_read_byte (GDataInputStream *stream,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
gint16 g_data_input_stream_read_int16 (GDataInputStream *stream,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
guint16 g_data_input_stream_read_uint16 (GDataInputStream *stream,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
gint32 g_data_input_stream_read_int32 (GDataInputStream *stream,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
guint32 g_data_input_stream_read_uint32 (GDataInputStream *stream,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
gint64 g_data_input_stream_read_int64 (GDataInputStream *stream,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
guint64 g_data_input_stream_read_uint64 (GDataInputStream *stream,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
char * g_data_input_stream_read_line (GDataInputStream *stream,
                                                                gsize *length,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
char * g_data_input_stream_read_line_utf8 (GDataInputStream *stream,
        gsize *length,
        GCancellable *cancellable,
        GError **error);
extern
void g_data_input_stream_read_line_async (GDataInputStream *stream,
                                                                gint io_priority,
                                                                GCancellable *cancellable,
                                                                GAsyncReadyCallback callback,
                                                                gpointer user_data);
extern
char * g_data_input_stream_read_line_finish (GDataInputStream *stream,
                                                                GAsyncResult *result,
                                                                gsize *length,
                                                                GError **error);
extern
char * g_data_input_stream_read_line_finish_utf8(GDataInputStream *stream,
                                                                GAsyncResult *result,
                                                                gsize *length,
                                                                GError **error);
extern
char * g_data_input_stream_read_until (GDataInputStream *stream,
                                                                const gchar *stop_chars,
                                                                gsize *length,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
void g_data_input_stream_read_until_async (GDataInputStream *stream,
                                                                const gchar *stop_chars,
                                                                gint io_priority,
                                                                GCancellable *cancellable,
                                                                GAsyncReadyCallback callback,
                                                                gpointer user_data);
extern
char * g_data_input_stream_read_until_finish (GDataInputStream *stream,
                                                                GAsyncResult *result,
                                                                gsize *length,
                                                                GError **error);

extern
char * g_data_input_stream_read_upto (GDataInputStream *stream,
                                                                const gchar *stop_chars,
                                                                gssize stop_chars_len,
                                                                gsize *length,
                                                                GCancellable *cancellable,
                                                                GError **error);
extern
void g_data_input_stream_read_upto_async (GDataInputStream *stream,
                                                                const gchar *stop_chars,
                                                                gssize stop_chars_len,
                                                                gint io_priority,
                                                                GCancellable *cancellable,
                                                                GAsyncReadyCallback callback,
                                                                gpointer user_data);
extern
char * g_data_input_stream_read_upto_finish (GDataInputStream *stream,
                                                                GAsyncResult *result,
                                                                gsize *length,
                                                                GError **error);

}
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdataoutputstream.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdataoutputstream.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdataoutputstream.h"
typedef struct _GDataOutputStream GDataOutputStream;
typedef struct _GDataOutputStreamClass GDataOutputStreamClass;
typedef struct _GDataOutputStreamPrivate GDataOutputStreamPrivate;

struct _GDataOutputStream
{
 GFilterOutputStream parent_instance;


 GDataOutputStreamPrivate *priv;
};

struct _GDataOutputStreamClass
{
 GFilterOutputStreamClass parent_class;



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};


extern
GType g_data_output_stream_get_type (void) __attribute__((__const__));
extern
GDataOutputStream * g_data_output_stream_new (GOutputStream *base_stream);

extern
void g_data_output_stream_set_byte_order (GDataOutputStream *stream,
        GDataStreamByteOrder order);
extern
GDataStreamByteOrder g_data_output_stream_get_byte_order (GDataOutputStream *stream);

extern
gboolean g_data_output_stream_put_byte (GDataOutputStream *stream,
        guchar data,
        GCancellable *cancellable,
        GError **error);
extern
gboolean g_data_output_stream_put_int16 (GDataOutputStream *stream,
        gint16 data,
        GCancellable *cancellable,
        GError **error);
extern
gboolean g_data_output_stream_put_uint16 (GDataOutputStream *stream,
        guint16 data,
        GCancellable *cancellable,
        GError **error);
extern
gboolean g_data_output_stream_put_int32 (GDataOutputStream *stream,
        gint32 data,
        GCancellable *cancellable,
        GError **error);
extern
gboolean g_data_output_stream_put_uint32 (GDataOutputStream *stream,
        guint32 data,
        GCancellable *cancellable,
        GError **error);
extern
gboolean g_data_output_stream_put_int64 (GDataOutputStream *stream,
        gint64 data,
        GCancellable *cancellable,
        GError **error);
extern
gboolean g_data_output_stream_put_uint64 (GDataOutputStream *stream,
        guint64 data,
        GCancellable *cancellable,
        GError **error);
extern
gboolean g_data_output_stream_put_string (GDataOutputStream *stream,
        const char *str,
        GCancellable *cancellable,
        GError **error);

}
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusaddress.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusaddress.h"
extern "C" {

extern
gchar *g_dbus_address_escape_value (const gchar *string);

extern
gboolean g_dbus_is_address (const gchar *string);
extern
gboolean g_dbus_is_supported_address (const gchar *string,
                                     GError **error);

extern
void g_dbus_address_get_stream (const gchar *address,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);

extern
GIOStream *g_dbus_address_get_stream_finish (GAsyncResult *res,
                                                      gchar **out_guid,
                                                      GError **error);

extern
GIOStream *g_dbus_address_get_stream_sync (const gchar *address,
                                                      gchar **out_guid,
                                                      GCancellable *cancellable,
                                                      GError **error);

extern
gchar *g_dbus_address_get_for_bus_sync (GBusType bus_type,
                                                      GCancellable *cancellable,
                                                      GError **error);

}
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusauthobserver.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusauthobserver.h"
extern "C" {





extern
GType g_dbus_auth_observer_get_type (void) __attribute__((__const__));
extern
GDBusAuthObserver *g_dbus_auth_observer_new (void);
extern
gboolean g_dbus_auth_observer_authorize_authenticated_peer (GDBusAuthObserver *observer,
                                                                     GIOStream *stream,
                                                                     GCredentials *credentials);

extern
gboolean g_dbus_auth_observer_allow_mechanism (GDBusAuthObserver *observer,
                                                        const gchar *mechanism);

}
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
extern "C" {





extern
GType g_dbus_connection_get_type (void) __attribute__((__const__));



extern
void g_bus_get (GBusType bus_type,
                                               GCancellable *cancellable,
                                               GAsyncReadyCallback callback,
                                               gpointer user_data);
extern
GDBusConnection *g_bus_get_finish (GAsyncResult *res,
                                               GError **error);
extern
GDBusConnection *g_bus_get_sync (GBusType bus_type,
                                               GCancellable *cancellable,
                                               GError **error);



extern
void g_dbus_connection_new (GIOStream *stream,
                                                              const gchar *guid,
                                                              GDBusConnectionFlags flags,
                                                              GDBusAuthObserver *observer,
                                                              GCancellable *cancellable,
                                                              GAsyncReadyCallback callback,
                                                              gpointer user_data);
extern
GDBusConnection *g_dbus_connection_new_finish (GAsyncResult *res,
                                                              GError **error);
extern
GDBusConnection *g_dbus_connection_new_sync (GIOStream *stream,
                                                              const gchar *guid,
                                                              GDBusConnectionFlags flags,
                                                              GDBusAuthObserver *observer,
                                                              GCancellable *cancellable,
                                                              GError **error);

extern
void g_dbus_connection_new_for_address (const gchar *address,
                                                              GDBusConnectionFlags flags,
                                                              GDBusAuthObserver *observer,
                                                              GCancellable *cancellable,
                                                              GAsyncReadyCallback callback,
                                                              gpointer user_data);
extern
GDBusConnection *g_dbus_connection_new_for_address_finish (GAsyncResult *res,
                                                              GError **error);
extern
GDBusConnection *g_dbus_connection_new_for_address_sync (const gchar *address,
                                                              GDBusConnectionFlags flags,
                                                              GDBusAuthObserver *observer,
                                                              GCancellable *cancellable,
                                                              GError **error);



extern
void g_dbus_connection_start_message_processing (GDBusConnection *connection);
extern
gboolean g_dbus_connection_is_closed (GDBusConnection *connection);
extern
GIOStream *g_dbus_connection_get_stream (GDBusConnection *connection);
extern
const gchar *g_dbus_connection_get_guid (GDBusConnection *connection);
extern
const gchar *g_dbus_connection_get_unique_name (GDBusConnection *connection);
extern
GCredentials *g_dbus_connection_get_peer_credentials (GDBusConnection *connection);

extern
guint32 g_dbus_connection_get_last_serial (GDBusConnection *connection);

extern
gboolean g_dbus_connection_get_exit_on_close (GDBusConnection *connection);
extern
void g_dbus_connection_set_exit_on_close (GDBusConnection *connection,
                                                              gboolean exit_on_close);
extern
GDBusCapabilityFlags g_dbus_connection_get_capabilities (GDBusConnection *connection);



extern
void g_dbus_connection_close (GDBusConnection *connection,
                                                                  GCancellable *cancellable,
                                                                  GAsyncReadyCallback callback,
                                                                  gpointer user_data);
extern
gboolean g_dbus_connection_close_finish (GDBusConnection *connection,
                                                                  GAsyncResult *res,
                                                                  GError **error);
extern
gboolean g_dbus_connection_close_sync (GDBusConnection *connection,
                                                                  GCancellable *cancellable,
                                                                  GError **error);



extern
void g_dbus_connection_flush (GDBusConnection *connection,
                                                                  GCancellable *cancellable,
                                                                  GAsyncReadyCallback callback,
                                                                  gpointer user_data);
extern
gboolean g_dbus_connection_flush_finish (GDBusConnection *connection,
                                                                  GAsyncResult *res,
                                                                  GError **error);
extern
gboolean g_dbus_connection_flush_sync (GDBusConnection *connection,
                                                                  GCancellable *cancellable,
                                                                  GError **error);



extern
gboolean g_dbus_connection_send_message (GDBusConnection *connection,
                                                                  GDBusMessage *message,
                                                                  GDBusSendMessageFlags flags,
                                                                  volatile guint32 *out_serial,
                                                                  GError **error);
extern
void g_dbus_connection_send_message_with_reply (GDBusConnection *connection,
                                                                  GDBusMessage *message,
                                                                  GDBusSendMessageFlags flags,
                                                                  gint timeout_msec,
                                                                  volatile guint32 *out_serial,
                                                                  GCancellable *cancellable,
                                                                  GAsyncReadyCallback callback,
                                                                  gpointer user_data);
extern
GDBusMessage *g_dbus_connection_send_message_with_reply_finish (GDBusConnection *connection,
                                                                  GAsyncResult *res,
                                                                  GError **error);
extern
GDBusMessage *g_dbus_connection_send_message_with_reply_sync (GDBusConnection *connection,
                                                                  GDBusMessage *message,
                                                                  GDBusSendMessageFlags flags,
                                                                  gint timeout_msec,
                                                                  volatile guint32 *out_serial,
                                                                  GCancellable *cancellable,
                                                                  GError **error);



extern
gboolean g_dbus_connection_emit_signal (GDBusConnection *connection,
                                                              const gchar *destination_bus_name,
                                                              const gchar *object_path,
                                                              const gchar *interface_name,
                                                              const gchar *signal_name,
                                                              GVariant *parameters,
                                                              GError **error);
extern
void g_dbus_connection_call (GDBusConnection *connection,
                                                              const gchar *bus_name,
                                                              const gchar *object_path,
                                                              const gchar *interface_name,
                                                              const gchar *method_name,
                                                              GVariant *parameters,
                                                              const GVariantType *reply_type,
                                                              GDBusCallFlags flags,
                                                              gint timeout_msec,
                                                              GCancellable *cancellable,
                                                              GAsyncReadyCallback callback,
                                                              gpointer user_data);
extern
GVariant *g_dbus_connection_call_finish (GDBusConnection *connection,
                                                              GAsyncResult *res,
                                                              GError **error);
extern
GVariant *g_dbus_connection_call_sync (GDBusConnection *connection,
                                                              const gchar *bus_name,
                                                              const gchar *object_path,
                                                              const gchar *interface_name,
                                                              const gchar *method_name,
                                                              GVariant *parameters,
                                                              const GVariantType *reply_type,
                                                              GDBusCallFlags flags,
                                                              gint timeout_msec,
                                                              GCancellable *cancellable,
                                                              GError **error);
extern
void g_dbus_connection_call_with_unix_fd_list (GDBusConnection *connection,
                                                              const gchar *bus_name,
                                                              const gchar *object_path,
                                                              const gchar *interface_name,
                                                              const gchar *method_name,
                                                              GVariant *parameters,
                                                              const GVariantType *reply_type,
                                                              GDBusCallFlags flags,
                                                              gint timeout_msec,
                                                              GUnixFDList *fd_list,
                                                              GCancellable *cancellable,
                                                              GAsyncReadyCallback callback,
                                                              gpointer user_data);
extern
GVariant *g_dbus_connection_call_with_unix_fd_list_finish (GDBusConnection *connection,
                                                              GUnixFDList **out_fd_list,
                                                              GAsyncResult *res,
                                                              GError **error);
extern
GVariant *g_dbus_connection_call_with_unix_fd_list_sync (GDBusConnection *connection,
                                                              const gchar *bus_name,
                                                              const gchar *object_path,
                                                              const gchar *interface_name,
                                                              const gchar *method_name,
                                                              GVariant *parameters,
                                                              const GVariantType *reply_type,
                                                              GDBusCallFlags flags,
                                                              gint timeout_msec,
                                                              GUnixFDList *fd_list,
                                                              GUnixFDList **out_fd_list,
                                                              GCancellable *cancellable,
                                                              GError **error);
# 271 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
typedef void (*GDBusInterfaceMethodCallFunc) (GDBusConnection *connection,
                                             const gchar *sender,
                                             const gchar *object_path,
                                             const gchar *interface_name,
                                             const gchar *method_name,
                                             GVariant *parameters,
                                             GDBusMethodInvocation *invocation,
                                             gpointer user_data);
# 298 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
typedef GVariant *(*GDBusInterfaceGetPropertyFunc) (GDBusConnection *connection,
                                                   const gchar *sender,
                                                   const gchar *object_path,
                                                   const gchar *interface_name,
                                                   const gchar *property_name,
                                                   GError **error,
                                                   gpointer user_data);
# 323 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
typedef gboolean (*GDBusInterfaceSetPropertyFunc) (GDBusConnection *connection,
                                                   const gchar *sender,
                                                   const gchar *object_path,
                                                   const gchar *interface_name,
                                                   const gchar *property_name,
                                                   GVariant *value,
                                                   GError **error,
                                                   gpointer user_data);
# 382 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
struct _GDBusInterfaceVTable
{
 GDBusInterfaceMethodCallFunc method_call;
 GDBusInterfaceGetPropertyFunc get_property;
 GDBusInterfaceSetPropertyFunc set_property;






 gpointer padding[8];
};

extern
guint g_dbus_connection_register_object (GDBusConnection *connection,
                                                              const gchar *object_path,
                                                              GDBusInterfaceInfo *interface_info,
                                                              const GDBusInterfaceVTable *vtable,
                                                              gpointer user_data,
                                                              GDestroyNotify user_data_free_func,
                                                              GError **error);
extern
guint g_dbus_connection_register_object_with_closures (GDBusConnection *connection,
                                                                 const gchar *object_path,
                                                                 GDBusInterfaceInfo *interface_info,
                                                                 GClosure *method_call_closure,
                                                                 GClosure *get_property_closure,
                                                                 GClosure *set_property_closure,
                                                                 GError **error);
extern
gboolean g_dbus_connection_unregister_object (GDBusConnection *connection,
                                                              guint registration_id);
# 441 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
typedef gchar** (*GDBusSubtreeEnumerateFunc) (GDBusConnection *connection,
                                             const gchar *sender,
                                             const gchar *object_path,
                                             gpointer user_data);
# 477 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
typedef GDBusInterfaceInfo ** (*GDBusSubtreeIntrospectFunc) (GDBusConnection *connection,
                                                            const gchar *sender,
                                                            const gchar *object_path,
                                                            const gchar *node,
                                                            gpointer user_data);
# 502 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
typedef const GDBusInterfaceVTable * (*GDBusSubtreeDispatchFunc) (GDBusConnection *connection,
                                                                 const gchar *sender,
                                                                 const gchar *object_path,
                                                                 const gchar *interface_name,
                                                                 const gchar *node,
                                                                 gpointer *out_user_data,
                                                                 gpointer user_data);
# 520 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
struct _GDBusSubtreeVTable
{
 GDBusSubtreeEnumerateFunc enumerate;
 GDBusSubtreeIntrospectFunc introspect;
 GDBusSubtreeDispatchFunc dispatch;






 gpointer padding[8];
};

extern
guint g_dbus_connection_register_subtree (GDBusConnection *connection,
                                                              const gchar *object_path,
                                                              const GDBusSubtreeVTable *vtable,
                                                              GDBusSubtreeFlags flags,
                                                              gpointer user_data,
                                                              GDestroyNotify user_data_free_func,
                                                              GError **error);
extern
gboolean g_dbus_connection_unregister_subtree (GDBusConnection *connection,
                                                              guint registration_id);
# 562 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
typedef void (*GDBusSignalCallback) (GDBusConnection *connection,
                                    const gchar *sender_name,
                                    const gchar *object_path,
                                    const gchar *interface_name,
                                    const gchar *signal_name,
                                    GVariant *parameters,
                                    gpointer user_data);

extern
guint g_dbus_connection_signal_subscribe (GDBusConnection *connection,
                                                              const gchar *sender,
                                                              const gchar *interface_name,
                                                              const gchar *member,
                                                              const gchar *object_path,
                                                              const gchar *arg0,
                                                              GDBusSignalFlags flags,
                                                              GDBusSignalCallback callback,
                                                              gpointer user_data,
                                                              GDestroyNotify user_data_free_func);
extern
void g_dbus_connection_signal_unsubscribe (GDBusConnection *connection,
                                                              guint subscription_id);
# 661 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusconnection.h"
typedef GDBusMessage *(*GDBusMessageFilterFunction) (GDBusConnection *connection,
                                                    GDBusMessage *message,
                                                    gboolean incoming,
                                                    gpointer user_data);

extern
guint g_dbus_connection_add_filter (GDBusConnection *connection,
                                   GDBusMessageFilterFunction filter_function,
                                   gpointer user_data,
                                   GDestroyNotify user_data_free_func);

extern
void g_dbus_connection_remove_filter (GDBusConnection *connection,
                                      guint filter_id);




}
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbuserror.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbuserror.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbuserror.h"
extern
GQuark g_dbus_error_quark (void);


extern
gboolean g_dbus_error_is_remote_error (const GError *error);
extern
gchar *g_dbus_error_get_remote_error (const GError *error);
extern
gboolean g_dbus_error_strip_remote_error (GError *error);
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbuserror.h"
struct _GDBusErrorEntry
{
 gint error_code;
 const gchar *dbus_error_name;
};

extern
gboolean g_dbus_error_register_error (GQuark error_domain,
                                            gint error_code,
                                            const gchar *dbus_error_name);
extern
gboolean g_dbus_error_unregister_error (GQuark error_domain,
                                            gint error_code,
                                            const gchar *dbus_error_name);
extern
void g_dbus_error_register_error_domain (const gchar *error_domain_quark_name,
                                            volatile gsize *quark_volatile,
                                            const GDBusErrorEntry *entries,
                                            guint num_entries);


extern
GError *g_dbus_error_new_for_dbus_error (const gchar *dbus_error_name,
                                            const gchar *dbus_error_message);
extern
void g_dbus_error_set_dbus_error (GError **error,
                                            const gchar *dbus_error_name,
                                            const gchar *dbus_error_message,
                                            const gchar *format,
                                            ...) __attribute__((__format__ (__printf__, 4, 5)));
extern
void g_dbus_error_set_dbus_error_valist (GError **error,
                                            const gchar *dbus_error_name,
                                            const gchar *dbus_error_message,
                                            const gchar *format,
                                            va_list var_args) __attribute__((__format__ (__printf__, 4, 0)));
extern
gchar *g_dbus_error_encode_gerror (const GError *error);

}
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h"
struct _GDBusAnnotationInfo
{

 volatile gint ref_count;
 gchar *key;
 gchar *value;
 GDBusAnnotationInfo **annotations;
};
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h"
struct _GDBusArgInfo
{

 volatile gint ref_count;
 gchar *name;
 gchar *signature;
 GDBusAnnotationInfo **annotations;
};
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h"
struct _GDBusMethodInfo
{

 volatile gint ref_count;
 gchar *name;
 GDBusArgInfo **in_args;
 GDBusArgInfo **out_args;
 GDBusAnnotationInfo **annotations;
};
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h"
struct _GDBusSignalInfo
{

 volatile gint ref_count;
 gchar *name;
 GDBusArgInfo **args;
 GDBusAnnotationInfo **annotations;
};
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h"
struct _GDBusPropertyInfo
{

 volatile gint ref_count;
 gchar *name;
 gchar *signature;
 GDBusPropertyInfoFlags flags;
 GDBusAnnotationInfo **annotations;
};
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h"
struct _GDBusInterfaceInfo
{

 volatile gint ref_count;
 gchar *name;
 GDBusMethodInfo **methods;
 GDBusSignalInfo **signals;
 GDBusPropertyInfo **properties;
 GDBusAnnotationInfo **annotations;
};
# 172 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h"
struct _GDBusNodeInfo
{

 volatile gint ref_count;
 gchar *path;
 GDBusInterfaceInfo **interfaces;
 GDBusNodeInfo **nodes;
 GDBusAnnotationInfo **annotations;
};

extern
const gchar *g_dbus_annotation_info_lookup (GDBusAnnotationInfo **annotations,
                                                           const gchar *name);
extern
GDBusMethodInfo *g_dbus_interface_info_lookup_method (GDBusInterfaceInfo *info,
                                                           const gchar *name);
extern
GDBusSignalInfo *g_dbus_interface_info_lookup_signal (GDBusInterfaceInfo *info,
                                                           const gchar *name);
extern
GDBusPropertyInfo *g_dbus_interface_info_lookup_property (GDBusInterfaceInfo *info,
                                                           const gchar *name);
extern
void g_dbus_interface_info_cache_build (GDBusInterfaceInfo *info);
extern
void g_dbus_interface_info_cache_release (GDBusInterfaceInfo *info);

extern
void g_dbus_interface_info_generate_xml (GDBusInterfaceInfo *info,
                                                           guint indent,
                                                           GString *string_builder);

extern
GDBusNodeInfo *g_dbus_node_info_new_for_xml (const gchar *xml_data,
                                                           GError **error);
extern
GDBusInterfaceInfo *g_dbus_node_info_lookup_interface (GDBusNodeInfo *info,
                                                           const gchar *name);
extern
void g_dbus_node_info_generate_xml (GDBusNodeInfo *info,
                                                           guint indent,
                                                           GString *string_builder);

extern
GDBusNodeInfo *g_dbus_node_info_ref (GDBusNodeInfo *info);
extern
GDBusInterfaceInfo *g_dbus_interface_info_ref (GDBusInterfaceInfo *info);
extern
GDBusMethodInfo *g_dbus_method_info_ref (GDBusMethodInfo *info);
extern
GDBusSignalInfo *g_dbus_signal_info_ref (GDBusSignalInfo *info);
extern
GDBusPropertyInfo *g_dbus_property_info_ref (GDBusPropertyInfo *info);
extern
GDBusArgInfo *g_dbus_arg_info_ref (GDBusArgInfo *info);
extern
GDBusAnnotationInfo *g_dbus_annotation_info_ref (GDBusAnnotationInfo *info);

extern
void g_dbus_node_info_unref (GDBusNodeInfo *info);
extern
void g_dbus_interface_info_unref (GDBusInterfaceInfo *info);
extern
void g_dbus_method_info_unref (GDBusMethodInfo *info);
extern
void g_dbus_signal_info_unref (GDBusSignalInfo *info);
extern
void g_dbus_property_info_unref (GDBusPropertyInfo *info);
extern
void g_dbus_arg_info_unref (GDBusArgInfo *info);
extern
void g_dbus_annotation_info_unref (GDBusAnnotationInfo *info);
# 308 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusintrospection.h"
extern
GType g_dbus_node_info_get_type (void) __attribute__((__const__));
extern
GType g_dbus_interface_info_get_type (void) __attribute__((__const__));
extern
GType g_dbus_method_info_get_type (void) __attribute__((__const__));
extern
GType g_dbus_signal_info_get_type (void) __attribute__((__const__));
extern
GType g_dbus_property_info_get_type (void) __attribute__((__const__));
extern
GType g_dbus_arg_info_get_type (void) __attribute__((__const__));
extern
GType g_dbus_annotation_info_get_type (void) __attribute__((__const__));

}
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusmessage.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusmessage.h"
extern "C" {





extern
GType g_dbus_message_get_type (void) __attribute__((__const__));
extern
GDBusMessage *g_dbus_message_new (void);
extern
GDBusMessage *g_dbus_message_new_signal (const gchar *path,
                                                            const gchar *interface_,
                                                            const gchar *signal);
extern
GDBusMessage *g_dbus_message_new_method_call (const gchar *name,
                                                            const gchar *path,
                                                            const gchar *interface_,
                                                            const gchar *method);
extern
GDBusMessage *g_dbus_message_new_method_reply (GDBusMessage *method_call_message);
extern
GDBusMessage *g_dbus_message_new_method_error (GDBusMessage *method_call_message,
                                                            const gchar *error_name,
                                                            const gchar *error_message_format,
                                                            ...);
extern
GDBusMessage *g_dbus_message_new_method_error_valist (GDBusMessage *method_call_message,
                                                                 const gchar *error_name,
                                                                 const gchar *error_message_format,
                                                                 va_list var_args);
extern
GDBusMessage *g_dbus_message_new_method_error_literal (GDBusMessage *method_call_message,
                                                                  const gchar *error_name,
                                                                  const gchar *error_message);
extern
gchar *g_dbus_message_print (GDBusMessage *message,
                                                            guint indent);
extern
gboolean g_dbus_message_get_locked (GDBusMessage *message);
extern
void g_dbus_message_lock (GDBusMessage *message);
extern
GDBusMessage *g_dbus_message_copy (GDBusMessage *message,
                                                            GError **error);
extern
GDBusMessageByteOrder g_dbus_message_get_byte_order (GDBusMessage *message);
extern
void g_dbus_message_set_byte_order (GDBusMessage *message,
                                                            GDBusMessageByteOrder byte_order);

extern
GDBusMessageType g_dbus_message_get_message_type (GDBusMessage *message);
extern
void g_dbus_message_set_message_type (GDBusMessage *message,
                                                            GDBusMessageType type);
extern
GDBusMessageFlags g_dbus_message_get_flags (GDBusMessage *message);
extern
void g_dbus_message_set_flags (GDBusMessage *message,
                                                            GDBusMessageFlags flags);
extern
guint32 g_dbus_message_get_serial (GDBusMessage *message);
extern
void g_dbus_message_set_serial (GDBusMessage *message,
                                                            guint32 serial);
extern
GVariant *g_dbus_message_get_header (GDBusMessage *message,
                                                            GDBusMessageHeaderField header_field);
extern
void g_dbus_message_set_header (GDBusMessage *message,
                                                            GDBusMessageHeaderField header_field,
                                                            GVariant *value);
extern
guchar *g_dbus_message_get_header_fields (GDBusMessage *message);
extern
GVariant *g_dbus_message_get_body (GDBusMessage *message);
extern
void g_dbus_message_set_body (GDBusMessage *message,
                                                            GVariant *body);
extern
GUnixFDList *g_dbus_message_get_unix_fd_list (GDBusMessage *message);
extern
void g_dbus_message_set_unix_fd_list (GDBusMessage *message,
                                                            GUnixFDList *fd_list);

extern
guint32 g_dbus_message_get_reply_serial (GDBusMessage *message);
extern
void g_dbus_message_set_reply_serial (GDBusMessage *message,
                                                            guint32 value);

extern
const gchar *g_dbus_message_get_interface (GDBusMessage *message);
extern
void g_dbus_message_set_interface (GDBusMessage *message,
                                                            const gchar *value);

extern
const gchar *g_dbus_message_get_member (GDBusMessage *message);
extern
void g_dbus_message_set_member (GDBusMessage *message,
                                                            const gchar *value);

extern
const gchar *g_dbus_message_get_path (GDBusMessage *message);
extern
void g_dbus_message_set_path (GDBusMessage *message,
                                                            const gchar *value);

extern
const gchar *g_dbus_message_get_sender (GDBusMessage *message);
extern
void g_dbus_message_set_sender (GDBusMessage *message,
                                                            const gchar *value);

extern
const gchar *g_dbus_message_get_destination (GDBusMessage *message);
extern
void g_dbus_message_set_destination (GDBusMessage *message,
                                                            const gchar *value);

extern
const gchar *g_dbus_message_get_error_name (GDBusMessage *message);
extern
void g_dbus_message_set_error_name (GDBusMessage *message,
                                                            const gchar *value);

extern
const gchar *g_dbus_message_get_signature (GDBusMessage *message);
extern
void g_dbus_message_set_signature (GDBusMessage *message,
                                                            const gchar *value);

extern
guint32 g_dbus_message_get_num_unix_fds (GDBusMessage *message);
extern
void g_dbus_message_set_num_unix_fds (GDBusMessage *message,
                                                            guint32 value);

extern
const gchar *g_dbus_message_get_arg0 (GDBusMessage *message);


extern
GDBusMessage *g_dbus_message_new_from_blob (guchar *blob,
                                                            gsize blob_len,
                                                            GDBusCapabilityFlags capabilities,
                                                            GError **error);

extern
gssize g_dbus_message_bytes_needed (guchar *blob,
                                                            gsize blob_len,
                                                            GError **error);

extern
guchar *g_dbus_message_to_blob (GDBusMessage *message,
                                                            gsize *out_size,
                                                            GDBusCapabilityFlags capabilities,
                                                            GError **error);

extern
gboolean g_dbus_message_to_gerror (GDBusMessage *message,
                                                            GError **error);

}
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusmethodinvocation.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusmethodinvocation.h"
extern "C" {





extern
GType g_dbus_method_invocation_get_type (void) __attribute__((__const__));
extern
const gchar *g_dbus_method_invocation_get_sender (GDBusMethodInvocation *invocation);
extern
const gchar *g_dbus_method_invocation_get_object_path (GDBusMethodInvocation *invocation);
extern
const gchar *g_dbus_method_invocation_get_interface_name (GDBusMethodInvocation *invocation);
extern
const gchar *g_dbus_method_invocation_get_method_name (GDBusMethodInvocation *invocation);
extern
const GDBusMethodInfo *g_dbus_method_invocation_get_method_info (GDBusMethodInvocation *invocation);
extern
const GDBusPropertyInfo *g_dbus_method_invocation_get_property_info (GDBusMethodInvocation *invocation);
extern
GDBusConnection *g_dbus_method_invocation_get_connection (GDBusMethodInvocation *invocation);
extern
GDBusMessage *g_dbus_method_invocation_get_message (GDBusMethodInvocation *invocation);
extern
GVariant *g_dbus_method_invocation_get_parameters (GDBusMethodInvocation *invocation);
extern
gpointer g_dbus_method_invocation_get_user_data (GDBusMethodInvocation *invocation);

extern
void g_dbus_method_invocation_return_value (GDBusMethodInvocation *invocation,
                                                                     GVariant *parameters);
extern
void g_dbus_method_invocation_return_value_with_unix_fd_list (GDBusMethodInvocation *invocation,
                                                                               GVariant *parameters,
                                                                               GUnixFDList *fd_list);
extern
void g_dbus_method_invocation_return_error (GDBusMethodInvocation *invocation,
                                                                     GQuark domain,
                                                                     gint code,
                                                                     const gchar *format,
                                                                     ...) __attribute__((__format__ (__printf__, 4, 5)));
extern
void g_dbus_method_invocation_return_error_valist (GDBusMethodInvocation *invocation,
                                                                     GQuark domain,
                                                                     gint code,
                                                                     const gchar *format,
                                                                     va_list var_args)
                                                                     __attribute__((__format__ (__printf__, 4, 0)));
extern
void g_dbus_method_invocation_return_error_literal (GDBusMethodInvocation *invocation,
                                                                     GQuark domain,
                                                                     gint code,
                                                                     const gchar *message);
extern
void g_dbus_method_invocation_return_gerror (GDBusMethodInvocation *invocation,
                                                                     const GError *error);
extern
void g_dbus_method_invocation_take_error (GDBusMethodInvocation *invocation,
                                                                     GError *error);
extern
void g_dbus_method_invocation_return_dbus_error (GDBusMethodInvocation *invocation,
                                                                     const gchar *error_name,
                                                                     const gchar *error_message);

}
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusnameowning.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusnameowning.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusnameowning.h"
typedef void (*GBusAcquiredCallback) (GDBusConnection *connection,
                                     const gchar *name,
                                     gpointer user_data);
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusnameowning.h"
typedef void (*GBusNameAcquiredCallback) (GDBusConnection *connection,
                                         const gchar *name,
                                         gpointer user_data);
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusnameowning.h"
typedef void (*GBusNameLostCallback) (GDBusConnection *connection,
                                     const gchar *name,
                                     gpointer user_data);

extern
guint g_bus_own_name (GBusType bus_type,
                                     const gchar *name,
                                     GBusNameOwnerFlags flags,
                                     GBusAcquiredCallback bus_acquired_handler,
                                     GBusNameAcquiredCallback name_acquired_handler,
                                     GBusNameLostCallback name_lost_handler,
                                     gpointer user_data,
                                     GDestroyNotify user_data_free_func);

extern
guint g_bus_own_name_on_connection (GDBusConnection *connection,
                                     const gchar *name,
                                     GBusNameOwnerFlags flags,
                                     GBusNameAcquiredCallback name_acquired_handler,
                                     GBusNameLostCallback name_lost_handler,
                                     gpointer user_data,
                                     GDestroyNotify user_data_free_func);

extern
guint g_bus_own_name_with_closures (GBusType bus_type,
                                     const gchar *name,
                                     GBusNameOwnerFlags flags,
                                     GClosure *bus_acquired_closure,
                                     GClosure *name_acquired_closure,
                                     GClosure *name_lost_closure);

extern
guint g_bus_own_name_on_connection_with_closures (
                                     GDBusConnection *connection,
                                     const gchar *name,
                                     GBusNameOwnerFlags flags,
                                     GClosure *name_acquired_closure,
                                     GClosure *name_lost_closure);

extern
void g_bus_unown_name (guint owner_id);

}
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusnamewatching.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusnamewatching.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusnamewatching.h"
typedef void (*GBusNameAppearedCallback) (GDBusConnection *connection,
                                         const gchar *name,
                                         const gchar *name_owner,
                                         gpointer user_data);
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusnamewatching.h"
typedef void (*GBusNameVanishedCallback) (GDBusConnection *connection,
                                         const gchar *name,
                                         gpointer user_data);


extern
guint g_bus_watch_name (GBusType bus_type,
                                     const gchar *name,
                                     GBusNameWatcherFlags flags,
                                     GBusNameAppearedCallback name_appeared_handler,
                                     GBusNameVanishedCallback name_vanished_handler,
                                     gpointer user_data,
                                     GDestroyNotify user_data_free_func);
extern
guint g_bus_watch_name_on_connection (GDBusConnection *connection,
                                     const gchar *name,
                                     GBusNameWatcherFlags flags,
                                     GBusNameAppearedCallback name_appeared_handler,
                                     GBusNameVanishedCallback name_vanished_handler,
                                     gpointer user_data,
                                     GDestroyNotify user_data_free_func);
extern
guint g_bus_watch_name_with_closures (GBusType bus_type,
                                     const gchar *name,
                                     GBusNameWatcherFlags flags,
                                     GClosure *name_appeared_closure,
                                     GClosure *name_vanished_closure);
extern
guint g_bus_watch_name_on_connection_with_closures (
                                     GDBusConnection *connection,
                                     const gchar *name,
                                     GBusNameWatcherFlags flags,
                                     GClosure *name_appeared_closure,
                                     GClosure *name_vanished_closure);
extern
void g_bus_unwatch_name (guint watcher_id);

}
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusproxy.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusproxy.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusproxy.h"
typedef struct _GDBusProxyClass GDBusProxyClass;
typedef struct _GDBusProxyPrivate GDBusProxyPrivate;
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusproxy.h"
struct _GDBusProxy
{

 GObject parent_instance;
 GDBusProxyPrivate *priv;
};
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusproxy.h"
struct _GDBusProxyClass
{

 GObjectClass parent_class;



 void (*g_properties_changed) (GDBusProxy *proxy,
                               GVariant *changed_properties,
                               const gchar* const *invalidated_properties);
 void (*g_signal) (GDBusProxy *proxy,
                               const gchar *sender_name,
                               const gchar *signal_name,
                               GVariant *parameters);



 gpointer padding[32];
};

extern
GType g_dbus_proxy_get_type (void) __attribute__((__const__));
extern
void g_dbus_proxy_new (GDBusConnection *connection,
                                                        GDBusProxyFlags flags,
                                                        GDBusInterfaceInfo *info,
                                                        const gchar *name,
                                                        const gchar *object_path,
                                                        const gchar *interface_name,
                                                        GCancellable *cancellable,
                                                        GAsyncReadyCallback callback,
                                                        gpointer user_data);
extern
GDBusProxy *g_dbus_proxy_new_finish (GAsyncResult *res,
                                                        GError **error);
extern
GDBusProxy *g_dbus_proxy_new_sync (GDBusConnection *connection,
                                                        GDBusProxyFlags flags,
                                                        GDBusInterfaceInfo *info,
                                                        const gchar *name,
                                                        const gchar *object_path,
                                                        const gchar *interface_name,
                                                        GCancellable *cancellable,
                                                        GError **error);
extern
void g_dbus_proxy_new_for_bus (GBusType bus_type,
                                                        GDBusProxyFlags flags,
                                                        GDBusInterfaceInfo *info,
                                                        const gchar *name,
                                                        const gchar *object_path,
                                                        const gchar *interface_name,
                                                        GCancellable *cancellable,
                                                        GAsyncReadyCallback callback,
                                                        gpointer user_data);
extern
GDBusProxy *g_dbus_proxy_new_for_bus_finish (GAsyncResult *res,
                                                        GError **error);
extern
GDBusProxy *g_dbus_proxy_new_for_bus_sync (GBusType bus_type,
                                                        GDBusProxyFlags flags,
                                                        GDBusInterfaceInfo *info,
                                                        const gchar *name,
                                                        const gchar *object_path,
                                                        const gchar *interface_name,
                                                        GCancellable *cancellable,
                                                        GError **error);
extern
GDBusConnection *g_dbus_proxy_get_connection (GDBusProxy *proxy);
extern
GDBusProxyFlags g_dbus_proxy_get_flags (GDBusProxy *proxy);
extern
const gchar *g_dbus_proxy_get_name (GDBusProxy *proxy);
extern
gchar *g_dbus_proxy_get_name_owner (GDBusProxy *proxy);
extern
const gchar *g_dbus_proxy_get_object_path (GDBusProxy *proxy);
extern
const gchar *g_dbus_proxy_get_interface_name (GDBusProxy *proxy);
extern
gint g_dbus_proxy_get_default_timeout (GDBusProxy *proxy);
extern
void g_dbus_proxy_set_default_timeout (GDBusProxy *proxy,
                                                        gint timeout_msec);
extern
GDBusInterfaceInfo *g_dbus_proxy_get_interface_info (GDBusProxy *proxy);
extern
void g_dbus_proxy_set_interface_info (GDBusProxy *proxy,
                                                        GDBusInterfaceInfo *info);
extern
GVariant *g_dbus_proxy_get_cached_property (GDBusProxy *proxy,
                                                        const gchar *property_name);
extern
void g_dbus_proxy_set_cached_property (GDBusProxy *proxy,
                                                        const gchar *property_name,
                                                        GVariant *value);
extern
gchar **g_dbus_proxy_get_cached_property_names (GDBusProxy *proxy);
extern
void g_dbus_proxy_call (GDBusProxy *proxy,
                                                        const gchar *method_name,
                                                        GVariant *parameters,
                                                        GDBusCallFlags flags,
                                                        gint timeout_msec,
                                                        GCancellable *cancellable,
                                                        GAsyncReadyCallback callback,
                                                        gpointer user_data);
extern
GVariant *g_dbus_proxy_call_finish (GDBusProxy *proxy,
                                                        GAsyncResult *res,
                                                        GError **error);
extern
GVariant *g_dbus_proxy_call_sync (GDBusProxy *proxy,
                                                        const gchar *method_name,
                                                        GVariant *parameters,
                                                        GDBusCallFlags flags,
                                                        gint timeout_msec,
                                                        GCancellable *cancellable,
                                                        GError **error);

extern
void g_dbus_proxy_call_with_unix_fd_list (GDBusProxy *proxy,
                                                            const gchar *method_name,
                                                            GVariant *parameters,
                                                            GDBusCallFlags flags,
                                                            gint timeout_msec,
                                                            GUnixFDList *fd_list,
                                                            GCancellable *cancellable,
                                                            GAsyncReadyCallback callback,
                                                            gpointer user_data);
extern
GVariant *g_dbus_proxy_call_with_unix_fd_list_finish (GDBusProxy *proxy,
                                                            GUnixFDList **out_fd_list,
                                                            GAsyncResult *res,
                                                            GError **error);
extern
GVariant *g_dbus_proxy_call_with_unix_fd_list_sync (GDBusProxy *proxy,
                                                            const gchar *method_name,
                                                            GVariant *parameters,
                                                            GDBusCallFlags flags,
                                                            gint timeout_msec,
                                                            GUnixFDList *fd_list,
                                                            GUnixFDList **out_fd_list,
                                                            GCancellable *cancellable,
                                                            GError **error);

}
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusserver.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusserver.h"
extern "C" {





extern
GType g_dbus_server_get_type (void) __attribute__((__const__));
extern
GDBusServer *g_dbus_server_new_sync (const gchar *address,
                                                   GDBusServerFlags flags,
                                                   const gchar *guid,
                                                   GDBusAuthObserver *observer,
                                                   GCancellable *cancellable,
                                                   GError **error);
extern
const gchar *g_dbus_server_get_client_address (GDBusServer *server);
extern
const gchar *g_dbus_server_get_guid (GDBusServer *server);
extern
GDBusServerFlags g_dbus_server_get_flags (GDBusServer *server);
extern
void g_dbus_server_start (GDBusServer *server);
extern
void g_dbus_server_stop (GDBusServer *server);
extern
gboolean g_dbus_server_is_active (GDBusServer *server);

}
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusutils.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusutils.h"
extern "C" {

extern
gboolean g_dbus_is_guid (const gchar *string);
extern
gchar *g_dbus_generate_guid (void);

extern
gboolean g_dbus_is_name (const gchar *string);
extern
gboolean g_dbus_is_unique_name (const gchar *string);
extern
gboolean g_dbus_is_member_name (const gchar *string);
extern
gboolean g_dbus_is_interface_name (const gchar *string);

extern
void g_dbus_gvariant_to_gvalue (GVariant *value,
                               GValue *out_gvalue);
extern
GVariant *g_dbus_gvalue_to_gvariant (const GValue *gvalue,
                                    const GVariantType *type);

}
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdrive.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdrive.h"
extern "C" {
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdrive.h"
typedef struct _GDriveIface GDriveIface;

struct _GDriveIface
{
 GTypeInterface g_iface;


 void (* changed) (GDrive *drive);
 void (* disconnected) (GDrive *drive);
 void (* eject_button) (GDrive *drive);


 char * (* get_name) (GDrive *drive);
 GIcon * (* get_icon) (GDrive *drive);
 gboolean (* has_volumes) (GDrive *drive);
 GList * (* get_volumes) (GDrive *drive);
 gboolean (* is_media_removable) (GDrive *drive);
 gboolean (* has_media) (GDrive *drive);
 gboolean (* is_media_check_automatic) (GDrive *drive);
 gboolean (* can_eject) (GDrive *drive);
 gboolean (* can_poll_for_media) (GDrive *drive);
 void (* eject) (GDrive *drive,
                                        GMountUnmountFlags flags,
                                        GCancellable *cancellable,
                                        GAsyncReadyCallback callback,
                                        gpointer user_data);
 gboolean (* eject_finish) (GDrive *drive,
                                        GAsyncResult *result,
                                        GError **error);
 void (* poll_for_media) (GDrive *drive,
                                        GCancellable *cancellable,
                                        GAsyncReadyCallback callback,
                                        gpointer user_data);
 gboolean (* poll_for_media_finish) (GDrive *drive,
                                        GAsyncResult *result,
                                        GError **error);

 char * (* get_identifier) (GDrive *drive,
                                        const char *kind);
 char ** (* enumerate_identifiers) (GDrive *drive);

 GDriveStartStopType (* get_start_stop_type) (GDrive *drive);

 gboolean (* can_start) (GDrive *drive);
 gboolean (* can_start_degraded) (GDrive *drive);
 void (* start) (GDrive *drive,
                                        GDriveStartFlags flags,
                                        GMountOperation *mount_operation,
                                        GCancellable *cancellable,
                                        GAsyncReadyCallback callback,
                                        gpointer user_data);
 gboolean (* start_finish) (GDrive *drive,
                                        GAsyncResult *result,
                                        GError **error);

 gboolean (* can_stop) (GDrive *drive);
 void (* stop) (GDrive *drive,
                                        GMountUnmountFlags flags,
                                        GMountOperation *mount_operation,
                                        GCancellable *cancellable,
                                        GAsyncReadyCallback callback,
                                        gpointer user_data);
 gboolean (* stop_finish) (GDrive *drive,
                                        GAsyncResult *result,
                                        GError **error);

 void (* stop_button) (GDrive *drive);

 void (* eject_with_operation) (GDrive *drive,
                                            GMountUnmountFlags flags,
                                            GMountOperation *mount_operation,
                                            GCancellable *cancellable,
                                            GAsyncReadyCallback callback,
                                            gpointer user_data);
 gboolean (* eject_with_operation_finish) (GDrive *drive,
                                            GAsyncResult *result,
                                            GError **error);

 const gchar * (* get_sort_key) (GDrive *drive);
 GIcon * (* get_symbolic_icon) (GDrive *drive);

};

extern
GType g_drive_get_type (void) __attribute__((__const__));

extern
char * g_drive_get_name (GDrive *drive);
extern
GIcon * g_drive_get_icon (GDrive *drive);
extern
GIcon * g_drive_get_symbolic_icon (GDrive *drive);
extern
gboolean g_drive_has_volumes (GDrive *drive);
extern
GList * g_drive_get_volumes (GDrive *drive);
extern
gboolean g_drive_is_media_removable (GDrive *drive);
extern
gboolean g_drive_has_media (GDrive *drive);
extern
gboolean g_drive_is_media_check_automatic (GDrive *drive);
extern
gboolean g_drive_can_poll_for_media (GDrive *drive);
extern
gboolean g_drive_can_eject (GDrive *drive);
__attribute__((__deprecated__("Use '" "g_drive_eject_with_operation" "' instead"))) extern
void g_drive_eject (GDrive *drive,
                                          GMountUnmountFlags flags,
                                          GCancellable *cancellable,
                                          GAsyncReadyCallback callback,
                                          gpointer user_data);

__attribute__((__deprecated__("Use '" "g_drive_eject_with_operation_finish" "' instead"))) extern
gboolean g_drive_eject_finish (GDrive *drive,
                                          GAsyncResult *result,
                                          GError **error);
extern
void g_drive_poll_for_media (GDrive *drive,
                                          GCancellable *cancellable,
                                          GAsyncReadyCallback callback,
                                          gpointer user_data);
extern
gboolean g_drive_poll_for_media_finish (GDrive *drive,
                                          GAsyncResult *result,
                                          GError **error);
extern
char * g_drive_get_identifier (GDrive *drive,
                                          const char *kind);
extern
char ** g_drive_enumerate_identifiers (GDrive *drive);

extern
GDriveStartStopType g_drive_get_start_stop_type (GDrive *drive);

extern
gboolean g_drive_can_start (GDrive *drive);
extern
gboolean g_drive_can_start_degraded (GDrive *drive);
extern
void g_drive_start (GDrive *drive,
                                          GDriveStartFlags flags,
                                          GMountOperation *mount_operation,
                                          GCancellable *cancellable,
                                          GAsyncReadyCallback callback,
                                          gpointer user_data);
extern
gboolean g_drive_start_finish (GDrive *drive,
                                          GAsyncResult *result,
                                          GError **error);

extern
gboolean g_drive_can_stop (GDrive *drive);
extern
void g_drive_stop (GDrive *drive,
                                          GMountUnmountFlags flags,
                                          GMountOperation *mount_operation,
                                          GCancellable *cancellable,
                                          GAsyncReadyCallback callback,
                                          gpointer user_data);
extern
gboolean g_drive_stop_finish (GDrive *drive,
                                          GAsyncResult *result,
                                          GError **error);

extern
void g_drive_eject_with_operation (GDrive *drive,
                                              GMountUnmountFlags flags,
                                              GMountOperation *mount_operation,
                                              GCancellable *cancellable,
                                              GAsyncReadyCallback callback,
                                              gpointer user_data);
extern
gboolean g_drive_eject_with_operation_finish (GDrive *drive,
                                              GAsyncResult *result,
                                              GError **error);

extern
const gchar *g_drive_get_sort_key (GDrive *drive);

}
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsclientconnection.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsclientconnection.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsconnection.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsconnection.h"
extern "C" {






typedef struct _GDtlsConnectionInterface GDtlsConnectionInterface;
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsconnection.h"
struct _GDtlsConnectionInterface
{
 GTypeInterface g_iface;


 gboolean (*accept_certificate) (GDtlsConnection *connection,
                                 GTlsCertificate *peer_cert,
                                 GTlsCertificateFlags errors);


 gboolean (*handshake) (GDtlsConnection *conn,
                                 GCancellable *cancellable,
                                 GError **error);

 void (*handshake_async) (GDtlsConnection *conn,
                                 int io_priority,
                                 GCancellable *cancellable,
                                 GAsyncReadyCallback callback,
                                 gpointer user_data);
 gboolean (*handshake_finish) (GDtlsConnection *conn,
                                 GAsyncResult *result,
                                 GError **error);

 gboolean (*shutdown) (GDtlsConnection *conn,
                                 gboolean shutdown_read,
                                 gboolean shutdown_write,
                                 GCancellable *cancellable,
                                 GError **error);

 void (*shutdown_async) (GDtlsConnection *conn,
                                 gboolean shutdown_read,
                                 gboolean shutdown_write,
                                 int io_priority,
                                 GCancellable *cancellable,
                                 GAsyncReadyCallback callback,
                                 gpointer user_data);
 gboolean (*shutdown_finish) (GDtlsConnection *conn,
                                 GAsyncResult *result,
                                 GError **error);
};

extern
GType g_dtls_connection_get_type (void) __attribute__((__const__));

extern
void g_dtls_connection_set_database (GDtlsConnection *conn,
                                                                    GTlsDatabase *database);
extern
GTlsDatabase *g_dtls_connection_get_database (GDtlsConnection *conn);

extern
void g_dtls_connection_set_certificate (GDtlsConnection *conn,
                                                                    GTlsCertificate *certificate);
extern
GTlsCertificate *g_dtls_connection_get_certificate (GDtlsConnection *conn);

extern
void g_dtls_connection_set_interaction (GDtlsConnection *conn,
                                                                    GTlsInteraction *interaction);
extern
GTlsInteraction *g_dtls_connection_get_interaction (GDtlsConnection *conn);

extern
GTlsCertificate *g_dtls_connection_get_peer_certificate (GDtlsConnection *conn);
extern
GTlsCertificateFlags g_dtls_connection_get_peer_certificate_errors (GDtlsConnection *conn);

extern
void g_dtls_connection_set_require_close_notify (GDtlsConnection *conn,
                                                                    gboolean require_close_notify);
extern
gboolean g_dtls_connection_get_require_close_notify (GDtlsConnection *conn);

extern
void g_dtls_connection_set_rehandshake_mode (GDtlsConnection *conn,
                                                                    GTlsRehandshakeMode mode);
extern
GTlsRehandshakeMode g_dtls_connection_get_rehandshake_mode (GDtlsConnection *conn);

extern
gboolean g_dtls_connection_handshake (GDtlsConnection *conn,
                                                                    GCancellable *cancellable,
                                                                    GError **error);

extern
void g_dtls_connection_handshake_async (GDtlsConnection *conn,
                                                                    int io_priority,
                                                                    GCancellable *cancellable,
                                                                    GAsyncReadyCallback callback,
                                                                    gpointer user_data);
extern
gboolean g_dtls_connection_handshake_finish (GDtlsConnection *conn,
                                                                    GAsyncResult *result,
                                                                    GError **error);

extern
gboolean g_dtls_connection_shutdown (GDtlsConnection *conn,
                                                                    gboolean shutdown_read,
                                                                    gboolean shutdown_write,
                                                                    GCancellable *cancellable,
                                                                    GError **error);

extern
void g_dtls_connection_shutdown_async (GDtlsConnection *conn,
                                                                    gboolean shutdown_read,
                                                                    gboolean shutdown_write,
                                                                    int io_priority,
                                                                    GCancellable *cancellable,
                                                                    GAsyncReadyCallback callback,
                                                                    gpointer user_data);
extern
gboolean g_dtls_connection_shutdown_finish (GDtlsConnection *conn,
                                                                    GAsyncResult *result,
                                                                    GError **error);

extern
gboolean g_dtls_connection_close (GDtlsConnection *conn,
                                                                    GCancellable *cancellable,
                                                                    GError **error);

extern
void g_dtls_connection_close_async (GDtlsConnection *conn,
                                                                    int io_priority,
                                                                    GCancellable *cancellable,
                                                                    GAsyncReadyCallback callback,
                                                                    gpointer user_data);
extern
gboolean g_dtls_connection_close_finish (GDtlsConnection *conn,
                                                                    GAsyncResult *result,
                                                                    GError **error);


extern
gboolean g_dtls_connection_emit_accept_certificate (GDtlsConnection *conn,
                                                                    GTlsCertificate *peer_cert,
                                                                    GTlsCertificateFlags errors);
}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsclientconnection.h" 2

extern "C" {






typedef struct _GDtlsClientConnectionInterface GDtlsClientConnectionInterface;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsclientconnection.h"
struct _GDtlsClientConnectionInterface
{
 GTypeInterface g_iface;
};

extern
GType g_dtls_client_connection_get_type (void) __attribute__((__const__));

extern
GDatagramBased *g_dtls_client_connection_new (GDatagramBased *base_socket,
                                                                   GSocketConnectable *server_identity,
                                                                   GError **error);

extern
GTlsCertificateFlags g_dtls_client_connection_get_validation_flags (GDtlsClientConnection *conn);
extern
void g_dtls_client_connection_set_validation_flags (GDtlsClientConnection *conn,
                                                                   GTlsCertificateFlags flags);
extern
GSocketConnectable *g_dtls_client_connection_get_server_identity (GDtlsClientConnection *conn);
extern
void g_dtls_client_connection_set_server_identity (GDtlsClientConnection *conn,
                                                                   GSocketConnectable *identity);
extern
GList * g_dtls_client_connection_get_accepted_cas (GDtlsClientConnection *conn);


}
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsserverconnection.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsserverconnection.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsserverconnection.h"
typedef struct _GDtlsServerConnectionInterface GDtlsServerConnectionInterface;
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdtlsserverconnection.h"
struct _GDtlsServerConnectionInterface
{
 GTypeInterface g_iface;
};

extern
GType g_dtls_server_connection_get_type (void) __attribute__((__const__));

extern
GDatagramBased *g_dtls_server_connection_new (GDatagramBased *base_socket,
                                                  GTlsCertificate *certificate,
                                                  GError **error);

}
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gemblemedicon.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gemblemedicon.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gicon.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gicon.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gicon.h"
typedef struct _GIconIface GIconIface;
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gicon.h"
struct _GIconIface
{
 GTypeInterface g_iface;



 guint (* hash) (GIcon *icon);
 gboolean (* equal) (GIcon *icon1,
                              GIcon *icon2);
 gboolean (* to_tokens) (GIcon *icon,
         GPtrArray *tokens,
                              gint *out_version);
 GIcon * (* from_tokens) (gchar **tokens,
                              gint num_tokens,
                              gint version,
                              GError **error);

 GVariant * (* serialize) (GIcon *icon);
};

extern
GType g_icon_get_type (void) __attribute__((__const__));

extern
guint g_icon_hash (gconstpointer icon);
extern
gboolean g_icon_equal (GIcon *icon1,
                                GIcon *icon2);
extern
gchar *g_icon_to_string (GIcon *icon);
extern
GIcon *g_icon_new_for_string (const gchar *str,
                                GError **error);

extern
GVariant * g_icon_serialize (GIcon *icon);
extern
GIcon * g_icon_deserialize (GVariant *value);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gemblemedicon.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gemblem.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gemblem.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gemblem.h"
typedef struct _GEmblem GEmblem;
typedef struct _GEmblemClass GEmblemClass;

extern
GType g_emblem_get_type (void) __attribute__((__const__));

extern
GEmblem *g_emblem_new (GIcon *icon);
extern
GEmblem *g_emblem_new_with_origin (GIcon *icon,
                                        GEmblemOrigin origin);
extern
GIcon *g_emblem_get_icon (GEmblem *emblem);
extern
GEmblemOrigin g_emblem_get_origin (GEmblem *emblem);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gemblemedicon.h" 2

extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gemblemedicon.h"
typedef struct _GEmblemedIcon GEmblemedIcon;
typedef struct _GEmblemedIconClass GEmblemedIconClass;
typedef struct _GEmblemedIconPrivate GEmblemedIconPrivate;

struct _GEmblemedIcon
{
 GObject parent_instance;


 GEmblemedIconPrivate *priv;
};

struct _GEmblemedIconClass
{
 GObjectClass parent_class;
};

extern
GType g_emblemed_icon_get_type (void) __attribute__((__const__));

extern
GIcon *g_emblemed_icon_new (GIcon *icon,
                                   GEmblem *emblem);
extern
GIcon *g_emblemed_icon_get_icon (GEmblemedIcon *emblemed);
extern
GList *g_emblemed_icon_get_emblems (GEmblemedIcon *emblemed);
extern
void g_emblemed_icon_add_emblem (GEmblemedIcon *emblemed,
                                   GEmblem *emblem);
extern
void g_emblemed_icon_clear_emblems (GEmblemedIcon *emblemed);

}
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileattribute.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileattribute.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileattribute.h"
struct _GFileAttributeInfo
{
 char *name;
 GFileAttributeType type;
 GFileAttributeInfoFlags flags;
};
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileattribute.h"
struct _GFileAttributeInfoList
{
 GFileAttributeInfo *infos;
 int n_infos;
};


extern
GType g_file_attribute_info_list_get_type (void);

extern
GFileAttributeInfoList * g_file_attribute_info_list_new (void);
extern
GFileAttributeInfoList * g_file_attribute_info_list_ref (GFileAttributeInfoList *list);
extern
void g_file_attribute_info_list_unref (GFileAttributeInfoList *list);
extern
GFileAttributeInfoList * g_file_attribute_info_list_dup (GFileAttributeInfoList *list);
extern
const GFileAttributeInfo *g_file_attribute_info_list_lookup (GFileAttributeInfoList *list,
           const char *name);
extern
void g_file_attribute_info_list_add (GFileAttributeInfoList *list,
           const char *name,
           GFileAttributeType type,
           GFileAttributeInfoFlags flags);

}
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileenumerator.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileenumerator.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileenumerator.h"
typedef struct _GFileEnumeratorClass GFileEnumeratorClass;
typedef struct _GFileEnumeratorPrivate GFileEnumeratorPrivate;

struct _GFileEnumerator
{
 GObject parent_instance;


 GFileEnumeratorPrivate *priv;
};

struct _GFileEnumeratorClass
{
 GObjectClass parent_class;



 GFileInfo * (* next_file) (GFileEnumerator *enumerator,
                                    GCancellable *cancellable,
                                    GError **error);
 gboolean (* close_fn) (GFileEnumerator *enumerator,
                                    GCancellable *cancellable,
                                    GError **error);

 void (* next_files_async) (GFileEnumerator *enumerator,
                                    int num_files,
                                    int io_priority,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);
 GList * (* next_files_finish) (GFileEnumerator *enumerator,
                                    GAsyncResult *result,
                                    GError **error);
 void (* close_async) (GFileEnumerator *enumerator,
                                    int io_priority,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);
 gboolean (* close_finish) (GFileEnumerator *enumerator,
                                    GAsyncResult *result,
                                    GError **error);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
 void (*_g_reserved7) (void);
};

extern
GType g_file_enumerator_get_type (void) __attribute__((__const__));

extern
GFileInfo *g_file_enumerator_next_file (GFileEnumerator *enumerator,
     GCancellable *cancellable,
     GError **error);
extern
gboolean g_file_enumerator_close (GFileEnumerator *enumerator,
     GCancellable *cancellable,
     GError **error);
extern
void g_file_enumerator_next_files_async (GFileEnumerator *enumerator,
     int num_files,
     int io_priority,
     GCancellable *cancellable,
     GAsyncReadyCallback callback,
     gpointer user_data);
extern
GList * g_file_enumerator_next_files_finish (GFileEnumerator *enumerator,
     GAsyncResult *result,
     GError **error);
extern
void g_file_enumerator_close_async (GFileEnumerator *enumerator,
     int io_priority,
     GCancellable *cancellable,
     GAsyncReadyCallback callback,
     gpointer user_data);
extern
gboolean g_file_enumerator_close_finish (GFileEnumerator *enumerator,
     GAsyncResult *result,
     GError **error);
extern
gboolean g_file_enumerator_is_closed (GFileEnumerator *enumerator);
extern
gboolean g_file_enumerator_has_pending (GFileEnumerator *enumerator);
extern
void g_file_enumerator_set_pending (GFileEnumerator *enumerator,
     gboolean pending);
extern
GFile * g_file_enumerator_get_container (GFileEnumerator *enumerator);
extern
GFile * g_file_enumerator_get_child (GFileEnumerator *enumerator,
                                               GFileInfo *info);

extern
gboolean g_file_enumerator_iterate (GFileEnumerator *direnum,
                                               GFileInfo **out_info,
                                               GFile **out_child,
                                               GCancellable *cancellable,
                                               GError **error);


}
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfile.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfile.h"
extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfile.h"
typedef struct _GFileIface GFileIface;
# 159 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfile.h"
struct _GFileIface
{
 GTypeInterface g_iface;



 GFile * (* dup) (GFile *file);
 guint (* hash) (GFile *file);
 gboolean (* equal) (GFile *file1,
                                                      GFile *file2);
 gboolean (* is_native) (GFile *file);
 gboolean (* has_uri_scheme) (GFile *file,
                                                      const char *uri_scheme);
 char * (* get_uri_scheme) (GFile *file);
 char * (* get_basename) (GFile *file);
 char * (* get_path) (GFile *file);
 char * (* get_uri) (GFile *file);
 char * (* get_parse_name) (GFile *file);
 GFile * (* get_parent) (GFile *file);
 gboolean (* prefix_matches) (GFile *prefix,
                                                      GFile *file);
 char * (* get_relative_path) (GFile *parent,
                                                      GFile *descendant);
 GFile * (* resolve_relative_path) (GFile *file,
                                                      const char *relative_path);
 GFile * (* get_child_for_display_name) (GFile *file,
                                                      const char *display_name,
                                                      GError **error);

 GFileEnumerator * (* enumerate_children) (GFile *file,
                                                      const char *attributes,
                                                      GFileQueryInfoFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* enumerate_children_async) (GFile *file,
                                                      const char *attributes,
                                                      GFileQueryInfoFlags flags,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileEnumerator * (* enumerate_children_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 GFileInfo * (* query_info) (GFile *file,
                                                      const char *attributes,
                                                      GFileQueryInfoFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* query_info_async) (GFile *file,
                                                      const char *attributes,
                                                      GFileQueryInfoFlags flags,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileInfo * (* query_info_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 GFileInfo * (* query_filesystem_info) (GFile *file,
                                                      const char *attributes,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* query_filesystem_info_async) (GFile *file,
                                                      const char *attributes,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileInfo * (* query_filesystem_info_finish)(GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 GMount * (* find_enclosing_mount) (GFile *file,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* find_enclosing_mount_async) (GFile *file,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GMount * (* find_enclosing_mount_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 GFile * (* set_display_name) (GFile *file,
                                                      const char *display_name,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* set_display_name_async) (GFile *file,
                                                      const char *display_name,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFile * (* set_display_name_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 GFileAttributeInfoList * (* query_settable_attributes) (GFile *file,
                                                            GCancellable *cancellable,
                                                            GError **error);
 void (* _query_settable_attributes_async) (void);
 void (* _query_settable_attributes_finish) (void);

 GFileAttributeInfoList * (* query_writable_namespaces) (GFile *file,
                                                            GCancellable *cancellable,
                                                            GError **error);
 void (* _query_writable_namespaces_async) (void);
 void (* _query_writable_namespaces_finish) (void);

 gboolean (* set_attribute) (GFile *file,
                                                      const char *attribute,
                                                      GFileAttributeType type,
                                                      gpointer value_p,
                                                      GFileQueryInfoFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 gboolean (* set_attributes_from_info) (GFile *file,
                                                      GFileInfo *info,
                                                      GFileQueryInfoFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* set_attributes_async) (GFile *file,
                                                      GFileInfo *info,
                                                      GFileQueryInfoFlags flags,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* set_attributes_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GFileInfo **info,
                                                      GError **error);

 GFileInputStream * (* read_fn) (GFile *file,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* read_async) (GFile *file,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileInputStream * (* read_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 GFileOutputStream * (* append_to) (GFile *file,
                                                      GFileCreateFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* append_to_async) (GFile *file,
                                                      GFileCreateFlags flags,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileOutputStream * (* append_to_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 GFileOutputStream * (* create) (GFile *file,
                                                      GFileCreateFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* create_async) (GFile *file,
                                                      GFileCreateFlags flags,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileOutputStream * (* create_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 GFileOutputStream * (* replace) (GFile *file,
                                                      const char *etag,
                                                      gboolean make_backup,
                                                      GFileCreateFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* replace_async) (GFile *file,
                                                      const char *etag,
                                                      gboolean make_backup,
                                                      GFileCreateFlags flags,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileOutputStream * (* replace_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 gboolean (* delete_file) (GFile *file,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* delete_file_async) (GFile *file,
            int io_priority,
            GCancellable *cancellable,
            GAsyncReadyCallback callback,
            gpointer user_data);
 gboolean (* delete_file_finish) (GFile *file,
            GAsyncResult *result,
            GError **error);

 gboolean (* trash) (GFile *file,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* trash_async) (GFile *file,
            int io_priority,
            GCancellable *cancellable,
            GAsyncReadyCallback callback,
            gpointer user_data);
 gboolean (* trash_finish) (GFile *file,
            GAsyncResult *result,
            GError **error);

 gboolean (* make_directory) (GFile *file,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* make_directory_async) (GFile *file,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* make_directory_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GError **error);

 gboolean (* make_symbolic_link) (GFile *file,
                                                      const char *symlink_value,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* _make_symbolic_link_async) (void);
 void (* _make_symbolic_link_finish) (void);

 gboolean (* copy) (GFile *source,
                                                      GFile *destination,
                                                      GFileCopyFlags flags,
                                                      GCancellable *cancellable,
                                                      GFileProgressCallback progress_callback,
                                                      gpointer progress_callback_data,
                                                      GError **error);
 void (* copy_async) (GFile *source,
                                                      GFile *destination,
                                                      GFileCopyFlags flags,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GFileProgressCallback progress_callback,
                                                      gpointer progress_callback_data,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* copy_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 gboolean (* move) (GFile *source,
                                                      GFile *destination,
                                                      GFileCopyFlags flags,
                                                      GCancellable *cancellable,
                                                      GFileProgressCallback progress_callback,
                                                      gpointer progress_callback_data,
                                                      GError **error);
 void (* _move_async) (void);
 void (* _move_finish) (void);

 void (* mount_mountable) (GFile *file,
                                                      GMountMountFlags flags,
                                                      GMountOperation *mount_operation,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFile * (* mount_mountable_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GError **error);

 void (* unmount_mountable) (GFile *file,
                                                      GMountUnmountFlags flags,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* unmount_mountable_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GError **error);

 void (* eject_mountable) (GFile *file,
                                                      GMountUnmountFlags flags,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* eject_mountable_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GError **error);

 void (* mount_enclosing_volume) (GFile *location,
                                                      GMountMountFlags flags,
                                                      GMountOperation *mount_operation,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* mount_enclosing_volume_finish) (GFile *location,
                                                      GAsyncResult *result,
                                                      GError **error);

 GFileMonitor * (* monitor_dir) (GFile *file,
                                                      GFileMonitorFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 GFileMonitor * (* monitor_file) (GFile *file,
                                                      GFileMonitorFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);

 GFileIOStream * (* open_readwrite) (GFile *file,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* open_readwrite_async) (GFile *file,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileIOStream * (* open_readwrite_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);
 GFileIOStream * (* create_readwrite) (GFile *file,
            GFileCreateFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* create_readwrite_async) (GFile *file,
            GFileCreateFlags flags,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileIOStream * (* create_readwrite_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);
 GFileIOStream * (* replace_readwrite) (GFile *file,
                                                      const char *etag,
                                                      gboolean make_backup,
                                                      GFileCreateFlags flags,
                                                      GCancellable *cancellable,
                                                      GError **error);
 void (* replace_readwrite_async) (GFile *file,
                                                      const char *etag,
                                                      gboolean make_backup,
                                                      GFileCreateFlags flags,
                                                      int io_priority,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 GFileIOStream * (* replace_readwrite_finish) (GFile *file,
                                                      GAsyncResult *res,
                                                      GError **error);

 void (* start_mountable) (GFile *file,
                                                      GDriveStartFlags flags,
                                                      GMountOperation *start_operation,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* start_mountable_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GError **error);

 void (* stop_mountable) (GFile *file,
                                                      GMountUnmountFlags flags,
                                                      GMountOperation *mount_operation,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* stop_mountable_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GError **error);

 gboolean supports_thread_contexts;

 void (* unmount_mountable_with_operation) (GFile *file,
                                                      GMountUnmountFlags flags,
                                                      GMountOperation *mount_operation,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* unmount_mountable_with_operation_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GError **error);

 void (* eject_mountable_with_operation) (GFile *file,
                                                      GMountUnmountFlags flags,
                                                      GMountOperation *mount_operation,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* eject_mountable_with_operation_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GError **error);

 void (* poll_mountable) (GFile *file,
                                                      GCancellable *cancellable,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* poll_mountable_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      GError **error);

 gboolean (* measure_disk_usage) (GFile *file,
                                                      GFileMeasureFlags flags,
                                                      GCancellable *cancellable,
                                                      GFileMeasureProgressCallback progress_callback,
                                                      gpointer progress_data,
                                                      guint64 *disk_usage,
                                                      guint64 *num_dirs,
                                                      guint64 *num_files,
                                                      GError **error);
 void (* measure_disk_usage_async) (GFile *file,
                                                      GFileMeasureFlags flags,
                                                      gint io_priority,
                                                      GCancellable *cancellable,
                                                      GFileMeasureProgressCallback progress_callback,
                                                      gpointer progress_data,
                                                      GAsyncReadyCallback callback,
                                                      gpointer user_data);
 gboolean (* measure_disk_usage_finish) (GFile *file,
                                                      GAsyncResult *result,
                                                      guint64 *disk_usage,
                                                      guint64 *num_dirs,
                                                      guint64 *num_files,
                                                      GError **error);
};

extern
GType g_file_get_type (void) __attribute__((__const__));

extern
GFile * g_file_new_for_path (const char *path);
extern
GFile * g_file_new_for_uri (const char *uri);
extern
GFile * g_file_new_for_commandline_arg (const char *arg);
extern
GFile * g_file_new_for_commandline_arg_and_cwd (const gchar *arg,
                                                               const gchar *cwd);
extern
GFile * g_file_new_tmp (const char *tmpl,
                                                          GFileIOStream **iostream,
                                                          GError **error);
extern
GFile * g_file_parse_name (const char *parse_name);
extern
GFile * g_file_dup (GFile *file);
extern
guint g_file_hash (gconstpointer file);
extern
gboolean g_file_equal (GFile *file1,
         GFile *file2);
extern
char * g_file_get_basename (GFile *file);
extern
char * g_file_get_path (GFile *file);
extern
char * g_file_get_uri (GFile *file);
extern
char * g_file_get_parse_name (GFile *file);
extern
GFile * g_file_get_parent (GFile *file);
extern
gboolean g_file_has_parent (GFile *file,
                                                          GFile *parent);
extern
GFile * g_file_get_child (GFile *file,
         const char *name);
extern
GFile * g_file_get_child_for_display_name (GFile *file,
         const char *display_name,
         GError **error);
extern
gboolean g_file_has_prefix (GFile *file,
         GFile *prefix);
extern
char * g_file_get_relative_path (GFile *parent,
         GFile *descendant);
extern
GFile * g_file_resolve_relative_path (GFile *file,
         const char *relative_path);
extern
gboolean g_file_is_native (GFile *file);
extern
gboolean g_file_has_uri_scheme (GFile *file,
         const char *uri_scheme);
extern
char * g_file_get_uri_scheme (GFile *file);
extern
GFileInputStream * g_file_read (GFile *file,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_read_async (GFile *file,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileInputStream * g_file_read_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
GFileOutputStream * g_file_append_to (GFile *file,
         GFileCreateFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
GFileOutputStream * g_file_create (GFile *file,
         GFileCreateFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
GFileOutputStream * g_file_replace (GFile *file,
         const char *etag,
         gboolean make_backup,
         GFileCreateFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_append_to_async (GFile *file,
         GFileCreateFlags flags,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileOutputStream * g_file_append_to_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
void g_file_create_async (GFile *file,
         GFileCreateFlags flags,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileOutputStream * g_file_create_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
void g_file_replace_async (GFile *file,
         const char *etag,
         gboolean make_backup,
         GFileCreateFlags flags,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileOutputStream * g_file_replace_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
GFileIOStream * g_file_open_readwrite (GFile *file,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_open_readwrite_async (GFile *file,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileIOStream * g_file_open_readwrite_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
GFileIOStream * g_file_create_readwrite (GFile *file,
         GFileCreateFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_create_readwrite_async (GFile *file,
         GFileCreateFlags flags,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileIOStream * g_file_create_readwrite_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
GFileIOStream * g_file_replace_readwrite (GFile *file,
         const char *etag,
         gboolean make_backup,
         GFileCreateFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_replace_readwrite_async (GFile *file,
         const char *etag,
         gboolean make_backup,
         GFileCreateFlags flags,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileIOStream * g_file_replace_readwrite_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
gboolean g_file_query_exists (GFile *file,
         GCancellable *cancellable);
extern
GFileType g_file_query_file_type (GFile *file,
                                                          GFileQueryInfoFlags flags,
                                                          GCancellable *cancellable);
extern
GFileInfo * g_file_query_info (GFile *file,
         const char *attributes,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_query_info_async (GFile *file,
         const char *attributes,
         GFileQueryInfoFlags flags,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileInfo * g_file_query_info_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
GFileInfo * g_file_query_filesystem_info (GFile *file,
         const char *attributes,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_query_filesystem_info_async (GFile *file,
         const char *attributes,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileInfo * g_file_query_filesystem_info_finish (GFile *file,
                                                          GAsyncResult *res,
         GError **error);
extern
GMount * g_file_find_enclosing_mount (GFile *file,
                                                          GCancellable *cancellable,
                                                          GError **error);
extern
void g_file_find_enclosing_mount_async (GFile *file,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GMount * g_file_find_enclosing_mount_finish (GFile *file,
          GAsyncResult *res,
          GError **error);
extern
GFileEnumerator * g_file_enumerate_children (GFile *file,
         const char *attributes,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_enumerate_children_async (GFile *file,
         const char *attributes,
         GFileQueryInfoFlags flags,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFileEnumerator * g_file_enumerate_children_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
GFile * g_file_set_display_name (GFile *file,
         const char *display_name,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_set_display_name_async (GFile *file,
         const char *display_name,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFile * g_file_set_display_name_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
gboolean g_file_delete (GFile *file,
         GCancellable *cancellable,
         GError **error);

extern
void g_file_delete_async (GFile *file,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);

extern
gboolean g_file_delete_finish (GFile *file,
         GAsyncResult *result,
         GError **error);

extern
gboolean g_file_trash (GFile *file,
         GCancellable *cancellable,
         GError **error);

extern
void g_file_trash_async (GFile *file,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);

extern
gboolean g_file_trash_finish (GFile *file,
         GAsyncResult *result,
         GError **error);

extern
gboolean g_file_copy (GFile *source,
         GFile *destination,
         GFileCopyFlags flags,
         GCancellable *cancellable,
         GFileProgressCallback progress_callback,
         gpointer progress_callback_data,
         GError **error);
extern
void g_file_copy_async (GFile *source,
         GFile *destination,
         GFileCopyFlags flags,
         int io_priority,
         GCancellable *cancellable,
         GFileProgressCallback progress_callback,
         gpointer progress_callback_data,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gboolean g_file_copy_finish (GFile *file,
         GAsyncResult *res,
         GError **error);
extern
gboolean g_file_move (GFile *source,
         GFile *destination,
         GFileCopyFlags flags,
         GCancellable *cancellable,
         GFileProgressCallback progress_callback,
         gpointer progress_callback_data,
         GError **error);
extern
gboolean g_file_make_directory (GFile *file,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_make_directory_async (GFile *file,
                                                          int io_priority,
                                                          GCancellable *cancellable,
                                                          GAsyncReadyCallback callback,
                                                          gpointer user_data);
extern
gboolean g_file_make_directory_finish (GFile *file,
                                                          GAsyncResult *result,
                                                          GError **error);

extern
gboolean g_file_make_directory_with_parents (GFile *file,
                                            GCancellable *cancellable,
                                            GError **error);
extern
gboolean g_file_make_symbolic_link (GFile *file,
         const char *symlink_value,
         GCancellable *cancellable,
         GError **error);
extern
GFileAttributeInfoList *g_file_query_settable_attributes (GFile *file,
         GCancellable *cancellable,
         GError **error);
extern
GFileAttributeInfoList *g_file_query_writable_namespaces (GFile *file,
         GCancellable *cancellable,
         GError **error);
extern
gboolean g_file_set_attribute (GFile *file,
         const char *attribute,
         GFileAttributeType type,
         gpointer value_p,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
gboolean g_file_set_attributes_from_info (GFile *file,
         GFileInfo *info,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_set_attributes_async (GFile *file,
         GFileInfo *info,
         GFileQueryInfoFlags flags,
         int io_priority,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gboolean g_file_set_attributes_finish (GFile *file,
         GAsyncResult *result,
         GFileInfo **info,
         GError **error);
extern
gboolean g_file_set_attribute_string (GFile *file,
         const char *attribute,
         const char *value,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
gboolean g_file_set_attribute_byte_string (GFile *file,
         const char *attribute,
         const char *value,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
gboolean g_file_set_attribute_uint32 (GFile *file,
         const char *attribute,
         guint32 value,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
gboolean g_file_set_attribute_int32 (GFile *file,
         const char *attribute,
         gint32 value,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
gboolean g_file_set_attribute_uint64 (GFile *file,
         const char *attribute,
         guint64 value,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
gboolean g_file_set_attribute_int64 (GFile *file,
         const char *attribute,
         gint64 value,
         GFileQueryInfoFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
void g_file_mount_enclosing_volume (GFile *location,
         GMountMountFlags flags,
         GMountOperation *mount_operation,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gboolean g_file_mount_enclosing_volume_finish (GFile *location,
         GAsyncResult *result,
         GError **error);
extern
void g_file_mount_mountable (GFile *file,
         GMountMountFlags flags,
         GMountOperation *mount_operation,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
GFile * g_file_mount_mountable_finish (GFile *file,
         GAsyncResult *result,
         GError **error);
__attribute__((__deprecated__("Use '" "g_file_unmount_mountable_with_operation" "' instead"))) extern
void g_file_unmount_mountable (GFile *file,
                                                          GMountUnmountFlags flags,
                                                          GCancellable *cancellable,
                                                          GAsyncReadyCallback callback,
                                                          gpointer user_data);

__attribute__((__deprecated__("Use '" "g_file_unmount_mountable_with_operation_finish" "' instead"))) extern
gboolean g_file_unmount_mountable_finish (GFile *file,
                                                          GAsyncResult *result,
                                                          GError **error);
extern
void g_file_unmount_mountable_with_operation (GFile *file,
         GMountUnmountFlags flags,
         GMountOperation *mount_operation,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gboolean g_file_unmount_mountable_with_operation_finish (GFile *file,
         GAsyncResult *result,
         GError **error);
__attribute__((__deprecated__("Use '" "g_file_eject_mountable_with_operation" "' instead"))) extern
void g_file_eject_mountable (GFile *file,
                                                          GMountUnmountFlags flags,
                                                          GCancellable *cancellable,
                                                          GAsyncReadyCallback callback,
                                                          gpointer user_data);

__attribute__((__deprecated__("Use '" "g_file_eject_mountable_with_operation_finish" "' instead"))) extern
gboolean g_file_eject_mountable_finish (GFile *file,
                                                          GAsyncResult *result,
                                                          GError **error);
extern
void g_file_eject_mountable_with_operation (GFile *file,
         GMountUnmountFlags flags,
         GMountOperation *mount_operation,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gboolean g_file_eject_mountable_with_operation_finish (GFile *file,
         GAsyncResult *result,
         GError **error);

extern
gboolean g_file_copy_attributes (GFile *source,
         GFile *destination,
         GFileCopyFlags flags,
         GCancellable *cancellable,
         GError **error);


extern
GFileMonitor* g_file_monitor_directory (GFile *file,
         GFileMonitorFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
GFileMonitor* g_file_monitor_file (GFile *file,
         GFileMonitorFlags flags,
         GCancellable *cancellable,
         GError **error);
extern
GFileMonitor* g_file_monitor (GFile *file,
         GFileMonitorFlags flags,
         GCancellable *cancellable,
         GError **error);

extern
gboolean g_file_measure_disk_usage (GFile *file,
                                                          GFileMeasureFlags flags,
                                                          GCancellable *cancellable,
                                                          GFileMeasureProgressCallback progress_callback,
                                                          gpointer progress_data,
                                                          guint64 *disk_usage,
                                                          guint64 *num_dirs,
                                                          guint64 *num_files,
                                                          GError **error);

extern
void g_file_measure_disk_usage_async (GFile *file,
                                                          GFileMeasureFlags flags,
                                                          gint io_priority,
                                                          GCancellable *cancellable,
                                                          GFileMeasureProgressCallback progress_callback,
                                                          gpointer progress_data,
                                                          GAsyncReadyCallback callback,
                                                          gpointer user_data);

extern
gboolean g_file_measure_disk_usage_finish (GFile *file,
                                                          GAsyncResult *result,
                                                          guint64 *disk_usage,
                                                          guint64 *num_dirs,
                                                          guint64 *num_files,
                                                          GError **error);

extern
void g_file_start_mountable (GFile *file,
         GDriveStartFlags flags,
         GMountOperation *start_operation,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gboolean g_file_start_mountable_finish (GFile *file,
         GAsyncResult *result,
         GError **error);
extern
void g_file_stop_mountable (GFile *file,
         GMountUnmountFlags flags,
                                                          GMountOperation *mount_operation,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gboolean g_file_stop_mountable_finish (GFile *file,
         GAsyncResult *result,
         GError **error);

extern
void g_file_poll_mountable (GFile *file,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gboolean g_file_poll_mountable_finish (GFile *file,
         GAsyncResult *result,
         GError **error);



extern
GAppInfo *g_file_query_default_handler (GFile *file,
          GCancellable *cancellable,
          GError **error);
extern
gboolean g_file_load_contents (GFile *file,
          GCancellable *cancellable,
          char **contents,
          gsize *length,
          char **etag_out,
          GError **error);
extern
void g_file_load_contents_async (GFile *file,
          GCancellable *cancellable,
          GAsyncReadyCallback callback,
          gpointer user_data);
extern
gboolean g_file_load_contents_finish (GFile *file,
          GAsyncResult *res,
          char **contents,
          gsize *length,
          char **etag_out,
          GError **error);
extern
void g_file_load_partial_contents_async (GFile *file,
          GCancellable *cancellable,
          GFileReadMoreCallback read_more_callback,
          GAsyncReadyCallback callback,
          gpointer user_data);
extern
gboolean g_file_load_partial_contents_finish (GFile *file,
          GAsyncResult *res,
          char **contents,
          gsize *length,
          char **etag_out,
          GError **error);
extern
gboolean g_file_replace_contents (GFile *file,
          const char *contents,
          gsize length,
          const char *etag,
          gboolean make_backup,
          GFileCreateFlags flags,
          char **new_etag,
          GCancellable *cancellable,
          GError **error);
extern
void g_file_replace_contents_async (GFile *file,
          const char *contents,
          gsize length,
          const char *etag,
          gboolean make_backup,
          GFileCreateFlags flags,
          GCancellable *cancellable,
          GAsyncReadyCallback callback,
          gpointer user_data);
extern
void g_file_replace_contents_bytes_async (GFile *file,
          GBytes *contents,
          const char *etag,
          gboolean make_backup,
          GFileCreateFlags flags,
          GCancellable *cancellable,
          GAsyncReadyCallback callback,
          gpointer user_data);
extern
gboolean g_file_replace_contents_finish (GFile *file,
          GAsyncResult *res,
          char **new_etag,
          GError **error);

extern
gboolean g_file_supports_thread_contexts (GFile *file);

}
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileicon.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileicon.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileicon.h"
typedef struct _GFileIconClass GFileIconClass;

extern
GType g_file_icon_get_type (void) __attribute__((__const__));

extern
GIcon * g_file_icon_new (GFile *file);

extern
GFile * g_file_icon_get_file (GFileIcon *icon);

}
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileinfo.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileinfo.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileinfo.h"
typedef struct _GFileInfoClass GFileInfoClass;
# 859 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileinfo.h"
extern
GType g_file_info_get_type (void) __attribute__((__const__));

extern
GFileInfo * g_file_info_new (void);
extern
GFileInfo * g_file_info_dup (GFileInfo *other);
extern
void g_file_info_copy_into (GFileInfo *src_info,
        GFileInfo *dest_info);
extern
gboolean g_file_info_has_attribute (GFileInfo *info,
        const char *attribute);
extern
gboolean g_file_info_has_namespace (GFileInfo *info,
        const char *name_space);
extern
char ** g_file_info_list_attributes (GFileInfo *info,
        const char *name_space);
extern
gboolean g_file_info_get_attribute_data (GFileInfo *info,
        const char *attribute,
        GFileAttributeType *type,
        gpointer *value_pp,
        GFileAttributeStatus *status);
extern
GFileAttributeType g_file_info_get_attribute_type (GFileInfo *info,
        const char *attribute);
extern
void g_file_info_remove_attribute (GFileInfo *info,
        const char *attribute);
extern
GFileAttributeStatus g_file_info_get_attribute_status (GFileInfo *info,
        const char *attribute);
extern
gboolean g_file_info_set_attribute_status (GFileInfo *info,
        const char *attribute,
        GFileAttributeStatus status);
extern
char * g_file_info_get_attribute_as_string (GFileInfo *info,
        const char *attribute);
extern
const char * g_file_info_get_attribute_string (GFileInfo *info,
        const char *attribute);
extern
const char * g_file_info_get_attribute_byte_string (GFileInfo *info,
        const char *attribute);
extern
gboolean g_file_info_get_attribute_boolean (GFileInfo *info,
        const char *attribute);
extern
guint32 g_file_info_get_attribute_uint32 (GFileInfo *info,
        const char *attribute);
extern
gint32 g_file_info_get_attribute_int32 (GFileInfo *info,
        const char *attribute);
extern
guint64 g_file_info_get_attribute_uint64 (GFileInfo *info,
        const char *attribute);
extern
gint64 g_file_info_get_attribute_int64 (GFileInfo *info,
        const char *attribute);
extern
GObject * g_file_info_get_attribute_object (GFileInfo *info,
        const char *attribute);
extern
char ** g_file_info_get_attribute_stringv (GFileInfo *info,
        const char *attribute);

extern
void g_file_info_set_attribute (GFileInfo *info,
        const char *attribute,
        GFileAttributeType type,
        gpointer value_p);
extern
void g_file_info_set_attribute_string (GFileInfo *info,
        const char *attribute,
        const char *attr_value);
extern
void g_file_info_set_attribute_byte_string (GFileInfo *info,
        const char *attribute,
        const char *attr_value);
extern
void g_file_info_set_attribute_boolean (GFileInfo *info,
        const char *attribute,
        gboolean attr_value);
extern
void g_file_info_set_attribute_uint32 (GFileInfo *info,
        const char *attribute,
        guint32 attr_value);
extern
void g_file_info_set_attribute_int32 (GFileInfo *info,
        const char *attribute,
        gint32 attr_value);
extern
void g_file_info_set_attribute_uint64 (GFileInfo *info,
        const char *attribute,
        guint64 attr_value);
extern
void g_file_info_set_attribute_int64 (GFileInfo *info,
        const char *attribute,
        gint64 attr_value);
extern
void g_file_info_set_attribute_object (GFileInfo *info,
        const char *attribute,
        GObject *attr_value);
extern
void g_file_info_set_attribute_stringv (GFileInfo *info,
        const char *attribute,
        char **attr_value);

extern
void g_file_info_clear_status (GFileInfo *info);


extern
GDateTime * g_file_info_get_deletion_date (GFileInfo *info);
extern
GFileType g_file_info_get_file_type (GFileInfo *info);
extern
gboolean g_file_info_get_is_hidden (GFileInfo *info);
extern
gboolean g_file_info_get_is_backup (GFileInfo *info);
extern
gboolean g_file_info_get_is_symlink (GFileInfo *info);
extern
const char * g_file_info_get_name (GFileInfo *info);
extern
const char * g_file_info_get_display_name (GFileInfo *info);
extern
const char * g_file_info_get_edit_name (GFileInfo *info);
extern
GIcon * g_file_info_get_icon (GFileInfo *info);
extern
GIcon * g_file_info_get_symbolic_icon (GFileInfo *info);
extern
const char * g_file_info_get_content_type (GFileInfo *info);
extern
goffset g_file_info_get_size (GFileInfo *info);
extern
void g_file_info_get_modification_time (GFileInfo *info,
           GTimeVal *result);
extern
const char * g_file_info_get_symlink_target (GFileInfo *info);
extern
const char * g_file_info_get_etag (GFileInfo *info);
extern
gint32 g_file_info_get_sort_order (GFileInfo *info);

extern
void g_file_info_set_attribute_mask (GFileInfo *info,
           GFileAttributeMatcher *mask);
extern
void g_file_info_unset_attribute_mask (GFileInfo *info);


extern
void g_file_info_set_file_type (GFileInfo *info,
           GFileType type);
extern
void g_file_info_set_is_hidden (GFileInfo *info,
           gboolean is_hidden);
extern
void g_file_info_set_is_symlink (GFileInfo *info,
           gboolean is_symlink);
extern
void g_file_info_set_name (GFileInfo *info,
           const char *name);
extern
void g_file_info_set_display_name (GFileInfo *info,
           const char *display_name);
extern
void g_file_info_set_edit_name (GFileInfo *info,
           const char *edit_name);
extern
void g_file_info_set_icon (GFileInfo *info,
           GIcon *icon);
extern
void g_file_info_set_symbolic_icon (GFileInfo *info,
           GIcon *icon);
extern
void g_file_info_set_content_type (GFileInfo *info,
           const char *content_type);
extern
void g_file_info_set_size (GFileInfo *info,
           goffset size);
extern
void g_file_info_set_modification_time (GFileInfo *info,
           GTimeVal *mtime);
extern
void g_file_info_set_symlink_target (GFileInfo *info,
           const char *symlink_target);
extern
void g_file_info_set_sort_order (GFileInfo *info,
           gint32 sort_order);


extern
GType g_file_attribute_matcher_get_type (void) __attribute__((__const__));

extern
GFileAttributeMatcher *g_file_attribute_matcher_new (const char *attributes);
extern
GFileAttributeMatcher *g_file_attribute_matcher_ref (GFileAttributeMatcher *matcher);
extern
void g_file_attribute_matcher_unref (GFileAttributeMatcher *matcher);
extern
GFileAttributeMatcher *g_file_attribute_matcher_subtract (GFileAttributeMatcher *matcher,
                                                               GFileAttributeMatcher *subtract);
extern
gboolean g_file_attribute_matcher_matches (GFileAttributeMatcher *matcher,
       const char *attribute);
extern
gboolean g_file_attribute_matcher_matches_only (GFileAttributeMatcher *matcher,
       const char *attribute);
extern
gboolean g_file_attribute_matcher_enumerate_namespace (GFileAttributeMatcher *matcher,
            const char *ns);
extern
const char * g_file_attribute_matcher_enumerate_next (GFileAttributeMatcher *matcher);
extern
char * g_file_attribute_matcher_to_string (GFileAttributeMatcher *matcher);

}
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileinputstream.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileinputstream.h"
extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileinputstream.h"
typedef struct _GFileInputStreamClass GFileInputStreamClass;
typedef struct _GFileInputStreamPrivate GFileInputStreamPrivate;

struct _GFileInputStream
{
 GInputStream parent_instance;


 GFileInputStreamPrivate *priv;
};

struct _GFileInputStreamClass
{
 GInputStreamClass parent_class;

 goffset (* tell) (GFileInputStream *stream);
 gboolean (* can_seek) (GFileInputStream *stream);
 gboolean (* seek) (GFileInputStream *stream,
                                    goffset offset,
                                    GSeekType type,
                                    GCancellable *cancellable,
                                    GError **error);
 GFileInfo * (* query_info) (GFileInputStream *stream,
                                    const char *attributes,
                                    GCancellable *cancellable,
                                    GError **error);
 void (* query_info_async) (GFileInputStream *stream,
                                    const char *attributes,
                                    int io_priority,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);
 GFileInfo * (* query_info_finish) (GFileInputStream *stream,
                                    GAsyncResult *result,
                                    GError **error);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_file_input_stream_get_type (void) __attribute__((__const__));

extern
GFileInfo *g_file_input_stream_query_info (GFileInputStream *stream,
       const char *attributes,
       GCancellable *cancellable,
       GError **error);
extern
void g_file_input_stream_query_info_async (GFileInputStream *stream,
       const char *attributes,
       int io_priority,
       GCancellable *cancellable,
       GAsyncReadyCallback callback,
       gpointer user_data);
extern
GFileInfo *g_file_input_stream_query_info_finish (GFileInputStream *stream,
       GAsyncResult *result,
       GError **error);

}
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileiostream.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileiostream.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giostream.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giostream.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioerror.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioerror.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioerror.h"
extern
GQuark g_io_error_quark (void);
extern
GIOErrorEnum g_io_error_from_errno (gint err_no);






}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giostream.h" 2

extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giostream.h"
typedef struct _GIOStreamPrivate GIOStreamPrivate;
typedef struct _GIOStreamClass GIOStreamClass;






struct _GIOStream
{
 GObject parent_instance;


 GIOStreamPrivate *priv;
};

struct _GIOStreamClass
{
 GObjectClass parent_class;

 GInputStream * (*get_input_stream) (GIOStream *stream);
 GOutputStream * (*get_output_stream) (GIOStream *stream);

 gboolean (* close_fn) (GIOStream *stream,
                            GCancellable *cancellable,
                            GError **error);
 void (* close_async) (GIOStream *stream,
                            int io_priority,
                            GCancellable *cancellable,
                            GAsyncReadyCallback callback,
                            gpointer user_data);
 gboolean (* close_finish) (GIOStream *stream,
                            GAsyncResult *result,
                            GError **error);


 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
 void (*_g_reserved7) (void);
 void (*_g_reserved8) (void);
 void (*_g_reserved9) (void);
 void (*_g_reserved10) (void);
};

extern
GType g_io_stream_get_type (void) __attribute__((__const__));

extern
GInputStream * g_io_stream_get_input_stream (GIOStream *stream);
extern
GOutputStream *g_io_stream_get_output_stream (GIOStream *stream);

extern
void g_io_stream_splice_async (GIOStream *stream1,
          GIOStream *stream2,
          GIOStreamSpliceFlags flags,
          int io_priority,
          GCancellable *cancellable,
          GAsyncReadyCallback callback,
          gpointer user_data);

extern
gboolean g_io_stream_splice_finish (GAsyncResult *result,
                                             GError **error);

extern
gboolean g_io_stream_close (GIOStream *stream,
          GCancellable *cancellable,
          GError **error);

extern
void g_io_stream_close_async (GIOStream *stream,
          int io_priority,
          GCancellable *cancellable,
          GAsyncReadyCallback callback,
          gpointer user_data);
extern
gboolean g_io_stream_close_finish (GIOStream *stream,
          GAsyncResult *result,
          GError **error);

extern
gboolean g_io_stream_is_closed (GIOStream *stream);
extern
gboolean g_io_stream_has_pending (GIOStream *stream);
extern
gboolean g_io_stream_set_pending (GIOStream *stream,
          GError **error);
extern
void g_io_stream_clear_pending (GIOStream *stream);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileiostream.h" 2

extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileiostream.h"
typedef struct _GFileIOStreamClass GFileIOStreamClass;
typedef struct _GFileIOStreamPrivate GFileIOStreamPrivate;

struct _GFileIOStream
{
 GIOStream parent_instance;


 GFileIOStreamPrivate *priv;
};

struct _GFileIOStreamClass
{
 GIOStreamClass parent_class;

 goffset (* tell) (GFileIOStream *stream);
 gboolean (* can_seek) (GFileIOStream *stream);
 gboolean (* seek) (GFileIOStream *stream,
                                    goffset offset,
                                    GSeekType type,
                                    GCancellable *cancellable,
                                    GError **error);
 gboolean (* can_truncate) (GFileIOStream *stream);
 gboolean (* truncate_fn) (GFileIOStream *stream,
                                    goffset size,
                                    GCancellable *cancellable,
                                    GError **error);
 GFileInfo * (* query_info) (GFileIOStream *stream,
                                    const char *attributes,
                                    GCancellable *cancellable,
                                    GError **error);
 void (* query_info_async) (GFileIOStream *stream,
                                    const char *attributes,
                                    int io_priority,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);
 GFileInfo * (* query_info_finish) (GFileIOStream *stream,
                                    GAsyncResult *result,
                                    GError **error);
 char * (* get_etag) (GFileIOStream *stream);


 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_file_io_stream_get_type (void) __attribute__((__const__));

extern
GFileInfo *g_file_io_stream_query_info (GFileIOStream *stream,
           const char *attributes,
           GCancellable *cancellable,
           GError **error);
extern
void g_file_io_stream_query_info_async (GFileIOStream *stream,
           const char *attributes,
           int io_priority,
           GCancellable *cancellable,
           GAsyncReadyCallback callback,
           gpointer user_data);
extern
GFileInfo *g_file_io_stream_query_info_finish (GFileIOStream *stream,
           GAsyncResult *result,
           GError **error);
extern
char * g_file_io_stream_get_etag (GFileIOStream *stream);

}
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilemonitor.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilemonitor.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilemonitor.h"
typedef struct _GFileMonitorClass GFileMonitorClass;
typedef struct _GFileMonitorPrivate GFileMonitorPrivate;






struct _GFileMonitor
{
 GObject parent_instance;


 GFileMonitorPrivate *priv;
};

struct _GFileMonitorClass
{
 GObjectClass parent_class;


 void (* changed) (GFileMonitor *monitor,
                       GFile *file,
                       GFile *other_file,
                       GFileMonitorEvent event_type);


 gboolean (* cancel) (GFileMonitor *monitor);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_file_monitor_get_type (void) __attribute__((__const__));

extern
gboolean g_file_monitor_cancel (GFileMonitor *monitor);
extern
gboolean g_file_monitor_is_cancelled (GFileMonitor *monitor);
extern
void g_file_monitor_set_rate_limit (GFileMonitor *monitor,
                                       gint limit_msecs);



extern
void g_file_monitor_emit_event (GFileMonitor *monitor,
                                       GFile *child,
                                       GFile *other_file,
                                       GFileMonitorEvent event_type);

}
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilenamecompleter.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilenamecompleter.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfilenamecompleter.h"
typedef struct _GFilenameCompleterClass GFilenameCompleterClass;

struct _GFilenameCompleterClass
{
 GObjectClass parent_class;



 void (* got_completion_data) (GFilenameCompleter *filename_completer);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
};

extern
GType g_filename_completer_get_type (void) __attribute__((__const__));

extern
GFilenameCompleter *g_filename_completer_new (void);

extern
char * g_filename_completer_get_completion_suffix (GFilenameCompleter *completer,
                                                               const char *initial_text);
extern
char ** g_filename_completer_get_completions (GFilenameCompleter *completer,
                                                               const char *initial_text);
extern
void g_filename_completer_set_dirs_only (GFilenameCompleter *completer,
                                                               gboolean dirs_only);

}
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileoutputstream.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileoutputstream.h"
extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gfileoutputstream.h"
typedef struct _GFileOutputStreamClass GFileOutputStreamClass;
typedef struct _GFileOutputStreamPrivate GFileOutputStreamPrivate;

struct _GFileOutputStream
{
 GOutputStream parent_instance;


 GFileOutputStreamPrivate *priv;
};

struct _GFileOutputStreamClass
{
 GOutputStreamClass parent_class;

 goffset (* tell) (GFileOutputStream *stream);
 gboolean (* can_seek) (GFileOutputStream *stream);
 gboolean (* seek) (GFileOutputStream *stream,
                                    goffset offset,
                                    GSeekType type,
                                    GCancellable *cancellable,
                                    GError **error);
 gboolean (* can_truncate) (GFileOutputStream *stream);
 gboolean (* truncate_fn) (GFileOutputStream *stream,
                                    goffset size,
                                    GCancellable *cancellable,
                                    GError **error);
 GFileInfo * (* query_info) (GFileOutputStream *stream,
                                    const char *attributes,
                                    GCancellable *cancellable,
                                    GError **error);
 void (* query_info_async) (GFileOutputStream *stream,
                                    const char *attributes,
                                    int io_priority,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);
 GFileInfo * (* query_info_finish) (GFileOutputStream *stream,
                                    GAsyncResult *result,
                                    GError **error);
 char * (* get_etag) (GFileOutputStream *stream);


 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_file_output_stream_get_type (void) __attribute__((__const__));


extern
GFileInfo *g_file_output_stream_query_info (GFileOutputStream *stream,
                                                  const char *attributes,
                                                  GCancellable *cancellable,
                                                  GError **error);
extern
void g_file_output_stream_query_info_async (GFileOutputStream *stream,
        const char *attributes,
        int io_priority,
        GCancellable *cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data);
extern
GFileInfo *g_file_output_stream_query_info_finish (GFileOutputStream *stream,
        GAsyncResult *result,
        GError **error);
extern
char * g_file_output_stream_get_etag (GFileOutputStream *stream);

}
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2



# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetaddress.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetaddress.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetaddress.h"
typedef struct _GInetAddressClass GInetAddressClass;
typedef struct _GInetAddressPrivate GInetAddressPrivate;

struct _GInetAddress
{
 GObject parent_instance;


 GInetAddressPrivate *priv;
};

struct _GInetAddressClass
{
 GObjectClass parent_class;

 gchar * (*to_string) (GInetAddress *address);
 const guint8 * (*to_bytes) (GInetAddress *address);
};

extern
GType g_inet_address_get_type (void) __attribute__((__const__));

extern
GInetAddress * g_inet_address_new_from_string (const gchar *string);

extern
GInetAddress * g_inet_address_new_from_bytes (const guint8 *bytes,
         GSocketFamily family);

extern
GInetAddress * g_inet_address_new_loopback (GSocketFamily family);

extern
GInetAddress * g_inet_address_new_any (GSocketFamily family);

extern
gboolean g_inet_address_equal (GInetAddress *address,
                                                          GInetAddress *other_address);

extern
gchar * g_inet_address_to_string (GInetAddress *address);

extern
const guint8 * g_inet_address_to_bytes (GInetAddress *address);

extern
gsize g_inet_address_get_native_size (GInetAddress *address);

extern
GSocketFamily g_inet_address_get_family (GInetAddress *address);

extern
gboolean g_inet_address_get_is_any (GInetAddress *address);

extern
gboolean g_inet_address_get_is_loopback (GInetAddress *address);

extern
gboolean g_inet_address_get_is_link_local (GInetAddress *address);

extern
gboolean g_inet_address_get_is_site_local (GInetAddress *address);

extern
gboolean g_inet_address_get_is_multicast (GInetAddress *address);

extern
gboolean g_inet_address_get_is_mc_global (GInetAddress *address);

extern
gboolean g_inet_address_get_is_mc_link_local (GInetAddress *address);

extern
gboolean g_inet_address_get_is_mc_node_local (GInetAddress *address);

extern
gboolean g_inet_address_get_is_mc_org_local (GInetAddress *address);

extern
gboolean g_inet_address_get_is_mc_site_local (GInetAddress *address);

}
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetaddressmask.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetaddressmask.h"
extern "C" {
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetaddressmask.h"
typedef struct _GInetAddressMaskClass GInetAddressMaskClass;
typedef struct _GInetAddressMaskPrivate GInetAddressMaskPrivate;

struct _GInetAddressMask
{
 GObject parent_instance;


 GInetAddressMaskPrivate *priv;
};

struct _GInetAddressMaskClass
{
 GObjectClass parent_class;

};

extern
GType g_inet_address_mask_get_type (void) __attribute__((__const__));

extern
GInetAddressMask *g_inet_address_mask_new (GInetAddress *addr,
            guint length,
            GError **error);

extern
GInetAddressMask *g_inet_address_mask_new_from_string (const gchar *mask_string,
            GError **error);
extern
gchar *g_inet_address_mask_to_string (GInetAddressMask *mask);

extern
GSocketFamily g_inet_address_mask_get_family (GInetAddressMask *mask);
extern
GInetAddress *g_inet_address_mask_get_address (GInetAddressMask *mask);
extern
guint g_inet_address_mask_get_length (GInetAddressMask *mask);

extern
gboolean g_inet_address_mask_matches (GInetAddressMask *mask,
            GInetAddress *address);
extern
gboolean g_inet_address_mask_equal (GInetAddressMask *mask,
            GInetAddressMask *mask2);

}
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetsocketaddress.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetsocketaddress.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketaddress.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketaddress.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketaddress.h"
typedef struct _GSocketAddressClass GSocketAddressClass;

struct _GSocketAddress
{
 GObject parent_instance;
};

struct _GSocketAddressClass
{
 GObjectClass parent_class;

 GSocketFamily (*get_family) (GSocketAddress *address);

 gssize (*get_native_size) (GSocketAddress *address);

 gboolean (*to_native) (GSocketAddress *address,
                                    gpointer dest,
                                    gsize destlen,
        GError **error);
};

extern
GType g_socket_address_get_type (void) __attribute__((__const__));

extern
GSocketFamily g_socket_address_get_family (GSocketAddress *address);

extern
GSocketAddress * g_socket_address_new_from_native (gpointer native,
                                                       gsize len);

extern
gboolean g_socket_address_to_native (GSocketAddress *address,
                                                       gpointer dest,
                                                       gsize destlen,
      GError **error);

extern
gssize g_socket_address_get_native_size (GSocketAddress *address);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetsocketaddress.h" 2

extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/ginetsocketaddress.h"
typedef struct _GInetSocketAddressClass GInetSocketAddressClass;
typedef struct _GInetSocketAddressPrivate GInetSocketAddressPrivate;

struct _GInetSocketAddress
{
 GSocketAddress parent_instance;


 GInetSocketAddressPrivate *priv;
};

struct _GInetSocketAddressClass
{
 GSocketAddressClass parent_class;
};

extern
GType g_inet_socket_address_get_type (void) __attribute__((__const__));

extern
GSocketAddress *g_inet_socket_address_new (GInetAddress *address,
                                                      guint16 port);
extern
GSocketAddress *g_inet_socket_address_new_from_string (const char *address,
                                                      guint port);

extern
GInetAddress * g_inet_socket_address_get_address (GInetSocketAddress *address);
extern
guint16 g_inet_socket_address_get_port (GInetSocketAddress *address);

extern
guint32 g_inet_socket_address_get_flowinfo (GInetSocketAddress *address);
extern
guint32 g_inet_socket_address_get_scope_id (GInetSocketAddress *address);

}
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2



# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenumtypes.h" 1
# 9 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioenumtypes.h"
extern "C" {


extern GType g_app_info_create_flags_get_type (void) __attribute__((__const__));

extern GType g_converter_flags_get_type (void) __attribute__((__const__));

extern GType g_converter_result_get_type (void) __attribute__((__const__));

extern GType g_data_stream_byte_order_get_type (void) __attribute__((__const__));

extern GType g_data_stream_newline_type_get_type (void) __attribute__((__const__));

extern GType g_file_attribute_type_get_type (void) __attribute__((__const__));

extern GType g_file_attribute_info_flags_get_type (void) __attribute__((__const__));

extern GType g_file_attribute_status_get_type (void) __attribute__((__const__));

extern GType g_file_query_info_flags_get_type (void) __attribute__((__const__));

extern GType g_file_create_flags_get_type (void) __attribute__((__const__));

extern GType g_file_measure_flags_get_type (void) __attribute__((__const__));

extern GType g_mount_mount_flags_get_type (void) __attribute__((__const__));

extern GType g_mount_unmount_flags_get_type (void) __attribute__((__const__));

extern GType g_drive_start_flags_get_type (void) __attribute__((__const__));

extern GType g_drive_start_stop_type_get_type (void) __attribute__((__const__));

extern GType g_file_copy_flags_get_type (void) __attribute__((__const__));

extern GType g_file_monitor_flags_get_type (void) __attribute__((__const__));

extern GType g_file_type_get_type (void) __attribute__((__const__));

extern GType g_filesystem_preview_type_get_type (void) __attribute__((__const__));

extern GType g_file_monitor_event_get_type (void) __attribute__((__const__));

extern GType g_io_error_enum_get_type (void) __attribute__((__const__));

extern GType g_ask_password_flags_get_type (void) __attribute__((__const__));

extern GType g_password_save_get_type (void) __attribute__((__const__));

extern GType g_mount_operation_result_get_type (void) __attribute__((__const__));

extern GType g_output_stream_splice_flags_get_type (void) __attribute__((__const__));

extern GType g_io_stream_splice_flags_get_type (void) __attribute__((__const__));

extern GType g_emblem_origin_get_type (void) __attribute__((__const__));

extern GType g_resolver_error_get_type (void) __attribute__((__const__));

extern GType g_resolver_record_type_get_type (void) __attribute__((__const__));

extern GType g_resource_error_get_type (void) __attribute__((__const__));

extern GType g_resource_flags_get_type (void) __attribute__((__const__));

extern GType g_resource_lookup_flags_get_type (void) __attribute__((__const__));

extern GType g_socket_family_get_type (void) __attribute__((__const__));

extern GType g_socket_type_get_type (void) __attribute__((__const__));

extern GType g_socket_msg_flags_get_type (void) __attribute__((__const__));

extern GType g_socket_protocol_get_type (void) __attribute__((__const__));

extern GType g_zlib_compressor_format_get_type (void) __attribute__((__const__));

extern GType g_unix_socket_address_type_get_type (void) __attribute__((__const__));

extern GType g_bus_type_get_type (void) __attribute__((__const__));

extern GType g_bus_name_owner_flags_get_type (void) __attribute__((__const__));

extern GType g_bus_name_watcher_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_proxy_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_error_get_type (void) __attribute__((__const__));

extern GType g_dbus_connection_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_capability_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_call_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_message_type_get_type (void) __attribute__((__const__));

extern GType g_dbus_message_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_message_header_field_get_type (void) __attribute__((__const__));

extern GType g_dbus_property_info_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_subtree_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_server_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_signal_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_send_message_flags_get_type (void) __attribute__((__const__));

extern GType g_credentials_type_get_type (void) __attribute__((__const__));

extern GType g_dbus_message_byte_order_get_type (void) __attribute__((__const__));

extern GType g_application_flags_get_type (void) __attribute__((__const__));

extern GType g_tls_error_get_type (void) __attribute__((__const__));

extern GType g_tls_certificate_flags_get_type (void) __attribute__((__const__));

extern GType g_tls_authentication_mode_get_type (void) __attribute__((__const__));

extern GType g_tls_rehandshake_mode_get_type (void) __attribute__((__const__));

extern GType g_tls_password_flags_get_type (void) __attribute__((__const__));

extern GType g_tls_interaction_result_get_type (void) __attribute__((__const__));

extern GType g_dbus_interface_skeleton_flags_get_type (void) __attribute__((__const__));

extern GType g_dbus_object_manager_client_flags_get_type (void) __attribute__((__const__));

extern GType g_tls_database_verify_flags_get_type (void) __attribute__((__const__));

extern GType g_tls_database_lookup_flags_get_type (void) __attribute__((__const__));

extern GType g_tls_certificate_request_flags_get_type (void) __attribute__((__const__));

extern GType g_io_module_scope_flags_get_type (void) __attribute__((__const__));

extern GType g_socket_client_event_get_type (void) __attribute__((__const__));

extern GType g_socket_listener_event_get_type (void) __attribute__((__const__));

extern GType g_test_dbus_flags_get_type (void) __attribute__((__const__));

extern GType g_subprocess_flags_get_type (void) __attribute__((__const__));

extern GType g_notification_priority_get_type (void) __attribute__((__const__));

extern GType g_network_connectivity_get_type (void) __attribute__((__const__));



extern GType g_settings_bind_flags_get_type (void) __attribute__((__const__));

}
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giomodule.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giomodule.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gmodule.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gmodule.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gmodule.h"
typedef enum
{
 G_MODULE_BIND_LAZY = 1 << 0,
 G_MODULE_BIND_LOCAL = 1 << 1,
 G_MODULE_BIND_MASK = 0x03
} GModuleFlags;

typedef struct _GModule GModule;
typedef const gchar* (*GModuleCheckInit) (GModule *module);
typedef void (*GModuleUnload) (GModule *module);


extern
gboolean g_module_supported (void) __attribute__((__const__));


extern
GModule* g_module_open (const gchar *file_name,
          GModuleFlags flags);


extern
gboolean g_module_close (GModule *module);


extern
void g_module_make_resident (GModule *module);


extern
const gchar * g_module_error (void);


extern
gboolean g_module_symbol (GModule *module,
          const gchar *symbol_name,
          gpointer *symbol);


extern
const gchar * g_module_name (GModule *module);
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gmodule.h"
extern
gchar* g_module_build_path (const gchar *directory,
          const gchar *module_name);
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gmodule.h"
}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giomodule.h" 2

extern "C" {

typedef struct _GIOModuleScope GIOModuleScope;

extern
GIOModuleScope * g_io_module_scope_new (GIOModuleScopeFlags flags);
extern
void g_io_module_scope_free (GIOModuleScope *scope);
extern
void g_io_module_scope_block (GIOModuleScope *scope,
                                             const gchar *basename);
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giomodule.h"
typedef struct _GIOModuleClass GIOModuleClass;

extern
GType g_io_module_get_type (void) __attribute__((__const__));
extern
GIOModule *g_io_module_new (const gchar *filename);

extern
void g_io_modules_scan_all_in_directory (const char *dirname);
extern
GList *g_io_modules_load_all_in_directory (const gchar *dirname);

extern
void g_io_modules_scan_all_in_directory_with_scope (const gchar *dirname,
                                                                   GIOModuleScope *scope);
extern
GList *g_io_modules_load_all_in_directory_with_scope (const gchar *dirname,
                                                                   GIOModuleScope *scope);

extern
GIOExtensionPoint *g_io_extension_point_register (const char *name);
extern
GIOExtensionPoint *g_io_extension_point_lookup (const char *name);
extern
void g_io_extension_point_set_required_type (GIOExtensionPoint *extension_point,
             GType type);
extern
GType g_io_extension_point_get_required_type (GIOExtensionPoint *extension_point);
extern
GList *g_io_extension_point_get_extensions (GIOExtensionPoint *extension_point);
extern
GIOExtension * g_io_extension_point_get_extension_by_name (GIOExtensionPoint *extension_point,
             const char *name);
extern
GIOExtension * g_io_extension_point_implement (const char *extension_point_name,
             GType type,
             const char *extension_name,
             gint priority);

extern
GType g_io_extension_get_type (GIOExtension *extension);
extern
const char * g_io_extension_get_name (GIOExtension *extension);
extern
gint g_io_extension_get_priority (GIOExtension *extension);
extern
GTypeClass* g_io_extension_ref_class (GIOExtension *extension);
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giomodule.h"
extern
void g_io_module_load (GIOModule *module);
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giomodule.h"
extern
void g_io_module_unload (GIOModule *module);
# 164 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giomodule.h"
extern
char **g_io_module_query (void);

}
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioscheduler.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gioscheduler.h"
extern "C" {


__attribute__((__deprecated__("Use '" "\"GThreadPool or g_task_run_in_thread\"" "' instead"))) extern
void g_io_scheduler_push_job (GIOSchedulerJobFunc job_func,
         gpointer user_data,
         GDestroyNotify notify,
         gint io_priority,
         GCancellable *cancellable);
__attribute__((__deprecated__)) extern
void g_io_scheduler_cancel_all_jobs (void);
__attribute__((__deprecated__("Use '" "g_main_context_invoke" "' instead"))) extern
gboolean g_io_scheduler_job_send_to_mainloop (GIOSchedulerJob *job,
         GSourceFunc func,
         gpointer user_data,
         GDestroyNotify notify);
__attribute__((__deprecated__("Use '" "g_main_context_invoke" "' instead"))) extern
void g_io_scheduler_job_send_to_mainloop_async (GIOSchedulerJob *job,
         GSourceFunc func,
         gpointer user_data,
         GDestroyNotify notify);

}
# 90 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gloadableicon.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gloadableicon.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gloadableicon.h"
typedef struct _GLoadableIconIface GLoadableIconIface;
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gloadableicon.h"
struct _GLoadableIconIface
{
 GTypeInterface g_iface;



 GInputStream * (* load) (GLoadableIcon *icon,
                                 int size,
                                 char **type,
                                 GCancellable *cancellable,
                                 GError **error);
 void (* load_async) (GLoadableIcon *icon,
                                 int size,
                                 GCancellable *cancellable,
                                 GAsyncReadyCallback callback,
                                 gpointer user_data);
 GInputStream * (* load_finish) (GLoadableIcon *icon,
                                 GAsyncResult *res,
                                 char **type,
                                 GError **error);
};

extern
GType g_loadable_icon_get_type (void) __attribute__((__const__));

extern
GInputStream *g_loadable_icon_load (GLoadableIcon *icon,
       int size,
       char **type,
       GCancellable *cancellable,
       GError **error);
extern
void g_loadable_icon_load_async (GLoadableIcon *icon,
       int size,
       GCancellable *cancellable,
       GAsyncReadyCallback callback,
       gpointer user_data);
extern
GInputStream *g_loadable_icon_load_finish (GLoadableIcon *icon,
       GAsyncResult *res,
       char **type,
       GError **error);

}
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmemoryinputstream.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmemoryinputstream.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmemoryinputstream.h"
typedef struct _GMemoryInputStreamClass GMemoryInputStreamClass;
typedef struct _GMemoryInputStreamPrivate GMemoryInputStreamPrivate;

struct _GMemoryInputStream
{
 GInputStream parent_instance;


 GMemoryInputStreamPrivate *priv;
};

struct _GMemoryInputStreamClass
{
 GInputStreamClass parent_class;


 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};


extern
GType g_memory_input_stream_get_type (void) __attribute__((__const__));
extern
GInputStream * g_memory_input_stream_new (void);
extern
GInputStream * g_memory_input_stream_new_from_data (const void *data,
                                                   gssize len,
                                                   GDestroyNotify destroy);
extern
GInputStream * g_memory_input_stream_new_from_bytes (GBytes *bytes);

extern
void g_memory_input_stream_add_data (GMemoryInputStream *stream,
                                                   const void *data,
                                                   gssize len,
                                                   GDestroyNotify destroy);
extern
void g_memory_input_stream_add_bytes (GMemoryInputStream *stream,
         GBytes *bytes);

}
# 93 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmemoryoutputstream.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmemoryoutputstream.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmemoryoutputstream.h"
typedef struct _GMemoryOutputStreamClass GMemoryOutputStreamClass;
typedef struct _GMemoryOutputStreamPrivate GMemoryOutputStreamPrivate;

struct _GMemoryOutputStream
{
 GOutputStream parent_instance;


 GMemoryOutputStreamPrivate *priv;
};

struct _GMemoryOutputStreamClass
{
 GOutputStreamClass parent_class;



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmemoryoutputstream.h"
typedef gpointer (* GReallocFunc) (gpointer data,
                                  gsize size);

extern
GType g_memory_output_stream_get_type (void) __attribute__((__const__));

extern
GOutputStream *g_memory_output_stream_new (gpointer data,
                                                    gsize size,
                                                    GReallocFunc realloc_function,
                                                    GDestroyNotify destroy_function);
extern
GOutputStream *g_memory_output_stream_new_resizable (void);
extern
gpointer g_memory_output_stream_get_data (GMemoryOutputStream *ostream);
extern
gsize g_memory_output_stream_get_size (GMemoryOutputStream *ostream);
extern
gsize g_memory_output_stream_get_data_size (GMemoryOutputStream *ostream);
extern
gpointer g_memory_output_stream_steal_data (GMemoryOutputStream *ostream);

extern
GBytes * g_memory_output_stream_steal_as_bytes (GMemoryOutputStream *ostream);

}
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmount.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmount.h"
extern "C" {






typedef struct _GMountIface GMountIface;
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmount.h"
struct _GMountIface
{
 GTypeInterface g_iface;



 void (* changed) (GMount *mount);
 void (* unmounted) (GMount *mount);



 GFile * (* get_root) (GMount *mount);
 char * (* get_name) (GMount *mount);
 GIcon * (* get_icon) (GMount *mount);
 char * (* get_uuid) (GMount *mount);
 GVolume * (* get_volume) (GMount *mount);
 GDrive * (* get_drive) (GMount *mount);
 gboolean (* can_unmount) (GMount *mount);
 gboolean (* can_eject) (GMount *mount);

 void (* unmount) (GMount *mount,
                                            GMountUnmountFlags flags,
                                            GCancellable *cancellable,
                                            GAsyncReadyCallback callback,
                                            gpointer user_data);
 gboolean (* unmount_finish) (GMount *mount,
                                            GAsyncResult *result,
                                            GError **error);

 void (* eject) (GMount *mount,
                                            GMountUnmountFlags flags,
                                            GCancellable *cancellable,
                                            GAsyncReadyCallback callback,
                                            gpointer user_data);
 gboolean (* eject_finish) (GMount *mount,
                                            GAsyncResult *result,
                                            GError **error);

 void (* remount) (GMount *mount,
                                            GMountMountFlags flags,
                                            GMountOperation *mount_operation,
                                            GCancellable *cancellable,
                                            GAsyncReadyCallback callback,
                                            gpointer user_data);
 gboolean (* remount_finish) (GMount *mount,
                                            GAsyncResult *result,
                                            GError **error);

 void (* guess_content_type) (GMount *mount,
                                            gboolean force_rescan,
                                            GCancellable *cancellable,
                                            GAsyncReadyCallback callback,
                                            gpointer user_data);
 gchar ** (* guess_content_type_finish) (GMount *mount,
                                            GAsyncResult *result,
                                            GError **error);
 gchar ** (* guess_content_type_sync) (GMount *mount,
                                            gboolean force_rescan,
                                            GCancellable *cancellable,
                                            GError **error);


 void (* pre_unmount) (GMount *mount);

 void (* unmount_with_operation) (GMount *mount,
                                            GMountUnmountFlags flags,
                                            GMountOperation *mount_operation,
                                            GCancellable *cancellable,
                                            GAsyncReadyCallback callback,
                                            gpointer user_data);
 gboolean (* unmount_with_operation_finish) (GMount *mount,
                                            GAsyncResult *result,
                                            GError **error);

 void (* eject_with_operation) (GMount *mount,
                                            GMountUnmountFlags flags,
                                            GMountOperation *mount_operation,
                                            GCancellable *cancellable,
                                            GAsyncReadyCallback callback,
                                            gpointer user_data);
 gboolean (* eject_with_operation_finish) (GMount *mount,
                                            GAsyncResult *result,
                                            GError **error);
 GFile * (* get_default_location) (GMount *mount);

 const gchar * (* get_sort_key) (GMount *mount);
 GIcon * (* get_symbolic_icon) (GMount *mount);
};

extern
GType g_mount_get_type (void) __attribute__((__const__));

extern
GFile * g_mount_get_root (GMount *mount);
extern
GFile * g_mount_get_default_location (GMount *mount);
extern
char * g_mount_get_name (GMount *mount);
extern
GIcon * g_mount_get_icon (GMount *mount);
extern
GIcon * g_mount_get_symbolic_icon (GMount *mount);
extern
char * g_mount_get_uuid (GMount *mount);
extern
GVolume * g_mount_get_volume (GMount *mount);
extern
GDrive * g_mount_get_drive (GMount *mount);
extern
gboolean g_mount_can_unmount (GMount *mount);
extern
gboolean g_mount_can_eject (GMount *mount);

__attribute__((__deprecated__("Use '" "g_mount_unmount_with_operation" "' instead"))) extern
void g_mount_unmount (GMount *mount,
                                              GMountUnmountFlags flags,
                                              GCancellable *cancellable,
                                              GAsyncReadyCallback callback,
                                              gpointer user_data);

__attribute__((__deprecated__("Use '" "g_mount_unmount_with_operation_finish" "' instead"))) extern
gboolean g_mount_unmount_finish (GMount *mount,
                                              GAsyncResult *result,
                                              GError **error);

__attribute__((__deprecated__("Use '" "g_mount_eject_with_operation" "' instead"))) extern
void g_mount_eject (GMount *mount,
                                              GMountUnmountFlags flags,
                                              GCancellable *cancellable,
                                              GAsyncReadyCallback callback,
                                              gpointer user_data);

__attribute__((__deprecated__("Use '" "g_mount_eject_with_operation_finish" "' instead"))) extern
gboolean g_mount_eject_finish (GMount *mount,
                                              GAsyncResult *result,
                                              GError **error);

extern
void g_mount_remount (GMount *mount,
                                              GMountMountFlags flags,
                                              GMountOperation *mount_operation,
                                              GCancellable *cancellable,
                                              GAsyncReadyCallback callback,
                                              gpointer user_data);
extern
gboolean g_mount_remount_finish (GMount *mount,
                                              GAsyncResult *result,
                                              GError **error);

extern
void g_mount_guess_content_type (GMount *mount,
                                              gboolean force_rescan,
                                              GCancellable *cancellable,
                                              GAsyncReadyCallback callback,
                                              gpointer user_data);
extern
gchar ** g_mount_guess_content_type_finish (GMount *mount,
                                              GAsyncResult *result,
                                              GError **error);
extern
gchar ** g_mount_guess_content_type_sync (GMount *mount,
                                              gboolean force_rescan,
                                              GCancellable *cancellable,
                                              GError **error);

extern
gboolean g_mount_is_shadowed (GMount *mount);
extern
void g_mount_shadow (GMount *mount);
extern
void g_mount_unshadow (GMount *mount);

extern
void g_mount_unmount_with_operation (GMount *mount,
                                              GMountUnmountFlags flags,
                                              GMountOperation *mount_operation,
                                              GCancellable *cancellable,
                                              GAsyncReadyCallback callback,
                                              gpointer user_data);
extern
gboolean g_mount_unmount_with_operation_finish (GMount *mount,
                                              GAsyncResult *result,
                                              GError **error);

extern
void g_mount_eject_with_operation (GMount *mount,
                                              GMountUnmountFlags flags,
                                              GMountOperation *mount_operation,
                                              GCancellable *cancellable,
                                              GAsyncReadyCallback callback,
                                              gpointer user_data);
extern
gboolean g_mount_eject_with_operation_finish (GMount *mount,
                                              GAsyncResult *result,
                                              GError **error);

extern
const gchar *g_mount_get_sort_key (GMount *mount);

}
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmountoperation.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmountoperation.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmountoperation.h"
typedef struct _GMountOperationClass GMountOperationClass;
typedef struct _GMountOperationPrivate GMountOperationPrivate;

struct _GMountOperation
{
 GObject parent_instance;

 GMountOperationPrivate *priv;
};

struct _GMountOperationClass
{
 GObjectClass parent_class;



 void (* ask_password) (GMountOperation *op,
   const char *message,
   const char *default_user,
   const char *default_domain,
   GAskPasswordFlags flags);

 void (* ask_question) (GMountOperation *op,
   const char *message,
   const char *choices[]);

 void (* reply) (GMountOperation *op,
   GMountOperationResult result);

 void (* aborted) (GMountOperation *op);

 void (* show_processes) (GMountOperation *op,
                          const gchar *message,
                          GArray *processes,
                          const gchar *choices[]);

 void (* show_unmount_progress) (GMountOperation *op,
                                 const gchar *message,
                                 gint64 time_left,
                                 gint64 bytes_left);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
 void (*_g_reserved7) (void);
 void (*_g_reserved8) (void);
 void (*_g_reserved9) (void);
};

extern
GType g_mount_operation_get_type (void) __attribute__((__const__));
extern
GMountOperation * g_mount_operation_new (void);

extern
const char * g_mount_operation_get_username (GMountOperation *op);
extern
void g_mount_operation_set_username (GMountOperation *op,
        const char *username);
extern
const char * g_mount_operation_get_password (GMountOperation *op);
extern
void g_mount_operation_set_password (GMountOperation *op,
        const char *password);
extern
gboolean g_mount_operation_get_anonymous (GMountOperation *op);
extern
void g_mount_operation_set_anonymous (GMountOperation *op,
        gboolean anonymous);
extern
const char * g_mount_operation_get_domain (GMountOperation *op);
extern
void g_mount_operation_set_domain (GMountOperation *op,
        const char *domain);
extern
GPasswordSave g_mount_operation_get_password_save (GMountOperation *op);
extern
void g_mount_operation_set_password_save (GMountOperation *op,
        GPasswordSave save);
extern
int g_mount_operation_get_choice (GMountOperation *op);
extern
void g_mount_operation_set_choice (GMountOperation *op,
        int choice);
extern
void g_mount_operation_reply (GMountOperation *op,
        GMountOperationResult result);

}
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnativevolumemonitor.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnativevolumemonitor.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gvolumemonitor.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gvolumemonitor.h"
extern "C" {
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gvolumemonitor.h"
typedef struct _GVolumeMonitorClass GVolumeMonitorClass;

struct _GVolumeMonitor
{
 GObject parent_instance;


 gpointer priv;
};

struct _GVolumeMonitorClass
{
 GObjectClass parent_class;



 void (* volume_added) (GVolumeMonitor *volume_monitor,
                                     GVolume *volume);
 void (* volume_removed) (GVolumeMonitor *volume_monitor,
                                     GVolume *volume);
 void (* volume_changed) (GVolumeMonitor *volume_monitor,
                                     GVolume *volume);

 void (* mount_added) (GVolumeMonitor *volume_monitor,
                                     GMount *mount);
 void (* mount_removed) (GVolumeMonitor *volume_monitor,
                                     GMount *mount);
 void (* mount_pre_unmount) (GVolumeMonitor *volume_monitor,
                                     GMount *mount);
 void (* mount_changed) (GVolumeMonitor *volume_monitor,
                                     GMount *mount);

 void (* drive_connected) (GVolumeMonitor *volume_monitor,
                                     GDrive *drive);
 void (* drive_disconnected) (GVolumeMonitor *volume_monitor,
                                     GDrive *drive);
 void (* drive_changed) (GVolumeMonitor *volume_monitor,
                                     GDrive *drive);



 gboolean (* is_supported) (void);

 GList * (* get_connected_drives) (GVolumeMonitor *volume_monitor);
 GList * (* get_volumes) (GVolumeMonitor *volume_monitor);
 GList * (* get_mounts) (GVolumeMonitor *volume_monitor);

 GVolume * (* get_volume_for_uuid) (GVolumeMonitor *volume_monitor,
                                     const char *uuid);

 GMount * (* get_mount_for_uuid) (GVolumeMonitor *volume_monitor,
                                     const char *uuid);



 GVolume * (* adopt_orphan_mount) (GMount *mount,
                                     GVolumeMonitor *volume_monitor);


 void (* drive_eject_button) (GVolumeMonitor *volume_monitor,
                                     GDrive *drive);


 void (* drive_stop_button) (GVolumeMonitor *volume_monitor,
                                    GDrive *drive);



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
};

extern
GType g_volume_monitor_get_type (void) __attribute__((__const__));

extern
GVolumeMonitor *g_volume_monitor_get (void);
extern
GList * g_volume_monitor_get_connected_drives (GVolumeMonitor *volume_monitor);
extern
GList * g_volume_monitor_get_volumes (GVolumeMonitor *volume_monitor);
extern
GList * g_volume_monitor_get_mounts (GVolumeMonitor *volume_monitor);
extern
GVolume * g_volume_monitor_get_volume_for_uuid (GVolumeMonitor *volume_monitor,
                                                      const char *uuid);
extern
GMount * g_volume_monitor_get_mount_for_uuid (GVolumeMonitor *volume_monitor,
                                                      const char *uuid);

__attribute__((__deprecated__)) extern
GVolume * g_volume_monitor_adopt_orphan_mount (GMount *mount);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnativevolumemonitor.h" 2

extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnativevolumemonitor.h"
typedef struct _GNativeVolumeMonitor GNativeVolumeMonitor;
typedef struct _GNativeVolumeMonitorClass GNativeVolumeMonitorClass;

struct _GNativeVolumeMonitor
{
 GVolumeMonitor parent_instance;
};

struct _GNativeVolumeMonitorClass
{
 GVolumeMonitorClass parent_class;

 GMount * (* get_mount_for_mount_path) (const char *mount_path,
                                        GCancellable *cancellable);
};

extern
GType g_native_volume_monitor_get_type (void) __attribute__((__const__));

}
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnetworkaddress.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnetworkaddress.h"
extern "C" {
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnetworkaddress.h"
typedef struct _GNetworkAddressClass GNetworkAddressClass;
typedef struct _GNetworkAddressPrivate GNetworkAddressPrivate;

struct _GNetworkAddress
{
 GObject parent_instance;


 GNetworkAddressPrivate *priv;
};

struct _GNetworkAddressClass
{
 GObjectClass parent_class;

};

extern
GType g_network_address_get_type (void) __attribute__((__const__));

extern
GSocketConnectable *g_network_address_new (const gchar *hostname,
         guint16 port);
extern
GSocketConnectable *g_network_address_new_loopback (guint16 port);
extern
GSocketConnectable *g_network_address_parse (const gchar *host_and_port,
         guint16 default_port,
         GError **error);
extern
GSocketConnectable *g_network_address_parse_uri (const gchar *uri,
             guint16 default_port,
         GError **error);
extern
const gchar *g_network_address_get_hostname (GNetworkAddress *addr);
extern
guint16 g_network_address_get_port (GNetworkAddress *addr);
extern
const gchar *g_network_address_get_scheme (GNetworkAddress *addr);


}
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnetworkmonitor.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnetworkmonitor.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnetworkmonitor.h"
typedef struct _GNetworkMonitorInterface GNetworkMonitorInterface;

struct _GNetworkMonitorInterface {
 GTypeInterface g_iface;

 void (*network_changed) (GNetworkMonitor *monitor,
   gboolean available);

 gboolean (*can_reach) (GNetworkMonitor *monitor,
   GSocketConnectable *connectable,
   GCancellable *cancellable,
   GError **error);
 void (*can_reach_async) (GNetworkMonitor *monitor,
   GSocketConnectable *connectable,
   GCancellable *cancellable,
   GAsyncReadyCallback callback,
   gpointer user_data);
 gboolean (*can_reach_finish) (GNetworkMonitor *monitor,
   GAsyncResult *result,
   GError **error);
};

extern
GType g_network_monitor_get_type (void) __attribute__((__const__));
extern
GNetworkMonitor *g_network_monitor_get_default (void);

extern
gboolean g_network_monitor_get_network_available (GNetworkMonitor *monitor);

extern
gboolean g_network_monitor_get_network_metered (GNetworkMonitor *monitor);

extern
GNetworkConnectivity g_network_monitor_get_connectivity (GNetworkMonitor *monitor);

extern
gboolean g_network_monitor_can_reach (GNetworkMonitor *monitor,
                                                              GSocketConnectable *connectable,
                                                              GCancellable *cancellable,
                                                              GError **error);
extern
void g_network_monitor_can_reach_async (GNetworkMonitor *monitor,
                                                              GSocketConnectable *connectable,
                                                              GCancellable *cancellable,
                                                              GAsyncReadyCallback callback,
                                                              gpointer user_data);
extern
gboolean g_network_monitor_can_reach_finish (GNetworkMonitor *monitor,
                                                              GAsyncResult *result,
                                                              GError **error);

}
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnetworkservice.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnetworkservice.h"
extern "C" {
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnetworkservice.h"
typedef struct _GNetworkServiceClass GNetworkServiceClass;
typedef struct _GNetworkServicePrivate GNetworkServicePrivate;

struct _GNetworkService
{
 GObject parent_instance;


 GNetworkServicePrivate *priv;
};

struct _GNetworkServiceClass
{
 GObjectClass parent_class;

};

extern
GType g_network_service_get_type (void) __attribute__((__const__));

extern
GSocketConnectable *g_network_service_new (const gchar *service,
           const gchar *protocol,
           const gchar *domain);

extern
const gchar *g_network_service_get_service (GNetworkService *srv);
extern
const gchar *g_network_service_get_protocol (GNetworkService *srv);
extern
const gchar *g_network_service_get_domain (GNetworkService *srv);
extern
const gchar *g_network_service_get_scheme (GNetworkService *srv);
extern
void g_network_service_set_scheme (GNetworkService *srv, const gchar *scheme);

}
# 100 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpermission.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpermission.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpermission.h"
typedef struct _GPermissionPrivate GPermissionPrivate;
typedef struct _GPermissionClass GPermissionClass;

struct _GPermission
{
 GObject parent_instance;


 GPermissionPrivate *priv;
};

struct _GPermissionClass {
 GObjectClass parent_class;

 gboolean (*acquire) (GPermission *permission,
                             GCancellable *cancellable,
                             GError **error);
 void (*acquire_async) (GPermission *permission,
                             GCancellable *cancellable,
                             GAsyncReadyCallback callback,
                             gpointer user_data);
 gboolean (*acquire_finish) (GPermission *permission,
                             GAsyncResult *result,
                             GError **error);

 gboolean (*release) (GPermission *permission,
                             GCancellable *cancellable,
                             GError **error);
 void (*release_async) (GPermission *permission,
                             GCancellable *cancellable,
                             GAsyncReadyCallback callback,
                             gpointer user_data);
 gboolean (*release_finish) (GPermission *permission,
                             GAsyncResult *result,
                             GError **error);

 gpointer reserved[16];
};

extern
GType g_permission_get_type (void);
extern
gboolean g_permission_acquire (GPermission *permission,
                                                GCancellable *cancellable,
                                                GError **error);
extern
void g_permission_acquire_async (GPermission *permission,
                                                GCancellable *cancellable,
                                                GAsyncReadyCallback callback,
                                                gpointer user_data);
extern
gboolean g_permission_acquire_finish (GPermission *permission,
                                                GAsyncResult *result,
                                                GError **error);

extern
gboolean g_permission_release (GPermission *permission,
                                                GCancellable *cancellable,
                                                GError **error);
extern
void g_permission_release_async (GPermission *permission,
                                                GCancellable *cancellable,
                                                GAsyncReadyCallback callback,
                                                gpointer user_data);
extern
gboolean g_permission_release_finish (GPermission *permission,
                                                GAsyncResult *result,
                                                GError **error);

extern
gboolean g_permission_get_allowed (GPermission *permission);
extern
gboolean g_permission_get_can_acquire (GPermission *permission);
extern
gboolean g_permission_get_can_release (GPermission *permission);

extern
void g_permission_impl_update (GPermission *permission,
                                                gboolean allowed,
                                                gboolean can_acquire,
                                                gboolean can_release);

}
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableinputstream.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableinputstream.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableinputstream.h" 2

extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableinputstream.h"
typedef struct _GPollableInputStreamInterface GPollableInputStreamInterface;
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableinputstream.h"
struct _GPollableInputStreamInterface
{
 GTypeInterface g_iface;


 gboolean (*can_poll) (GPollableInputStream *stream);

 gboolean (*is_readable) (GPollableInputStream *stream);
 GSource * (*create_source) (GPollableInputStream *stream,
       GCancellable *cancellable);
 gssize (*read_nonblocking) (GPollableInputStream *stream,
       void *buffer,
       gsize count,
       GError **error);
};

extern
GType g_pollable_input_stream_get_type (void) __attribute__((__const__));

extern
gboolean g_pollable_input_stream_can_poll (GPollableInputStream *stream);

extern
gboolean g_pollable_input_stream_is_readable (GPollableInputStream *stream);
extern
GSource *g_pollable_input_stream_create_source (GPollableInputStream *stream,
        GCancellable *cancellable);

extern
gssize g_pollable_input_stream_read_nonblocking (GPollableInputStream *stream,
        void *buffer,
        gsize count,
        GCancellable *cancellable,
        GError **error);

}
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableoutputstream.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableoutputstream.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableoutputstream.h"
typedef struct _GPollableOutputStreamInterface GPollableOutputStreamInterface;
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableoutputstream.h"
struct _GPollableOutputStreamInterface
{
 GTypeInterface g_iface;


 gboolean (*can_poll) (GPollableOutputStream *stream);

 gboolean (*is_writable) (GPollableOutputStream *stream);
 GSource * (*create_source) (GPollableOutputStream *stream,
        GCancellable *cancellable);
 gssize (*write_nonblocking) (GPollableOutputStream *stream,
        const void *buffer,
        gsize count,
        GError **error);
};

extern
GType g_pollable_output_stream_get_type (void) __attribute__((__const__));

extern
gboolean g_pollable_output_stream_can_poll (GPollableOutputStream *stream);

extern
gboolean g_pollable_output_stream_is_writable (GPollableOutputStream *stream);
extern
GSource *g_pollable_output_stream_create_source (GPollableOutputStream *stream,
          GCancellable *cancellable);

extern
gssize g_pollable_output_stream_write_nonblocking (GPollableOutputStream *stream,
          const void *buffer,
          gsize count,
          GCancellable *cancellable,
          GError **error);

}
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableutils.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpollableutils.h"
extern "C" {

extern
GSource *g_pollable_source_new (GObject *pollable_stream);

extern
GSource *g_pollable_source_new_full (gpointer pollable_stream,
         GSource *child_source,
         GCancellable *cancellable);

extern
gssize g_pollable_stream_read (GInputStream *stream,
         void *buffer,
         gsize count,
         gboolean blocking,
         GCancellable *cancellable,
         GError **error);

extern
gssize g_pollable_stream_write (GOutputStream *stream,
         const void *buffer,
         gsize count,
         gboolean blocking,
         GCancellable *cancellable,
         GError **error);
extern
gboolean g_pollable_stream_write_all (GOutputStream *stream,
         const void *buffer,
         gsize count,
         gboolean blocking,
         gsize *bytes_written,
         GCancellable *cancellable,
         GError **error);

}
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpropertyaction.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gpropertyaction.h"
extern "C" {







extern
GType g_property_action_get_type (void) __attribute__((__const__));

extern
GPropertyAction * g_property_action_new (const gchar *name,
                                                                        gpointer object,
                                                                        const gchar *property_name);

}
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxy.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxy.h"
extern "C" {
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxy.h"
typedef struct _GProxyInterface GProxyInterface;
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxy.h"
struct _GProxyInterface
{
 GTypeInterface g_iface;



 GIOStream * (* connect) (GProxy *proxy,
        GIOStream *connection,
        GProxyAddress *proxy_address,
        GCancellable *cancellable,
        GError **error);

 void (* connect_async) (GProxy *proxy,
        GIOStream *connection,
        GProxyAddress *proxy_address,
        GCancellable *cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data);

 GIOStream * (* connect_finish) (GProxy *proxy,
        GAsyncResult *result,
        GError **error);

 gboolean (* supports_hostname) (GProxy *proxy);
};

extern
GType g_proxy_get_type (void) __attribute__((__const__));

extern
GProxy *g_proxy_get_default_for_protocol (const gchar *protocol);

extern
GIOStream *g_proxy_connect (GProxy *proxy,
         GIOStream *connection,
         GProxyAddress *proxy_address,
         GCancellable *cancellable,
         GError **error);

extern
void g_proxy_connect_async (GProxy *proxy,
         GIOStream *connection,
         GProxyAddress *proxy_address,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);

extern
GIOStream *g_proxy_connect_finish (GProxy *proxy,
         GAsyncResult *result,
         GError **error);

extern
gboolean g_proxy_supports_hostname (GProxy *proxy);

}
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyaddress.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyaddress.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyaddress.h"
typedef struct _GProxyAddressClass GProxyAddressClass;
typedef struct _GProxyAddressPrivate GProxyAddressPrivate;

struct _GProxyAddress
{
 GInetSocketAddress parent_instance;


 GProxyAddressPrivate *priv;
};

struct _GProxyAddressClass
{
 GInetSocketAddressClass parent_class;
};


extern
GType g_proxy_address_get_type (void) __attribute__((__const__));

extern
GSocketAddress *g_proxy_address_new (GInetAddress *inetaddr,
         guint16 port,
         const gchar *protocol,
         const gchar *dest_hostname,
                              guint16 dest_port,
         const gchar *username,
         const gchar *password);

extern
const gchar *g_proxy_address_get_protocol (GProxyAddress *proxy);
extern
const gchar *g_proxy_address_get_destination_protocol (GProxyAddress *proxy);
extern
const gchar *g_proxy_address_get_destination_hostname (GProxyAddress *proxy);
extern
guint16 g_proxy_address_get_destination_port (GProxyAddress *proxy);
extern
const gchar *g_proxy_address_get_username (GProxyAddress *proxy);
extern
const gchar *g_proxy_address_get_password (GProxyAddress *proxy);

extern
const gchar *g_proxy_address_get_uri (GProxyAddress *proxy);

}
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyaddressenumerator.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyaddressenumerator.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketaddressenumerator.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketaddressenumerator.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketaddressenumerator.h"
typedef struct _GSocketAddressEnumeratorClass GSocketAddressEnumeratorClass;

struct _GSocketAddressEnumerator
{
 GObject parent_instance;

};

struct _GSocketAddressEnumeratorClass
{
 GObjectClass parent_class;



 GSocketAddress * (* next) (GSocketAddressEnumerator *enumerator,
       GCancellable *cancellable,
       GError **error);

 void (* next_async) (GSocketAddressEnumerator *enumerator,
       GCancellable *cancellable,
       GAsyncReadyCallback callback,
       gpointer user_data);
 GSocketAddress * (* next_finish) (GSocketAddressEnumerator *enumerator,
       GAsyncResult *result,
       GError **error);
};

extern
GType g_socket_address_enumerator_get_type (void) __attribute__((__const__));

extern
GSocketAddress *g_socket_address_enumerator_next (GSocketAddressEnumerator *enumerator,
       GCancellable *cancellable,
       GError **error);

extern
void g_socket_address_enumerator_next_async (GSocketAddressEnumerator *enumerator,
       GCancellable *cancellable,
       GAsyncReadyCallback callback,
       gpointer user_data);
extern
GSocketAddress *g_socket_address_enumerator_next_finish (GSocketAddressEnumerator *enumerator,
       GAsyncResult *result,
       GError **error);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyaddressenumerator.h" 2

extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyaddressenumerator.h"
typedef struct _GProxyAddressEnumeratorClass GProxyAddressEnumeratorClass;
typedef struct _GProxyAddressEnumeratorPrivate GProxyAddressEnumeratorPrivate;

struct _GProxyAddressEnumerator
{
 GSocketAddressEnumerator parent_instance;
 GProxyAddressEnumeratorPrivate *priv;
};

struct _GProxyAddressEnumeratorClass
{
 GSocketAddressEnumeratorClass parent_class;

 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
 void (*_g_reserved7) (void);
};

extern
GType g_proxy_address_enumerator_get_type (void) __attribute__((__const__));

}
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyresolver.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyresolver.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gproxyresolver.h"
typedef struct _GProxyResolverInterface GProxyResolverInterface;

struct _GProxyResolverInterface {
 GTypeInterface g_iface;


 gboolean (* is_supported) (GProxyResolver *resolver);

 gchar ** (* lookup) (GProxyResolver *resolver,
        const gchar *uri,
        GCancellable *cancellable,
        GError **error);

 void (* lookup_async) (GProxyResolver *resolver,
        const gchar *uri,
        GCancellable *cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data);

 gchar ** (* lookup_finish) (GProxyResolver *resolver,
        GAsyncResult *result,
        GError **error);
};

extern
GType g_proxy_resolver_get_type (void) __attribute__((__const__));
extern
GProxyResolver *g_proxy_resolver_get_default (void);

extern
gboolean g_proxy_resolver_is_supported (GProxyResolver *resolver);
extern
gchar **g_proxy_resolver_lookup (GProxyResolver *resolver,
      const gchar *uri,
      GCancellable *cancellable,
      GError **error);
extern
void g_proxy_resolver_lookup_async (GProxyResolver *resolver,
      const gchar *uri,
      GCancellable *cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data);
extern
gchar **g_proxy_resolver_lookup_finish (GProxyResolver *resolver,
      GAsyncResult *result,
      GError **error);


}
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gresolver.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gresolver.h"
extern "C" {
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gresolver.h"
typedef struct _GResolverPrivate GResolverPrivate;
typedef struct _GResolverClass GResolverClass;

struct _GResolver {
 GObject parent_instance;

 GResolverPrivate *priv;
};

struct _GResolverClass {
 GObjectClass parent_class;


 void ( *reload) (GResolver *resolver);


 GList * ( *lookup_by_name) (GResolver *resolver,
    const gchar *hostname,
    GCancellable *cancellable,
    GError **error);
 void ( *lookup_by_name_async) (GResolver *resolver,
    const gchar *hostname,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);
 GList * ( *lookup_by_name_finish) (GResolver *resolver,
    GAsyncResult *result,
    GError **error);

 gchar * ( *lookup_by_address) (GResolver *resolver,
    GInetAddress *address,
    GCancellable *cancellable,
    GError **error);
 void ( *lookup_by_address_async) (GResolver *resolver,
    GInetAddress *address,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);
 gchar * ( *lookup_by_address_finish) (GResolver *resolver,
    GAsyncResult *result,
    GError **error);

 GList * ( *lookup_service) (GResolver *resolver,
    const gchar *rrname,
    GCancellable *cancellable,
    GError **error);
 void ( *lookup_service_async) (GResolver *resolver,
    const gchar *rrname,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);
 GList * ( *lookup_service_finish) (GResolver *resolver,
    GAsyncResult *result,
    GError **error);

 GList * ( *lookup_records) (GResolver *resolver,
                                       const gchar *rrname,
                                       GResolverRecordType record_type,
                                       GCancellable *cancellable,
                                       GError **error);

 void ( *lookup_records_async) (GResolver *resolver,
                                       const gchar *rrname,
                                       GResolverRecordType record_type,
                                       GCancellable *cancellable,
                                       GAsyncReadyCallback callback,
                                       gpointer user_data);

 GList * ( *lookup_records_finish) (GResolver *resolver,
                                       GAsyncResult *result,
                                       GError **error);


 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);

};

extern
GType g_resolver_get_type (void) __attribute__((__const__));
extern
GResolver *g_resolver_get_default (void);
extern
void g_resolver_set_default (GResolver *resolver);

extern
GList *g_resolver_lookup_by_name (GResolver *resolver,
      const gchar *hostname,
      GCancellable *cancellable,
      GError **error);
extern
void g_resolver_lookup_by_name_async (GResolver *resolver,
      const gchar *hostname,
      GCancellable *cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data);
extern
GList *g_resolver_lookup_by_name_finish (GResolver *resolver,
      GAsyncResult *result,
      GError **error);

extern
void g_resolver_free_addresses (GList *addresses);

extern
gchar *g_resolver_lookup_by_address (GResolver *resolver,
      GInetAddress *address,
      GCancellable *cancellable,
      GError **error);
extern
void g_resolver_lookup_by_address_async (GResolver *resolver,
      GInetAddress *address,
      GCancellable *cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data);
extern
gchar *g_resolver_lookup_by_address_finish (GResolver *resolver,
      GAsyncResult *result,
      GError **error);

extern
GList *g_resolver_lookup_service (GResolver *resolver,
      const gchar *service,
      const gchar *protocol,
      const gchar *domain,
      GCancellable *cancellable,
      GError **error);
extern
void g_resolver_lookup_service_async (GResolver *resolver,
      const gchar *service,
      const gchar *protocol,
      const gchar *domain,
      GCancellable *cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data);
extern
GList *g_resolver_lookup_service_finish (GResolver *resolver,
      GAsyncResult *result,
      GError **error);

extern
GList *g_resolver_lookup_records (GResolver *resolver,
                                                const gchar *rrname,
                                                GResolverRecordType record_type,
                                                GCancellable *cancellable,
                                                GError **error);
extern
void g_resolver_lookup_records_async (GResolver *resolver,
                                                const gchar *rrname,
                                                GResolverRecordType record_type,
                                                GCancellable *cancellable,
                                                GAsyncReadyCallback callback,
                                                gpointer user_data);
extern
GList *g_resolver_lookup_records_finish (GResolver *resolver,
                                                GAsyncResult *result,
                                                GError **error);

extern
void g_resolver_free_targets (GList *targets);
# 207 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gresolver.h"
extern
GQuark g_resolver_error_quark (void);

}
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gresource.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gresource.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gresource.h"
extern
GQuark g_resource_error_quark (void);

typedef struct _GStaticResource GStaticResource;

struct _GStaticResource {

 const guint8 *data;
 gsize data_len;
 GResource *resource;
 GStaticResource *next;
 gpointer padding;
};

extern
GType g_resource_get_type (void) __attribute__((__const__));
extern
GResource * g_resource_new_from_data (GBytes *data,
          GError **error);
extern
GResource * g_resource_ref (GResource *resource);
extern
void g_resource_unref (GResource *resource);
extern
GResource * g_resource_load (const gchar *filename,
          GError **error);
extern
GInputStream *g_resource_open_stream (GResource *resource,
          const char *path,
          GResourceLookupFlags lookup_flags,
          GError **error);
extern
GBytes * g_resource_lookup_data (GResource *resource,
          const char *path,
          GResourceLookupFlags lookup_flags,
          GError **error);
extern
char ** g_resource_enumerate_children (GResource *resource,
          const char *path,
          GResourceLookupFlags lookup_flags,
          GError **error);
extern
gboolean g_resource_get_info (GResource *resource,
          const char *path,
          GResourceLookupFlags lookup_flags,
          gsize *size,
          guint32 *flags,
          GError **error);

extern
void g_resources_register (GResource *resource);
extern
void g_resources_unregister (GResource *resource);
extern
GInputStream *g_resources_open_stream (const char *path,
          GResourceLookupFlags lookup_flags,
          GError **error);
extern
GBytes * g_resources_lookup_data (const char *path,
          GResourceLookupFlags lookup_flags,
          GError **error);
extern
char ** g_resources_enumerate_children (const char *path,
          GResourceLookupFlags lookup_flags,
          GError **error);
extern
gboolean g_resources_get_info (const char *path,
          GResourceLookupFlags lookup_flags,
          gsize *size,
          guint32 *flags,
          GError **error);


extern
void g_static_resource_init (GStaticResource *static_resource);
extern
void g_static_resource_fini (GStaticResource *static_resource);
extern
GResource *g_static_resource_get_resource (GStaticResource *static_resource);

}
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gseekable.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gseekable.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gseekable.h"
typedef struct _GSeekableIface GSeekableIface;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gseekable.h"
struct _GSeekableIface
{
 GTypeInterface g_iface;



 goffset (* tell) (GSeekable *seekable);

 gboolean (* can_seek) (GSeekable *seekable);
 gboolean (* seek) (GSeekable *seekable,
     goffset offset,
     GSeekType type,
     GCancellable *cancellable,
     GError **error);

 gboolean (* can_truncate) (GSeekable *seekable);
 gboolean (* truncate_fn) (GSeekable *seekable,
     goffset offset,
     GCancellable *cancellable,
     GError **error);


};

extern
GType g_seekable_get_type (void) __attribute__((__const__));

extern
goffset g_seekable_tell (GSeekable *seekable);
extern
gboolean g_seekable_can_seek (GSeekable *seekable);
extern
gboolean g_seekable_seek (GSeekable *seekable,
     goffset offset,
     GSeekType type,
     GCancellable *cancellable,
     GError **error);
extern
gboolean g_seekable_can_truncate (GSeekable *seekable);
extern
gboolean g_seekable_truncate (GSeekable *seekable,
     goffset offset,
     GCancellable *cancellable,
     GError **error);

}
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsettingsschema.h" 1
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsettingsschema.h"
extern "C" {

typedef struct _GSettingsSchemaSource GSettingsSchemaSource;
typedef struct _GSettingsSchema GSettingsSchema;
typedef struct _GSettingsSchemaKey GSettingsSchemaKey;


extern
GType g_settings_schema_source_get_type (void) __attribute__((__const__));

extern
GSettingsSchemaSource * g_settings_schema_source_get_default (void);
extern
GSettingsSchemaSource * g_settings_schema_source_ref (GSettingsSchemaSource *source);
extern
void g_settings_schema_source_unref (GSettingsSchemaSource *source);

extern
GSettingsSchemaSource * g_settings_schema_source_new_from_directory (const gchar *directory,
                                                                        GSettingsSchemaSource *parent,
                                                                        gboolean trusted,
                                                                        GError **error);

extern
GSettingsSchema * g_settings_schema_source_lookup (GSettingsSchemaSource *source,
                                                                        const gchar *schema_id,
                                                                        gboolean recursive);

extern
void g_settings_schema_source_list_schemas (GSettingsSchemaSource *source,
                                                                        gboolean recursive,
                                                                        gchar ***non_relocatable,
                                                                        gchar ***relocatable);


extern
GType g_settings_schema_get_type (void) __attribute__((__const__));

extern
GSettingsSchema * g_settings_schema_ref (GSettingsSchema *schema);
extern
void g_settings_schema_unref (GSettingsSchema *schema);

extern
const gchar * g_settings_schema_get_id (GSettingsSchema *schema);
extern
const gchar * g_settings_schema_get_path (GSettingsSchema *schema);
extern
GSettingsSchemaKey * g_settings_schema_get_key (GSettingsSchema *schema,
                                                                        const gchar *name);
extern
gboolean g_settings_schema_has_key (GSettingsSchema *schema,
                                                                        const gchar *name);
extern
gchar** g_settings_schema_list_keys (GSettingsSchema *schema);


extern
gchar ** g_settings_schema_list_children (GSettingsSchema *schema);


extern
GType g_settings_schema_key_get_type (void) __attribute__((__const__));

extern
GSettingsSchemaKey * g_settings_schema_key_ref (GSettingsSchemaKey *key);
extern
void g_settings_schema_key_unref (GSettingsSchemaKey *key);

extern
const GVariantType * g_settings_schema_key_get_value_type (GSettingsSchemaKey *key);
extern
GVariant * g_settings_schema_key_get_default_value (GSettingsSchemaKey *key);
extern
GVariant * g_settings_schema_key_get_range (GSettingsSchemaKey *key);
extern
gboolean g_settings_schema_key_range_check (GSettingsSchemaKey *key,
                                                                        GVariant *value);

extern
const gchar * g_settings_schema_key_get_name (GSettingsSchemaKey *key);
extern
const gchar * g_settings_schema_key_get_summary (GSettingsSchemaKey *key);
extern
const gchar * g_settings_schema_key_get_description (GSettingsSchemaKey *key);

}
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsettings.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsettings.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsettings.h"
typedef struct _GSettingsPrivate GSettingsPrivate;
typedef struct _GSettingsClass GSettingsClass;

struct _GSettingsClass
{
 GObjectClass parent_class;


 void (*writable_changed) (GSettings *settings,
                                       const gchar *key);
 void (*changed) (GSettings *settings,
                                       const gchar *key);
 gboolean (*writable_change_event) (GSettings *settings,
                                       GQuark key);
 gboolean (*change_event) (GSettings *settings,
                                       const GQuark *keys,
                                       gint n_keys);

 gpointer padding[20];
};

struct _GSettings
{
 GObject parent_instance;
 GSettingsPrivate *priv;
};


extern
GType g_settings_get_type (void);

__attribute__((__deprecated__("Use '" "g_settings_schema_source_list_schemas" "' instead"))) extern
const gchar * const * g_settings_list_schemas (void);
__attribute__((__deprecated__("Use '" "g_settings_schema_source_list_schemas" "' instead"))) extern
const gchar * const * g_settings_list_relocatable_schemas (void);
extern
GSettings * g_settings_new (const gchar *schema_id);
extern
GSettings * g_settings_new_with_path (const gchar *schema_id,
                                                                        const gchar *path);
extern
GSettings * g_settings_new_with_backend (const gchar *schema_id,
                                                                        GSettingsBackend *backend);
extern
GSettings * g_settings_new_with_backend_and_path (const gchar *schema_id,
                                                                        GSettingsBackend *backend,
                                                                        const gchar *path);
extern
GSettings * g_settings_new_full (GSettingsSchema *schema,
                                                                        GSettingsBackend *backend,
                                                                        const gchar *path);
extern
gchar ** g_settings_list_children (GSettings *settings);
__attribute__((__deprecated__("Use '" "g_settings_schema_list_keys" "' instead"))) extern
gchar ** g_settings_list_keys (GSettings *settings);
__attribute__((__deprecated__("Use '" "g_settings_schema_key_get_range" "' instead"))) extern
GVariant * g_settings_get_range (GSettings *settings,
                                                                        const gchar *key);
__attribute__((__deprecated__("Use '" "g_settings_schema_key_range_check" "' instead"))) extern
gboolean g_settings_range_check (GSettings *settings,
                                                                        const gchar *key,
                                                                        GVariant *value);

extern
gboolean g_settings_set_value (GSettings *settings,
                                                                        const gchar *key,
                                                                        GVariant *value);
extern
GVariant * g_settings_get_value (GSettings *settings,
                                                                        const gchar *key);

extern
GVariant * g_settings_get_user_value (GSettings *settings,
                                                                        const gchar *key);
extern
GVariant * g_settings_get_default_value (GSettings *settings,
                                                                        const gchar *key);

extern
gboolean g_settings_set (GSettings *settings,
                                                                        const gchar *key,
                                                                        const gchar *format,
                                                                        ...);
extern
void g_settings_get (GSettings *settings,
                                                                        const gchar *key,
                                                                        const gchar *format,
                                                                        ...);
extern
void g_settings_reset (GSettings *settings,
                                                                        const gchar *key);

extern
gint g_settings_get_int (GSettings *settings,
                                                                        const gchar *key);
extern
gboolean g_settings_set_int (GSettings *settings,
                                                                        const gchar *key,
                                                                        gint value);
extern
guint g_settings_get_uint (GSettings *settings,
                                                                        const gchar *key);
extern
gboolean g_settings_set_uint (GSettings *settings,
                                                                        const gchar *key,
                                                                        guint value);
extern
gchar * g_settings_get_string (GSettings *settings,
                                                                        const gchar *key);
extern
gboolean g_settings_set_string (GSettings *settings,
                                                                        const gchar *key,
                                                                        const gchar *value);
extern
gboolean g_settings_get_boolean (GSettings *settings,
                                                                        const gchar *key);
extern
gboolean g_settings_set_boolean (GSettings *settings,
                                                                        const gchar *key,
                                                                        gboolean value);
extern
gdouble g_settings_get_double (GSettings *settings,
                                                                        const gchar *key);
extern
gboolean g_settings_set_double (GSettings *settings,
                                                                        const gchar *key,
                                                                        gdouble value);
extern
gchar ** g_settings_get_strv (GSettings *settings,
                                                                        const gchar *key);
extern
gboolean g_settings_set_strv (GSettings *settings,
                                                                        const gchar *key,
                                                                        const gchar *const *value);
extern
gint g_settings_get_enum (GSettings *settings,
                                                                        const gchar *key);
extern
gboolean g_settings_set_enum (GSettings *settings,
                                                                        const gchar *key,
                                                                        gint value);
extern
guint g_settings_get_flags (GSettings *settings,
                                                                        const gchar *key);
extern
gboolean g_settings_set_flags (GSettings *settings,
                                                                        const gchar *key,
                                                                        guint value);
extern
GSettings * g_settings_get_child (GSettings *settings,
                                                                        const gchar *name);

extern
gboolean g_settings_is_writable (GSettings *settings,
                                                                        const gchar *name);

extern
void g_settings_delay (GSettings *settings);
extern
void g_settings_apply (GSettings *settings);
extern
void g_settings_revert (GSettings *settings);
extern
gboolean g_settings_get_has_unapplied (GSettings *settings);
extern
void g_settings_sync (void);
# 221 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsettings.h"
typedef GVariant * (*GSettingsBindSetMapping) (const GValue *value,
                                                                        const GVariantType *expected_type,
                                                                        gpointer user_data);
# 237 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsettings.h"
typedef gboolean (*GSettingsBindGetMapping) (GValue *value,
                                                                        GVariant *variant,
                                                                        gpointer user_data);
# 261 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsettings.h"
typedef gboolean (*GSettingsGetMapping) (GVariant *value,
                                                                        gpointer *result,
                                                                        gpointer user_data);
# 283 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsettings.h"
typedef enum
{
 G_SETTINGS_BIND_DEFAULT,
 G_SETTINGS_BIND_GET = (1<<0),
 G_SETTINGS_BIND_SET = (1<<1),
 G_SETTINGS_BIND_NO_SENSITIVITY = (1<<2),
 G_SETTINGS_BIND_GET_NO_CHANGES = (1<<3),
 G_SETTINGS_BIND_INVERT_BOOLEAN = (1<<4)
} GSettingsBindFlags;

extern
void g_settings_bind (GSettings *settings,
                                                                        const gchar *key,
                                                                        gpointer object,
                                                                        const gchar *property,
                                                                        GSettingsBindFlags flags);
extern
void g_settings_bind_with_mapping (GSettings *settings,
                                                                        const gchar *key,
                                                                        gpointer object,
                                                                        const gchar *property,
                                                                        GSettingsBindFlags flags,
                                                                        GSettingsBindGetMapping get_mapping,
                                                                        GSettingsBindSetMapping set_mapping,
                                                                        gpointer user_data,
                                                                        GDestroyNotify destroy);
extern
void g_settings_bind_writable (GSettings *settings,
                                                                        const gchar *key,
                                                                        gpointer object,
                                                                        const gchar *property,
                                                                        gboolean inverted);
extern
void g_settings_unbind (gpointer object,
                                                                        const gchar *property);

extern
GAction * g_settings_create_action (GSettings *settings,
                                                                        const gchar *key);

extern
gpointer g_settings_get_mapped (GSettings *settings,
                                                                        const gchar *key,
                                                                        GSettingsGetMapping mapping,
                                                                        gpointer user_data);

}
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleaction.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleaction.h"
extern "C" {







extern
GType g_simple_action_get_type (void) __attribute__((__const__));

extern
GSimpleAction * g_simple_action_new (const gchar *name,
                                                                        const GVariantType *parameter_type);

extern
GSimpleAction * g_simple_action_new_stateful (const gchar *name,
                                                                        const GVariantType *parameter_type,
                                                                        GVariant *state);

extern
void g_simple_action_set_enabled (GSimpleAction *simple,
                                                                        gboolean enabled);

extern
void g_simple_action_set_state (GSimpleAction *simple,
                                                                        GVariant *value);

extern
void g_simple_action_set_state_hint (GSimpleAction *simple,
                                                                        GVariant *state_hint);

}
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleactiongroup.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleactiongroup.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactiongroup.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleactiongroup.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gactionmap.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleactiongroup.h" 2

extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleactiongroup.h"
typedef struct _GSimpleActionGroupPrivate GSimpleActionGroupPrivate;
typedef struct _GSimpleActionGroupClass GSimpleActionGroupClass;
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleactiongroup.h"
struct _GSimpleActionGroup
{

 GObject parent_instance;

 GSimpleActionGroupPrivate *priv;
};

struct _GSimpleActionGroupClass
{

 GObjectClass parent_class;


 gpointer padding[12];
};

extern
GType g_simple_action_group_get_type (void) __attribute__((__const__));

extern
GSimpleActionGroup * g_simple_action_group_new (void);

__attribute__((__deprecated__("Use '" "g_action_map_lookup_action" "' instead"))) extern
GAction * g_simple_action_group_lookup (GSimpleActionGroup *simple,
                                                                        const gchar *action_name);

__attribute__((__deprecated__("Use '" "g_action_map_add_action" "' instead"))) extern
void g_simple_action_group_insert (GSimpleActionGroup *simple,
                                                                        GAction *action);

__attribute__((__deprecated__("Use '" "g_action_map_remove_action" "' instead"))) extern
void g_simple_action_group_remove (GSimpleActionGroup *simple,
                                                                        const gchar *action_name);

__attribute__((__deprecated__("Use '" "g_action_map_add_action_entries" "' instead"))) extern
void g_simple_action_group_add_entries (GSimpleActionGroup *simple,
                                                                        const GActionEntry *entries,
                                                                        gint n_entries,
                                                                        gpointer user_data);

}
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleasyncresult.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleasyncresult.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleasyncresult.h"
typedef struct _GSimpleAsyncResultClass GSimpleAsyncResultClass;


extern
GType g_simple_async_result_get_type (void) __attribute__((__const__));

__attribute__((__deprecated__("Use '" "g_task_new" "' instead"))) extern
GSimpleAsyncResult *g_simple_async_result_new (GObject *source_object,
          GAsyncReadyCallback callback,
          gpointer user_data,
          gpointer source_tag);
__attribute__((__deprecated__("Use '" "g_task_new" "' instead"))) extern
GSimpleAsyncResult *g_simple_async_result_new_error (GObject *source_object,
          GAsyncReadyCallback callback,
          gpointer user_data,
          GQuark domain,
          gint code,
          const char *format,
          ...) __attribute__((__format__ (__printf__, 6, 7)));
__attribute__((__deprecated__("Use '" "g_task_new" "' instead"))) extern
GSimpleAsyncResult *g_simple_async_result_new_from_error (GObject *source_object,
          GAsyncReadyCallback callback,
          gpointer user_data,
          const GError *error);
__attribute__((__deprecated__("Use '" "g_task_new" "' instead"))) extern
GSimpleAsyncResult *g_simple_async_result_new_take_error (GObject *source_object,
          GAsyncReadyCallback callback,
          gpointer user_data,
          GError *error);

__attribute__((__deprecated__)) extern
void g_simple_async_result_set_op_res_gpointer (GSimpleAsyncResult *simple,
                                                              gpointer op_res,
                                                              GDestroyNotify destroy_op_res);
__attribute__((__deprecated__)) extern
gpointer g_simple_async_result_get_op_res_gpointer (GSimpleAsyncResult *simple);

__attribute__((__deprecated__)) extern
void g_simple_async_result_set_op_res_gssize (GSimpleAsyncResult *simple,
                                                              gssize op_res);
__attribute__((__deprecated__)) extern
gssize g_simple_async_result_get_op_res_gssize (GSimpleAsyncResult *simple);

__attribute__((__deprecated__)) extern
void g_simple_async_result_set_op_res_gboolean (GSimpleAsyncResult *simple,
                                                              gboolean op_res);
__attribute__((__deprecated__)) extern
gboolean g_simple_async_result_get_op_res_gboolean (GSimpleAsyncResult *simple);



extern
void g_simple_async_result_set_check_cancellable (GSimpleAsyncResult *simple,
                                                                GCancellable *check_cancellable);
__attribute__((__deprecated__)) extern
gpointer g_simple_async_result_get_source_tag (GSimpleAsyncResult *simple);
__attribute__((__deprecated__)) extern
void g_simple_async_result_set_handle_cancellation (GSimpleAsyncResult *simple,
          gboolean handle_cancellation);
__attribute__((__deprecated__)) extern
void g_simple_async_result_complete (GSimpleAsyncResult *simple);
__attribute__((__deprecated__)) extern
void g_simple_async_result_complete_in_idle (GSimpleAsyncResult *simple);
__attribute__((__deprecated__)) extern
void g_simple_async_result_run_in_thread (GSimpleAsyncResult *simple,
          GSimpleAsyncThreadFunc func,
          int io_priority,
          GCancellable *cancellable);
__attribute__((__deprecated__)) extern
void g_simple_async_result_set_from_error (GSimpleAsyncResult *simple,
          const GError *error);
__attribute__((__deprecated__)) extern
void g_simple_async_result_take_error (GSimpleAsyncResult *simple,
          GError *error);
__attribute__((__deprecated__)) extern
gboolean g_simple_async_result_propagate_error (GSimpleAsyncResult *simple,
          GError **dest);
__attribute__((__deprecated__)) extern
void g_simple_async_result_set_error (GSimpleAsyncResult *simple,
          GQuark domain,
          gint code,
          const char *format,
          ...) __attribute__((__format__ (__printf__, 4, 5)));
__attribute__((__deprecated__)) extern
void g_simple_async_result_set_error_va (GSimpleAsyncResult *simple,
          GQuark domain,
          gint code,
          const char *format,
          va_list args)
          __attribute__((__format__ (__printf__, 4, 0)));
__attribute__((__deprecated__)) extern
gboolean g_simple_async_result_is_valid (GAsyncResult *result,
                                                           GObject *source,
                                                           gpointer source_tag);

__attribute__((__deprecated__("Use '" "g_task_report_error" "' instead"))) extern
void g_simple_async_report_error_in_idle (GObject *object,
       GAsyncReadyCallback callback,
       gpointer user_data,
       GQuark domain,
       gint code,
       const char *format,
       ...) __attribute__((__format__ (__printf__, 6, 7)));
__attribute__((__deprecated__("Use '" "g_task_report_error" "' instead"))) extern
void g_simple_async_report_gerror_in_idle (GObject *object,
       GAsyncReadyCallback callback,
       gpointer user_data,
       const GError *error);
__attribute__((__deprecated__("Use '" "g_task_report_error" "' instead"))) extern
void g_simple_async_report_take_gerror_in_idle (GObject *object,
                                               GAsyncReadyCallback callback,
                                               gpointer user_data,
                                               GError *error);

}
# 118 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleiostream.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleiostream.h"
extern "C" {





extern
GType g_simple_io_stream_get_type (void) __attribute__((__const__));

extern
GIOStream *g_simple_io_stream_new (GInputStream *input_stream,
                                                         GOutputStream *output_stream);

}
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimplepermission.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimplepermission.h"
extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimplepermission.h"
extern
GType g_simple_permission_get_type (void);
extern
GPermission * g_simple_permission_new (gboolean allowed);

}
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketclient.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketclient.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketclient.h"
typedef struct _GSocketClientPrivate GSocketClientPrivate;
typedef struct _GSocketClientClass GSocketClientClass;

struct _GSocketClientClass
{
 GObjectClass parent_class;

 void (* event) (GSocketClient *client,
   GSocketClientEvent event,
   GSocketConnectable *connectable,
   GIOStream *connection);


 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
};

struct _GSocketClient
{
 GObject parent_instance;
 GSocketClientPrivate *priv;
};

extern
GType g_socket_client_get_type (void) __attribute__((__const__));

extern
GSocketClient *g_socket_client_new (void);

extern
GSocketFamily g_socket_client_get_family (GSocketClient *client);
extern
void g_socket_client_set_family (GSocketClient *client,
         GSocketFamily family);
extern
GSocketType g_socket_client_get_socket_type (GSocketClient *client);
extern
void g_socket_client_set_socket_type (GSocketClient *client,
         GSocketType type);
extern
GSocketProtocol g_socket_client_get_protocol (GSocketClient *client);
extern
void g_socket_client_set_protocol (GSocketClient *client,
         GSocketProtocol protocol);
extern
GSocketAddress *g_socket_client_get_local_address (GSocketClient *client);
extern
void g_socket_client_set_local_address (GSocketClient *client,
         GSocketAddress *address);
extern
guint g_socket_client_get_timeout (GSocketClient *client);
extern
void g_socket_client_set_timeout (GSocketClient *client,
         guint timeout);
extern
gboolean g_socket_client_get_enable_proxy (GSocketClient *client);
extern
void g_socket_client_set_enable_proxy (GSocketClient *client,
             gboolean enable);

extern
gboolean g_socket_client_get_tls (GSocketClient *client);
extern
void g_socket_client_set_tls (GSocketClient *client,
         gboolean tls);
extern
GTlsCertificateFlags g_socket_client_get_tls_validation_flags (GSocketClient *client);
extern
void g_socket_client_set_tls_validation_flags (GSocketClient *client,
         GTlsCertificateFlags flags);
extern
GProxyResolver *g_socket_client_get_proxy_resolver (GSocketClient *client);
extern
void g_socket_client_set_proxy_resolver (GSocketClient *client,
                                                                        GProxyResolver *proxy_resolver);

extern
GSocketConnection * g_socket_client_connect (GSocketClient *client,
                                                                        GSocketConnectable *connectable,
                                                                        GCancellable *cancellable,
                                                                        GError **error);
extern
GSocketConnection * g_socket_client_connect_to_host (GSocketClient *client,
         const gchar *host_and_port,
         guint16 default_port,
                                                                        GCancellable *cancellable,
                                                                        GError **error);
extern
GSocketConnection * g_socket_client_connect_to_service (GSocketClient *client,
         const gchar *domain,
         const gchar *service,
                                                                        GCancellable *cancellable,
                                                                        GError **error);
extern
GSocketConnection * g_socket_client_connect_to_uri (GSocketClient *client,
         const gchar *uri,
         guint16 default_port,
                                                                        GCancellable *cancellable,
                                                                        GError **error);
extern
void g_socket_client_connect_async (GSocketClient *client,
                                                                        GSocketConnectable *connectable,
                                                                        GCancellable *cancellable,
                                                                        GAsyncReadyCallback callback,
                                                                        gpointer user_data);
extern
GSocketConnection * g_socket_client_connect_finish (GSocketClient *client,
                                                                        GAsyncResult *result,
                                                                        GError **error);
extern
void g_socket_client_connect_to_host_async (GSocketClient *client,
         const gchar *host_and_port,
         guint16 default_port,
                                                                        GCancellable *cancellable,
                                                                        GAsyncReadyCallback callback,
                                                                        gpointer user_data);
extern
GSocketConnection * g_socket_client_connect_to_host_finish (GSocketClient *client,
                                                                        GAsyncResult *result,
                                                                        GError **error);

extern
void g_socket_client_connect_to_service_async (GSocketClient *client,
         const gchar *domain,
         const gchar *service,
                                                                        GCancellable *cancellable,
                                                                        GAsyncReadyCallback callback,
                                                                        gpointer user_data);
extern
GSocketConnection * g_socket_client_connect_to_service_finish (GSocketClient *client,
                                                                        GAsyncResult *result,
                                                                        GError **error);
extern
void g_socket_client_connect_to_uri_async (GSocketClient *client,
         const gchar *uri,
         guint16 default_port,
                                                                        GCancellable *cancellable,
                                                                        GAsyncReadyCallback callback,
                                                                        gpointer user_data);
extern
GSocketConnection * g_socket_client_connect_to_uri_finish (GSocketClient *client,
                                                                        GAsyncResult *result,
                                                                        GError **error);
extern
void g_socket_client_add_application_proxy (GSocketClient *client,
         const gchar *protocol);

}
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketconnectable.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketconnectable.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketconnectable.h"
typedef struct _GSocketConnectableIface GSocketConnectableIface;
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketconnectable.h"
struct _GSocketConnectableIface
{
 GTypeInterface g_iface;



 GSocketAddressEnumerator * (* enumerate) (GSocketConnectable *connectable);

 GSocketAddressEnumerator * (* proxy_enumerate) (GSocketConnectable *connectable);

 gchar * (* to_string) (GSocketConnectable *connectable);
};

extern
GType g_socket_connectable_get_type (void) __attribute__((__const__));

extern
GSocketAddressEnumerator *g_socket_connectable_enumerate (GSocketConnectable *connectable);

extern
GSocketAddressEnumerator *g_socket_connectable_proxy_enumerate (GSocketConnectable *connectable);

extern
gchar *g_socket_connectable_to_string (GSocketConnectable *connectable);

}
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketconnection.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketconnection.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocket.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocket.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocket.h"
typedef struct _GSocketPrivate GSocketPrivate;
typedef struct _GSocketClass GSocketClass;

struct _GSocketClass
{
 GObjectClass parent_class;




 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
 void (*_g_reserved7) (void);
 void (*_g_reserved8) (void);
 void (*_g_reserved9) (void);
 void (*_g_reserved10) (void);
};

struct _GSocket
{
 GObject parent_instance;
 GSocketPrivate *priv;
};

extern
GType g_socket_get_type (void) __attribute__((__const__));
extern
GSocket * g_socket_new (GSocketFamily family,
       GSocketType type,
       GSocketProtocol protocol,
       GError **error);
extern
GSocket * g_socket_new_from_fd (gint fd,
       GError **error);
extern
int g_socket_get_fd (GSocket *socket);
extern
GSocketFamily g_socket_get_family (GSocket *socket);
extern
GSocketType g_socket_get_socket_type (GSocket *socket);
extern
GSocketProtocol g_socket_get_protocol (GSocket *socket);
extern
GSocketAddress * g_socket_get_local_address (GSocket *socket,
       GError **error);
extern
GSocketAddress * g_socket_get_remote_address (GSocket *socket,
       GError **error);
extern
void g_socket_set_blocking (GSocket *socket,
       gboolean blocking);
extern
gboolean g_socket_get_blocking (GSocket *socket);
extern
void g_socket_set_keepalive (GSocket *socket,
       gboolean keepalive);
extern
gboolean g_socket_get_keepalive (GSocket *socket);
extern
gint g_socket_get_listen_backlog (GSocket *socket);
extern
void g_socket_set_listen_backlog (GSocket *socket,
       gint backlog);
extern
guint g_socket_get_timeout (GSocket *socket);
extern
void g_socket_set_timeout (GSocket *socket,
       guint timeout);

extern
guint g_socket_get_ttl (GSocket *socket);
extern
void g_socket_set_ttl (GSocket *socket,
                                                        guint ttl);

extern
gboolean g_socket_get_broadcast (GSocket *socket);
extern
void g_socket_set_broadcast (GSocket *socket,
                                                        gboolean broadcast);

extern
gboolean g_socket_get_multicast_loopback (GSocket *socket);
extern
void g_socket_set_multicast_loopback (GSocket *socket,
                                                        gboolean loopback);
extern
guint g_socket_get_multicast_ttl (GSocket *socket);
extern
void g_socket_set_multicast_ttl (GSocket *socket,
                                                        guint ttl);
extern
gboolean g_socket_is_connected (GSocket *socket);
extern
gboolean g_socket_bind (GSocket *socket,
       GSocketAddress *address,
       gboolean allow_reuse,
       GError **error);
extern
gboolean g_socket_join_multicast_group (GSocket *socket,
                                                        GInetAddress *group,
                                                        gboolean source_specific,
                                                        const gchar *iface,
                                                        GError **error);
extern
gboolean g_socket_leave_multicast_group (GSocket *socket,
                                                        GInetAddress *group,
                                                        gboolean source_specific,
                                                        const gchar *iface,
                                                        GError **error);
extern
gboolean g_socket_connect (GSocket *socket,
       GSocketAddress *address,
       GCancellable *cancellable,
       GError **error);
extern
gboolean g_socket_check_connect_result (GSocket *socket,
       GError **error);

extern
gssize g_socket_get_available_bytes (GSocket *socket);

extern
GIOCondition g_socket_condition_check (GSocket *socket,
       GIOCondition condition);
extern
gboolean g_socket_condition_wait (GSocket *socket,
       GIOCondition condition,
       GCancellable *cancellable,
       GError **error);
extern
gboolean g_socket_condition_timed_wait (GSocket *socket,
       GIOCondition condition,
       gint64 timeout,
       GCancellable *cancellable,
       GError **error);
extern
GSocket * g_socket_accept (GSocket *socket,
       GCancellable *cancellable,
       GError **error);
extern
gboolean g_socket_listen (GSocket *socket,
       GError **error);
extern
gssize g_socket_receive (GSocket *socket,
       gchar *buffer,
       gsize size,
       GCancellable *cancellable,
       GError **error);
extern
gssize g_socket_receive_from (GSocket *socket,
       GSocketAddress **address,
       gchar *buffer,
       gsize size,
       GCancellable *cancellable,
       GError **error);
extern
gssize g_socket_send (GSocket *socket,
       const gchar *buffer,
       gsize size,
       GCancellable *cancellable,
       GError **error);
extern
gssize g_socket_send_to (GSocket *socket,
       GSocketAddress *address,
       const gchar *buffer,
       gsize size,
       GCancellable *cancellable,
       GError **error);
extern
gssize g_socket_receive_message (GSocket *socket,
       GSocketAddress **address,
       GInputVector *vectors,
       gint num_vectors,
       GSocketControlMessage ***messages,
       gint *num_messages,
       gint *flags,
       GCancellable *cancellable,
       GError **error);
extern
gssize g_socket_send_message (GSocket *socket,
       GSocketAddress *address,
       GOutputVector *vectors,
       gint num_vectors,
       GSocketControlMessage **messages,
       gint num_messages,
       gint flags,
       GCancellable *cancellable,
       GError **error);

extern
gint g_socket_receive_messages (GSocket *socket,
                                                        GInputMessage *messages,
                                                        guint num_messages,
                                                        gint flags,
                                                        GCancellable *cancellable,
                                                        GError **error);
extern
gint g_socket_send_messages (GSocket *socket,
       GOutputMessage *messages,
       guint num_messages,
       gint flags,
       GCancellable *cancellable,
       GError **error);

extern
gboolean g_socket_close (GSocket *socket,
       GError **error);
extern
gboolean g_socket_shutdown (GSocket *socket,
       gboolean shutdown_read,
       gboolean shutdown_write,
       GError **error);
extern
gboolean g_socket_is_closed (GSocket *socket);
extern
GSource * g_socket_create_source (GSocket *socket,
       GIOCondition condition,
       GCancellable *cancellable);
extern
gboolean g_socket_speaks_ipv4 (GSocket *socket);
extern
GCredentials *g_socket_get_credentials (GSocket *socket,
                                                        GError **error);

extern
gssize g_socket_receive_with_blocking (GSocket *socket,
       gchar *buffer,
       gsize size,
       gboolean blocking,
       GCancellable *cancellable,
       GError **error);
extern
gssize g_socket_send_with_blocking (GSocket *socket,
       const gchar *buffer,
       gsize size,
       gboolean blocking,
       GCancellable *cancellable,
       GError **error);

extern
gboolean g_socket_get_option (GSocket *socket,
       gint level,
       gint optname,
       gint *value,
       GError **error);
extern
gboolean g_socket_set_option (GSocket *socket,
       gint level,
       gint optname,
       gint value,
       GError **error);

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketconnection.h" 2


extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketconnection.h"
typedef struct _GSocketConnectionPrivate GSocketConnectionPrivate;
typedef struct _GSocketConnectionClass GSocketConnectionClass;

struct _GSocketConnectionClass
{
 GIOStreamClass parent_class;


 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
};

struct _GSocketConnection
{
 GIOStream parent_instance;
 GSocketConnectionPrivate *priv;
};

extern
GType g_socket_connection_get_type (void) __attribute__((__const__));

extern
gboolean g_socket_connection_is_connected (GSocketConnection *connection);
extern
gboolean g_socket_connection_connect (GSocketConnection *connection,
         GSocketAddress *address,
         GCancellable *cancellable,
         GError **error);
extern
void g_socket_connection_connect_async (GSocketConnection *connection,
         GSocketAddress *address,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data);
extern
gboolean g_socket_connection_connect_finish (GSocketConnection *connection,
         GAsyncResult *result,
         GError **error);

extern
GSocket *g_socket_connection_get_socket (GSocketConnection *connection);
extern
GSocketAddress *g_socket_connection_get_local_address (GSocketConnection *connection,
         GError **error);
extern
GSocketAddress *g_socket_connection_get_remote_address (GSocketConnection *connection,
         GError **error);

extern
void g_socket_connection_factory_register_type (GType g_type,
         GSocketFamily family,
         GSocketType type,
         gint protocol);
extern
GType g_socket_connection_factory_lookup_type (GSocketFamily family,
         GSocketType type,
         gint protocol_id);
extern
GSocketConnection *g_socket_connection_factory_create_connection (GSocket *socket);

}
# 125 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketcontrolmessage.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketcontrolmessage.h"
extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketcontrolmessage.h"
typedef struct _GSocketControlMessagePrivate GSocketControlMessagePrivate;
typedef struct _GSocketControlMessageClass GSocketControlMessageClass;
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketcontrolmessage.h"
struct _GSocketControlMessageClass
{
 GObjectClass parent_class;

 gsize (* get_size) (GSocketControlMessage *message);
 int (* get_level) (GSocketControlMessage *message);
 int (* get_type) (GSocketControlMessage *message);
 void (* serialize) (GSocketControlMessage *message,
    gpointer data);
 GSocketControlMessage *(* deserialize) (int level,
      int type,
      gsize size,
      gpointer data);




 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

struct _GSocketControlMessage
{
 GObject parent_instance;
 GSocketControlMessagePrivate *priv;
};

extern
GType g_socket_control_message_get_type (void) __attribute__((__const__));
extern
gsize g_socket_control_message_get_size (GSocketControlMessage *message);
extern
int g_socket_control_message_get_level (GSocketControlMessage *message);
extern
int g_socket_control_message_get_msg_type (GSocketControlMessage *message);
extern
void g_socket_control_message_serialize (GSocketControlMessage *message,
            gpointer data);
extern
GSocketControlMessage *g_socket_control_message_deserialize (int level,
            int type,
            gsize size,
            gpointer data);


}
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketlistener.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketlistener.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketlistener.h"
typedef struct _GSocketListenerPrivate GSocketListenerPrivate;
typedef struct _GSocketListenerClass GSocketListenerClass;







struct _GSocketListenerClass
{
 GObjectClass parent_class;

 void (* changed) (GSocketListener *listener);

 void (* event) (GSocketListener *listener,
                 GSocketListenerEvent *event,
                 GSocket *socket);


 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
};

struct _GSocketListener
{
 GObject parent_instance;
 GSocketListenerPrivate *priv;
};

extern
GType g_socket_listener_get_type (void) __attribute__((__const__));

extern
GSocketListener * g_socket_listener_new (void);

extern
void g_socket_listener_set_backlog (GSocketListener *listener,
         int listen_backlog);

extern
gboolean g_socket_listener_add_socket (GSocketListener *listener,
                                                                        GSocket *socket,
         GObject *source_object,
         GError **error);
extern
gboolean g_socket_listener_add_address (GSocketListener *listener,
                                                                        GSocketAddress *address,
         GSocketType type,
         GSocketProtocol protocol,
         GObject *source_object,
                                                                        GSocketAddress **effective_address,
         GError **error);
extern
gboolean g_socket_listener_add_inet_port (GSocketListener *listener,
                                                                        guint16 port,
         GObject *source_object,
         GError **error);
extern
guint16 g_socket_listener_add_any_inet_port (GSocketListener *listener,
         GObject *source_object,
         GError **error);

extern
GSocket * g_socket_listener_accept_socket (GSocketListener *listener,
         GObject **source_object,
                                                                        GCancellable *cancellable,
                                                                        GError **error);
extern
void g_socket_listener_accept_socket_async (GSocketListener *listener,
                                                                        GCancellable *cancellable,
                                                                        GAsyncReadyCallback callback,
                                                                        gpointer user_data);
extern
GSocket * g_socket_listener_accept_socket_finish (GSocketListener *listener,
                                                                        GAsyncResult *result,
         GObject **source_object,
                                                                        GError **error);


extern
GSocketConnection * g_socket_listener_accept (GSocketListener *listener,
         GObject **source_object,
                                                                        GCancellable *cancellable,
                                                                        GError **error);

extern
void g_socket_listener_accept_async (GSocketListener *listener,
                                                                        GCancellable *cancellable,
                                                                        GAsyncReadyCallback callback,
                                                                        gpointer user_data);

extern
GSocketConnection * g_socket_listener_accept_finish (GSocketListener *listener,
                                                                        GAsyncResult *result,
         GObject **source_object,
                                                                        GError **error);

extern
void g_socket_listener_close (GSocketListener *listener);

}
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketservice.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketservice.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsocketservice.h"
typedef struct _GSocketServicePrivate GSocketServicePrivate;
typedef struct _GSocketServiceClass GSocketServiceClass;







struct _GSocketServiceClass
{
 GSocketListenerClass parent_class;

 gboolean (* incoming) (GSocketService *service,
                        GSocketConnection *connection,
   GObject *source_object);


 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
};

struct _GSocketService
{
 GSocketListener parent_instance;
 GSocketServicePrivate *priv;
};

extern
GType g_socket_service_get_type (void);

extern
GSocketService *g_socket_service_new (void);
extern
void g_socket_service_start (GSocketService *service);
extern
void g_socket_service_stop (GSocketService *service);
extern
gboolean g_socket_service_is_active (GSocketService *service);


}
# 129 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsrvtarget.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsrvtarget.h"
extern "C" {

extern
GType g_srv_target_get_type (void) __attribute__((__const__));


extern
GSrvTarget *g_srv_target_new (const gchar *hostname,
           guint16 port,
           guint16 priority,
           guint16 weight);
extern
GSrvTarget *g_srv_target_copy (GSrvTarget *target);
extern
void g_srv_target_free (GSrvTarget *target);

extern
const gchar *g_srv_target_get_hostname (GSrvTarget *target);
extern
guint16 g_srv_target_get_port (GSrvTarget *target);
extern
guint16 g_srv_target_get_priority (GSrvTarget *target);
extern
guint16 g_srv_target_get_weight (GSrvTarget *target);

extern
GList *g_srv_target_list_sort (GList *targets);

}
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleproxyresolver.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleproxyresolver.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsimpleproxyresolver.h"
typedef struct _GSimpleProxyResolver GSimpleProxyResolver;
typedef struct _GSimpleProxyResolverPrivate GSimpleProxyResolverPrivate;
typedef struct _GSimpleProxyResolverClass GSimpleProxyResolverClass;

struct _GSimpleProxyResolver
{
 GObject parent_instance;


 GSimpleProxyResolverPrivate *priv;
};

struct _GSimpleProxyResolverClass
{
 GObjectClass parent_class;



 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

extern
GType g_simple_proxy_resolver_get_type (void) __attribute__((__const__));

extern
GProxyResolver *g_simple_proxy_resolver_new (const gchar *default_proxy,
                                                          gchar **ignore_hosts);

extern
void g_simple_proxy_resolver_set_default_proxy (GSimpleProxyResolver *resolver,
                                                          const gchar *default_proxy);

extern
void g_simple_proxy_resolver_set_ignore_hosts (GSimpleProxyResolver *resolver,
                                                          gchar **ignore_hosts);

extern
void g_simple_proxy_resolver_set_uri_proxy (GSimpleProxyResolver *resolver,
                                                          const gchar *uri_scheme,
                                                          const gchar *proxy);

}
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtask.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtask.h"
extern "C" {
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtask.h"
typedef struct _GTaskClass GTaskClass;

extern
GType g_task_get_type (void) __attribute__((__const__));

extern
GTask *g_task_new (gpointer source_object,
                                           GCancellable *cancellable,
                                           GAsyncReadyCallback callback,
                                           gpointer callback_data);

extern
void g_task_report_error (gpointer source_object,
                                           GAsyncReadyCallback callback,
                                           gpointer callback_data,
                                           gpointer source_tag,
                                           GError *error);
extern
void g_task_report_new_error (gpointer source_object,
                                           GAsyncReadyCallback callback,
                                           gpointer callback_data,
                                           gpointer source_tag,
                                           GQuark domain,
                                           gint code,
                                           const char *format,
                                           ...) __attribute__((__format__ (__printf__, 7, 8)));

extern
void g_task_set_task_data (GTask *task,
                                           gpointer task_data,
                                           GDestroyNotify task_data_destroy);
extern
void g_task_set_priority (GTask *task,
                                           gint priority);
extern
void g_task_set_check_cancellable (GTask *task,
                                           gboolean check_cancellable);
extern
void g_task_set_source_tag (GTask *task,
                                           gpointer source_tag);

extern
gpointer g_task_get_source_object (GTask *task);
extern
gpointer g_task_get_task_data (GTask *task);
extern
gint g_task_get_priority (GTask *task);
extern
GMainContext *g_task_get_context (GTask *task);
extern
GCancellable *g_task_get_cancellable (GTask *task);
extern
gboolean g_task_get_check_cancellable (GTask *task);
extern
gpointer g_task_get_source_tag (GTask *task);

extern
gboolean g_task_is_valid (gpointer result,
                                           gpointer source_object);


typedef void (*GTaskThreadFunc) (GTask *task,
                                          gpointer source_object,
                                          gpointer task_data,
                                          GCancellable *cancellable);
extern
void g_task_run_in_thread (GTask *task,
                                          GTaskThreadFunc task_func);
extern
void g_task_run_in_thread_sync (GTask *task,
                                          GTaskThreadFunc task_func);
extern
gboolean g_task_set_return_on_cancel (GTask *task,
                                          gboolean return_on_cancel);
extern
gboolean g_task_get_return_on_cancel (GTask *task);

extern
void g_task_attach_source (GTask *task,
                                          GSource *source,
                                          GSourceFunc callback);


extern
void g_task_return_pointer (GTask *task,
                                               gpointer result,
                                               GDestroyNotify result_destroy);
extern
void g_task_return_boolean (GTask *task,
                                               gboolean result);
extern
void g_task_return_int (GTask *task,
                                               gssize result);

extern
void g_task_return_error (GTask *task,
                                               GError *error);
extern
void g_task_return_new_error (GTask *task,
                                               GQuark domain,
                                               gint code,
                                               const char *format,
                                               ...) __attribute__((__format__ (__printf__, 4, 5)));

extern
gboolean g_task_return_error_if_cancelled (GTask *task);

extern
gpointer g_task_propagate_pointer (GTask *task,
                                               GError **error);
extern
gboolean g_task_propagate_boolean (GTask *task,
                                               GError **error);
extern
gssize g_task_propagate_int (GTask *task,
                                               GError **error);
extern
gboolean g_task_had_error (GTask *task);
extern
gboolean g_task_get_completed (GTask *task);

}
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsubprocess.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsubprocess.h"
extern "C" {





extern
GType g_subprocess_get_type (void) __attribute__((__const__));



extern
GSubprocess * g_subprocess_new (GSubprocessFlags flags,
                                                        GError **error,
                                                        const gchar *argv0,
                                                        ...) __attribute__((__sentinel__));
extern
GSubprocess * g_subprocess_newv (const gchar * const *argv,
                                                        GSubprocessFlags flags,
                                                        GError **error);

extern
GOutputStream * g_subprocess_get_stdin_pipe (GSubprocess *subprocess);

extern
GInputStream * g_subprocess_get_stdout_pipe (GSubprocess *subprocess);

extern
GInputStream * g_subprocess_get_stderr_pipe (GSubprocess *subprocess);

extern
const gchar * g_subprocess_get_identifier (GSubprocess *subprocess);


extern
void g_subprocess_send_signal (GSubprocess *subprocess,
                                                        gint signal_num);


extern
void g_subprocess_force_exit (GSubprocess *subprocess);

extern
gboolean g_subprocess_wait (GSubprocess *subprocess,
                                                        GCancellable *cancellable,
                                                        GError **error);

extern
void g_subprocess_wait_async (GSubprocess *subprocess,
                                                        GCancellable *cancellable,
                                                        GAsyncReadyCallback callback,
                                                        gpointer user_data);

extern
gboolean g_subprocess_wait_finish (GSubprocess *subprocess,
                                                        GAsyncResult *result,
                                                        GError **error);

extern
gboolean g_subprocess_wait_check (GSubprocess *subprocess,
                                                        GCancellable *cancellable,
                                                        GError **error);

extern
void g_subprocess_wait_check_async (GSubprocess *subprocess,
                                                        GCancellable *cancellable,
                                                        GAsyncReadyCallback callback,
                                                        gpointer user_data);

extern
gboolean g_subprocess_wait_check_finish (GSubprocess *subprocess,
                                                        GAsyncResult *result,
                                                        GError **error);


extern
gint g_subprocess_get_status (GSubprocess *subprocess);

extern
gboolean g_subprocess_get_successful (GSubprocess *subprocess);

extern
gboolean g_subprocess_get_if_exited (GSubprocess *subprocess);

extern
gint g_subprocess_get_exit_status (GSubprocess *subprocess);

extern
gboolean g_subprocess_get_if_signaled (GSubprocess *subprocess);

extern
gint g_subprocess_get_term_sig (GSubprocess *subprocess);

extern
gboolean g_subprocess_communicate (GSubprocess *subprocess,
                                                        GBytes *stdin_buf,
                                                        GCancellable *cancellable,
                                                        GBytes **stdout_buf,
                                                        GBytes **stderr_buf,
                                                        GError **error);
extern
void g_subprocess_communicate_async (GSubprocess *subprocess,
                                                        GBytes *stdin_buf,
                                                        GCancellable *cancellable,
                                                        GAsyncReadyCallback callback,
                                                        gpointer user_data);

extern
gboolean g_subprocess_communicate_finish (GSubprocess *subprocess,
                                                        GAsyncResult *result,
                                                        GBytes **stdout_buf,
                                                        GBytes **stderr_buf,
                                                        GError **error);

extern
gboolean g_subprocess_communicate_utf8 (GSubprocess *subprocess,
                                                        const char *stdin_buf,
                                                        GCancellable *cancellable,
                                                        char **stdout_buf,
                                                        char **stderr_buf,
                                                        GError **error);
extern
void g_subprocess_communicate_utf8_async (GSubprocess *subprocess,
                                                        const char *stdin_buf,
                                                        GCancellable *cancellable,
                                                        GAsyncReadyCallback callback,
                                                        gpointer user_data);

extern
gboolean g_subprocess_communicate_utf8_finish (GSubprocess *subprocess,
                                                        GAsyncResult *result,
                                                        char **stdout_buf,
                                                        char **stderr_buf,
                                                        GError **error);

}
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsubprocesslauncher.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gsubprocesslauncher.h"
extern "C" {





extern
GType g_subprocess_launcher_get_type (void) __attribute__((__const__));

extern
GSubprocessLauncher * g_subprocess_launcher_new (GSubprocessFlags flags);

extern
GSubprocess * g_subprocess_launcher_spawn (GSubprocessLauncher *self,
                                                                        GError **error,
                                                                        const gchar *argv0,
                                                                        ...);

extern
GSubprocess * g_subprocess_launcher_spawnv (GSubprocessLauncher *self,
                                                                        const gchar * const *argv,
                                                                        GError **error);

extern
void g_subprocess_launcher_set_environ (GSubprocessLauncher *self,
                                                                        gchar **env);

extern
void g_subprocess_launcher_setenv (GSubprocessLauncher *self,
                                                                        const gchar *variable,
                                                                        const gchar *value,
                                                                        gboolean overwrite);

extern
void g_subprocess_launcher_unsetenv (GSubprocessLauncher *self,
                                                                        const gchar *variable);

extern
const gchar * g_subprocess_launcher_getenv (GSubprocessLauncher *self,
                                                                        const gchar *variable);

extern
void g_subprocess_launcher_set_cwd (GSubprocessLauncher *self,
                                                                        const gchar *cwd);
extern
void g_subprocess_launcher_set_flags (GSubprocessLauncher *self,
                                                                        GSubprocessFlags flags);



extern
void g_subprocess_launcher_set_stdin_file_path (GSubprocessLauncher *self,
                                                                        const gchar *path);
extern
void g_subprocess_launcher_take_stdin_fd (GSubprocessLauncher *self,
                                                                        gint fd);
extern
void g_subprocess_launcher_set_stdout_file_path (GSubprocessLauncher *self,
                                                                        const gchar *path);
extern
void g_subprocess_launcher_take_stdout_fd (GSubprocessLauncher *self,
                                                                        gint fd);
extern
void g_subprocess_launcher_set_stderr_file_path (GSubprocessLauncher *self,
                                                                        const gchar *path);
extern
void g_subprocess_launcher_take_stderr_fd (GSubprocessLauncher *self,
                                                                        gint fd);

extern
void g_subprocess_launcher_take_fd (GSubprocessLauncher *self,
                                                                        gint source_fd,
                                                                        gint target_fd);


extern
void g_subprocess_launcher_set_child_setup (GSubprocessLauncher *self,
                                                                        GSpawnChildSetupFunc child_setup,
                                                                        gpointer user_data,
                                                                        GDestroyNotify destroy_notify);


}
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtcpconnection.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtcpconnection.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtcpconnection.h"
typedef struct _GTcpConnectionPrivate GTcpConnectionPrivate;
typedef struct _GTcpConnectionClass GTcpConnectionClass;

struct _GTcpConnectionClass
{
 GSocketConnectionClass parent_class;
};

struct _GTcpConnection
{
 GSocketConnection parent_instance;
 GTcpConnectionPrivate *priv;
};

extern
GType g_tcp_connection_get_type (void) __attribute__((__const__));

extern
void g_tcp_connection_set_graceful_disconnect (GTcpConnection *connection,
        gboolean graceful_disconnect);
extern
gboolean g_tcp_connection_get_graceful_disconnect (GTcpConnection *connection);

}
# 135 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtcpwrapperconnection.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtcpwrapperconnection.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtcpwrapperconnection.h"
typedef struct _GTcpWrapperConnectionPrivate GTcpWrapperConnectionPrivate;
typedef struct _GTcpWrapperConnectionClass GTcpWrapperConnectionClass;

struct _GTcpWrapperConnectionClass
{
 GTcpConnectionClass parent_class;
};

struct _GTcpWrapperConnection
{
 GTcpConnection parent_instance;
 GTcpWrapperConnectionPrivate *priv;
};

extern
GType g_tcp_wrapper_connection_get_type (void) __attribute__((__const__));

extern
GSocketConnection *g_tcp_wrapper_connection_new (GIOStream *base_io_stream,
       GSocket *socket);
extern
GIOStream *g_tcp_wrapper_connection_get_base_io_stream (GTcpWrapperConnection *conn);

}
# 136 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtestdbus.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtestdbus.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtestdbus.h"
extern
GType g_test_dbus_get_type (void) __attribute__((__const__));

extern
GTestDBus * g_test_dbus_new (GTestDBusFlags flags);

extern
GTestDBusFlags g_test_dbus_get_flags (GTestDBus *self);

extern
const gchar * g_test_dbus_get_bus_address (GTestDBus *self);

extern
void g_test_dbus_add_service_dir (GTestDBus *self,
                                           const gchar *path);

extern
void g_test_dbus_up (GTestDBus *self);

extern
void g_test_dbus_stop (GTestDBus *self);

extern
void g_test_dbus_down (GTestDBus *self);

extern
void g_test_dbus_unset (void);

}
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gthemedicon.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gthemedicon.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gthemedicon.h"
typedef struct _GThemedIconClass GThemedIconClass;

extern
GType g_themed_icon_get_type (void) __attribute__((__const__));

extern
GIcon *g_themed_icon_new (const char *iconname);
extern
GIcon *g_themed_icon_new_with_default_fallbacks (const char *iconname);
extern
GIcon *g_themed_icon_new_from_names (char **iconnames,
                                                int len);
extern
void g_themed_icon_prepend_name (GThemedIcon *icon,
                                                const char *iconname);
extern
void g_themed_icon_append_name (GThemedIcon *icon,
                                                const char *iconname);

extern
const gchar* const * g_themed_icon_get_names (GThemedIcon *icon);

}
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gthreadedsocketservice.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gthreadedsocketservice.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gthreadedsocketservice.h"
typedef struct _GThreadedSocketServicePrivate GThreadedSocketServicePrivate;
typedef struct _GThreadedSocketServiceClass GThreadedSocketServiceClass;

struct _GThreadedSocketServiceClass
{
 GSocketServiceClass parent_class;

 gboolean (* run) (GThreadedSocketService *service,
                   GSocketConnection *connection,
                   GObject *source_object);


 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
};

struct _GThreadedSocketService
{
 GSocketService parent_instance;
 GThreadedSocketServicePrivate *priv;
};

extern
GType g_threaded_socket_service_get_type (void);
extern
GSocketService * g_threaded_socket_service_new (int max_threads);

}
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsbackend.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsbackend.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsbackend.h"
typedef struct _GTlsBackend GTlsBackend;
typedef struct _GTlsBackendInterface GTlsBackendInterface;
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsbackend.h"
struct _GTlsBackendInterface
{
 GTypeInterface g_iface;


 gboolean ( *supports_tls) (GTlsBackend *backend);
 GType ( *get_certificate_type) (void);
 GType ( *get_client_connection_type) (void);
 GType ( *get_server_connection_type) (void);
 GType ( *get_file_database_type) (void);
 GTlsDatabase * ( *get_default_database) (GTlsBackend *backend);
 gboolean ( *supports_dtls) (GTlsBackend *backend);
 GType ( *get_dtls_client_connection_type) (void);
 GType ( *get_dtls_server_connection_type) (void);
};

extern
GType g_tls_backend_get_type (void) __attribute__((__const__));

extern
GTlsBackend * g_tls_backend_get_default (void);

extern
GTlsDatabase * g_tls_backend_get_default_database (GTlsBackend *backend);

extern
gboolean g_tls_backend_supports_tls (GTlsBackend *backend);
extern
gboolean g_tls_backend_supports_dtls (GTlsBackend *backend);

extern
GType g_tls_backend_get_certificate_type (GTlsBackend *backend);
extern
GType g_tls_backend_get_client_connection_type (GTlsBackend *backend);
extern
GType g_tls_backend_get_server_connection_type (GTlsBackend *backend);
extern
GType g_tls_backend_get_file_database_type (GTlsBackend *backend);

extern
GType g_tls_backend_get_dtls_client_connection_type (GTlsBackend *backend);
extern
GType g_tls_backend_get_dtls_server_connection_type (GTlsBackend *backend);

}
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlscertificate.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlscertificate.h"
extern "C" {
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlscertificate.h"
typedef struct _GTlsCertificateClass GTlsCertificateClass;
typedef struct _GTlsCertificatePrivate GTlsCertificatePrivate;

struct _GTlsCertificate {
 GObject parent_instance;

 GTlsCertificatePrivate *priv;
};

struct _GTlsCertificateClass
{
 GObjectClass parent_class;

 GTlsCertificateFlags (* verify) (GTlsCertificate *cert,
       GSocketConnectable *identity,
       GTlsCertificate *trusted_ca);



 gpointer padding[8];
};

extern
GType g_tls_certificate_get_type (void) __attribute__((__const__));

extern
GTlsCertificate *g_tls_certificate_new_from_pem (const gchar *data,
          gssize length,
          GError **error);

extern
GTlsCertificate *g_tls_certificate_new_from_file (const gchar *file,
          GError **error);
extern
GTlsCertificate *g_tls_certificate_new_from_files (const gchar *cert_file,
          const gchar *key_file,
          GError **error);
extern
GList *g_tls_certificate_list_new_from_file (const gchar *file,
          GError **error);

extern
GTlsCertificate *g_tls_certificate_get_issuer (GTlsCertificate *cert);

extern
GTlsCertificateFlags g_tls_certificate_verify (GTlsCertificate *cert,
          GSocketConnectable *identity,
          GTlsCertificate *trusted_ca);

extern
gboolean g_tls_certificate_is_same (GTlsCertificate *cert_one,
                                                           GTlsCertificate *cert_two);

}
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsclientconnection.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsclientconnection.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsconnection.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsconnection.h"
extern "C" {
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsconnection.h"
typedef struct _GTlsConnectionClass GTlsConnectionClass;
typedef struct _GTlsConnectionPrivate GTlsConnectionPrivate;

struct _GTlsConnection {
 GIOStream parent_instance;

 GTlsConnectionPrivate *priv;
};

struct _GTlsConnectionClass
{
 GIOStreamClass parent_class;


 gboolean ( *accept_certificate) (GTlsConnection *connection,
        GTlsCertificate *peer_cert,
        GTlsCertificateFlags errors);


 gboolean ( *handshake ) (GTlsConnection *conn,
     GCancellable *cancellable,
     GError **error);

 void ( *handshake_async ) (GTlsConnection *conn,
     int io_priority,
     GCancellable *cancellable,
     GAsyncReadyCallback callback,
     gpointer user_data);
 gboolean ( *handshake_finish ) (GTlsConnection *conn,
     GAsyncResult *result,
     GError **error);



 gpointer padding[8];
};

extern
GType g_tls_connection_get_type (void) __attribute__((__const__));

__attribute__((__deprecated__)) extern
void g_tls_connection_set_use_system_certdb (GTlsConnection *conn,
                                                                   gboolean use_system_certdb);
__attribute__((__deprecated__)) extern
gboolean g_tls_connection_get_use_system_certdb (GTlsConnection *conn);

extern
void g_tls_connection_set_database (GTlsConnection *conn,
           GTlsDatabase *database);
extern
GTlsDatabase * g_tls_connection_get_database (GTlsConnection *conn);

extern
void g_tls_connection_set_certificate (GTlsConnection *conn,
                                                                   GTlsCertificate *certificate);
extern
GTlsCertificate *g_tls_connection_get_certificate (GTlsConnection *conn);

extern
void g_tls_connection_set_interaction (GTlsConnection *conn,
                                                                   GTlsInteraction *interaction);
extern
GTlsInteraction * g_tls_connection_get_interaction (GTlsConnection *conn);

extern
GTlsCertificate *g_tls_connection_get_peer_certificate (GTlsConnection *conn);
extern
GTlsCertificateFlags g_tls_connection_get_peer_certificate_errors (GTlsConnection *conn);

extern
void g_tls_connection_set_require_close_notify (GTlsConnection *conn,
           gboolean require_close_notify);
extern
gboolean g_tls_connection_get_require_close_notify (GTlsConnection *conn);

extern
void g_tls_connection_set_rehandshake_mode (GTlsConnection *conn,
           GTlsRehandshakeMode mode);
extern
GTlsRehandshakeMode g_tls_connection_get_rehandshake_mode (GTlsConnection *conn);

extern
gboolean g_tls_connection_handshake (GTlsConnection *conn,
           GCancellable *cancellable,
           GError **error);

extern
void g_tls_connection_handshake_async (GTlsConnection *conn,
           int io_priority,
           GCancellable *cancellable,
           GAsyncReadyCallback callback,
           gpointer user_data);
extern
gboolean g_tls_connection_handshake_finish (GTlsConnection *conn,
           GAsyncResult *result,
           GError **error);
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsconnection.h"
extern
GQuark g_tls_error_quark (void);



extern
gboolean g_tls_connection_emit_accept_certificate (GTlsConnection *conn,
           GTlsCertificate *peer_cert,
           GTlsCertificateFlags errors);

}
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsclientconnection.h" 2

extern "C" {






typedef struct _GTlsClientConnectionInterface GTlsClientConnectionInterface;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsclientconnection.h"
struct _GTlsClientConnectionInterface
{
 GTypeInterface g_iface;

 void ( *copy_session_state ) (GTlsClientConnection *conn,
                                       GTlsClientConnection *source);
};

extern
GType g_tls_client_connection_get_type (void) __attribute__((__const__));

extern
GIOStream * g_tls_client_connection_new (GIOStream *base_io_stream,
           GSocketConnectable *server_identity,
           GError **error);

extern
GTlsCertificateFlags g_tls_client_connection_get_validation_flags (GTlsClientConnection *conn);
extern
void g_tls_client_connection_set_validation_flags (GTlsClientConnection *conn,
           GTlsCertificateFlags flags);
extern
GSocketConnectable *g_tls_client_connection_get_server_identity (GTlsClientConnection *conn);
extern
void g_tls_client_connection_set_server_identity (GTlsClientConnection *conn,
           GSocketConnectable *identity);
extern
gboolean g_tls_client_connection_get_use_ssl3 (GTlsClientConnection *conn);
extern
void g_tls_client_connection_set_use_ssl3 (GTlsClientConnection *conn,
           gboolean use_ssl3);
extern
GList * g_tls_client_connection_get_accepted_cas (GTlsClientConnection *conn);

extern
void g_tls_client_connection_copy_session_state (GTlsClientConnection *conn,
                                                                   GTlsClientConnection *source);

}
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsdatabase.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsdatabase.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsdatabase.h"
typedef struct _GTlsDatabaseClass GTlsDatabaseClass;
typedef struct _GTlsDatabasePrivate GTlsDatabasePrivate;

struct _GTlsDatabase
{
 GObject parent_instance;

 GTlsDatabasePrivate *priv;
};

struct _GTlsDatabaseClass
{
 GObjectClass parent_class;



 GTlsCertificateFlags (*verify_chain) (GTlsDatabase *self,
                                                                GTlsCertificate *chain,
                                                                const gchar *purpose,
                                                                GSocketConnectable *identity,
                                                                GTlsInteraction *interaction,
                                                                GTlsDatabaseVerifyFlags flags,
                                                                GCancellable *cancellable,
                                                                GError **error);

 void (*verify_chain_async) (GTlsDatabase *self,
                                                                GTlsCertificate *chain,
                                                                const gchar *purpose,
                                                                GSocketConnectable *identity,
                                                                GTlsInteraction *interaction,
                                                                GTlsDatabaseVerifyFlags flags,
                                                                GCancellable *cancellable,
                                                                GAsyncReadyCallback callback,
                                                                gpointer user_data);

 GTlsCertificateFlags (*verify_chain_finish) (GTlsDatabase *self,
                                                                GAsyncResult *result,
                                                                GError **error);

 gchar* (*create_certificate_handle) (GTlsDatabase *self,
                                                                GTlsCertificate *certificate);

 GTlsCertificate* (*lookup_certificate_for_handle) (GTlsDatabase *self,
                                                                const gchar *handle,
                                                                GTlsInteraction *interaction,
                                                                GTlsDatabaseLookupFlags flags,
                                                                GCancellable *cancellable,
                                                                GError **error);

 void (*lookup_certificate_for_handle_async) (GTlsDatabase *self,
                                                                const gchar *handle,
                                                                GTlsInteraction *interaction,
                                                                GTlsDatabaseLookupFlags flags,
                                                                GCancellable *cancellable,
                                                                GAsyncReadyCallback callback,
                                                                gpointer user_data);

 GTlsCertificate* (*lookup_certificate_for_handle_finish) (GTlsDatabase *self,
                                                                GAsyncResult *result,
                                                                GError **error);

 GTlsCertificate* (*lookup_certificate_issuer) (GTlsDatabase *self,
                                                                GTlsCertificate *certificate,
                                                                GTlsInteraction *interaction,
                                                                GTlsDatabaseLookupFlags flags,
                                                                GCancellable *cancellable,
                                                                GError **error);

 void (*lookup_certificate_issuer_async) (GTlsDatabase *self,
                                                                GTlsCertificate *certificate,
                                                                GTlsInteraction *interaction,
                                                                GTlsDatabaseLookupFlags flags,
                                                                GCancellable *cancellable,
                                                                GAsyncReadyCallback callback,
                                                                gpointer user_data);

 GTlsCertificate* (*lookup_certificate_issuer_finish) (GTlsDatabase *self,
                                                                GAsyncResult *result,
                                                                GError **error);

 GList* (*lookup_certificates_issued_by) (GTlsDatabase *self,
                                                                GByteArray *issuer_raw_dn,
                                                                GTlsInteraction *interaction,
                                                                GTlsDatabaseLookupFlags flags,
                                                                GCancellable *cancellable,
                                                                GError **error);

 void (*lookup_certificates_issued_by_async) (GTlsDatabase *self,
                                                                GByteArray *issuer_raw_dn,
                                                                GTlsInteraction *interaction,
                                                                GTlsDatabaseLookupFlags flags,
                                                                GCancellable *cancellable,
                                                                GAsyncReadyCallback callback,
                                                                gpointer user_data);

 GList* (*lookup_certificates_issued_by_finish) (GTlsDatabase *self,
                                                                GAsyncResult *result,
                                                                GError **error);



 gpointer padding[16];
};

extern
GType g_tls_database_get_type (void) __attribute__((__const__));

extern
GTlsCertificateFlags g_tls_database_verify_chain (GTlsDatabase *self,
                                                                          GTlsCertificate *chain,
                                                                          const gchar *purpose,
                                                                          GSocketConnectable *identity,
                                                                          GTlsInteraction *interaction,
                                                                          GTlsDatabaseVerifyFlags flags,
                                                                          GCancellable *cancellable,
                                                                          GError **error);

extern
void g_tls_database_verify_chain_async (GTlsDatabase *self,
                                                                          GTlsCertificate *chain,
                                                                          const gchar *purpose,
                                                                          GSocketConnectable *identity,
                                                                          GTlsInteraction *interaction,
                                                                          GTlsDatabaseVerifyFlags flags,
                                                                          GCancellable *cancellable,
                                                                          GAsyncReadyCallback callback,
                                                                          gpointer user_data);

extern
GTlsCertificateFlags g_tls_database_verify_chain_finish (GTlsDatabase *self,
                                                                          GAsyncResult *result,
                                                                          GError **error);

extern
gchar* g_tls_database_create_certificate_handle (GTlsDatabase *self,
                                                                          GTlsCertificate *certificate);

extern
GTlsCertificate* g_tls_database_lookup_certificate_for_handle (GTlsDatabase *self,
                                                                          const gchar *handle,
                                                                          GTlsInteraction *interaction,
                                                                          GTlsDatabaseLookupFlags flags,
                                                                          GCancellable *cancellable,
                                                                          GError **error);

extern
void g_tls_database_lookup_certificate_for_handle_async (GTlsDatabase *self,
                                                                          const gchar *handle,
                                                                          GTlsInteraction *interaction,
                                                                          GTlsDatabaseLookupFlags flags,
                                                                          GCancellable *cancellable,
                                                                          GAsyncReadyCallback callback,
                                                                          gpointer user_data);

extern
GTlsCertificate* g_tls_database_lookup_certificate_for_handle_finish (GTlsDatabase *self,
                                                                          GAsyncResult *result,
                                                                          GError **error);

extern
GTlsCertificate* g_tls_database_lookup_certificate_issuer (GTlsDatabase *self,
                                                                          GTlsCertificate *certificate,
                                                                          GTlsInteraction *interaction,
                                                                          GTlsDatabaseLookupFlags flags,
                                                                          GCancellable *cancellable,
                                                                          GError **error);

extern
void g_tls_database_lookup_certificate_issuer_async (GTlsDatabase *self,
                                                                          GTlsCertificate *certificate,
                                                                          GTlsInteraction *interaction,
                                                                          GTlsDatabaseLookupFlags flags,
                                                                          GCancellable *cancellable,
                                                                          GAsyncReadyCallback callback,
                                                                          gpointer user_data);

extern
GTlsCertificate* g_tls_database_lookup_certificate_issuer_finish (GTlsDatabase *self,
                                                                          GAsyncResult *result,
                                                                          GError **error);

extern
GList* g_tls_database_lookup_certificates_issued_by (GTlsDatabase *self,
                                                                          GByteArray *issuer_raw_dn,
                                                                          GTlsInteraction *interaction,
                                                                          GTlsDatabaseLookupFlags flags,
                                                                          GCancellable *cancellable,
                                                                          GError **error);

extern
void g_tls_database_lookup_certificates_issued_by_async (GTlsDatabase *self,
                                                                           GByteArray *issuer_raw_dn,
                                                                           GTlsInteraction *interaction,
                                                                           GTlsDatabaseLookupFlags flags,
                                                                           GCancellable *cancellable,
                                                                           GAsyncReadyCallback callback,
                                                                           gpointer user_data);

extern
GList* g_tls_database_lookup_certificates_issued_by_finish (GTlsDatabase *self,
                                                                           GAsyncResult *result,
                                                                           GError **error);

}
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsfiledatabase.h" 1
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsfiledatabase.h"
extern "C" {






typedef struct _GTlsFileDatabaseInterface GTlsFileDatabaseInterface;
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsfiledatabase.h"
struct _GTlsFileDatabaseInterface
{
 GTypeInterface g_iface;



 gpointer padding[8];
};

extern
GType g_tls_file_database_get_type (void) __attribute__((__const__));

extern
GTlsDatabase* g_tls_file_database_new (const gchar *anchors,
                                                                       GError **error);

}
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsinteraction.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsinteraction.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsinteraction.h"
typedef struct _GTlsInteractionClass GTlsInteractionClass;
typedef struct _GTlsInteractionPrivate GTlsInteractionPrivate;

struct _GTlsInteraction
{

 GObject parent_instance;
 GTlsInteractionPrivate *priv;
};

struct _GTlsInteractionClass
{

 GObjectClass parent_class;


 GTlsInteractionResult (* ask_password) (GTlsInteraction *interaction,
                                                 GTlsPassword *password,
                                                 GCancellable *cancellable,
                                                 GError **error);

 void (* ask_password_async) (GTlsInteraction *interaction,
                                                 GTlsPassword *password,
                                                 GCancellable *cancellable,
                                                 GAsyncReadyCallback callback,
                                                 gpointer user_data);

 GTlsInteractionResult (* ask_password_finish) (GTlsInteraction *interaction,
                                                 GAsyncResult *result,
                                                 GError **error);

 GTlsInteractionResult (* request_certificate) (GTlsInteraction *interaction,
                                                        GTlsConnection *connection,
                                                        GTlsCertificateRequestFlags flags,
                                                        GCancellable *cancellable,
                                                        GError **error);

 void (* request_certificate_async) (GTlsInteraction *interaction,
                                                        GTlsConnection *connection,
                                                        GTlsCertificateRequestFlags flags,
                                                        GCancellable *cancellable,
                                                        GAsyncReadyCallback callback,
                                                        gpointer user_data);

 GTlsInteractionResult (* request_certificate_finish) (GTlsInteraction *interaction,
                                                        GAsyncResult *result,
                                                        GError **error);



 gpointer padding[21];
};

extern
GType g_tls_interaction_get_type (void) __attribute__((__const__));

extern
GTlsInteractionResult g_tls_interaction_invoke_ask_password (GTlsInteraction *interaction,
                                                             GTlsPassword *password,
                                                             GCancellable *cancellable,
                                                             GError **error);

extern
GTlsInteractionResult g_tls_interaction_ask_password (GTlsInteraction *interaction,
                                                             GTlsPassword *password,
                                                             GCancellable *cancellable,
                                                             GError **error);

extern
void g_tls_interaction_ask_password_async (GTlsInteraction *interaction,
                                                             GTlsPassword *password,
                                                             GCancellable *cancellable,
                                                             GAsyncReadyCallback callback,
                                                             gpointer user_data);

extern
GTlsInteractionResult g_tls_interaction_ask_password_finish (GTlsInteraction *interaction,
                                                             GAsyncResult *result,
                                                             GError **error);

extern
GTlsInteractionResult g_tls_interaction_invoke_request_certificate (GTlsInteraction *interaction,
                                                                    GTlsConnection *connection,
                                                                    GTlsCertificateRequestFlags flags,
                                                                    GCancellable *cancellable,
                                                                    GError **error);

extern
GTlsInteractionResult g_tls_interaction_request_certificate (GTlsInteraction *interaction,
                                                                    GTlsConnection *connection,
                                                                    GTlsCertificateRequestFlags flags,
                                                                    GCancellable *cancellable,
                                                                    GError **error);

extern
void g_tls_interaction_request_certificate_async (GTlsInteraction *interaction,
                                                                    GTlsConnection *connection,
                                                                    GTlsCertificateRequestFlags flags,
                                                                    GCancellable *cancellable,
                                                                    GAsyncReadyCallback callback,
                                                                    gpointer user_data);

extern
GTlsInteractionResult g_tls_interaction_request_certificate_finish (GTlsInteraction *interaction,
                                                                    GAsyncResult *result,
                                                                    GError **error);

}
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsserverconnection.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsserverconnection.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsserverconnection.h"
typedef struct _GTlsServerConnectionInterface GTlsServerConnectionInterface;
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlsserverconnection.h"
struct _GTlsServerConnectionInterface
{
 GTypeInterface g_iface;

};

extern
GType g_tls_server_connection_get_type (void) __attribute__((__const__));

extern
GIOStream * g_tls_server_connection_new (GIOStream *base_io_stream,
        GTlsCertificate *certificate,
        GError **error);

}
# 147 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlspassword.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlspassword.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlspassword.h"
typedef struct _GTlsPasswordClass GTlsPasswordClass;
typedef struct _GTlsPasswordPrivate GTlsPasswordPrivate;

struct _GTlsPassword
{
 GObject parent_instance;

 GTlsPasswordPrivate *priv;
};
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gtlspassword.h"
struct _GTlsPasswordClass
{
 GObjectClass parent_class;



 const guchar * ( *get_value) (GTlsPassword *password,
                                             gsize *length);

 void ( *set_value) (GTlsPassword *password,
                                             guchar *value,
                                             gssize length,
                                             GDestroyNotify destroy);

 const gchar* ( *get_default_warning) (GTlsPassword *password);



 gpointer padding[4];
};

extern
GType g_tls_password_get_type (void) __attribute__((__const__));

extern
GTlsPassword * g_tls_password_new (GTlsPasswordFlags flags,
                                                     const gchar *description);

extern
const guchar * g_tls_password_get_value (GTlsPassword *password,
                                                     gsize *length);
extern
void g_tls_password_set_value (GTlsPassword *password,
                                                     const guchar *value,
                                                     gssize length);
extern
void g_tls_password_set_value_full (GTlsPassword *password,
                                                     guchar *value,
                                                     gssize length,
                                                     GDestroyNotify destroy);

extern
GTlsPasswordFlags g_tls_password_get_flags (GTlsPassword *password);
extern
void g_tls_password_set_flags (GTlsPassword *password,
                                                     GTlsPasswordFlags flags);

extern
const gchar* g_tls_password_get_description (GTlsPassword *password);
extern
void g_tls_password_set_description (GTlsPassword *password,
                                                     const gchar *description);

extern
const gchar * g_tls_password_get_warning (GTlsPassword *password);
extern
void g_tls_password_set_warning (GTlsPassword *password,
                                                     const gchar *warning);

}
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gvfs.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gvfs.h"
extern "C" {
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gvfs.h"
typedef struct _GVfsClass GVfsClass;

struct _GVfs
{
 GObject parent_instance;
};

struct _GVfsClass
{
 GObjectClass parent_class;



 gboolean (* is_active) (GVfs *vfs);
 GFile * (* get_file_for_path) (GVfs *vfs,
                                                      const char *path);
 GFile * (* get_file_for_uri) (GVfs *vfs,
                                                      const char *uri);
 const gchar * const * (* get_supported_uri_schemes) (GVfs *vfs);
 GFile * (* parse_name) (GVfs *vfs,
                                                      const char *parse_name);


 void (* local_file_add_info) (GVfs *vfs,
            const char *filename,
            guint64 device,
            GFileAttributeMatcher *attribute_matcher,
            GFileInfo *info,
            GCancellable *cancellable,
            gpointer *extra_data,
            GDestroyNotify *free_extra_data);
 void (* add_writable_namespaces) (GVfs *vfs,
            GFileAttributeInfoList *list);
 gboolean (* local_file_set_attributes) (GVfs *vfs,
            const char *filename,
            GFileInfo *info,
                                                      GFileQueryInfoFlags flags,
                                                      GCancellable *cancellable,
            GError **error);
 void (* local_file_removed) (GVfs *vfs,
            const char *filename);
 void (* local_file_moved) (GVfs *vfs,
            const char *source,
            const char *dest);
 GIcon * (* deserialize_icon) (GVfs *vfs,
                                                      GVariant *value);

 void (*_g_reserved1) (void);
 void (*_g_reserved2) (void);
 void (*_g_reserved3) (void);
 void (*_g_reserved4) (void);
 void (*_g_reserved5) (void);
 void (*_g_reserved6) (void);
};

extern
GType g_vfs_get_type (void) __attribute__((__const__));

extern
gboolean g_vfs_is_active (GVfs *vfs);
extern
GFile * g_vfs_get_file_for_path (GVfs *vfs,
                                                      const char *path);
extern
GFile * g_vfs_get_file_for_uri (GVfs *vfs,
                                                      const char *uri);
extern
const gchar* const * g_vfs_get_supported_uri_schemes (GVfs *vfs);

extern
GFile * g_vfs_parse_name (GVfs *vfs,
                                                      const char *parse_name);

extern
GVfs * g_vfs_get_default (void);
extern
GVfs * g_vfs_get_local (void);

}
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gvolume.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gvolume.h"
extern "C" {
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gvolume.h"
typedef struct _GVolumeIface GVolumeIface;

struct _GVolumeIface
{
 GTypeInterface g_iface;



 void (* changed) (GVolume *volume);
 void (* removed) (GVolume *volume);



 char * (* get_name) (GVolume *volume);
 GIcon * (* get_icon) (GVolume *volume);
 char * (* get_uuid) (GVolume *volume);
 GDrive * (* get_drive) (GVolume *volume);
 GMount * (* get_mount) (GVolume *volume);
 gboolean (* can_mount) (GVolume *volume);
 gboolean (* can_eject) (GVolume *volume);
 void (* mount_fn) (GVolume *volume,
                                        GMountMountFlags flags,
                                        GMountOperation *mount_operation,
                                        GCancellable *cancellable,
                                        GAsyncReadyCallback callback,
                                        gpointer user_data);
 gboolean (* mount_finish) (GVolume *volume,
                                        GAsyncResult *result,
                                        GError **error);
 void (* eject) (GVolume *volume,
                                        GMountUnmountFlags flags,
                                        GCancellable *cancellable,
                                        GAsyncReadyCallback callback,
                                        gpointer user_data);
 gboolean (* eject_finish) (GVolume *volume,
                                        GAsyncResult *result,
                                        GError **error);

 char * (* get_identifier) (GVolume *volume,
                                        const char *kind);
 char ** (* enumerate_identifiers) (GVolume *volume);

 gboolean (* should_automount) (GVolume *volume);

 GFile * (* get_activation_root) (GVolume *volume);

 void (* eject_with_operation) (GVolume *volume,
                                            GMountUnmountFlags flags,
                                            GMountOperation *mount_operation,
                                            GCancellable *cancellable,
                                            GAsyncReadyCallback callback,
                                            gpointer user_data);
 gboolean (* eject_with_operation_finish) (GVolume *volume,
                                            GAsyncResult *result,
                                            GError **error);

 const gchar * (* get_sort_key) (GVolume *volume);
 GIcon * (* get_symbolic_icon) (GVolume *volume);
};

extern
GType g_volume_get_type (void) __attribute__((__const__));

extern
char * g_volume_get_name (GVolume *volume);
extern
GIcon * g_volume_get_icon (GVolume *volume);
extern
GIcon * g_volume_get_symbolic_icon (GVolume *volume);
extern
char * g_volume_get_uuid (GVolume *volume);
extern
GDrive * g_volume_get_drive (GVolume *volume);
extern
GMount * g_volume_get_mount (GVolume *volume);
extern
gboolean g_volume_can_mount (GVolume *volume);
extern
gboolean g_volume_can_eject (GVolume *volume);
extern
gboolean g_volume_should_automount (GVolume *volume);
extern
void g_volume_mount (GVolume *volume,
     GMountMountFlags flags,
     GMountOperation *mount_operation,
     GCancellable *cancellable,
     GAsyncReadyCallback callback,
     gpointer user_data);
extern
gboolean g_volume_mount_finish (GVolume *volume,
     GAsyncResult *result,
     GError **error);
__attribute__((__deprecated__("Use '" "g_volume_eject_with_operation" "' instead"))) extern
void g_volume_eject (GVolume *volume,
                                        GMountUnmountFlags flags,
                                        GCancellable *cancellable,
                                        GAsyncReadyCallback callback,
                                        gpointer user_data);

__attribute__((__deprecated__("Use '" "g_volume_eject_with_operation_finish" "' instead"))) extern
gboolean g_volume_eject_finish (GVolume *volume,
                                        GAsyncResult *result,
                                        GError **error);
extern
char * g_volume_get_identifier (GVolume *volume,
     const char *kind);
extern
char ** g_volume_enumerate_identifiers (GVolume *volume);

extern
GFile * g_volume_get_activation_root (GVolume *volume);

extern
void g_volume_eject_with_operation (GVolume *volume,
                                              GMountUnmountFlags flags,
                                              GMountOperation *mount_operation,
                                              GCancellable *cancellable,
                                              GAsyncReadyCallback callback,
                                              gpointer user_data);
extern
gboolean g_volume_eject_with_operation_finish (GVolume *volume,
                                              GAsyncResult *result,
                                              GError **error);

extern
const gchar *g_volume_get_sort_key (GVolume *volume);

}
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gzlibcompressor.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gzlibcompressor.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gzlibcompressor.h"
typedef struct _GZlibCompressorClass GZlibCompressorClass;

struct _GZlibCompressorClass
{
 GObjectClass parent_class;
};

extern
GType g_zlib_compressor_get_type (void) __attribute__((__const__));

extern
GZlibCompressor *g_zlib_compressor_new (GZlibCompressorFormat format,
    int level);

extern
GFileInfo *g_zlib_compressor_get_file_info (GZlibCompressor *compressor);
extern
void g_zlib_compressor_set_file_info (GZlibCompressor *compressor,
                                                 GFileInfo *file_info);

}
# 152 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gzlibdecompressor.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gzlibdecompressor.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gzlibdecompressor.h"
typedef struct _GZlibDecompressorClass GZlibDecompressorClass;

struct _GZlibDecompressorClass
{
 GObjectClass parent_class;
};

extern
GType g_zlib_decompressor_get_type (void) __attribute__((__const__));

extern
GZlibDecompressor *g_zlib_decompressor_new (GZlibCompressorFormat format);

extern
GFileInfo *g_zlib_decompressor_get_file_info (GZlibDecompressor *decompressor);

}
# 153 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusinterface.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusinterface.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusinterface.h"
typedef struct _GDBusInterfaceIface GDBusInterfaceIface;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusinterface.h"
struct _GDBusInterfaceIface
{
 GTypeInterface parent_iface;


 GDBusInterfaceInfo *(*get_info) (GDBusInterface *interface_);
 GDBusObject *(*get_object) (GDBusInterface *interface_);
 void (*set_object) (GDBusInterface *interface_,
                                      GDBusObject *object);
 GDBusObject *(*dup_object) (GDBusInterface *interface_);
};

extern
GType g_dbus_interface_get_type (void) __attribute__((__const__));
extern
GDBusInterfaceInfo *g_dbus_interface_get_info (GDBusInterface *interface_);
extern
GDBusObject *g_dbus_interface_get_object (GDBusInterface *interface_);
extern
void g_dbus_interface_set_object (GDBusInterface *interface_,
                                                        GDBusObject *object);
extern
GDBusObject *g_dbus_interface_dup_object (GDBusInterface *interface_);

}
# 154 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusinterfaceskeleton.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusinterfaceskeleton.h"
extern "C" {
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusinterfaceskeleton.h"
typedef struct _GDBusInterfaceSkeletonClass GDBusInterfaceSkeletonClass;
typedef struct _GDBusInterfaceSkeletonPrivate GDBusInterfaceSkeletonPrivate;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusinterfaceskeleton.h"
struct _GDBusInterfaceSkeleton
{

 GObject parent_instance;
 GDBusInterfaceSkeletonPrivate *priv;
};
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusinterfaceskeleton.h"
struct _GDBusInterfaceSkeletonClass
{
 GObjectClass parent_class;


 GDBusInterfaceInfo *(*get_info) (GDBusInterfaceSkeleton *interface_);
 GDBusInterfaceVTable *(*get_vtable) (GDBusInterfaceSkeleton *interface_);
 GVariant *(*get_properties) (GDBusInterfaceSkeleton *interface_);
 void (*flush) (GDBusInterfaceSkeleton *interface_);


 gpointer vfunc_padding[8];



 gboolean (*g_authorize_method) (GDBusInterfaceSkeleton *interface_,
                                 GDBusMethodInvocation *invocation);


 gpointer signal_padding[8];
};

extern
GType g_dbus_interface_skeleton_get_type (void) __attribute__((__const__));
extern
GDBusInterfaceSkeletonFlags g_dbus_interface_skeleton_get_flags (GDBusInterfaceSkeleton *interface_);
extern
void g_dbus_interface_skeleton_set_flags (GDBusInterfaceSkeleton *interface_,
                                                                       GDBusInterfaceSkeletonFlags flags);
extern
GDBusInterfaceInfo *g_dbus_interface_skeleton_get_info (GDBusInterfaceSkeleton *interface_);
extern
GDBusInterfaceVTable *g_dbus_interface_skeleton_get_vtable (GDBusInterfaceSkeleton *interface_);
extern
GVariant *g_dbus_interface_skeleton_get_properties (GDBusInterfaceSkeleton *interface_);
extern
void g_dbus_interface_skeleton_flush (GDBusInterfaceSkeleton *interface_);

extern
gboolean g_dbus_interface_skeleton_export (GDBusInterfaceSkeleton *interface_,
                                                                       GDBusConnection *connection,
                                                                       const gchar *object_path,
                                                                       GError **error);
extern
void g_dbus_interface_skeleton_unexport (GDBusInterfaceSkeleton *interface_);
extern
void g_dbus_interface_skeleton_unexport_from_connection (GDBusInterfaceSkeleton *interface_,
                                                                       GDBusConnection *connection);

extern
GDBusConnection *g_dbus_interface_skeleton_get_connection (GDBusInterfaceSkeleton *interface_);
extern
GList *g_dbus_interface_skeleton_get_connections (GDBusInterfaceSkeleton *interface_);
extern
gboolean g_dbus_interface_skeleton_has_connection (GDBusInterfaceSkeleton *interface_,
                                                                       GDBusConnection *connection);
extern
const gchar *g_dbus_interface_skeleton_get_object_path (GDBusInterfaceSkeleton *interface_);

}
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobject.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobject.h"
extern "C" {






typedef struct _GDBusObjectIface GDBusObjectIface;
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobject.h"
struct _GDBusObjectIface
{
 GTypeInterface parent_iface;


 const gchar *(*get_object_path) (GDBusObject *object);
 GList *(*get_interfaces) (GDBusObject *object);
 GDBusInterface *(*get_interface) (GDBusObject *object,
                                      const gchar *interface_name);


 void (*interface_added) (GDBusObject *object,
                            GDBusInterface *interface_);
 void (*interface_removed) (GDBusObject *object,
                            GDBusInterface *interface_);

};

extern
GType g_dbus_object_get_type (void) __attribute__((__const__));
extern
const gchar *g_dbus_object_get_object_path (GDBusObject *object);
extern
GList *g_dbus_object_get_interfaces (GDBusObject *object);
extern
GDBusInterface *g_dbus_object_get_interface (GDBusObject *object,
                                               const gchar *interface_name);

}
# 156 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectskeleton.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectskeleton.h"
extern "C" {
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectskeleton.h"
typedef struct _GDBusObjectSkeletonClass GDBusObjectSkeletonClass;
typedef struct _GDBusObjectSkeletonPrivate GDBusObjectSkeletonPrivate;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectskeleton.h"
struct _GDBusObjectSkeleton
{

 GObject parent_instance;
 GDBusObjectSkeletonPrivate *priv;
};
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectskeleton.h"
struct _GDBusObjectSkeletonClass
{
 GObjectClass parent_class;


 gboolean (*authorize_method) (GDBusObjectSkeleton *object,
                               GDBusInterfaceSkeleton *interface_,
                               GDBusMethodInvocation *invocation);


 gpointer padding[8];
};

extern
GType g_dbus_object_skeleton_get_type (void) __attribute__((__const__));
extern
GDBusObjectSkeleton *g_dbus_object_skeleton_new (const gchar *object_path);
extern
void g_dbus_object_skeleton_flush (GDBusObjectSkeleton *object);
extern
void g_dbus_object_skeleton_add_interface (GDBusObjectSkeleton *object,
                                                                      GDBusInterfaceSkeleton *interface_);
extern
void g_dbus_object_skeleton_remove_interface (GDBusObjectSkeleton *object,
                                                                      GDBusInterfaceSkeleton *interface_);
extern
void g_dbus_object_skeleton_remove_interface_by_name (GDBusObjectSkeleton *object,
                                                                      const gchar *interface_name);
extern
void g_dbus_object_skeleton_set_object_path (GDBusObjectSkeleton *object,
                                                                      const gchar *object_path);

}
# 157 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectproxy.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectproxy.h"
extern "C" {
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectproxy.h"
typedef struct _GDBusObjectProxyClass GDBusObjectProxyClass;
typedef struct _GDBusObjectProxyPrivate GDBusObjectProxyPrivate;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectproxy.h"
struct _GDBusObjectProxy
{

 GObject parent_instance;
 GDBusObjectProxyPrivate *priv;
};
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectproxy.h"
struct _GDBusObjectProxyClass
{
 GObjectClass parent_class;


 gpointer padding[8];
};

extern
GType g_dbus_object_proxy_get_type (void) __attribute__((__const__));
extern
GDBusObjectProxy *g_dbus_object_proxy_new (GDBusConnection *connection,
                                                     const gchar *object_path);
extern
GDBusConnection *g_dbus_object_proxy_get_connection (GDBusObjectProxy *proxy);

}
# 158 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanager.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanager.h"
extern "C" {






typedef struct _GDBusObjectManagerIface GDBusObjectManagerIface;
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanager.h"
struct _GDBusObjectManagerIface
{
 GTypeInterface parent_iface;


 const gchar *(*get_object_path) (GDBusObjectManager *manager);
 GList *(*get_objects) (GDBusObjectManager *manager);
 GDBusObject *(*get_object) (GDBusObjectManager *manager,
                                      const gchar *object_path);
 GDBusInterface *(*get_interface) (GDBusObjectManager *manager,
                                      const gchar *object_path,
                                      const gchar *interface_name);


 void (*object_added) (GDBusObjectManager *manager,
                                          GDBusObject *object);
 void (*object_removed) (GDBusObjectManager *manager,
                                          GDBusObject *object);

 void (*interface_added) (GDBusObjectManager *manager,
                                          GDBusObject *object,
                                          GDBusInterface *interface_);
 void (*interface_removed) (GDBusObjectManager *manager,
                                          GDBusObject *object,
                                          GDBusInterface *interface_);
};

extern
GType g_dbus_object_manager_get_type (void) __attribute__((__const__));
extern
const gchar *g_dbus_object_manager_get_object_path (GDBusObjectManager *manager);
extern
GList *g_dbus_object_manager_get_objects (GDBusObjectManager *manager);
extern
GDBusObject *g_dbus_object_manager_get_object (GDBusObjectManager *manager,
                                                       const gchar *object_path);
extern
GDBusInterface *g_dbus_object_manager_get_interface (GDBusObjectManager *manager,
                                                       const gchar *object_path,
                                                       const gchar *interface_name);

}
# 159 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerclient.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerclient.h"
extern "C" {
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerclient.h"
typedef struct _GDBusObjectManagerClientClass GDBusObjectManagerClientClass;
typedef struct _GDBusObjectManagerClientPrivate GDBusObjectManagerClientPrivate;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerclient.h"
struct _GDBusObjectManagerClient
{

 GObject parent_instance;
 GDBusObjectManagerClientPrivate *priv;
};
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerclient.h"
struct _GDBusObjectManagerClientClass
{
 GObjectClass parent_class;


 void (*interface_proxy_signal) (GDBusObjectManagerClient *manager,
                                                GDBusObjectProxy *object_proxy,
                                                GDBusProxy *interface_proxy,
                                                const gchar *sender_name,
                                                const gchar *signal_name,
                                                GVariant *parameters);

 void (*interface_proxy_properties_changed) (GDBusObjectManagerClient *manager,
                                                GDBusObjectProxy *object_proxy,
                                                GDBusProxy *interface_proxy,
                                                GVariant *changed_properties,
                                                const gchar* const *invalidated_properties);


 gpointer padding[8];
};

extern
GType g_dbus_object_manager_client_get_type (void) __attribute__((__const__));
extern
void g_dbus_object_manager_client_new (GDBusConnection *connection,
                                                                              GDBusObjectManagerClientFlags flags,
                                                                              const gchar *name,
                                                                              const gchar *object_path,
                                                                              GDBusProxyTypeFunc get_proxy_type_func,
                                                                              gpointer get_proxy_type_user_data,
                                                                              GDestroyNotify get_proxy_type_destroy_notify,
                                                                              GCancellable *cancellable,
                                                                              GAsyncReadyCallback callback,
                                                                              gpointer user_data);
extern
GDBusObjectManager *g_dbus_object_manager_client_new_finish (GAsyncResult *res,
                                                                              GError **error);
extern
GDBusObjectManager *g_dbus_object_manager_client_new_sync (GDBusConnection *connection,
                                                                              GDBusObjectManagerClientFlags flags,
                                                                              const gchar *name,
                                                                              const gchar *object_path,
                                                                              GDBusProxyTypeFunc get_proxy_type_func,
                                                                              gpointer get_proxy_type_user_data,
                                                                              GDestroyNotify get_proxy_type_destroy_notify,
                                                                              GCancellable *cancellable,
                                                                              GError **error);
extern
void g_dbus_object_manager_client_new_for_bus (GBusType bus_type,
                                                                              GDBusObjectManagerClientFlags flags,
                                                                              const gchar *name,
                                                                              const gchar *object_path,
                                                                              GDBusProxyTypeFunc get_proxy_type_func,
                                                                              gpointer get_proxy_type_user_data,
                                                                              GDestroyNotify get_proxy_type_destroy_notify,
                                                                              GCancellable *cancellable,
                                                                              GAsyncReadyCallback callback,
                                                                              gpointer user_data);
extern
GDBusObjectManager *g_dbus_object_manager_client_new_for_bus_finish (GAsyncResult *res,
                                                                              GError **error);
extern
GDBusObjectManager *g_dbus_object_manager_client_new_for_bus_sync (GBusType bus_type,
                                                                              GDBusObjectManagerClientFlags flags,
                                                                              const gchar *name,
                                                                              const gchar *object_path,
                                                                              GDBusProxyTypeFunc get_proxy_type_func,
                                                                              gpointer get_proxy_type_user_data,
                                                                              GDestroyNotify get_proxy_type_destroy_notify,
                                                                              GCancellable *cancellable,
                                                                              GError **error);
extern
GDBusConnection *g_dbus_object_manager_client_get_connection (GDBusObjectManagerClient *manager);
extern
GDBusObjectManagerClientFlags g_dbus_object_manager_client_get_flags (GDBusObjectManagerClient *manager);
extern
const gchar *g_dbus_object_manager_client_get_name (GDBusObjectManagerClient *manager);
extern
gchar *g_dbus_object_manager_client_get_name_owner (GDBusObjectManagerClient *manager);

}
# 160 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerserver.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerserver.h"
extern "C" {
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerserver.h"
typedef struct _GDBusObjectManagerServerClass GDBusObjectManagerServerClass;
typedef struct _GDBusObjectManagerServerPrivate GDBusObjectManagerServerPrivate;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerserver.h"
struct _GDBusObjectManagerServer
{

 GObject parent_instance;
 GDBusObjectManagerServerPrivate *priv;
};
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusobjectmanagerserver.h"
struct _GDBusObjectManagerServerClass
{
 GObjectClass parent_class;


 gpointer padding[8];
};

extern
GType g_dbus_object_manager_server_get_type (void) __attribute__((__const__));
extern
GDBusObjectManagerServer *g_dbus_object_manager_server_new (const gchar *object_path);
extern
GDBusConnection *g_dbus_object_manager_server_get_connection (GDBusObjectManagerServer *manager);
extern
void g_dbus_object_manager_server_set_connection (GDBusObjectManagerServer *manager,
                                                                           GDBusConnection *connection);
extern
void g_dbus_object_manager_server_export (GDBusObjectManagerServer *manager,
                                                                           GDBusObjectSkeleton *object);
extern
void g_dbus_object_manager_server_export_uniquely (GDBusObjectManagerServer *manager,
                                                                           GDBusObjectSkeleton *object);
extern
gboolean g_dbus_object_manager_server_is_exported (GDBusObjectManagerServer *manager,
                                                                           GDBusObjectSkeleton *object);
extern
gboolean g_dbus_object_manager_server_unexport (GDBusObjectManagerServer *manager,
                                                                           const gchar *object_path);

}
# 161 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusactiongroup.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusactiongroup.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/giotypes.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusactiongroup.h" 2

extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusactiongroup.h"
extern
GType g_dbus_action_group_get_type (void) __attribute__((__const__));

extern
GDBusActionGroup * g_dbus_action_group_get (GDBusConnection *connection,
                                                                      const gchar *bus_name,
                                                                      const gchar *object_path);

}
# 162 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gremoteactiongroup.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gremoteactiongroup.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gremoteactiongroup.h"
typedef struct _GRemoteActionGroupInterface GRemoteActionGroupInterface;

struct _GRemoteActionGroupInterface
{
 GTypeInterface g_iface;

 void (* activate_action_full) (GRemoteActionGroup *remote,
                                    const gchar *action_name,
                                    GVariant *parameter,
                                    GVariant *platform_data);

 void (* change_action_state_full) (GRemoteActionGroup *remote,
                                    const gchar *action_name,
                                    GVariant *value,
                                    GVariant *platform_data);
};

extern
GType g_remote_action_group_get_type (void) __attribute__((__const__));

extern
void g_remote_action_group_activate_action_full (GRemoteActionGroup *remote,
                                                                        const gchar *action_name,
                                                                        GVariant *parameter,
                                                                        GVariant *platform_data);

extern
void g_remote_action_group_change_action_state_full (GRemoteActionGroup *remote,
                                                                        const gchar *action_name,
                                                                        GVariant *value,
                                                                        GVariant *platform_data);

}
# 163 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenumodel.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenumodel.h"
extern "C" {
# 125 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenumodel.h"
typedef struct _GMenuModelPrivate GMenuModelPrivate;
typedef struct _GMenuModelClass GMenuModelClass;

typedef struct _GMenuAttributeIterPrivate GMenuAttributeIterPrivate;
typedef struct _GMenuAttributeIterClass GMenuAttributeIterClass;
typedef struct _GMenuAttributeIter GMenuAttributeIter;

typedef struct _GMenuLinkIterPrivate GMenuLinkIterPrivate;
typedef struct _GMenuLinkIterClass GMenuLinkIterClass;
typedef struct _GMenuLinkIter GMenuLinkIter;

struct _GMenuModel
{
 GObject parent_instance;
 GMenuModelPrivate *priv;
};
# 158 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenumodel.h"
struct _GMenuModelClass
{
 GObjectClass parent_class;

 gboolean (*is_mutable) (GMenuModel *model);
 gint (*get_n_items) (GMenuModel *model);
 void (*get_item_attributes) (GMenuModel *model,
                                                            gint item_index,
                                                            GHashTable **attributes);
 GMenuAttributeIter * (*iterate_item_attributes) (GMenuModel *model,
                                                            gint item_index);
 GVariant * (*get_item_attribute_value) (GMenuModel *model,
                                                            gint item_index,
                                                            const gchar *attribute,
                                                            const GVariantType *expected_type);
 void (*get_item_links) (GMenuModel *model,
                                                            gint item_index,
                                                            GHashTable **links);
 GMenuLinkIter * (*iterate_item_links) (GMenuModel *model,
                                                            gint item_index);
 GMenuModel * (*get_item_link) (GMenuModel *model,
                                                            gint item_index,
                                                            const gchar *link);
};

extern
GType g_menu_model_get_type (void) __attribute__((__const__));

extern
gboolean g_menu_model_is_mutable (GMenuModel *model);
extern
gint g_menu_model_get_n_items (GMenuModel *model);

extern
GMenuAttributeIter * g_menu_model_iterate_item_attributes (GMenuModel *model,
                                                                        gint item_index);
extern
GVariant * g_menu_model_get_item_attribute_value (GMenuModel *model,
                                                                        gint item_index,
                                                                        const gchar *attribute,
                                                                        const GVariantType *expected_type);
extern
gboolean g_menu_model_get_item_attribute (GMenuModel *model,
                                                                        gint item_index,
                                                                        const gchar *attribute,
                                                                        const gchar *format_string,
                                                                        ...);
extern
GMenuLinkIter * g_menu_model_iterate_item_links (GMenuModel *model,
                                                                        gint item_index);
extern
GMenuModel * g_menu_model_get_item_link (GMenuModel *model,
                                                                        gint item_index,
                                                                        const gchar *link);

extern
void g_menu_model_items_changed (GMenuModel *model,
                                                                        gint position,
                                                                        gint removed,
                                                                        gint added);
# 232 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenumodel.h"
struct _GMenuAttributeIter
{
 GObject parent_instance;
 GMenuAttributeIterPrivate *priv;
};

struct _GMenuAttributeIterClass
{
 GObjectClass parent_class;

 gboolean (*get_next) (GMenuAttributeIter *iter,
                            const gchar **out_name,
                            GVariant **value);
};

extern
GType g_menu_attribute_iter_get_type (void) __attribute__((__const__));

extern
gboolean g_menu_attribute_iter_get_next (GMenuAttributeIter *iter,
                                                                        const gchar **out_name,
                                                                        GVariant **value);
extern
gboolean g_menu_attribute_iter_next (GMenuAttributeIter *iter);
extern
const gchar * g_menu_attribute_iter_get_name (GMenuAttributeIter *iter);
extern
GVariant * g_menu_attribute_iter_get_value (GMenuAttributeIter *iter);
# 274 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenumodel.h"
struct _GMenuLinkIter
{
 GObject parent_instance;
 GMenuLinkIterPrivate *priv;
};

struct _GMenuLinkIterClass
{
 GObjectClass parent_class;

 gboolean (*get_next) (GMenuLinkIter *iter,
                            const gchar **out_link,
                            GMenuModel **value);
};

extern
GType g_menu_link_iter_get_type (void) __attribute__((__const__));

extern
gboolean g_menu_link_iter_get_next (GMenuLinkIter *iter,
                                                                        const gchar **out_link,
                                                                        GMenuModel **value);
extern
gboolean g_menu_link_iter_next (GMenuLinkIter *iter);
extern
const gchar * g_menu_link_iter_get_name (GMenuLinkIter *iter);
extern
GMenuModel * g_menu_link_iter_get_value (GMenuLinkIter *iter);

}
# 164 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenu.h" 1
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenu.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenu.h"
typedef struct _GMenuItem GMenuItem;
typedef struct _GMenu GMenu;

extern
GType g_menu_get_type (void) __attribute__((__const__));
extern
GMenu * g_menu_new (void);

extern
void g_menu_freeze (GMenu *menu);

extern
void g_menu_insert_item (GMenu *menu,
                                                    gint position,
                                                    GMenuItem *item);
extern
void g_menu_prepend_item (GMenu *menu,
                                                    GMenuItem *item);
extern
void g_menu_append_item (GMenu *menu,
                                                    GMenuItem *item);
extern
void g_menu_remove (GMenu *menu,
                                                    gint position);

extern
void g_menu_remove_all (GMenu *menu);

extern
void g_menu_insert (GMenu *menu,
                                                    gint position,
                                                    const gchar *label,
                                                    const gchar *detailed_action);
extern
void g_menu_prepend (GMenu *menu,
                                                    const gchar *label,
                                                    const gchar *detailed_action);
extern
void g_menu_append (GMenu *menu,
                                                    const gchar *label,
                                                    const gchar *detailed_action);

extern
void g_menu_insert_section (GMenu *menu,
                                                    gint position,
                                                    const gchar *label,
                                                    GMenuModel *section);
extern
void g_menu_prepend_section (GMenu *menu,
                                                    const gchar *label,
                                                    GMenuModel *section);
extern
void g_menu_append_section (GMenu *menu,
                                                    const gchar *label,
                                                    GMenuModel *section);

extern
void g_menu_insert_submenu (GMenu *menu,
                                                    gint position,
                                                    const gchar *label,
                                                    GMenuModel *submenu);
extern
void g_menu_prepend_submenu (GMenu *menu,
                                                    const gchar *label,
                                                    GMenuModel *submenu);
extern
void g_menu_append_submenu (GMenu *menu,
                                                    const gchar *label,
                                                    GMenuModel *submenu);


extern
GType g_menu_item_get_type (void) __attribute__((__const__));
extern
GMenuItem * g_menu_item_new (const gchar *label,
                                                    const gchar *detailed_action);

extern
GMenuItem * g_menu_item_new_from_model (GMenuModel *model,
                                                    gint item_index);

extern
GMenuItem * g_menu_item_new_submenu (const gchar *label,
                                                    GMenuModel *submenu);

extern
GMenuItem * g_menu_item_new_section (const gchar *label,
                                                    GMenuModel *section);

extern
GVariant * g_menu_item_get_attribute_value (GMenuItem *menu_item,
                                                    const gchar *attribute,
                                                    const GVariantType *expected_type);
extern
gboolean g_menu_item_get_attribute (GMenuItem *menu_item,
                                                    const gchar *attribute,
                                                    const gchar *format_string,
                                                    ...);
extern
GMenuModel *g_menu_item_get_link (GMenuItem *menu_item,
                                                    const gchar *link);

extern
void g_menu_item_set_attribute_value (GMenuItem *menu_item,
                                                    const gchar *attribute,
                                                    GVariant *value);
extern
void g_menu_item_set_attribute (GMenuItem *menu_item,
                                                    const gchar *attribute,
                                                    const gchar *format_string,
                                                    ...);
extern
void g_menu_item_set_link (GMenuItem *menu_item,
                                                    const gchar *link,
                                                    GMenuModel *model);
extern
void g_menu_item_set_label (GMenuItem *menu_item,
                                                    const gchar *label);
extern
void g_menu_item_set_submenu (GMenuItem *menu_item,
                                                    GMenuModel *submenu);
extern
void g_menu_item_set_section (GMenuItem *menu_item,
                                                    GMenuModel *section);
extern
void g_menu_item_set_action_and_target_value (GMenuItem *menu_item,
                                                    const gchar *action,
                                                    GVariant *target_value);
extern
void g_menu_item_set_action_and_target (GMenuItem *menu_item,
                                                    const gchar *action,
                                                    const gchar *format_string,
                                                    ...);
extern
void g_menu_item_set_detailed_action (GMenuItem *menu_item,
                                                    const gchar *detailed_action);

extern
void g_menu_item_set_icon (GMenuItem *menu_item,
                                                    GIcon *icon);

}
# 165 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenuexporter.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gmenuexporter.h"
extern "C" {

extern
guint g_dbus_connection_export_menu_model (GDBusConnection *connection,
                                                                        const gchar *object_path,
                                                                        GMenuModel *menu,
                                                                        GError **error);

extern
void g_dbus_connection_unexport_menu_model (GDBusConnection *connection,
                                                                        guint export_id);

}
# 166 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusmenumodel.h" 1
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gdbusmenumodel.h"
extern "C" {







typedef struct _GDBusMenuModel GDBusMenuModel;

extern
GType g_dbus_menu_model_get_type (void) __attribute__((__const__));

extern
GDBusMenuModel * g_dbus_menu_model_get (GDBusConnection *connection,
                                                       const gchar *bus_name,
                                                       const gchar *object_path);

}
# 167 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnotification.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gnotification.h"
extern "C" {





extern
GType g_notification_get_type (void) __attribute__((__const__));

extern
GNotification * g_notification_new (const gchar *title);

extern
void g_notification_set_title (GNotification *notification,
                                                                        const gchar *title);

extern
void g_notification_set_body (GNotification *notification,
                                                                        const gchar *body);

extern
void g_notification_set_icon (GNotification *notification,
                                                                        GIcon *icon);

__attribute__((__deprecated__("Use '" "g_notification_set_priority" "' instead"))) extern
void g_notification_set_urgent (GNotification *notification,
                                                                        gboolean urgent);

extern
void g_notification_set_priority (GNotification *notification,
                                                                        GNotificationPriority priority);

extern
void g_notification_add_button (GNotification *notification,
                                                                        const gchar *label,
                                                                        const gchar *detailed_action);

extern
void g_notification_add_button_with_target (GNotification *notification,
                                                                        const gchar *label,
                                                                        const gchar *action,
                                                                        const gchar *target_format,
                                                                        ...);

extern
void g_notification_add_button_with_target_value (GNotification *notification,
                                                                        const gchar *label,
                                                                        const gchar *action,
                                                                        GVariant *target);

extern
void g_notification_set_default_action (GNotification *notification,
                                                                        const gchar *detailed_action);

extern
void g_notification_set_default_action_and_target (GNotification *notification,
                                                                        const gchar *action,
                                                                        const gchar *target_format,
                                                                        ...);

extern
void g_notification_set_default_action_and_target_value (GNotification *notification,
                                                                        const gchar *action,
                                                                        GVariant *target);

}
# 168 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/glistmodel.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/glistmodel.h"
extern "C" {


extern
GType g_list_model_get_type (void);
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/glistmodel.h"
#pragma GCC diagnostic push
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/glistmodel.h"

# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/glistmodel.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/glistmodel.h"
typedef struct _GListModel GListModel; typedef struct _GListModelInterface GListModelInterface; typedef GListModel *GListModel_autoptr; static inline void glib_autoptr_cleanup_GListModel (GListModel **_ptr) { glib_autoptr_cleanup_GObject ((GObject **) _ptr); } static inline GListModel * G_LIST_MODEL (gpointer ptr) { return (((GListModel*) g_type_check_instance_cast ((GTypeInstance*) (ptr), (g_list_model_get_type ())))); } static inline gboolean G_IS_LIST_MODEL (gpointer ptr) { return ((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) (ptr); GType __t = (g_list_model_get_type ()); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))); } static inline GListModelInterface * G_LIST_MODEL_GET_IFACE (gpointer ptr) { return (((GListModelInterface*) g_type_interface_peek (((GTypeInstance*) (ptr))->g_class, (g_list_model_get_type ())))); }
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/glistmodel.h"
#pragma GCC diagnostic pop
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/glistmodel.h"


struct _GListModelInterface
{
 GTypeInterface g_iface;

 GType (* get_item_type) (GListModel *list);

 guint (* get_n_items) (GListModel *list);

 gpointer (* get_item) (GListModel *list,
                                guint position);
};

extern
GType g_list_model_get_item_type (GListModel *list);

extern
guint g_list_model_get_n_items (GListModel *list);

extern
gpointer g_list_model_get_item (GListModel *list,
                                                                        guint position);

extern
GObject * g_list_model_get_object (GListModel *list,
                                                                        guint position);

extern
void g_list_model_items_changed (GListModel *list,
                                                                        guint position,
                                                                        guint removed,
                                                                        guint added);

}
# 169 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gliststore.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gliststore.h"
extern "C" {


extern
GType g_list_store_get_type (void);
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gliststore.h"
#pragma GCC diagnostic push
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gliststore.h"

# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gliststore.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gliststore.h"
typedef struct _GListStore GListStore; typedef struct { GObjectClass parent_class; } GListStoreClass; typedef GListStore *GListStore_autoptr; static inline void glib_autoptr_cleanup_GListStore (GListStore **_ptr) { glib_autoptr_cleanup_GObject ((GObject **) _ptr); } static inline GListStore * G_LIST_STORE (gpointer ptr) { return (((GListStore*) g_type_check_instance_cast ((GTypeInstance*) (ptr), (g_list_store_get_type ())))); } static inline gboolean G_IS_LIST_STORE (gpointer ptr) { return ((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) (ptr); GType __t = (g_list_store_get_type ()); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))); }
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gliststore.h"
#pragma GCC diagnostic pop
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gliststore.h"


extern
GListStore * g_list_store_new (GType item_type);

extern
void g_list_store_insert (GListStore *store,
                                                                        guint position,
                                                                        gpointer item);

extern
guint g_list_store_insert_sorted (GListStore *store,
                                                                        gpointer item,
                                                                        GCompareDataFunc compare_func,
                                                                        gpointer user_data);

extern
void g_list_store_sort (GListStore *store,
                                                                        GCompareDataFunc compare_func,
                                                                        gpointer user_data);

extern
void g_list_store_append (GListStore *store,
                                                                        gpointer item);

extern
void g_list_store_remove (GListStore *store,
                                                                        guint position);

extern
void g_list_store_remove_all (GListStore *store);

extern
void g_list_store_splice (GListStore *store,
                                                                        guint position,
                                                                        guint n_removals,
                                                                        gpointer *additions,
                                                                        guint n_additions);

}
# 170 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h" 1
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
typedef GAction *GAction_autoptr;
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GAction (GAction **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GActionMap *GActionMap_autoptr;
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GActionMap (GActionMap **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GAppInfo *GAppInfo_autoptr;
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GAppInfo (GAppInfo **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GAppLaunchContext *GAppLaunchContext_autoptr;
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GAppLaunchContext (GAppLaunchContext **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GAppInfoMonitor *GAppInfoMonitor_autoptr;
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GAppInfoMonitor (GAppInfoMonitor **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GApplicationCommandLine *GApplicationCommandLine_autoptr;
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GApplicationCommandLine (GApplicationCommandLine **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GApplication *GApplication_autoptr;
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GApplication (GApplication **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GAsyncInitable *GAsyncInitable_autoptr;
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GAsyncInitable (GAsyncInitable **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GAsyncResult *GAsyncResult_autoptr;
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GAsyncResult (GAsyncResult **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GBufferedInputStream *GBufferedInputStream_autoptr;
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GBufferedInputStream (GBufferedInputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GBufferedOutputStream *GBufferedOutputStream_autoptr;
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GBufferedOutputStream (GBufferedOutputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GBytesIcon *GBytesIcon_autoptr;
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GBytesIcon (GBytesIcon **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GCancellable *GCancellable_autoptr;
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GCancellable (GCancellable **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GCharsetConverter *GCharsetConverter_autoptr;
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GCharsetConverter (GCharsetConverter **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GConverter *GConverter_autoptr;
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GConverter (GConverter **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GConverterInputStream *GConverterInputStream_autoptr;
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GConverterInputStream (GConverterInputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GConverterOutputStream *GConverterOutputStream_autoptr;
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GConverterOutputStream (GConverterOutputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GCredentials *GCredentials_autoptr;
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GCredentials (GCredentials **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDatagramBased *GDatagramBased_autoptr;
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDatagramBased (GDatagramBased **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDataInputStream *GDataInputStream_autoptr;
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDataInputStream (GDataInputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDataOutputStream *GDataOutputStream_autoptr;
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDataOutputStream (GDataOutputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusActionGroup *GDBusActionGroup_autoptr;
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusActionGroup (GDBusActionGroup **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusAuthObserver *GDBusAuthObserver_autoptr;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusAuthObserver (GDBusAuthObserver **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusConnection *GDBusConnection_autoptr;
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusConnection (GDBusConnection **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusInterface *GDBusInterface_autoptr;
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusInterface (GDBusInterface **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusInterfaceSkeleton *GDBusInterfaceSkeleton_autoptr;
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusInterfaceSkeleton (GDBusInterfaceSkeleton **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusMenuModel *GDBusMenuModel_autoptr;
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusMenuModel (GDBusMenuModel **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusMessage *GDBusMessage_autoptr;
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusMessage (GDBusMessage **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusMethodInvocation *GDBusMethodInvocation_autoptr;
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusMethodInvocation (GDBusMethodInvocation **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusNodeInfo *GDBusNodeInfo_autoptr;
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusNodeInfo (GDBusNodeInfo **_ptr) { if (*_ptr) (g_dbus_node_info_unref) (*_ptr); }
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusObject *GDBusObject_autoptr;
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusObject (GDBusObject **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusObjectManagerClient *GDBusObjectManagerClient_autoptr;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusObjectManagerClient (GDBusObjectManagerClient **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusObjectManager *GDBusObjectManager_autoptr;
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusObjectManager (GDBusObjectManager **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusObjectManagerServer *GDBusObjectManagerServer_autoptr;
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusObjectManagerServer (GDBusObjectManagerServer **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusObjectProxy *GDBusObjectProxy_autoptr;
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusObjectProxy (GDBusObjectProxy **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusObjectSkeleton *GDBusObjectSkeleton_autoptr;
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusObjectSkeleton (GDBusObjectSkeleton **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusProxy *GDBusProxy_autoptr;
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusProxy (GDBusProxy **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDBusServer *GDBusServer_autoptr;
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDBusServer (GDBusServer **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GDrive *GDrive_autoptr;
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GDrive (GDrive **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GEmblemedIcon *GEmblemedIcon_autoptr;
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GEmblemedIcon (GEmblemedIcon **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GEmblem *GEmblem_autoptr;
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GEmblem (GEmblem **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 64 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFileEnumerator *GFileEnumerator_autoptr;
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFileEnumerator (GFileEnumerator **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFile *GFile_autoptr;
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFile (GFile **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFileAttributeInfoList *GFileAttributeInfoList_autoptr;
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFileAttributeInfoList (GFileAttributeInfoList **_ptr) { if (*_ptr) (g_file_attribute_info_list_unref) (*_ptr); }
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFileIcon *GFileIcon_autoptr;
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFileIcon (GFileIcon **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFileInfo *GFileInfo_autoptr;
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFileInfo (GFileInfo **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFileInputStream *GFileInputStream_autoptr;
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFileInputStream (GFileInputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFileIOStream *GFileIOStream_autoptr;
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFileIOStream (GFileIOStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFileMonitor *GFileMonitor_autoptr;
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFileMonitor (GFileMonitor **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFilenameCompleter *GFilenameCompleter_autoptr;
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFilenameCompleter (GFilenameCompleter **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFileOutputStream *GFileOutputStream_autoptr;
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFileOutputStream (GFileOutputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFilterInputStream *GFilterInputStream_autoptr;
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFilterInputStream (GFilterInputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GFilterOutputStream *GFilterOutputStream_autoptr;
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GFilterOutputStream (GFilterOutputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GIcon *GIcon_autoptr;
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GIcon (GIcon **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GInetAddress *GInetAddress_autoptr;
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GInetAddress (GInetAddress **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GInetAddressMask *GInetAddressMask_autoptr;
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GInetAddressMask (GInetAddressMask **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 79 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GInetSocketAddress *GInetSocketAddress_autoptr;
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GInetSocketAddress (GInetSocketAddress **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GInitable *GInitable_autoptr;
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GInitable (GInitable **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GInputStream *GInputStream_autoptr;
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GInputStream (GInputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 82 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GIOModule *GIOModule_autoptr;
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GIOModule (GIOModule **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GIOStream *GIOStream_autoptr;
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GIOStream (GIOStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 84 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GLoadableIcon *GLoadableIcon_autoptr;
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GLoadableIcon (GLoadableIcon **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GMemoryInputStream *GMemoryInputStream_autoptr;
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GMemoryInputStream (GMemoryInputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GMemoryOutputStream *GMemoryOutputStream_autoptr;
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GMemoryOutputStream (GMemoryOutputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GMenu *GMenu_autoptr;
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GMenu (GMenu **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GMenuItem *GMenuItem_autoptr;
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GMenuItem (GMenuItem **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GMenuModel *GMenuModel_autoptr;
# 90 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 90 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 90 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 90 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GMenuModel (GMenuModel **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 90 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 90 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GMenuAttributeIter *GMenuAttributeIter_autoptr;
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 91 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GMenuAttributeIter (GMenuAttributeIter **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GMenuLinkIter *GMenuLinkIter_autoptr;
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GMenuLinkIter (GMenuLinkIter **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GMount *GMount_autoptr;
# 93 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 93 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 93 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 93 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GMount (GMount **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 93 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 93 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GMountOperation *GMountOperation_autoptr;
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 94 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GMountOperation (GMountOperation **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GNativeVolumeMonitor *GNativeVolumeMonitor_autoptr;
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GNativeVolumeMonitor (GNativeVolumeMonitor **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GNetworkAddress *GNetworkAddress_autoptr;
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GNetworkAddress (GNetworkAddress **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 96 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GNetworkMonitor *GNetworkMonitor_autoptr;
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 97 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GNetworkMonitor (GNetworkMonitor **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GNetworkService *GNetworkService_autoptr;
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 98 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GNetworkService (GNetworkService **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GNotification *GNotification_autoptr;
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GNotification (GNotification **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GOutputStream *GOutputStream_autoptr;
# 100 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 100 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 100 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 100 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GOutputStream (GOutputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 100 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 100 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GPermission *GPermission_autoptr;
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 101 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GPermission (GPermission **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GPollableInputStream *GPollableInputStream_autoptr;
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 102 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GPollableInputStream (GPollableInputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GPollableOutputStream *GPollableOutputStream_autoptr;
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 103 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GPollableOutputStream (GPollableOutputStream **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GPropertyAction *GPropertyAction_autoptr;
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 104 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GPropertyAction (GPropertyAction **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GProxyAddressEnumerator *GProxyAddressEnumerator_autoptr;
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 105 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GProxyAddressEnumerator (GProxyAddressEnumerator **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GProxyAddress *GProxyAddress_autoptr;
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 106 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GProxyAddress (GProxyAddress **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GProxy *GProxy_autoptr;
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 107 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GProxy (GProxy **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GProxyResolver *GProxyResolver_autoptr;
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 108 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GProxyResolver (GProxyResolver **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GRemoteActionGroup *GRemoteActionGroup_autoptr;
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 109 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GRemoteActionGroup (GRemoteActionGroup **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GResolver *GResolver_autoptr;
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 110 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GResolver (GResolver **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSeekable *GSeekable_autoptr;
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 111 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSeekable (GSeekable **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSettingsBackend *GSettingsBackend_autoptr;
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 112 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSettingsBackend (GSettingsBackend **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSettingsSchema *GSettingsSchema_autoptr;
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSettingsSchema (GSettingsSchema **_ptr) { if (*_ptr) (g_settings_schema_unref) (*_ptr); }
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSettings *GSettings_autoptr;
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 114 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSettings (GSettings **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSimpleActionGroup *GSimpleActionGroup_autoptr;
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 115 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSimpleActionGroup (GSimpleActionGroup **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSimpleAction *GSimpleAction_autoptr;
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 116 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSimpleAction (GSimpleAction **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSimpleAsyncResult *GSimpleAsyncResult_autoptr;
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 117 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSimpleAsyncResult (GSimpleAsyncResult **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSimplePermission *GSimplePermission_autoptr;
# 118 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 118 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 118 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 118 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSimplePermission (GSimplePermission **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 118 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 118 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSimpleProxyResolver *GSimpleProxyResolver_autoptr;
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 119 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSimpleProxyResolver (GSimpleProxyResolver **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSocketAddressEnumerator *GSocketAddressEnumerator_autoptr;
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 120 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSocketAddressEnumerator (GSocketAddressEnumerator **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSocketAddress *GSocketAddress_autoptr;
# 121 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 121 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 121 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 121 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSocketAddress (GSocketAddress **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 121 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 121 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSocketClient *GSocketClient_autoptr;
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 122 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSocketClient (GSocketClient **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSocketConnectable *GSocketConnectable_autoptr;
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 123 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSocketConnectable (GSocketConnectable **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSocketConnection *GSocketConnection_autoptr;
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 124 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSocketConnection (GSocketConnection **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSocketControlMessage *GSocketControlMessage_autoptr;
# 125 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 125 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 125 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 125 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSocketControlMessage (GSocketControlMessage **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 125 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 125 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSocket *GSocket_autoptr;
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 126 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSocket (GSocket **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 126 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSocketListener *GSocketListener_autoptr;
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 127 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSocketListener (GSocketListener **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSocketService *GSocketService_autoptr;
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 128 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSocketService (GSocketService **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSubprocess *GSubprocess_autoptr;
# 129 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 129 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 129 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 129 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSubprocess (GSubprocess **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 129 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 129 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GSubprocessLauncher *GSubprocessLauncher_autoptr;
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 130 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GSubprocessLauncher (GSubprocessLauncher **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTask *GTask_autoptr;
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 131 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTask (GTask **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTcpConnection *GTcpConnection_autoptr;
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 132 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTcpConnection (GTcpConnection **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTcpWrapperConnection *GTcpWrapperConnection_autoptr;
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTcpWrapperConnection (GTcpWrapperConnection **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTestDBus *GTestDBus_autoptr;
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 134 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTestDBus (GTestDBus **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GThemedIcon *GThemedIcon_autoptr;
# 135 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 135 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 135 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 135 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GThemedIcon (GThemedIcon **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 135 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 135 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GThreadedSocketService *GThreadedSocketService_autoptr;
# 136 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 136 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 136 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 136 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GThreadedSocketService (GThreadedSocketService **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 136 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 136 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTlsBackend *GTlsBackend_autoptr;
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 137 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTlsBackend (GTlsBackend **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTlsCertificate *GTlsCertificate_autoptr;
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 138 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTlsCertificate (GTlsCertificate **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTlsClientConnection *GTlsClientConnection_autoptr;
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 139 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTlsClientConnection (GTlsClientConnection **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTlsConnection *GTlsConnection_autoptr;
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 140 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTlsConnection (GTlsConnection **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTlsDatabase *GTlsDatabase_autoptr;
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 141 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTlsDatabase (GTlsDatabase **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTlsFileDatabase *GTlsFileDatabase_autoptr;
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTlsFileDatabase (GTlsFileDatabase **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 142 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTlsInteraction *GTlsInteraction_autoptr;
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 143 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTlsInteraction (GTlsInteraction **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTlsPassword *GTlsPassword_autoptr;
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 144 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTlsPassword (GTlsPassword **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GTlsServerConnection *GTlsServerConnection_autoptr;
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 145 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GTlsServerConnection (GTlsServerConnection **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GVfs *GVfs_autoptr;
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 146 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GVfs (GVfs **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GVolume *GVolume_autoptr;
# 147 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 147 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 147 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 147 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GVolume (GVolume **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 147 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 147 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GVolumeMonitor *GVolumeMonitor_autoptr;
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 148 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GVolumeMonitor (GVolumeMonitor **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GZlibCompressor *GZlibCompressor_autoptr;
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 149 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GZlibCompressor (GZlibCompressor **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 149 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

typedef GZlibDecompressor *GZlibDecompressor_autoptr;
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic push
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
static inline void glib_autoptr_cleanup_GZlibDecompressor (GZlibDecompressor **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"
#pragma GCC diagnostic pop
# 150 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio-autocleanups.h"

# 172 "/tmp/graphics/geeqie/work/.buildlink/include/glib/glib-2.0/gio/gio.h" 2
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkapplaunchcontext.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkscreen.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkscreen.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h" 1
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo-version.h" 1
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo-features.h" 1
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo-deprecated.h" 1
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h" 2
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
extern "C" {
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
int
cairo_version (void);

const char*
cairo_version_string (void);
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef int cairo_bool_t;
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo cairo_t;
# 153 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_surface cairo_surface_t;
# 171 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_device cairo_device_t;
# 192 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_matrix {
   double xx; double yx;
   double xy; double yy;
   double x0; double y0;
} cairo_matrix_t;
# 220 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_pattern cairo_pattern_t;
# 232 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef void (*cairo_destroy_func_t) (void *data);
# 246 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_user_data_key {
   int unused;
} cairo_user_data_key_t;
# 310 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_status {
   CAIRO_STATUS_SUCCESS = 0,

   CAIRO_STATUS_NO_MEMORY,
   CAIRO_STATUS_INVALID_RESTORE,
   CAIRO_STATUS_INVALID_POP_GROUP,
   CAIRO_STATUS_NO_CURRENT_POINT,
   CAIRO_STATUS_INVALID_MATRIX,
   CAIRO_STATUS_INVALID_STATUS,
   CAIRO_STATUS_NULL_POINTER,
   CAIRO_STATUS_INVALID_STRING,
   CAIRO_STATUS_INVALID_PATH_DATA,
   CAIRO_STATUS_READ_ERROR,
   CAIRO_STATUS_WRITE_ERROR,
   CAIRO_STATUS_SURFACE_FINISHED,
   CAIRO_STATUS_SURFACE_TYPE_MISMATCH,
   CAIRO_STATUS_PATTERN_TYPE_MISMATCH,
   CAIRO_STATUS_INVALID_CONTENT,
   CAIRO_STATUS_INVALID_FORMAT,
   CAIRO_STATUS_INVALID_VISUAL,
   CAIRO_STATUS_FILE_NOT_FOUND,
   CAIRO_STATUS_INVALID_DASH,
   CAIRO_STATUS_INVALID_DSC_COMMENT,
   CAIRO_STATUS_INVALID_INDEX,
   CAIRO_STATUS_CLIP_NOT_REPRESENTABLE,
   CAIRO_STATUS_TEMP_FILE_ERROR,
   CAIRO_STATUS_INVALID_STRIDE,
   CAIRO_STATUS_FONT_TYPE_MISMATCH,
   CAIRO_STATUS_USER_FONT_IMMUTABLE,
   CAIRO_STATUS_USER_FONT_ERROR,
   CAIRO_STATUS_NEGATIVE_COUNT,
   CAIRO_STATUS_INVALID_CLUSTERS,
   CAIRO_STATUS_INVALID_SLANT,
   CAIRO_STATUS_INVALID_WEIGHT,
   CAIRO_STATUS_INVALID_SIZE,
   CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED,
   CAIRO_STATUS_DEVICE_TYPE_MISMATCH,
   CAIRO_STATUS_DEVICE_ERROR,
   CAIRO_STATUS_INVALID_MESH_CONSTRUCTION,
   CAIRO_STATUS_DEVICE_FINISHED,
   CAIRO_STATUS_JBIG2_GLOBAL_MISSING,

   CAIRO_STATUS_LAST_STATUS
} cairo_status_t;
# 371 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_content {
   CAIRO_CONTENT_COLOR = 0x1000,
   CAIRO_CONTENT_ALPHA = 0x2000,
   CAIRO_CONTENT_COLOR_ALPHA = 0x3000
} cairo_content_t;
# 408 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_format {
   CAIRO_FORMAT_INVALID = -1,
   CAIRO_FORMAT_ARGB32 = 0,
   CAIRO_FORMAT_RGB24 = 1,
   CAIRO_FORMAT_A8 = 2,
   CAIRO_FORMAT_A1 = 3,
   CAIRO_FORMAT_RGB16_565 = 4,
   CAIRO_FORMAT_RGB30 = 5
} cairo_format_t;
# 437 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef cairo_status_t (*cairo_write_func_t) (void *closure,
          const unsigned char *data,
          unsigned int length);
# 459 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef cairo_status_t (*cairo_read_func_t) (void *closure,
         unsigned char *data,
         unsigned int length);
# 475 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_rectangle_int {
   int x, y;
   int width, height;
} cairo_rectangle_int_t;



cairo_t *
cairo_create (cairo_surface_t *target);

cairo_t *
cairo_reference (cairo_t *cr);

void
cairo_destroy (cairo_t *cr);

unsigned int
cairo_get_reference_count (cairo_t *cr);

void *
cairo_get_user_data (cairo_t *cr,
      const cairo_user_data_key_t *key);

cairo_status_t
cairo_set_user_data (cairo_t *cr,
      const cairo_user_data_key_t *key,
      void *user_data,
      cairo_destroy_func_t destroy);

void
cairo_save (cairo_t *cr);

void
cairo_restore (cairo_t *cr);

void
cairo_push_group (cairo_t *cr);

void
cairo_push_group_with_content (cairo_t *cr, cairo_content_t content);

cairo_pattern_t *
cairo_pop_group (cairo_t *cr);

void
cairo_pop_group_to_source (cairo_t *cr);
# 605 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_operator {
   CAIRO_OPERATOR_CLEAR,

   CAIRO_OPERATOR_SOURCE,
   CAIRO_OPERATOR_OVER,
   CAIRO_OPERATOR_IN,
   CAIRO_OPERATOR_OUT,
   CAIRO_OPERATOR_ATOP,

   CAIRO_OPERATOR_DEST,
   CAIRO_OPERATOR_DEST_OVER,
   CAIRO_OPERATOR_DEST_IN,
   CAIRO_OPERATOR_DEST_OUT,
   CAIRO_OPERATOR_DEST_ATOP,

   CAIRO_OPERATOR_XOR,
   CAIRO_OPERATOR_ADD,
   CAIRO_OPERATOR_SATURATE,

   CAIRO_OPERATOR_MULTIPLY,
   CAIRO_OPERATOR_SCREEN,
   CAIRO_OPERATOR_OVERLAY,
   CAIRO_OPERATOR_DARKEN,
   CAIRO_OPERATOR_LIGHTEN,
   CAIRO_OPERATOR_COLOR_DODGE,
   CAIRO_OPERATOR_COLOR_BURN,
   CAIRO_OPERATOR_HARD_LIGHT,
   CAIRO_OPERATOR_SOFT_LIGHT,
   CAIRO_OPERATOR_DIFFERENCE,
   CAIRO_OPERATOR_EXCLUSION,
   CAIRO_OPERATOR_HSL_HUE,
   CAIRO_OPERATOR_HSL_SATURATION,
   CAIRO_OPERATOR_HSL_COLOR,
   CAIRO_OPERATOR_HSL_LUMINOSITY
} cairo_operator_t;

void
cairo_set_operator (cairo_t *cr, cairo_operator_t op);

void
cairo_set_source (cairo_t *cr, cairo_pattern_t *source);

void
cairo_set_source_rgb (cairo_t *cr, double red, double green, double blue);

void
cairo_set_source_rgba (cairo_t *cr,
        double red, double green, double blue,
        double alpha);

void
cairo_set_source_surface (cairo_t *cr,
    cairo_surface_t *surface,
    double x,
    double y);

void
cairo_set_tolerance (cairo_t *cr, double tolerance);
# 701 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_antialias {
   CAIRO_ANTIALIAS_DEFAULT,


   CAIRO_ANTIALIAS_NONE,
   CAIRO_ANTIALIAS_GRAY,
   CAIRO_ANTIALIAS_SUBPIXEL,


   CAIRO_ANTIALIAS_FAST,
   CAIRO_ANTIALIAS_GOOD,
   CAIRO_ANTIALIAS_BEST
} cairo_antialias_t;

void
cairo_set_antialias (cairo_t *cr, cairo_antialias_t antialias);
# 745 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_fill_rule {
   CAIRO_FILL_RULE_WINDING,
   CAIRO_FILL_RULE_EVEN_ODD
} cairo_fill_rule_t;

void
cairo_set_fill_rule (cairo_t *cr, cairo_fill_rule_t fill_rule);

void
cairo_set_line_width (cairo_t *cr, double width);
# 768 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_line_cap {
   CAIRO_LINE_CAP_BUTT,
   CAIRO_LINE_CAP_ROUND,
   CAIRO_LINE_CAP_SQUARE
} cairo_line_cap_t;

void
cairo_set_line_cap (cairo_t *cr, cairo_line_cap_t line_cap);
# 792 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_line_join {
   CAIRO_LINE_JOIN_MITER,
   CAIRO_LINE_JOIN_ROUND,
   CAIRO_LINE_JOIN_BEVEL
} cairo_line_join_t;

void
cairo_set_line_join (cairo_t *cr, cairo_line_join_t line_join);

void
cairo_set_dash (cairo_t *cr,
 const double *dashes,
 int num_dashes,
 double offset);

void
cairo_set_miter_limit (cairo_t *cr, double limit);

void
cairo_translate (cairo_t *cr, double tx, double ty);

void
cairo_scale (cairo_t *cr, double sx, double sy);

void
cairo_rotate (cairo_t *cr, double angle);

void
cairo_transform (cairo_t *cr,
  const cairo_matrix_t *matrix);

void
cairo_set_matrix (cairo_t *cr,
   const cairo_matrix_t *matrix);

void
cairo_identity_matrix (cairo_t *cr);

void
cairo_user_to_device (cairo_t *cr, double *x, double *y);

void
cairo_user_to_device_distance (cairo_t *cr, double *dx, double *dy);

void
cairo_device_to_user (cairo_t *cr, double *x, double *y);

void
cairo_device_to_user_distance (cairo_t *cr, double *dx, double *dy);


void
cairo_new_path (cairo_t *cr);

void
cairo_move_to (cairo_t *cr, double x, double y);

void
cairo_new_sub_path (cairo_t *cr);

void
cairo_line_to (cairo_t *cr, double x, double y);

void
cairo_curve_to (cairo_t *cr,
 double x1, double y1,
 double x2, double y2,
 double x3, double y3);

void
cairo_arc (cairo_t *cr,
   double xc, double yc,
   double radius,
   double angle1, double angle2);

void
cairo_arc_negative (cairo_t *cr,
     double xc, double yc,
     double radius,
     double angle1, double angle2);
# 881 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
void
cairo_rel_move_to (cairo_t *cr, double dx, double dy);

void
cairo_rel_line_to (cairo_t *cr, double dx, double dy);

void
cairo_rel_curve_to (cairo_t *cr,
     double dx1, double dy1,
     double dx2, double dy2,
     double dx3, double dy3);

void
cairo_rectangle (cairo_t *cr,
  double x, double y,
  double width, double height);






void
cairo_close_path (cairo_t *cr);

void
cairo_path_extents (cairo_t *cr,
     double *x1, double *y1,
     double *x2, double *y2);


void
cairo_paint (cairo_t *cr);

void
cairo_paint_with_alpha (cairo_t *cr,
  double alpha);

void
cairo_mask (cairo_t *cr,
    cairo_pattern_t *pattern);

void
cairo_mask_surface (cairo_t *cr,
     cairo_surface_t *surface,
     double surface_x,
     double surface_y);

void
cairo_stroke (cairo_t *cr);

void
cairo_stroke_preserve (cairo_t *cr);

void
cairo_fill (cairo_t *cr);

void
cairo_fill_preserve (cairo_t *cr);

void
cairo_copy_page (cairo_t *cr);

void
cairo_show_page (cairo_t *cr);


cairo_bool_t
cairo_in_stroke (cairo_t *cr, double x, double y);

cairo_bool_t
cairo_in_fill (cairo_t *cr, double x, double y);

cairo_bool_t
cairo_in_clip (cairo_t *cr, double x, double y);


void
cairo_stroke_extents (cairo_t *cr,
       double *x1, double *y1,
       double *x2, double *y2);

void
cairo_fill_extents (cairo_t *cr,
     double *x1, double *y1,
     double *x2, double *y2);


void
cairo_reset_clip (cairo_t *cr);

void
cairo_clip (cairo_t *cr);

void
cairo_clip_preserve (cairo_t *cr);

void
cairo_clip_extents (cairo_t *cr,
     double *x1, double *y1,
     double *x2, double *y2);
# 994 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_rectangle {
   double x, y, width, height;
} cairo_rectangle_t;
# 1009 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_rectangle_list {
   cairo_status_t status;
   cairo_rectangle_t *rectangles;
   int num_rectangles;
} cairo_rectangle_list_t;

cairo_rectangle_list_t *
cairo_copy_clip_rectangle_list (cairo_t *cr);

void
cairo_rectangle_list_destroy (cairo_rectangle_list_t *rectangle_list);
# 1040 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_scaled_font cairo_scaled_font_t;
# 1061 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_font_face cairo_font_face_t;
# 1089 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct {
   unsigned long index;
   double x;
   double y;
} cairo_glyph_t;

cairo_glyph_t *
cairo_glyph_allocate (int num_glyphs);

void
cairo_glyph_free (cairo_glyph_t *glyphs);
# 1121 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct {
   int num_bytes;
   int num_glyphs;
} cairo_text_cluster_t;

cairo_text_cluster_t *
cairo_text_cluster_allocate (int num_clusters);

void
cairo_text_cluster_free (cairo_text_cluster_t *clusters);
# 1141 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_text_cluster_flags {
   CAIRO_TEXT_CLUSTER_FLAG_BACKWARD = 0x00000001
} cairo_text_cluster_flags_t;
# 1174 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct {
   double x_bearing;
   double y_bearing;
   double width;
   double height;
   double x_advance;
   double y_advance;
} cairo_text_extents_t;
# 1226 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct {
   double ascent;
   double descent;
   double height;
   double max_x_advance;
   double max_y_advance;
} cairo_font_extents_t;
# 1244 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_font_slant {
   CAIRO_FONT_SLANT_NORMAL,
   CAIRO_FONT_SLANT_ITALIC,
   CAIRO_FONT_SLANT_OBLIQUE
} cairo_font_slant_t;
# 1259 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_font_weight {
   CAIRO_FONT_WEIGHT_NORMAL,
   CAIRO_FONT_WEIGHT_BOLD
} cairo_font_weight_t;
# 1283 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_subpixel_order {
   CAIRO_SUBPIXEL_ORDER_DEFAULT,
   CAIRO_SUBPIXEL_ORDER_RGB,
   CAIRO_SUBPIXEL_ORDER_BGR,
   CAIRO_SUBPIXEL_ORDER_VRGB,
   CAIRO_SUBPIXEL_ORDER_VBGR
} cairo_subpixel_order_t;
# 1315 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_hint_style {
   CAIRO_HINT_STYLE_DEFAULT,
   CAIRO_HINT_STYLE_NONE,
   CAIRO_HINT_STYLE_SLIGHT,
   CAIRO_HINT_STYLE_MEDIUM,
   CAIRO_HINT_STYLE_FULL
} cairo_hint_style_t;
# 1338 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_hint_metrics {
   CAIRO_HINT_METRICS_DEFAULT,
   CAIRO_HINT_METRICS_OFF,
   CAIRO_HINT_METRICS_ON
} cairo_hint_metrics_t;
# 1366 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_font_options cairo_font_options_t;

cairo_font_options_t *
cairo_font_options_create (void);

cairo_font_options_t *
cairo_font_options_copy (const cairo_font_options_t *original);

void
cairo_font_options_destroy (cairo_font_options_t *options);

cairo_status_t
cairo_font_options_status (cairo_font_options_t *options);

void
cairo_font_options_merge (cairo_font_options_t *options,
    const cairo_font_options_t *other);
cairo_bool_t
cairo_font_options_equal (const cairo_font_options_t *options,
    const cairo_font_options_t *other);

unsigned long
cairo_font_options_hash (const cairo_font_options_t *options);

void
cairo_font_options_set_antialias (cairo_font_options_t *options,
     cairo_antialias_t antialias);
cairo_antialias_t
cairo_font_options_get_antialias (const cairo_font_options_t *options);

void
cairo_font_options_set_subpixel_order (cairo_font_options_t *options,
          cairo_subpixel_order_t subpixel_order);
cairo_subpixel_order_t
cairo_font_options_get_subpixel_order (const cairo_font_options_t *options);

void
cairo_font_options_set_hint_style (cairo_font_options_t *options,
      cairo_hint_style_t hint_style);
cairo_hint_style_t
cairo_font_options_get_hint_style (const cairo_font_options_t *options);

void
cairo_font_options_set_hint_metrics (cairo_font_options_t *options,
        cairo_hint_metrics_t hint_metrics);
cairo_hint_metrics_t
cairo_font_options_get_hint_metrics (const cairo_font_options_t *options);




void
cairo_select_font_face (cairo_t *cr,
  const char *family,
  cairo_font_slant_t slant,
  cairo_font_weight_t weight);

void
cairo_set_font_size (cairo_t *cr, double size);

void
cairo_set_font_matrix (cairo_t *cr,
        const cairo_matrix_t *matrix);

void
cairo_get_font_matrix (cairo_t *cr,
        cairo_matrix_t *matrix);

void
cairo_set_font_options (cairo_t *cr,
  const cairo_font_options_t *options);

void
cairo_get_font_options (cairo_t *cr,
  cairo_font_options_t *options);

void
cairo_set_font_face (cairo_t *cr, cairo_font_face_t *font_face);

cairo_font_face_t *
cairo_get_font_face (cairo_t *cr);

void
cairo_set_scaled_font (cairo_t *cr,
        const cairo_scaled_font_t *scaled_font);

cairo_scaled_font_t *
cairo_get_scaled_font (cairo_t *cr);

void
cairo_show_text (cairo_t *cr, const char *utf8);

void
cairo_show_glyphs (cairo_t *cr, const cairo_glyph_t *glyphs, int num_glyphs);

void
cairo_show_text_glyphs (cairo_t *cr,
  const char *utf8,
  int utf8_len,
  const cairo_glyph_t *glyphs,
  int num_glyphs,
  const cairo_text_cluster_t *clusters,
  int num_clusters,
  cairo_text_cluster_flags_t cluster_flags);

void
cairo_text_path (cairo_t *cr, const char *utf8);

void
cairo_glyph_path (cairo_t *cr, const cairo_glyph_t *glyphs, int num_glyphs);

void
cairo_text_extents (cairo_t *cr,
     const char *utf8,
     cairo_text_extents_t *extents);

void
cairo_glyph_extents (cairo_t *cr,
      const cairo_glyph_t *glyphs,
      int num_glyphs,
      cairo_text_extents_t *extents);

void
cairo_font_extents (cairo_t *cr,
     cairo_font_extents_t *extents);



cairo_font_face_t *
cairo_font_face_reference (cairo_font_face_t *font_face);

void
cairo_font_face_destroy (cairo_font_face_t *font_face);

unsigned int
cairo_font_face_get_reference_count (cairo_font_face_t *font_face);

cairo_status_t
cairo_font_face_status (cairo_font_face_t *font_face);
# 1546 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_font_type {
   CAIRO_FONT_TYPE_TOY,
   CAIRO_FONT_TYPE_FT,
   CAIRO_FONT_TYPE_WIN32,
   CAIRO_FONT_TYPE_QUARTZ,
   CAIRO_FONT_TYPE_USER
} cairo_font_type_t;

cairo_font_type_t
cairo_font_face_get_type (cairo_font_face_t *font_face);

void *
cairo_font_face_get_user_data (cairo_font_face_t *font_face,
         const cairo_user_data_key_t *key);

cairo_status_t
cairo_font_face_set_user_data (cairo_font_face_t *font_face,
         const cairo_user_data_key_t *key,
         void *user_data,
         cairo_destroy_func_t destroy);



cairo_scaled_font_t *
cairo_scaled_font_create (cairo_font_face_t *font_face,
    const cairo_matrix_t *font_matrix,
    const cairo_matrix_t *ctm,
    const cairo_font_options_t *options);

cairo_scaled_font_t *
cairo_scaled_font_reference (cairo_scaled_font_t *scaled_font);

void
cairo_scaled_font_destroy (cairo_scaled_font_t *scaled_font);

unsigned int
cairo_scaled_font_get_reference_count (cairo_scaled_font_t *scaled_font);

cairo_status_t
cairo_scaled_font_status (cairo_scaled_font_t *scaled_font);

cairo_font_type_t
cairo_scaled_font_get_type (cairo_scaled_font_t *scaled_font);

void *
cairo_scaled_font_get_user_data (cairo_scaled_font_t *scaled_font,
    const cairo_user_data_key_t *key);

cairo_status_t
cairo_scaled_font_set_user_data (cairo_scaled_font_t *scaled_font,
    const cairo_user_data_key_t *key,
    void *user_data,
    cairo_destroy_func_t destroy);

void
cairo_scaled_font_extents (cairo_scaled_font_t *scaled_font,
     cairo_font_extents_t *extents);

void
cairo_scaled_font_text_extents (cairo_scaled_font_t *scaled_font,
   const char *utf8,
   cairo_text_extents_t *extents);

void
cairo_scaled_font_glyph_extents (cairo_scaled_font_t *scaled_font,
    const cairo_glyph_t *glyphs,
    int num_glyphs,
    cairo_text_extents_t *extents);

cairo_status_t
cairo_scaled_font_text_to_glyphs (cairo_scaled_font_t *scaled_font,
     double x,
     double y,
     const char *utf8,
     int utf8_len,
     cairo_glyph_t **glyphs,
     int *num_glyphs,
     cairo_text_cluster_t **clusters,
     int *num_clusters,
     cairo_text_cluster_flags_t *cluster_flags);

cairo_font_face_t *
cairo_scaled_font_get_font_face (cairo_scaled_font_t *scaled_font);

void
cairo_scaled_font_get_font_matrix (cairo_scaled_font_t *scaled_font,
      cairo_matrix_t *font_matrix);

void
cairo_scaled_font_get_ctm (cairo_scaled_font_t *scaled_font,
     cairo_matrix_t *ctm);

void
cairo_scaled_font_get_scale_matrix (cairo_scaled_font_t *scaled_font,
       cairo_matrix_t *scale_matrix);

void
cairo_scaled_font_get_font_options (cairo_scaled_font_t *scaled_font,
       cairo_font_options_t *options);




cairo_font_face_t *
cairo_toy_font_face_create (const char *family,
      cairo_font_slant_t slant,
      cairo_font_weight_t weight);

const char *
cairo_toy_font_face_get_family (cairo_font_face_t *font_face);

cairo_font_slant_t
cairo_toy_font_face_get_slant (cairo_font_face_t *font_face);

cairo_font_weight_t
cairo_toy_font_face_get_weight (cairo_font_face_t *font_face);




cairo_font_face_t *
cairo_user_font_face_create (void);
# 1703 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef cairo_status_t (*cairo_user_scaled_font_init_func_t) (cairo_scaled_font_t *scaled_font,
            cairo_t *cr,
            cairo_font_extents_t *extents);
# 1750 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef cairo_status_t (*cairo_user_scaled_font_render_glyph_func_t) (cairo_scaled_font_t *scaled_font,
             unsigned long glyph,
             cairo_t *cr,
             cairo_text_extents_t *extents);
# 1820 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef cairo_status_t (*cairo_user_scaled_font_text_to_glyphs_func_t) (cairo_scaled_font_t *scaled_font,
        const char *utf8,
        int utf8_len,
        cairo_glyph_t **glyphs,
        int *num_glyphs,
        cairo_text_cluster_t **clusters,
        int *num_clusters,
        cairo_text_cluster_flags_t *cluster_flags);
# 1867 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef cairo_status_t (*cairo_user_scaled_font_unicode_to_glyph_func_t) (cairo_scaled_font_t *scaled_font,
          unsigned long unicode,
          unsigned long *glyph_index);



void
cairo_user_font_face_set_init_func (cairo_font_face_t *font_face,
       cairo_user_scaled_font_init_func_t init_func);

void
cairo_user_font_face_set_render_glyph_func (cairo_font_face_t *font_face,
        cairo_user_scaled_font_render_glyph_func_t render_glyph_func);

void
cairo_user_font_face_set_text_to_glyphs_func (cairo_font_face_t *font_face,
          cairo_user_scaled_font_text_to_glyphs_func_t text_to_glyphs_func);

void
cairo_user_font_face_set_unicode_to_glyph_func (cairo_font_face_t *font_face,
            cairo_user_scaled_font_unicode_to_glyph_func_t unicode_to_glyph_func);



cairo_user_scaled_font_init_func_t
cairo_user_font_face_get_init_func (cairo_font_face_t *font_face);

cairo_user_scaled_font_render_glyph_func_t
cairo_user_font_face_get_render_glyph_func (cairo_font_face_t *font_face);

cairo_user_scaled_font_text_to_glyphs_func_t
cairo_user_font_face_get_text_to_glyphs_func (cairo_font_face_t *font_face);

cairo_user_scaled_font_unicode_to_glyph_func_t
cairo_user_font_face_get_unicode_to_glyph_func (cairo_font_face_t *font_face);




cairo_operator_t
cairo_get_operator (cairo_t *cr);

cairo_pattern_t *
cairo_get_source (cairo_t *cr);

double
cairo_get_tolerance (cairo_t *cr);

cairo_antialias_t
cairo_get_antialias (cairo_t *cr);

cairo_bool_t
cairo_has_current_point (cairo_t *cr);

void
cairo_get_current_point (cairo_t *cr, double *x, double *y);

cairo_fill_rule_t
cairo_get_fill_rule (cairo_t *cr);

double
cairo_get_line_width (cairo_t *cr);

cairo_line_cap_t
cairo_get_line_cap (cairo_t *cr);

cairo_line_join_t
cairo_get_line_join (cairo_t *cr);

double
cairo_get_miter_limit (cairo_t *cr);

int
cairo_get_dash_count (cairo_t *cr);

void
cairo_get_dash (cairo_t *cr, double *dashes, double *offset);

void
cairo_get_matrix (cairo_t *cr, cairo_matrix_t *matrix);

cairo_surface_t *
cairo_get_target (cairo_t *cr);

cairo_surface_t *
cairo_get_group_target (cairo_t *cr);
# 1967 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_path_data_type {
   CAIRO_PATH_MOVE_TO,
   CAIRO_PATH_LINE_TO,
   CAIRO_PATH_CURVE_TO,
   CAIRO_PATH_CLOSE_PATH
} cairo_path_data_type_t;
# 2042 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef union _cairo_path_data_t cairo_path_data_t;
union _cairo_path_data_t {
   struct {
cairo_path_data_type_t type;
int length;
   } header;
   struct {
double x, y;
   } point;
};
# 2074 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct cairo_path {
   cairo_status_t status;
   cairo_path_data_t *data;
   int num_data;
} cairo_path_t;

cairo_path_t *
cairo_copy_path (cairo_t *cr);

cairo_path_t *
cairo_copy_path_flat (cairo_t *cr);

void
cairo_append_path (cairo_t *cr,
    const cairo_path_t *path);

void
cairo_path_destroy (cairo_path_t *path);



cairo_status_t
cairo_status (cairo_t *cr);

const char *
cairo_status_to_string (cairo_status_t status);



cairo_device_t *
cairo_device_reference (cairo_device_t *device);
# 2137 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_device_type {
   CAIRO_DEVICE_TYPE_DRM,
   CAIRO_DEVICE_TYPE_GL,
   CAIRO_DEVICE_TYPE_SCRIPT,
   CAIRO_DEVICE_TYPE_XCB,
   CAIRO_DEVICE_TYPE_XLIB,
   CAIRO_DEVICE_TYPE_XML,
   CAIRO_DEVICE_TYPE_COGL,
   CAIRO_DEVICE_TYPE_WIN32,

   CAIRO_DEVICE_TYPE_INVALID = -1
} cairo_device_type_t;

cairo_device_type_t
cairo_device_get_type (cairo_device_t *device);

cairo_status_t
cairo_device_status (cairo_device_t *device);

cairo_status_t
cairo_device_acquire (cairo_device_t *device);

void
cairo_device_release (cairo_device_t *device);

void
cairo_device_flush (cairo_device_t *device);

void
cairo_device_finish (cairo_device_t *device);

void
cairo_device_destroy (cairo_device_t *device);

unsigned int
cairo_device_get_reference_count (cairo_device_t *device);

void *
cairo_device_get_user_data (cairo_device_t *device,
      const cairo_user_data_key_t *key);

cairo_status_t
cairo_device_set_user_data (cairo_device_t *device,
      const cairo_user_data_key_t *key,
      void *user_data,
      cairo_destroy_func_t destroy);




cairo_surface_t *
cairo_surface_create_similar (cairo_surface_t *other,
        cairo_content_t content,
        int width,
        int height);

cairo_surface_t *
cairo_surface_create_similar_image (cairo_surface_t *other,
       cairo_format_t format,
       int width,
       int height);

cairo_surface_t *
cairo_surface_map_to_image (cairo_surface_t *surface,
      const cairo_rectangle_int_t *extents);

void
cairo_surface_unmap_image (cairo_surface_t *surface,
     cairo_surface_t *image);

cairo_surface_t *
cairo_surface_create_for_rectangle (cairo_surface_t *target,
                                   double x,
                                   double y,
                                   double width,
                                   double height);
# 2223 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum {
CAIRO_SURFACE_OBSERVER_NORMAL = 0,
CAIRO_SURFACE_OBSERVER_RECORD_OPERATIONS = 0x1
} cairo_surface_observer_mode_t;

cairo_surface_t *
cairo_surface_create_observer (cairo_surface_t *target,
         cairo_surface_observer_mode_t mode);

typedef void (*cairo_surface_observer_callback_t) (cairo_surface_t *observer,
        cairo_surface_t *target,
        void *data);

cairo_status_t
cairo_surface_observer_add_paint_callback (cairo_surface_t *abstract_surface,
       cairo_surface_observer_callback_t func,
       void *data);

cairo_status_t
cairo_surface_observer_add_mask_callback (cairo_surface_t *abstract_surface,
      cairo_surface_observer_callback_t func,
      void *data);

cairo_status_t
cairo_surface_observer_add_fill_callback (cairo_surface_t *abstract_surface,
      cairo_surface_observer_callback_t func,
      void *data);

cairo_status_t
cairo_surface_observer_add_stroke_callback (cairo_surface_t *abstract_surface,
        cairo_surface_observer_callback_t func,
        void *data);

cairo_status_t
cairo_surface_observer_add_glyphs_callback (cairo_surface_t *abstract_surface,
        cairo_surface_observer_callback_t func,
        void *data);

cairo_status_t
cairo_surface_observer_add_flush_callback (cairo_surface_t *abstract_surface,
       cairo_surface_observer_callback_t func,
       void *data);

cairo_status_t
cairo_surface_observer_add_finish_callback (cairo_surface_t *abstract_surface,
        cairo_surface_observer_callback_t func,
        void *data);

cairo_status_t
cairo_surface_observer_print (cairo_surface_t *surface,
        cairo_write_func_t write_func,
        void *closure);
double
cairo_surface_observer_elapsed (cairo_surface_t *surface);

cairo_status_t
cairo_device_observer_print (cairo_device_t *device,
       cairo_write_func_t write_func,
       void *closure);

double
cairo_device_observer_elapsed (cairo_device_t *device);

double
cairo_device_observer_paint_elapsed (cairo_device_t *device);

double
cairo_device_observer_mask_elapsed (cairo_device_t *device);

double
cairo_device_observer_fill_elapsed (cairo_device_t *device);

double
cairo_device_observer_stroke_elapsed (cairo_device_t *device);

double
cairo_device_observer_glyphs_elapsed (cairo_device_t *device);

cairo_surface_t *
cairo_surface_reference (cairo_surface_t *surface);

void
cairo_surface_finish (cairo_surface_t *surface);

void
cairo_surface_destroy (cairo_surface_t *surface);

cairo_device_t *
cairo_surface_get_device (cairo_surface_t *surface);

unsigned int
cairo_surface_get_reference_count (cairo_surface_t *surface);

cairo_status_t
cairo_surface_status (cairo_surface_t *surface);
# 2372 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_surface_type {
   CAIRO_SURFACE_TYPE_IMAGE,
   CAIRO_SURFACE_TYPE_PDF,
   CAIRO_SURFACE_TYPE_PS,
   CAIRO_SURFACE_TYPE_XLIB,
   CAIRO_SURFACE_TYPE_XCB,
   CAIRO_SURFACE_TYPE_GLITZ,
   CAIRO_SURFACE_TYPE_QUARTZ,
   CAIRO_SURFACE_TYPE_WIN32,
   CAIRO_SURFACE_TYPE_BEOS,
   CAIRO_SURFACE_TYPE_DIRECTFB,
   CAIRO_SURFACE_TYPE_SVG,
   CAIRO_SURFACE_TYPE_OS2,
   CAIRO_SURFACE_TYPE_WIN32_PRINTING,
   CAIRO_SURFACE_TYPE_QUARTZ_IMAGE,
   CAIRO_SURFACE_TYPE_SCRIPT,
   CAIRO_SURFACE_TYPE_QT,
   CAIRO_SURFACE_TYPE_RECORDING,
   CAIRO_SURFACE_TYPE_VG,
   CAIRO_SURFACE_TYPE_GL,
   CAIRO_SURFACE_TYPE_DRM,
   CAIRO_SURFACE_TYPE_TEE,
   CAIRO_SURFACE_TYPE_XML,
   CAIRO_SURFACE_TYPE_SKIA,
   CAIRO_SURFACE_TYPE_SUBSURFACE,
   CAIRO_SURFACE_TYPE_COGL
} cairo_surface_type_t;

cairo_surface_type_t
cairo_surface_get_type (cairo_surface_t *surface);

cairo_content_t
cairo_surface_get_content (cairo_surface_t *surface);



cairo_status_t
cairo_surface_write_to_png (cairo_surface_t *surface,
      const char *filename);

cairo_status_t
cairo_surface_write_to_png_stream (cairo_surface_t *surface,
      cairo_write_func_t write_func,
      void *closure);



void *
cairo_surface_get_user_data (cairo_surface_t *surface,
       const cairo_user_data_key_t *key);

cairo_status_t
cairo_surface_set_user_data (cairo_surface_t *surface,
       const cairo_user_data_key_t *key,
       void *user_data,
       cairo_destroy_func_t destroy);
# 2438 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
void
cairo_surface_get_mime_data (cairo_surface_t *surface,
                            const char *mime_type,
                            const unsigned char **data,
                            unsigned long *length);

cairo_status_t
cairo_surface_set_mime_data (cairo_surface_t *surface,
                            const char *mime_type,
                            const unsigned char *data,
                            unsigned long length,
       cairo_destroy_func_t destroy,
       void *closure);

cairo_bool_t
cairo_surface_supports_mime_type (cairo_surface_t *surface,
     const char *mime_type);

void
cairo_surface_get_font_options (cairo_surface_t *surface,
   cairo_font_options_t *options);

void
cairo_surface_flush (cairo_surface_t *surface);

void
cairo_surface_mark_dirty (cairo_surface_t *surface);

void
cairo_surface_mark_dirty_rectangle (cairo_surface_t *surface,
       int x,
       int y,
       int width,
       int height);

void
cairo_surface_set_device_scale (cairo_surface_t *surface,
   double x_scale,
   double y_scale);

void
cairo_surface_get_device_scale (cairo_surface_t *surface,
   double *x_scale,
   double *y_scale);

void
cairo_surface_set_device_offset (cairo_surface_t *surface,
    double x_offset,
    double y_offset);

void
cairo_surface_get_device_offset (cairo_surface_t *surface,
    double *x_offset,
    double *y_offset);

void
cairo_surface_set_fallback_resolution (cairo_surface_t *surface,
          double x_pixels_per_inch,
          double y_pixels_per_inch);

void
cairo_surface_get_fallback_resolution (cairo_surface_t *surface,
          double *x_pixels_per_inch,
          double *y_pixels_per_inch);

void
cairo_surface_copy_page (cairo_surface_t *surface);

void
cairo_surface_show_page (cairo_surface_t *surface);

cairo_bool_t
cairo_surface_has_show_text_glyphs (cairo_surface_t *surface);



cairo_surface_t *
cairo_image_surface_create (cairo_format_t format,
      int width,
      int height);

int
cairo_format_stride_for_width (cairo_format_t format,
         int width);

cairo_surface_t *
cairo_image_surface_create_for_data (unsigned char *data,
        cairo_format_t format,
        int width,
        int height,
        int stride);

unsigned char *
cairo_image_surface_get_data (cairo_surface_t *surface);

cairo_format_t
cairo_image_surface_get_format (cairo_surface_t *surface);

int
cairo_image_surface_get_width (cairo_surface_t *surface);

int
cairo_image_surface_get_height (cairo_surface_t *surface);

int
cairo_image_surface_get_stride (cairo_surface_t *surface);



cairo_surface_t *
cairo_image_surface_create_from_png (const char *filename);

cairo_surface_t *
cairo_image_surface_create_from_png_stream (cairo_read_func_t read_func,
        void *closure);





cairo_surface_t *
cairo_recording_surface_create (cairo_content_t content,
                               const cairo_rectangle_t *extents);

void
cairo_recording_surface_ink_extents (cairo_surface_t *surface,
                                    double *x0,
                                    double *y0,
                                    double *width,
                                    double *height);

cairo_bool_t
cairo_recording_surface_get_extents (cairo_surface_t *surface,
        cairo_rectangle_t *extents);
# 2599 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef cairo_surface_t *
(*cairo_raster_source_acquire_func_t) (cairo_pattern_t *pattern,
          void *callback_data,
          cairo_surface_t *target,
          const cairo_rectangle_int_t *extents);
# 2618 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef void
(*cairo_raster_source_release_func_t) (cairo_pattern_t *pattern,
          void *callback_data,
          cairo_surface_t *surface);
# 2639 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef cairo_status_t
(*cairo_raster_source_snapshot_func_t) (cairo_pattern_t *pattern,
    void *callback_data);
# 2657 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef cairo_status_t
(*cairo_raster_source_copy_func_t) (cairo_pattern_t *pattern,
       void *callback_data,
       const cairo_pattern_t *other);
# 2672 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef void
(*cairo_raster_source_finish_func_t) (cairo_pattern_t *pattern,
         void *callback_data);

cairo_pattern_t *
cairo_pattern_create_raster_source (void *user_data,
       cairo_content_t content,
       int width, int height);

void
cairo_raster_source_pattern_set_callback_data (cairo_pattern_t *pattern,
           void *data);

void *
cairo_raster_source_pattern_get_callback_data (cairo_pattern_t *pattern);

void
cairo_raster_source_pattern_set_acquire (cairo_pattern_t *pattern,
     cairo_raster_source_acquire_func_t acquire,
     cairo_raster_source_release_func_t release);

void
cairo_raster_source_pattern_get_acquire (cairo_pattern_t *pattern,
     cairo_raster_source_acquire_func_t *acquire,
     cairo_raster_source_release_func_t *release);
void
cairo_raster_source_pattern_set_snapshot (cairo_pattern_t *pattern,
      cairo_raster_source_snapshot_func_t snapshot);

cairo_raster_source_snapshot_func_t
cairo_raster_source_pattern_get_snapshot (cairo_pattern_t *pattern);

void
cairo_raster_source_pattern_set_copy (cairo_pattern_t *pattern,
         cairo_raster_source_copy_func_t copy);

cairo_raster_source_copy_func_t
cairo_raster_source_pattern_get_copy (cairo_pattern_t *pattern);

void
cairo_raster_source_pattern_set_finish (cairo_pattern_t *pattern,
    cairo_raster_source_finish_func_t finish);

cairo_raster_source_finish_func_t
cairo_raster_source_pattern_get_finish (cairo_pattern_t *pattern);



cairo_pattern_t *
cairo_pattern_create_rgb (double red, double green, double blue);

cairo_pattern_t *
cairo_pattern_create_rgba (double red, double green, double blue,
     double alpha);

cairo_pattern_t *
cairo_pattern_create_for_surface (cairo_surface_t *surface);

cairo_pattern_t *
cairo_pattern_create_linear (double x0, double y0,
       double x1, double y1);

cairo_pattern_t *
cairo_pattern_create_radial (double cx0, double cy0, double radius0,
       double cx1, double cy1, double radius1);

cairo_pattern_t *
cairo_pattern_create_mesh (void);

cairo_pattern_t *
cairo_pattern_reference (cairo_pattern_t *pattern);

void
cairo_pattern_destroy (cairo_pattern_t *pattern);

unsigned int
cairo_pattern_get_reference_count (cairo_pattern_t *pattern);

cairo_status_t
cairo_pattern_status (cairo_pattern_t *pattern);

void *
cairo_pattern_get_user_data (cairo_pattern_t *pattern,
       const cairo_user_data_key_t *key);

cairo_status_t
cairo_pattern_set_user_data (cairo_pattern_t *pattern,
       const cairo_user_data_key_t *key,
       void *user_data,
       cairo_destroy_func_t destroy);
# 2795 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_pattern_type {
   CAIRO_PATTERN_TYPE_SOLID,
   CAIRO_PATTERN_TYPE_SURFACE,
   CAIRO_PATTERN_TYPE_LINEAR,
   CAIRO_PATTERN_TYPE_RADIAL,
   CAIRO_PATTERN_TYPE_MESH,
   CAIRO_PATTERN_TYPE_RASTER_SOURCE
} cairo_pattern_type_t;

cairo_pattern_type_t
cairo_pattern_get_type (cairo_pattern_t *pattern);

void
cairo_pattern_add_color_stop_rgb (cairo_pattern_t *pattern,
     double offset,
     double red, double green, double blue);

void
cairo_pattern_add_color_stop_rgba (cairo_pattern_t *pattern,
      double offset,
      double red, double green, double blue,
      double alpha);

void
cairo_mesh_pattern_begin_patch (cairo_pattern_t *pattern);

void
cairo_mesh_pattern_end_patch (cairo_pattern_t *pattern);

void
cairo_mesh_pattern_curve_to (cairo_pattern_t *pattern,
       double x1, double y1,
       double x2, double y2,
       double x3, double y3);

void
cairo_mesh_pattern_line_to (cairo_pattern_t *pattern,
      double x, double y);

void
cairo_mesh_pattern_move_to (cairo_pattern_t *pattern,
      double x, double y);

void
cairo_mesh_pattern_set_control_point (cairo_pattern_t *pattern,
         unsigned int point_num,
         double x, double y);

void
cairo_mesh_pattern_set_corner_color_rgb (cairo_pattern_t *pattern,
     unsigned int corner_num,
     double red, double green, double blue);

void
cairo_mesh_pattern_set_corner_color_rgba (cairo_pattern_t *pattern,
      unsigned int corner_num,
      double red, double green, double blue,
      double alpha);

void
cairo_pattern_set_matrix (cairo_pattern_t *pattern,
    const cairo_matrix_t *matrix);

void
cairo_pattern_get_matrix (cairo_pattern_t *pattern,
    cairo_matrix_t *matrix);
# 2887 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_extend {
   CAIRO_EXTEND_NONE,
   CAIRO_EXTEND_REPEAT,
   CAIRO_EXTEND_REFLECT,
   CAIRO_EXTEND_PAD
} cairo_extend_t;

void
cairo_pattern_set_extend (cairo_pattern_t *pattern, cairo_extend_t extend);

cairo_extend_t
cairo_pattern_get_extend (cairo_pattern_t *pattern);
# 2920 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_filter {
   CAIRO_FILTER_FAST,
   CAIRO_FILTER_GOOD,
   CAIRO_FILTER_BEST,
   CAIRO_FILTER_NEAREST,
   CAIRO_FILTER_BILINEAR,
   CAIRO_FILTER_GAUSSIAN
} cairo_filter_t;

void
cairo_pattern_set_filter (cairo_pattern_t *pattern, cairo_filter_t filter);

cairo_filter_t
cairo_pattern_get_filter (cairo_pattern_t *pattern);

cairo_status_t
cairo_pattern_get_rgba (cairo_pattern_t *pattern,
  double *red, double *green,
  double *blue, double *alpha);

cairo_status_t
cairo_pattern_get_surface (cairo_pattern_t *pattern,
     cairo_surface_t **surface);


cairo_status_t
cairo_pattern_get_color_stop_rgba (cairo_pattern_t *pattern,
      int index, double *offset,
      double *red, double *green,
      double *blue, double *alpha);

cairo_status_t
cairo_pattern_get_color_stop_count (cairo_pattern_t *pattern,
       int *count);

cairo_status_t
cairo_pattern_get_linear_points (cairo_pattern_t *pattern,
    double *x0, double *y0,
    double *x1, double *y1);

cairo_status_t
cairo_pattern_get_radial_circles (cairo_pattern_t *pattern,
     double *x0, double *y0, double *r0,
     double *x1, double *y1, double *r1);

cairo_status_t
cairo_mesh_pattern_get_patch_count (cairo_pattern_t *pattern,
       unsigned int *count);

cairo_path_t *
cairo_mesh_pattern_get_path (cairo_pattern_t *pattern,
       unsigned int patch_num);

cairo_status_t
cairo_mesh_pattern_get_corner_color_rgba (cairo_pattern_t *pattern,
      unsigned int patch_num,
      unsigned int corner_num,
      double *red, double *green,
      double *blue, double *alpha);

cairo_status_t
cairo_mesh_pattern_get_control_point (cairo_pattern_t *pattern,
         unsigned int patch_num,
         unsigned int point_num,
         double *x, double *y);



void
cairo_matrix_init (cairo_matrix_t *matrix,
    double xx, double yx,
    double xy, double yy,
    double x0, double y0);

void
cairo_matrix_init_identity (cairo_matrix_t *matrix);

void
cairo_matrix_init_translate (cairo_matrix_t *matrix,
       double tx, double ty);

void
cairo_matrix_init_scale (cairo_matrix_t *matrix,
   double sx, double sy);

void
cairo_matrix_init_rotate (cairo_matrix_t *matrix,
    double radians);

void
cairo_matrix_translate (cairo_matrix_t *matrix, double tx, double ty);

void
cairo_matrix_scale (cairo_matrix_t *matrix, double sx, double sy);

void
cairo_matrix_rotate (cairo_matrix_t *matrix, double radians);

cairo_status_t
cairo_matrix_invert (cairo_matrix_t *matrix);

void
cairo_matrix_multiply (cairo_matrix_t *result,
        const cairo_matrix_t *a,
        const cairo_matrix_t *b);

void
cairo_matrix_transform_distance (const cairo_matrix_t *matrix,
    double *dx, double *dy);

void
cairo_matrix_transform_point (const cairo_matrix_t *matrix,
        double *x, double *y);
# 3049 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef struct _cairo_region cairo_region_t;
# 3062 "/tmp/graphics/geeqie/work/.buildlink/include/cairo/cairo.h"
typedef enum _cairo_region_overlap {
   CAIRO_REGION_OVERLAP_IN,
   CAIRO_REGION_OVERLAP_OUT,
   CAIRO_REGION_OVERLAP_PART
} cairo_region_overlap_t;

cairo_region_t *
cairo_region_create (void);

cairo_region_t *
cairo_region_create_rectangle (const cairo_rectangle_int_t *rectangle);

cairo_region_t *
cairo_region_create_rectangles (const cairo_rectangle_int_t *rects,
   int count);

cairo_region_t *
cairo_region_copy (const cairo_region_t *original);

cairo_region_t *
cairo_region_reference (cairo_region_t *region);

void
cairo_region_destroy (cairo_region_t *region);

cairo_bool_t
cairo_region_equal (const cairo_region_t *a, const cairo_region_t *b);

cairo_status_t
cairo_region_status (const cairo_region_t *region);

void
cairo_region_get_extents (const cairo_region_t *region,
    cairo_rectangle_int_t *extents);

int
cairo_region_num_rectangles (const cairo_region_t *region);

void
cairo_region_get_rectangle (const cairo_region_t *region,
      int nth,
      cairo_rectangle_int_t *rectangle);

cairo_bool_t
cairo_region_is_empty (const cairo_region_t *region);

cairo_region_overlap_t
cairo_region_contains_rectangle (const cairo_region_t *region,
    const cairo_rectangle_int_t *rectangle);

cairo_bool_t
cairo_region_contains_point (const cairo_region_t *region, int x, int y);

void
cairo_region_translate (cairo_region_t *region, int dx, int dy);

cairo_status_t
cairo_region_subtract (cairo_region_t *dst, const cairo_region_t *other);

cairo_status_t
cairo_region_subtract_rectangle (cairo_region_t *dst,
    const cairo_rectangle_int_t *rectangle);

cairo_status_t
cairo_region_intersect (cairo_region_t *dst, const cairo_region_t *other);

cairo_status_t
cairo_region_intersect_rectangle (cairo_region_t *dst,
     const cairo_rectangle_int_t *rectangle);

cairo_status_t
cairo_region_union (cairo_region_t *dst, const cairo_region_t *other);

cairo_status_t
cairo_region_union_rectangle (cairo_region_t *dst,
        const cairo_rectangle_int_t *rectangle);

cairo_status_t
cairo_region_xor (cairo_region_t *dst, const cairo_region_t *other);

cairo_status_t
cairo_region_xor_rectangle (cairo_region_t *dst,
      const cairo_rectangle_int_t *rectangle);


void
cairo_debug_reset_static_data (void);


}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkscreen.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdktypes.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdktypes.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 1
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h" 1
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h" 1
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-coverage.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-coverage.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-version-macros.h" 1
# 23 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-version-macros.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-features.h" 1
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-version-macros.h" 2
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-coverage.h" 2

extern "C" {







typedef struct _PangoCoverage PangoCoverage;
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-coverage.h"
typedef enum {
 PANGO_COVERAGE_NONE,
 PANGO_COVERAGE_FALLBACK,
 PANGO_COVERAGE_APPROXIMATE,
 PANGO_COVERAGE_EXACT
} PangoCoverageLevel;

extern
PangoCoverage * pango_coverage_new (void);
extern
PangoCoverage * pango_coverage_ref (PangoCoverage *coverage);
extern
void pango_coverage_unref (PangoCoverage *coverage);
extern
PangoCoverage * pango_coverage_copy (PangoCoverage *coverage);
extern
PangoCoverageLevel pango_coverage_get (PangoCoverage *coverage,
       int index_);
extern
void pango_coverage_set (PangoCoverage *coverage,
       int index_,
       PangoCoverageLevel level);
extern
void pango_coverage_max (PangoCoverage *coverage,
       PangoCoverage *other);

extern
void pango_coverage_to_bytes (PangoCoverage *coverage,
      guchar **bytes,
      int *n_bytes);
extern
PangoCoverage *pango_coverage_from_bytes (guchar *bytes,
      int n_bytes);

}
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-types.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-types.h"
extern "C" {

typedef struct _PangoLogAttr PangoLogAttr;

typedef struct _PangoEngineLang PangoEngineLang;
typedef struct _PangoEngineShape PangoEngineShape;

typedef struct _PangoFont PangoFont;
typedef struct _PangoFontMap PangoFontMap;

typedef struct _PangoRectangle PangoRectangle;
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-types.h"
typedef guint32 PangoGlyph;
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-types.h"
extern
int pango_units_from_double (double d) __attribute__((__const__));
extern
double pango_units_to_double (int i) __attribute__((__const__));
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-types.h"
struct _PangoRectangle
{
 int x;
 int y;
 int width;
 int height;
};
# 191 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-types.h"
extern
void pango_extents_to_pixels (PangoRectangle *inclusive,
        PangoRectangle *nearest);


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-gravity.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-gravity.h"
extern "C" {
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-gravity.h"
typedef enum {
 PANGO_GRAVITY_SOUTH,
 PANGO_GRAVITY_EAST,
 PANGO_GRAVITY_NORTH,
 PANGO_GRAVITY_WEST,
 PANGO_GRAVITY_AUTO
} PangoGravity;
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-gravity.h"
typedef enum {
 PANGO_GRAVITY_HINT_NATURAL,
 PANGO_GRAVITY_HINT_STRONG,
 PANGO_GRAVITY_HINT_LINE
} PangoGravityHint;
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-gravity.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-matrix.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-matrix.h"
extern "C" {

typedef struct _PangoMatrix PangoMatrix;
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-matrix.h"
struct _PangoMatrix
{
 double xx;
 double xy;
 double yx;
 double yy;
 double x0;
 double y0;
};
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-matrix.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-types.h" 1
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-matrix.h" 2

extern
GType pango_matrix_get_type (void) __attribute__((__const__));

extern
PangoMatrix *pango_matrix_copy (const PangoMatrix *matrix);
extern
void pango_matrix_free (PangoMatrix *matrix);

extern
void pango_matrix_translate (PangoMatrix *matrix,
       double tx,
       double ty);
extern
void pango_matrix_scale (PangoMatrix *matrix,
       double scale_x,
       double scale_y);
extern
void pango_matrix_rotate (PangoMatrix *matrix,
       double degrees);
extern
void pango_matrix_concat (PangoMatrix *matrix,
       const PangoMatrix *new_matrix);
extern
void pango_matrix_transform_point (const PangoMatrix *matrix,
         double *x,
         double *y);
extern
void pango_matrix_transform_distance (const PangoMatrix *matrix,
         double *dx,
         double *dy);
extern
void pango_matrix_transform_rectangle (const PangoMatrix *matrix,
          PangoRectangle *rect);
extern
void pango_matrix_transform_pixel_rectangle (const PangoMatrix *matrix,
         PangoRectangle *rect);
extern
double pango_matrix_get_font_scale_factor (const PangoMatrix *matrix) __attribute__((__pure__));
extern
void pango_matrix_get_font_scale_factors (const PangoMatrix *matrix,
      double *xscale, double *yscale);


}
# 112 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-gravity.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-script.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-script.h"
extern "C" {







typedef struct _PangoScriptIter PangoScriptIter;
# 168 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-script.h"
typedef enum {
     PANGO_SCRIPT_INVALID_CODE = -1,
     PANGO_SCRIPT_COMMON = 0,
     PANGO_SCRIPT_INHERITED,
     PANGO_SCRIPT_ARABIC,
     PANGO_SCRIPT_ARMENIAN,
     PANGO_SCRIPT_BENGALI,
     PANGO_SCRIPT_BOPOMOFO,
     PANGO_SCRIPT_CHEROKEE,
     PANGO_SCRIPT_COPTIC,
     PANGO_SCRIPT_CYRILLIC,
     PANGO_SCRIPT_DESERET,
     PANGO_SCRIPT_DEVANAGARI,
     PANGO_SCRIPT_ETHIOPIC,
     PANGO_SCRIPT_GEORGIAN,
     PANGO_SCRIPT_GOTHIC,
     PANGO_SCRIPT_GREEK,
     PANGO_SCRIPT_GUJARATI,
     PANGO_SCRIPT_GURMUKHI,
     PANGO_SCRIPT_HAN,
     PANGO_SCRIPT_HANGUL,
     PANGO_SCRIPT_HEBREW,
     PANGO_SCRIPT_HIRAGANA,
     PANGO_SCRIPT_KANNADA,
     PANGO_SCRIPT_KATAKANA,
     PANGO_SCRIPT_KHMER,
     PANGO_SCRIPT_LAO,
     PANGO_SCRIPT_LATIN,
     PANGO_SCRIPT_MALAYALAM,
     PANGO_SCRIPT_MONGOLIAN,
     PANGO_SCRIPT_MYANMAR,
     PANGO_SCRIPT_OGHAM,
     PANGO_SCRIPT_OLD_ITALIC,
     PANGO_SCRIPT_ORIYA,
     PANGO_SCRIPT_RUNIC,
     PANGO_SCRIPT_SINHALA,
     PANGO_SCRIPT_SYRIAC,
     PANGO_SCRIPT_TAMIL,
     PANGO_SCRIPT_TELUGU,
     PANGO_SCRIPT_THAANA,
     PANGO_SCRIPT_THAI,
     PANGO_SCRIPT_TIBETAN,
     PANGO_SCRIPT_CANADIAN_ABORIGINAL,
     PANGO_SCRIPT_YI,
     PANGO_SCRIPT_TAGALOG,
     PANGO_SCRIPT_HANUNOO,
     PANGO_SCRIPT_BUHID,
     PANGO_SCRIPT_TAGBANWA,


     PANGO_SCRIPT_BRAILLE,
     PANGO_SCRIPT_CYPRIOT,
     PANGO_SCRIPT_LIMBU,
     PANGO_SCRIPT_OSMANYA,
     PANGO_SCRIPT_SHAVIAN,
     PANGO_SCRIPT_LINEAR_B,
     PANGO_SCRIPT_TAI_LE,
     PANGO_SCRIPT_UGARITIC,


     PANGO_SCRIPT_NEW_TAI_LUE,
     PANGO_SCRIPT_BUGINESE,
     PANGO_SCRIPT_GLAGOLITIC,
     PANGO_SCRIPT_TIFINAGH,
     PANGO_SCRIPT_SYLOTI_NAGRI,
     PANGO_SCRIPT_OLD_PERSIAN,
     PANGO_SCRIPT_KHAROSHTHI,


     PANGO_SCRIPT_UNKNOWN,
     PANGO_SCRIPT_BALINESE,
     PANGO_SCRIPT_CUNEIFORM,
     PANGO_SCRIPT_PHOENICIAN,
     PANGO_SCRIPT_PHAGS_PA,
     PANGO_SCRIPT_NKO,


     PANGO_SCRIPT_KAYAH_LI,
     PANGO_SCRIPT_LEPCHA,
     PANGO_SCRIPT_REJANG,
     PANGO_SCRIPT_SUNDANESE,
     PANGO_SCRIPT_SAURASHTRA,
     PANGO_SCRIPT_CHAM,
     PANGO_SCRIPT_OL_CHIKI,
     PANGO_SCRIPT_VAI,
     PANGO_SCRIPT_CARIAN,
     PANGO_SCRIPT_LYCIAN,
     PANGO_SCRIPT_LYDIAN,


     PANGO_SCRIPT_BATAK,
     PANGO_SCRIPT_BRAHMI,
     PANGO_SCRIPT_MANDAIC,


     PANGO_SCRIPT_CHAKMA,
     PANGO_SCRIPT_MEROITIC_CURSIVE,
     PANGO_SCRIPT_MEROITIC_HIEROGLYPHS,
     PANGO_SCRIPT_MIAO,
     PANGO_SCRIPT_SHARADA,
     PANGO_SCRIPT_SORA_SOMPENG,
     PANGO_SCRIPT_TAKRI,


     PANGO_SCRIPT_BASSA_VAH,
     PANGO_SCRIPT_CAUCASIAN_ALBANIAN,
     PANGO_SCRIPT_DUPLOYAN,
     PANGO_SCRIPT_ELBASAN,
     PANGO_SCRIPT_GRANTHA,
     PANGO_SCRIPT_KHOJKI,
     PANGO_SCRIPT_KHUDAWADI,
     PANGO_SCRIPT_LINEAR_A,
     PANGO_SCRIPT_MAHAJANI,
     PANGO_SCRIPT_MANICHAEAN,
     PANGO_SCRIPT_MENDE_KIKAKUI,
     PANGO_SCRIPT_MODI,
     PANGO_SCRIPT_MRO,
     PANGO_SCRIPT_NABATAEAN,
     PANGO_SCRIPT_OLD_NORTH_ARABIAN,
     PANGO_SCRIPT_OLD_PERMIC,
     PANGO_SCRIPT_PAHAWH_HMONG,
     PANGO_SCRIPT_PALMYRENE,
     PANGO_SCRIPT_PAU_CIN_HAU,
     PANGO_SCRIPT_PSALTER_PAHLAVI,
     PANGO_SCRIPT_SIDDHAM,
     PANGO_SCRIPT_TIRHUTA,
     PANGO_SCRIPT_WARANG_CITI,


     PANGO_SCRIPT_AHOM,
     PANGO_SCRIPT_ANATOLIAN_HIEROGLYPHS,
     PANGO_SCRIPT_HATRAN,
     PANGO_SCRIPT_MULTANI,
     PANGO_SCRIPT_OLD_HUNGARIAN,
     PANGO_SCRIPT_SIGNWRITING
} PangoScript;



extern
PangoScript pango_script_for_unichar (gunichar ch) __attribute__((__const__));

extern
PangoScriptIter *pango_script_iter_new (const char *text,
          int length);
extern
void pango_script_iter_get_range (PangoScriptIter *iter,
                                             const char **start,
                                             const char **end,
                                             PangoScript *script);
extern
gboolean pango_script_iter_next (PangoScriptIter *iter);
extern
void pango_script_iter_free (PangoScriptIter *iter);

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-language.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-language.h"
extern "C" {

typedef struct _PangoLanguage PangoLanguage;
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-language.h"
extern
GType pango_language_get_type (void) __attribute__((__const__));
extern
PangoLanguage *pango_language_from_string (const char *language);

extern
const char *pango_language_to_string (PangoLanguage *language) __attribute__((__const__));



extern
const char *pango_language_get_sample_string (PangoLanguage *language) __attribute__((__const__));
extern
PangoLanguage *pango_language_get_default (void) __attribute__((__const__));

extern
gboolean pango_language_matches (PangoLanguage *language,
          const char *range_list) __attribute__((__pure__));

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-script.h" 1
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-language.h" 2

extern
gboolean pango_language_includes_script (PangoLanguage *language,
          PangoScript script) __attribute__((__pure__));
extern
const PangoScript *pango_language_get_scripts (PangoLanguage *language,
          int *num_scripts);

}
# 324 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-script.h" 2

extern
PangoLanguage *pango_script_get_sample_language (PangoScript script) __attribute__((__pure__));

}
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-gravity.h" 2

extern
double pango_gravity_to_rotation (PangoGravity gravity) __attribute__((__const__));
extern
PangoGravity pango_gravity_get_for_matrix (const PangoMatrix *matrix) __attribute__((__pure__));
extern
PangoGravity pango_gravity_get_for_script (PangoScript script,
       PangoGravity base_gravity,
       PangoGravityHint hint) __attribute__((__const__));
extern
PangoGravity pango_gravity_get_for_script_and_width
      (PangoScript script,
       gboolean wide,
       PangoGravity base_gravity,
       PangoGravityHint hint) __attribute__((__const__));


}
# 197 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-types.h" 2



# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-bidi-type.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-bidi-type.h"
extern "C" {
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-bidi-type.h"
typedef enum {

 PANGO_BIDI_TYPE_L,
 PANGO_BIDI_TYPE_LRE,
 PANGO_BIDI_TYPE_LRO,
 PANGO_BIDI_TYPE_R,
 PANGO_BIDI_TYPE_AL,
 PANGO_BIDI_TYPE_RLE,
 PANGO_BIDI_TYPE_RLO,


 PANGO_BIDI_TYPE_PDF,
 PANGO_BIDI_TYPE_EN,
 PANGO_BIDI_TYPE_ES,
 PANGO_BIDI_TYPE_ET,
 PANGO_BIDI_TYPE_AN,
 PANGO_BIDI_TYPE_CS,
 PANGO_BIDI_TYPE_NSM,
 PANGO_BIDI_TYPE_BN,


 PANGO_BIDI_TYPE_B,
 PANGO_BIDI_TYPE_S,
 PANGO_BIDI_TYPE_WS,
 PANGO_BIDI_TYPE_ON
} PangoBidiType;

extern
PangoBidiType pango_bidi_type_for_unichar (gunichar ch) __attribute__((__const__));
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-bidi-type.h"
typedef enum {
 PANGO_DIRECTION_LTR,
 PANGO_DIRECTION_RTL,
 PANGO_DIRECTION_TTB_LTR,
 PANGO_DIRECTION_TTB_RTL,
 PANGO_DIRECTION_WEAK_LTR,
 PANGO_DIRECTION_WEAK_RTL,
 PANGO_DIRECTION_NEUTRAL
} PangoDirection;

extern
PangoDirection pango_unichar_direction (gunichar ch) __attribute__((__const__));
extern
PangoDirection pango_find_base_dir (const gchar *text,
         gint length);


__attribute__((__deprecated__("Use '" "g_unichar_get_mirror_char" "' instead"))) extern
gboolean pango_get_mirror_char (gunichar ch,
         gunichar *mirrored_ch);


}
# 201 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-types.h" 2


}
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h" 2



extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
typedef struct _PangoFontDescription PangoFontDescription;
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
typedef struct _PangoFontMetrics PangoFontMetrics;
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
typedef enum {
 PANGO_STYLE_NORMAL,
 PANGO_STYLE_OBLIQUE,
 PANGO_STYLE_ITALIC
} PangoStyle;
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
typedef enum {
 PANGO_VARIANT_NORMAL,
 PANGO_VARIANT_SMALL_CAPS
} PangoVariant;
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
typedef enum {
 PANGO_WEIGHT_THIN = 100,
 PANGO_WEIGHT_ULTRALIGHT = 200,
 PANGO_WEIGHT_LIGHT = 300,
 PANGO_WEIGHT_SEMILIGHT = 350,
 PANGO_WEIGHT_BOOK = 380,
 PANGO_WEIGHT_NORMAL = 400,
 PANGO_WEIGHT_MEDIUM = 500,
 PANGO_WEIGHT_SEMIBOLD = 600,
 PANGO_WEIGHT_BOLD = 700,
 PANGO_WEIGHT_ULTRABOLD = 800,
 PANGO_WEIGHT_HEAVY = 900,
 PANGO_WEIGHT_ULTRAHEAVY = 1000
} PangoWeight;
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
typedef enum {
 PANGO_STRETCH_ULTRA_CONDENSED,
 PANGO_STRETCH_EXTRA_CONDENSED,
 PANGO_STRETCH_CONDENSED,
 PANGO_STRETCH_SEMI_CONDENSED,
 PANGO_STRETCH_NORMAL,
 PANGO_STRETCH_SEMI_EXPANDED,
 PANGO_STRETCH_EXPANDED,
 PANGO_STRETCH_EXTRA_EXPANDED,
 PANGO_STRETCH_ULTRA_EXPANDED
} PangoStretch;
# 152 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
typedef enum {
 PANGO_FONT_MASK_FAMILY = 1 << 0,
 PANGO_FONT_MASK_STYLE = 1 << 1,
 PANGO_FONT_MASK_VARIANT = 1 << 2,
 PANGO_FONT_MASK_WEIGHT = 1 << 3,
 PANGO_FONT_MASK_STRETCH = 1 << 4,
 PANGO_FONT_MASK_SIZE = 1 << 5,
 PANGO_FONT_MASK_GRAVITY = 1 << 6
} PangoFontMask;
# 217 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
extern
GType pango_font_description_get_type (void) __attribute__((__const__));
extern
PangoFontDescription *pango_font_description_new (void);
extern
PangoFontDescription *pango_font_description_copy (const PangoFontDescription *desc);
extern
PangoFontDescription *pango_font_description_copy_static (const PangoFontDescription *desc);
extern
guint pango_font_description_hash (const PangoFontDescription *desc) __attribute__((__pure__));
extern
gboolean pango_font_description_equal (const PangoFontDescription *desc1,
        const PangoFontDescription *desc2) __attribute__((__pure__));
extern
void pango_font_description_free (PangoFontDescription *desc);
extern
void pango_font_descriptions_free (PangoFontDescription **descs,
        int n_descs);

extern
void pango_font_description_set_family (PangoFontDescription *desc,
             const char *family);
extern
void pango_font_description_set_family_static (PangoFontDescription *desc,
             const char *family);
extern
const char *pango_font_description_get_family (const PangoFontDescription *desc) __attribute__((__pure__));
extern
void pango_font_description_set_style (PangoFontDescription *desc,
             PangoStyle style);
extern
PangoStyle pango_font_description_get_style (const PangoFontDescription *desc) __attribute__((__pure__));
extern
void pango_font_description_set_variant (PangoFontDescription *desc,
             PangoVariant variant);
extern
PangoVariant pango_font_description_get_variant (const PangoFontDescription *desc) __attribute__((__pure__));
extern
void pango_font_description_set_weight (PangoFontDescription *desc,
             PangoWeight weight);
extern
PangoWeight pango_font_description_get_weight (const PangoFontDescription *desc) __attribute__((__pure__));
extern
void pango_font_description_set_stretch (PangoFontDescription *desc,
             PangoStretch stretch);
extern
PangoStretch pango_font_description_get_stretch (const PangoFontDescription *desc) __attribute__((__pure__));
extern
void pango_font_description_set_size (PangoFontDescription *desc,
             gint size);
extern
gint pango_font_description_get_size (const PangoFontDescription *desc) __attribute__((__pure__));
extern
void pango_font_description_set_absolute_size (PangoFontDescription *desc,
             double size);
extern
gboolean pango_font_description_get_size_is_absolute (const PangoFontDescription *desc) __attribute__((__pure__));
extern
void pango_font_description_set_gravity (PangoFontDescription *desc,
             PangoGravity gravity);
extern
PangoGravity pango_font_description_get_gravity (const PangoFontDescription *desc) __attribute__((__pure__));

extern
PangoFontMask pango_font_description_get_set_fields (const PangoFontDescription *desc) __attribute__((__pure__));
extern
void pango_font_description_unset_fields (PangoFontDescription *desc,
          PangoFontMask to_unset);

extern
void pango_font_description_merge (PangoFontDescription *desc,
      const PangoFontDescription *desc_to_merge,
      gboolean replace_existing);
extern
void pango_font_description_merge_static (PangoFontDescription *desc,
      const PangoFontDescription *desc_to_merge,
      gboolean replace_existing);

extern
gboolean pango_font_description_better_match (const PangoFontDescription *desc,
          const PangoFontDescription *old_match,
          const PangoFontDescription *new_match) __attribute__((__pure__));

extern
PangoFontDescription *pango_font_description_from_string (const char *str);
extern
char * pango_font_description_to_string (const PangoFontDescription *desc);
extern
char * pango_font_description_to_filename (const PangoFontDescription *desc);
# 317 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
extern
GType pango_font_metrics_get_type (void) __attribute__((__const__));
extern
PangoFontMetrics *pango_font_metrics_ref (PangoFontMetrics *metrics);
extern
void pango_font_metrics_unref (PangoFontMetrics *metrics);
extern
int pango_font_metrics_get_ascent (PangoFontMetrics *metrics) __attribute__((__pure__));
extern
int pango_font_metrics_get_descent (PangoFontMetrics *metrics) __attribute__((__pure__));
extern
int pango_font_metrics_get_approximate_char_width (PangoFontMetrics *metrics) __attribute__((__pure__));
extern
int pango_font_metrics_get_approximate_digit_width (PangoFontMetrics *metrics) __attribute__((__pure__));
extern
int pango_font_metrics_get_underline_position (PangoFontMetrics *metrics) __attribute__((__pure__));
extern
int pango_font_metrics_get_underline_thickness (PangoFontMetrics *metrics) __attribute__((__pure__));
extern
int pango_font_metrics_get_strikethrough_position (PangoFontMetrics *metrics) __attribute__((__pure__));
extern
int pango_font_metrics_get_strikethrough_thickness (PangoFontMetrics *metrics) __attribute__((__pure__));
# 387 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
typedef struct _PangoFontFamily PangoFontFamily;
typedef struct _PangoFontFace PangoFontFace;

extern
GType pango_font_family_get_type (void) __attribute__((__const__));

extern
void pango_font_family_list_faces (PangoFontFamily *family,
        PangoFontFace ***faces,
        int *n_faces);
extern
const char *pango_font_family_get_name (PangoFontFamily *family) __attribute__((__pure__));
extern
gboolean pango_font_family_is_monospace (PangoFontFamily *family) __attribute__((__pure__));
# 470 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
extern
GType pango_font_face_get_type (void) __attribute__((__const__));

extern
PangoFontDescription *pango_font_face_describe (PangoFontFace *face);
extern
const char *pango_font_face_get_face_name (PangoFontFace *face) __attribute__((__pure__));
extern
void pango_font_face_list_sizes (PangoFontFace *face,
           int **sizes,
           int *n_sizes);
extern
gboolean pango_font_face_is_synthesized (PangoFontFace *face) __attribute__((__pure__));
# 550 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
extern
GType pango_font_get_type (void) __attribute__((__const__));

extern
PangoFontDescription *pango_font_describe (PangoFont *font);
extern
PangoFontDescription *pango_font_describe_with_absolute_size (PangoFont *font);
extern
PangoCoverage * pango_font_get_coverage (PangoFont *font,
         PangoLanguage *language);
extern
PangoEngineShape * pango_font_find_shaper (PangoFont *font,
         PangoLanguage *language,
         guint32 ch);
extern
PangoFontMetrics * pango_font_get_metrics (PangoFont *font,
         PangoLanguage *language);
extern
void pango_font_get_glyph_extents (PangoFont *font,
         PangoGlyph glyph,
         PangoRectangle *ink_rect,
         PangoRectangle *logical_rect);
extern
PangoFontMap *pango_font_get_font_map (PangoFont *font);
# 683 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-font.h"
}
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h" 2


extern "C" {



typedef struct _PangoColor PangoColor;
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoColor
{
 guint16 red;
 guint16 green;
 guint16 blue;
};







extern
GType pango_color_get_type (void) __attribute__((__const__));

extern
PangoColor *pango_color_copy (const PangoColor *src);
extern
void pango_color_free (PangoColor *color);
extern
gboolean pango_color_parse (PangoColor *color,
     const char *spec);
extern
gchar *pango_color_to_string(const PangoColor *color);




typedef struct _PangoAttribute PangoAttribute;
typedef struct _PangoAttrClass PangoAttrClass;

typedef struct _PangoAttrString PangoAttrString;
typedef struct _PangoAttrLanguage PangoAttrLanguage;
typedef struct _PangoAttrInt PangoAttrInt;
typedef struct _PangoAttrSize PangoAttrSize;
typedef struct _PangoAttrFloat PangoAttrFloat;
typedef struct _PangoAttrColor PangoAttrColor;
typedef struct _PangoAttrFontDesc PangoAttrFontDesc;
typedef struct _PangoAttrShape PangoAttrShape;
typedef struct _PangoAttrFontFeatures PangoAttrFontFeatures;
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
typedef struct _PangoAttrList PangoAttrList;
typedef struct _PangoAttrIterator PangoAttrIterator;
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
typedef enum
{
 PANGO_ATTR_INVALID,
 PANGO_ATTR_LANGUAGE,
 PANGO_ATTR_FAMILY,
 PANGO_ATTR_STYLE,
 PANGO_ATTR_WEIGHT,
 PANGO_ATTR_VARIANT,
 PANGO_ATTR_STRETCH,
 PANGO_ATTR_SIZE,
 PANGO_ATTR_FONT_DESC,
 PANGO_ATTR_FOREGROUND,
 PANGO_ATTR_BACKGROUND,
 PANGO_ATTR_UNDERLINE,
 PANGO_ATTR_STRIKETHROUGH,
 PANGO_ATTR_RISE,
 PANGO_ATTR_SHAPE,
 PANGO_ATTR_SCALE,
 PANGO_ATTR_FALLBACK,
 PANGO_ATTR_LETTER_SPACING,
 PANGO_ATTR_UNDERLINE_COLOR,
 PANGO_ATTR_STRIKETHROUGH_COLOR,
 PANGO_ATTR_ABSOLUTE_SIZE,
 PANGO_ATTR_GRAVITY,
 PANGO_ATTR_GRAVITY_HINT,
 PANGO_ATTR_FONT_FEATURES,
 PANGO_ATTR_FOREGROUND_ALPHA,
 PANGO_ATTR_BACKGROUND_ALPHA
} PangoAttrType;
# 206 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
typedef enum {
 PANGO_UNDERLINE_NONE,
 PANGO_UNDERLINE_SINGLE,
 PANGO_UNDERLINE_DOUBLE,
 PANGO_UNDERLINE_LOW,
 PANGO_UNDERLINE_ERROR
} PangoUnderline;
# 247 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttribute
{
 const PangoAttrClass *klass;
 guint start_index;
 guint end_index;
};
# 264 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
typedef gboolean (*PangoAttrFilterFunc) (PangoAttribute *attribute,
     gpointer user_data);
# 275 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
typedef gpointer (*PangoAttrDataCopyFunc) (gconstpointer user_data);
# 289 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrClass
{

 PangoAttrType type;
 PangoAttribute * (*copy) (const PangoAttribute *attr);
 void (*destroy) (PangoAttribute *attr);
 gboolean (*equal) (const PangoAttribute *attr1, const PangoAttribute *attr2);
};
# 306 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrString
{
 PangoAttribute attr;
 char *value;
};
# 319 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrLanguage
{
 PangoAttribute attr;
 PangoLanguage *value;
};
# 332 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrInt
{
 PangoAttribute attr;
 int value;
};
# 345 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrFloat
{
 PangoAttribute attr;
 double value;
};
# 358 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrColor
{
 PangoAttribute attr;
 PangoColor color;
};
# 377 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrSize
{
 PangoAttribute attr;
 int size;
 guint absolute : 1;
};
# 396 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrShape
{
 PangoAttribute attr;
 PangoRectangle ink_rect;
 PangoRectangle logical_rect;

 gpointer data;
 PangoAttrDataCopyFunc copy_func;
 GDestroyNotify destroy_func;
};
# 415 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrFontDesc
{
 PangoAttribute attr;
 PangoFontDescription *desc;
};
# 431 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-attributes.h"
struct _PangoAttrFontFeatures
{
 PangoAttribute attr;
 gchar *features;
};

extern
PangoAttrType pango_attr_type_register (const gchar *name);
extern
const char * pango_attr_type_get_name (PangoAttrType type) __attribute__((__const__));

extern
void pango_attribute_init (PangoAttribute *attr,
          const PangoAttrClass *klass);
extern
PangoAttribute * pango_attribute_copy (const PangoAttribute *attr);
extern
void pango_attribute_destroy (PangoAttribute *attr);
extern
gboolean pango_attribute_equal (const PangoAttribute *attr1,
          const PangoAttribute *attr2) __attribute__((__pure__));

extern
PangoAttribute *pango_attr_language_new (PangoLanguage *language);
extern
PangoAttribute *pango_attr_family_new (const char *family);
extern
PangoAttribute *pango_attr_foreground_new (guint16 red,
          guint16 green,
          guint16 blue);
extern
PangoAttribute *pango_attr_background_new (guint16 red,
          guint16 green,
          guint16 blue);
extern
PangoAttribute *pango_attr_size_new (int size);
extern
PangoAttribute *pango_attr_size_new_absolute (int size);
extern
PangoAttribute *pango_attr_style_new (PangoStyle style);
extern
PangoAttribute *pango_attr_weight_new (PangoWeight weight);
extern
PangoAttribute *pango_attr_variant_new (PangoVariant variant);
extern
PangoAttribute *pango_attr_stretch_new (PangoStretch stretch);
extern
PangoAttribute *pango_attr_font_desc_new (const PangoFontDescription *desc);

extern
PangoAttribute *pango_attr_underline_new (PangoUnderline underline);
extern
PangoAttribute *pango_attr_underline_color_new (guint16 red,
         guint16 green,
         guint16 blue);
extern
PangoAttribute *pango_attr_strikethrough_new (gboolean strikethrough);
extern
PangoAttribute *pango_attr_strikethrough_color_new (guint16 red,
         guint16 green,
         guint16 blue);

extern
PangoAttribute *pango_attr_rise_new (int rise);
extern
PangoAttribute *pango_attr_scale_new (double scale_factor);
extern
PangoAttribute *pango_attr_fallback_new (gboolean enable_fallback);
extern
PangoAttribute *pango_attr_letter_spacing_new (int letter_spacing);

extern
PangoAttribute *pango_attr_shape_new (const PangoRectangle *ink_rect,
     const PangoRectangle *logical_rect);
extern
PangoAttribute *pango_attr_shape_new_with_data (const PangoRectangle *ink_rect,
     const PangoRectangle *logical_rect,
     gpointer data,
     PangoAttrDataCopyFunc copy_func,
     GDestroyNotify destroy_func);

extern
PangoAttribute *pango_attr_gravity_new (PangoGravity gravity);
extern
PangoAttribute *pango_attr_gravity_hint_new (PangoGravityHint hint);
extern
PangoAttribute *pango_attr_font_features_new (const gchar *features);
extern
PangoAttribute *pango_attr_foreground_alpha_new (guint16 alpha);
extern
PangoAttribute *pango_attr_background_alpha_new (guint16 alpha);

extern
GType pango_attr_list_get_type (void) __attribute__((__const__));
extern
PangoAttrList * pango_attr_list_new (void);
extern
PangoAttrList * pango_attr_list_ref (PangoAttrList *list);
extern
void pango_attr_list_unref (PangoAttrList *list);
extern
PangoAttrList * pango_attr_list_copy (PangoAttrList *list);
extern
void pango_attr_list_insert (PangoAttrList *list,
       PangoAttribute *attr);
extern
void pango_attr_list_insert_before (PangoAttrList *list,
       PangoAttribute *attr);
extern
void pango_attr_list_change (PangoAttrList *list,
       PangoAttribute *attr);
extern
void pango_attr_list_splice (PangoAttrList *list,
       PangoAttrList *other,
       gint pos,
       gint len);

extern
PangoAttrList *pango_attr_list_filter (PangoAttrList *list,
          PangoAttrFilterFunc func,
          gpointer data);

extern
PangoAttrIterator *pango_attr_list_get_iterator (PangoAttrList *list);

extern
void pango_attr_iterator_range (PangoAttrIterator *iterator,
      gint *start,
      gint *end);
extern
gboolean pango_attr_iterator_next (PangoAttrIterator *iterator);
extern
PangoAttrIterator *pango_attr_iterator_copy (PangoAttrIterator *iterator);
extern
void pango_attr_iterator_destroy (PangoAttrIterator *iterator);
extern
PangoAttribute * pango_attr_iterator_get (PangoAttrIterator *iterator,
      PangoAttrType type);
extern
void pango_attr_iterator_get_font (PangoAttrIterator *iterator,
      PangoFontDescription *desc,
      PangoLanguage **language,
      GSList **extra_attrs);
extern
GSList * pango_attr_iterator_get_attrs (PangoAttrIterator *iterator);


extern
gboolean pango_parse_markup (const char *markup_text,
       int length,
       gunichar accel_marker,
       PangoAttrList **attr_list,
       char **text,
       gunichar *accel_char,
       GError **error);

extern
GMarkupParseContext * pango_markup_parser_new (gunichar accel_marker);
extern
gboolean pango_markup_parser_finish (GMarkupParseContext *context,
                                                 PangoAttrList **attr_list,
                                                 char **text,
                                                 gunichar *accel_char,
                                                 GError **error);

}
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-break.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-break.h"
extern "C" {

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-item.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-item.h"
extern "C" {

typedef struct _PangoAnalysis PangoAnalysis;
typedef struct _PangoItem PangoItem;
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-item.h"
struct _PangoAnalysis
{
 PangoEngineShape *shape_engine;
 PangoEngineLang *lang_engine;
 PangoFont *font;

 guint8 level;
 guint8 gravity;
 guint8 flags;

 guint8 script;
 PangoLanguage *language;

 GSList *extra_attrs;
};
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-item.h"
struct _PangoItem
{
 gint offset;
 gint length;
 gint num_chars;
 PangoAnalysis analysis;
};



extern
GType pango_item_get_type (void) __attribute__((__const__));

extern
PangoItem *pango_item_new (void);
extern
PangoItem *pango_item_copy (PangoItem *item);
extern
void pango_item_free (PangoItem *item);
extern
PangoItem *pango_item_split (PangoItem *orig,
       int split_index,
       int split_offset);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-break.h" 2
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-break.h"
struct _PangoLogAttr
{
 guint is_line_break : 1;

 guint is_mandatory_break : 1;

 guint is_char_break : 1;

 guint is_white : 1;




 guint is_cursor_position : 1;






 guint is_word_start : 1;
 guint is_word_end : 1;
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-break.h"
 guint is_sentence_boundary : 1;
 guint is_sentence_start : 1;
 guint is_sentence_end : 1;




 guint backspace_deletes_character : 1;




 guint is_expandable_space : 1;


 guint is_word_boundary : 1;
};




extern
void pango_break (const gchar *text,
   int length,
   PangoAnalysis *analysis,
   PangoLogAttr *attrs,
   int attrs_len);

extern
void pango_find_paragraph_boundary (const gchar *text,
       gint length,
       gint *paragraph_delimiter_index,
       gint *next_paragraph_start);

extern
void pango_get_log_attrs (const char *text,
    int length,
    int level,
    PangoLanguage *language,
    PangoLogAttr *log_attrs,
    int attrs_len);
# 175 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-break.h"
}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-context.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-context.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontmap.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontmap.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontset.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontset.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontset.h"
extern
GType pango_fontset_get_type (void) __attribute__((__const__));

typedef struct _PangoFontset PangoFontset;
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontset.h"
typedef gboolean (*PangoFontsetForeachFunc) (PangoFontset *fontset,
         PangoFont *font,
         gpointer user_data);

extern
PangoFont * pango_fontset_get_font (PangoFontset *fontset,
         guint wc);
extern
PangoFontMetrics *pango_fontset_get_metrics (PangoFontset *fontset);
extern
void pango_fontset_foreach (PangoFontset *fontset,
         PangoFontsetForeachFunc func,
         gpointer data);
# 175 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontset.h"
}
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontmap.h" 2

extern "C" {
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontmap.h"
typedef struct _PangoContext PangoContext;

extern
GType pango_font_map_get_type (void) __attribute__((__const__));
extern
PangoContext * pango_font_map_create_context (PangoFontMap *fontmap);
extern
PangoFont * pango_font_map_load_font (PangoFontMap *fontmap,
        PangoContext *context,
        const PangoFontDescription *desc);
extern
PangoFontset *pango_font_map_load_fontset (PangoFontMap *fontmap,
        PangoContext *context,
        const PangoFontDescription *desc,
        PangoLanguage *language);
extern
void pango_font_map_list_families (PangoFontMap *fontmap,
        PangoFontFamily ***families,
        int *n_families);
extern
guint pango_font_map_get_serial (PangoFontMap *fontmap);
extern
void pango_font_map_changed (PangoFontMap *fontmap);
# 173 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-fontmap.h"
}
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-context.h" 2


extern "C" {






typedef struct _PangoContextClass PangoContextClass;
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-context.h"
extern
GType pango_context_get_type (void) __attribute__((__const__));

extern
PangoContext *pango_context_new (void);
extern
void pango_context_changed (PangoContext *context);
extern
void pango_context_set_font_map (PangoContext *context,
       PangoFontMap *font_map);
extern
PangoFontMap *pango_context_get_font_map (PangoContext *context);
extern
guint pango_context_get_serial (PangoContext *context);
extern
void pango_context_list_families (PangoContext *context,
       PangoFontFamily ***families,
       int *n_families);
extern
PangoFont * pango_context_load_font (PangoContext *context,
       const PangoFontDescription *desc);
extern
PangoFontset *pango_context_load_fontset (PangoContext *context,
       const PangoFontDescription *desc,
       PangoLanguage *language);

extern
PangoFontMetrics *pango_context_get_metrics (PangoContext *context,
           const PangoFontDescription *desc,
           PangoLanguage *language);

extern
void pango_context_set_font_description (PangoContext *context,
            const PangoFontDescription *desc);
extern
PangoFontDescription * pango_context_get_font_description (PangoContext *context);
extern
PangoLanguage *pango_context_get_language (PangoContext *context);
extern
void pango_context_set_language (PangoContext *context,
            PangoLanguage *language);
extern
void pango_context_set_base_dir (PangoContext *context,
            PangoDirection direction);
extern
PangoDirection pango_context_get_base_dir (PangoContext *context);
extern
void pango_context_set_base_gravity (PangoContext *context,
            PangoGravity gravity);
extern
PangoGravity pango_context_get_base_gravity (PangoContext *context);
extern
PangoGravity pango_context_get_gravity (PangoContext *context);
extern
void pango_context_set_gravity_hint (PangoContext *context,
            PangoGravityHint hint);
extern
PangoGravityHint pango_context_get_gravity_hint (PangoContext *context);

extern
void pango_context_set_matrix (PangoContext *context,
                   const PangoMatrix *matrix);
extern
const PangoMatrix * pango_context_get_matrix (PangoContext *context);





extern
GList *pango_itemize (PangoContext *context,
        const char *text,
        int start_index,
        int length,
        PangoAttrList *attrs,
        PangoAttrIterator *cached_iter);
extern
GList *pango_itemize_with_base_dir (PangoContext *context,
        PangoDirection base_dir,
        const char *text,
        int start_index,
        int length,
        PangoAttrList *attrs,
        PangoAttrIterator *cached_iter);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-engine.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-engine.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph.h"
extern "C" {

typedef struct _PangoGlyphGeometry PangoGlyphGeometry;
typedef struct _PangoGlyphVisAttr PangoGlyphVisAttr;
typedef struct _PangoGlyphInfo PangoGlyphInfo;
typedef struct _PangoGlyphString PangoGlyphString;
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph.h"
typedef gint32 PangoGlyphUnit;
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph.h"
struct _PangoGlyphGeometry
{
 PangoGlyphUnit width;
 PangoGlyphUnit x_offset;
 PangoGlyphUnit y_offset;
};
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph.h"
struct _PangoGlyphVisAttr
{
 guint is_cluster_start : 1;
};
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph.h"
struct _PangoGlyphInfo
{
 PangoGlyph glyph;
 PangoGlyphGeometry geometry;
 PangoGlyphVisAttr attr;
};
# 121 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph.h"
struct _PangoGlyphString {
 gint num_glyphs;

 PangoGlyphInfo *glyphs;






 gint *log_clusters;


 gint space;
};
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph.h"
extern
PangoGlyphString *pango_glyph_string_new (void);
extern
void pango_glyph_string_set_size (PangoGlyphString *string,
           gint new_len);
extern
GType pango_glyph_string_get_type (void) __attribute__((__const__));
extern
PangoGlyphString *pango_glyph_string_copy (PangoGlyphString *string);
extern
void pango_glyph_string_free (PangoGlyphString *string);
extern
void pango_glyph_string_extents (PangoGlyphString *glyphs,
           PangoFont *font,
           PangoRectangle *ink_rect,
           PangoRectangle *logical_rect);
extern
int pango_glyph_string_get_width(PangoGlyphString *glyphs);

extern
void pango_glyph_string_extents_range (PangoGlyphString *glyphs,
          int start,
          int end,
          PangoFont *font,
          PangoRectangle *ink_rect,
          PangoRectangle *logical_rect);

extern
void pango_glyph_string_get_logical_widths (PangoGlyphString *glyphs,
        const char *text,
        int length,
        int embedding_level,
        int *logical_widths);

extern
void pango_glyph_string_index_to_x (PangoGlyphString *glyphs,
       char *text,
       int length,
       PangoAnalysis *analysis,
       int index_,
       gboolean trailing,
       int *x_pos);
extern
void pango_glyph_string_x_to_index (PangoGlyphString *glyphs,
       char *text,
       int length,
       PangoAnalysis *analysis,
       int x_pos,
       int *index_,
       int *trailing);



extern
void pango_shape (const gchar *text,
   gint length,
   const PangoAnalysis *analysis,
   PangoGlyphString *glyphs);

extern
void pango_shape_full (const gchar *item_text,
        gint item_length,
        const gchar *paragraph_text,
        gint paragraph_length,
        const PangoAnalysis *analysis,
        PangoGlyphString *glyphs);

extern
GList *pango_reorder_items (GList *logical_items);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-engine.h" 2


extern "C" {
# 449 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-engine.h"
}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-enum-types.h" 1
# 11 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-enum-types.h"
extern "C" {


extern
GType pango_attr_type_get_type (void) __attribute__((__const__));

extern
GType pango_underline_get_type (void) __attribute__((__const__));



extern
GType pango_bidi_type_get_type (void) __attribute__((__const__));

extern
GType pango_direction_get_type (void) __attribute__((__const__));



extern
GType pango_coverage_level_get_type (void) __attribute__((__const__));



extern
GType pango_style_get_type (void) __attribute__((__const__));

extern
GType pango_variant_get_type (void) __attribute__((__const__));

extern
GType pango_weight_get_type (void) __attribute__((__const__));

extern
GType pango_stretch_get_type (void) __attribute__((__const__));

extern
GType pango_font_mask_get_type (void) __attribute__((__const__));



extern
GType pango_gravity_get_type (void) __attribute__((__const__));

extern
GType pango_gravity_hint_get_type (void) __attribute__((__const__));



extern
GType pango_alignment_get_type (void) __attribute__((__const__));

extern
GType pango_wrap_mode_get_type (void) __attribute__((__const__));

extern
GType pango_ellipsize_mode_get_type (void) __attribute__((__const__));



extern
GType pango_render_part_get_type (void) __attribute__((__const__));



extern
GType pango_script_get_type (void) __attribute__((__const__));



extern
GType pango_tab_align_get_type (void) __attribute__((__const__));

}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 2





# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph-item.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph-item.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph-item.h"
typedef struct _PangoGlyphItem PangoGlyphItem;

struct _PangoGlyphItem
{
 PangoItem *item;
 PangoGlyphString *glyphs;
};
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph-item.h"
extern
GType pango_glyph_item_get_type (void) __attribute__((__const__));

extern
PangoGlyphItem *pango_glyph_item_split (PangoGlyphItem *orig,
           const char *text,
           int split_index);
extern
PangoGlyphItem *pango_glyph_item_copy (PangoGlyphItem *orig);
extern
void pango_glyph_item_free (PangoGlyphItem *glyph_item);
extern
GSList * pango_glyph_item_apply_attrs (PangoGlyphItem *glyph_item,
           const char *text,
           PangoAttrList *list);
extern
void pango_glyph_item_letter_space (PangoGlyphItem *glyph_item,
           const char *text,
           PangoLogAttr *log_attrs,
           int letter_spacing);
extern
void pango_glyph_item_get_logical_widths (PangoGlyphItem *glyph_item,
           const char *text,
           int *logical_widths);
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph-item.h"
typedef struct _PangoGlyphItemIter PangoGlyphItemIter;

struct _PangoGlyphItemIter
{
 PangoGlyphItem *glyph_item;
 const gchar *text;

 int start_glyph;
 int start_index;
 int start_char;

 int end_glyph;
 int end_index;
 int end_char;
};
# 152 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-glyph-item.h"
extern
GType pango_glyph_item_iter_get_type (void) __attribute__((__const__));
extern
PangoGlyphItemIter *pango_glyph_item_iter_copy (PangoGlyphItemIter *orig);
extern
void pango_glyph_item_iter_free (PangoGlyphItemIter *iter);

extern
gboolean pango_glyph_item_iter_init_start (PangoGlyphItemIter *iter,
         PangoGlyphItem *glyph_item,
         const char *text);
extern
gboolean pango_glyph_item_iter_init_end (PangoGlyphItemIter *iter,
         PangoGlyphItem *glyph_item,
         const char *text);
extern
gboolean pango_glyph_item_iter_next_cluster (PangoGlyphItemIter *iter);
extern
gboolean pango_glyph_item_iter_prev_cluster (PangoGlyphItemIter *iter);

}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-layout.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-layout.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-tabs.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-tabs.h"
extern "C" {

typedef struct _PangoTabArray PangoTabArray;







typedef enum
{
 PANGO_TAB_LEFT
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-tabs.h"
} PangoTabAlign;
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-tabs.h"
extern
PangoTabArray *pango_tab_array_new (gint initial_size,
          gboolean positions_in_pixels);
extern
PangoTabArray *pango_tab_array_new_with_positions (gint size,
          gboolean positions_in_pixels,
          PangoTabAlign first_alignment,
          gint first_position,
          ...);
extern
GType pango_tab_array_get_type (void) __attribute__((__const__));
extern
PangoTabArray *pango_tab_array_copy (PangoTabArray *src);
extern
void pango_tab_array_free (PangoTabArray *tab_array);
extern
gint pango_tab_array_get_size (PangoTabArray *tab_array);
extern
void pango_tab_array_resize (PangoTabArray *tab_array,
          gint new_size);
extern
void pango_tab_array_set_tab (PangoTabArray *tab_array,
          gint tab_index,
          PangoTabAlign alignment,
          gint location);
extern
void pango_tab_array_get_tab (PangoTabArray *tab_array,
          gint tab_index,
          PangoTabAlign *alignment,
          gint *location);
extern
void pango_tab_array_get_tabs (PangoTabArray *tab_array,
          PangoTabAlign **alignments,
          gint **locations);

extern
gboolean pango_tab_array_get_positions_in_pixels (PangoTabArray *tab_array);


}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-layout.h" 2

extern "C" {

typedef struct _PangoLayout PangoLayout;
typedef struct _PangoLayoutClass PangoLayoutClass;
typedef struct _PangoLayoutLine PangoLayoutLine;
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-layout.h"
typedef PangoGlyphItem PangoLayoutRun;
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-layout.h"
typedef enum {
 PANGO_ALIGN_LEFT,
 PANGO_ALIGN_CENTER,
 PANGO_ALIGN_RIGHT
} PangoAlignment;
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-layout.h"
typedef enum {
 PANGO_WRAP_WORD,
 PANGO_WRAP_CHAR,
 PANGO_WRAP_WORD_CHAR
} PangoWrapMode;
# 90 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-layout.h"
typedef enum {
 PANGO_ELLIPSIZE_NONE,
 PANGO_ELLIPSIZE_START,
 PANGO_ELLIPSIZE_MIDDLE,
 PANGO_ELLIPSIZE_END
} PangoEllipsizeMode;
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-layout.h"
struct _PangoLayoutLine
{
 PangoLayout *layout;
 gint start_index;
 gint length;
 GSList *runs;
 guint is_paragraph_start : 1;
 guint resolved_dir : 3;
};
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-layout.h"
extern
GType pango_layout_get_type (void) __attribute__((__const__));
extern
PangoLayout *pango_layout_new (PangoContext *context);
extern
PangoLayout *pango_layout_copy (PangoLayout *src);

extern
PangoContext *pango_layout_get_context (PangoLayout *layout);

extern
void pango_layout_set_attributes (PangoLayout *layout,
        PangoAttrList *attrs);
extern
PangoAttrList *pango_layout_get_attributes (PangoLayout *layout);

extern
void pango_layout_set_text (PangoLayout *layout,
        const char *text,
        int length);
extern
const char *pango_layout_get_text (PangoLayout *layout);

extern
gint pango_layout_get_character_count (PangoLayout *layout);

extern
void pango_layout_set_markup (PangoLayout *layout,
        const char *markup,
        int length);

extern
void pango_layout_set_markup_with_accel (PangoLayout *layout,
        const char *markup,
        int length,
        gunichar accel_marker,
        gunichar *accel_char);

extern
void pango_layout_set_font_description (PangoLayout *layout,
       const PangoFontDescription *desc);

extern
const PangoFontDescription *pango_layout_get_font_description (PangoLayout *layout);

extern
void pango_layout_set_width (PangoLayout *layout,
       int width);
extern
int pango_layout_get_width (PangoLayout *layout);
extern
void pango_layout_set_height (PangoLayout *layout,
       int height);
extern
int pango_layout_get_height (PangoLayout *layout);
extern
void pango_layout_set_wrap (PangoLayout *layout,
       PangoWrapMode wrap);
extern
PangoWrapMode pango_layout_get_wrap (PangoLayout *layout);
extern
gboolean pango_layout_is_wrapped (PangoLayout *layout);
extern
void pango_layout_set_indent (PangoLayout *layout,
       int indent);
extern
int pango_layout_get_indent (PangoLayout *layout);
extern
void pango_layout_set_spacing (PangoLayout *layout,
       int spacing);
extern
int pango_layout_get_spacing (PangoLayout *layout);
extern
void pango_layout_set_justify (PangoLayout *layout,
       gboolean justify);
extern
gboolean pango_layout_get_justify (PangoLayout *layout);
extern
void pango_layout_set_auto_dir (PangoLayout *layout,
       gboolean auto_dir);
extern
gboolean pango_layout_get_auto_dir (PangoLayout *layout);
extern
void pango_layout_set_alignment (PangoLayout *layout,
       PangoAlignment alignment);
extern
PangoAlignment pango_layout_get_alignment (PangoLayout *layout);

extern
void pango_layout_set_tabs (PangoLayout *layout,
       PangoTabArray *tabs);

extern
PangoTabArray* pango_layout_get_tabs (PangoLayout *layout);

extern
void pango_layout_set_single_paragraph_mode (PangoLayout *layout,
            gboolean setting);
extern
gboolean pango_layout_get_single_paragraph_mode (PangoLayout *layout);

extern
void pango_layout_set_ellipsize (PangoLayout *layout,
           PangoEllipsizeMode ellipsize);
extern
PangoEllipsizeMode pango_layout_get_ellipsize (PangoLayout *layout);
extern
gboolean pango_layout_is_ellipsized (PangoLayout *layout);

extern
int pango_layout_get_unknown_glyphs_count (PangoLayout *layout);

extern
void pango_layout_context_changed (PangoLayout *layout);
extern
guint pango_layout_get_serial (PangoLayout *layout);

extern
void pango_layout_get_log_attrs (PangoLayout *layout,
        PangoLogAttr **attrs,
        gint *n_attrs);

extern
const PangoLogAttr *pango_layout_get_log_attrs_readonly (PangoLayout *layout,
       gint *n_attrs);

extern
void pango_layout_index_to_pos (PangoLayout *layout,
        int index_,
        PangoRectangle *pos);
extern
void pango_layout_index_to_line_x (PangoLayout *layout,
        int index_,
        gboolean trailing,
        int *line,
        int *x_pos);
extern
void pango_layout_get_cursor_pos (PangoLayout *layout,
        int index_,
        PangoRectangle *strong_pos,
        PangoRectangle *weak_pos);
extern
void pango_layout_move_cursor_visually (PangoLayout *layout,
        gboolean strong,
        int old_index,
        int old_trailing,
        int direction,
        int *new_index,
        int *new_trailing);
extern
gboolean pango_layout_xy_to_index (PangoLayout *layout,
        int x,
        int y,
        int *index_,
        int *trailing);
extern
void pango_layout_get_extents (PangoLayout *layout,
        PangoRectangle *ink_rect,
        PangoRectangle *logical_rect);
extern
void pango_layout_get_pixel_extents (PangoLayout *layout,
        PangoRectangle *ink_rect,
        PangoRectangle *logical_rect);
extern
void pango_layout_get_size (PangoLayout *layout,
        int *width,
        int *height);
extern
void pango_layout_get_pixel_size (PangoLayout *layout,
        int *width,
        int *height);
extern
int pango_layout_get_baseline (PangoLayout *layout);

extern
int pango_layout_get_line_count (PangoLayout *layout);
extern
PangoLayoutLine *pango_layout_get_line (PangoLayout *layout,
         int line);
extern
PangoLayoutLine *pango_layout_get_line_readonly (PangoLayout *layout,
         int line);
extern
GSList * pango_layout_get_lines (PangoLayout *layout);
extern
GSList * pango_layout_get_lines_readonly (PangoLayout *layout);




extern
GType pango_layout_line_get_type (void) __attribute__((__const__));

extern
PangoLayoutLine *pango_layout_line_ref (PangoLayoutLine *line);
extern
void pango_layout_line_unref (PangoLayoutLine *line);

extern
gboolean pango_layout_line_x_to_index (PangoLayoutLine *line,
     int x_pos,
     int *index_,
     int *trailing);
extern
void pango_layout_line_index_to_x (PangoLayoutLine *line,
     int index_,
     gboolean trailing,
     int *x_pos);
extern
void pango_layout_line_get_x_ranges (PangoLayoutLine *line,
     int start_index,
     int end_index,
     int **ranges,
     int *n_ranges);
extern
void pango_layout_line_get_extents (PangoLayoutLine *line,
     PangoRectangle *ink_rect,
     PangoRectangle *logical_rect);
extern
void pango_layout_line_get_pixel_extents (PangoLayoutLine *layout_line,
          PangoRectangle *ink_rect,
          PangoRectangle *logical_rect);

typedef struct _PangoLayoutIter PangoLayoutIter;



extern
GType pango_layout_iter_get_type (void) __attribute__((__const__));

extern
PangoLayoutIter *pango_layout_get_iter (PangoLayout *layout);
extern
PangoLayoutIter *pango_layout_iter_copy (PangoLayoutIter *iter);
extern
void pango_layout_iter_free (PangoLayoutIter *iter);

extern
int pango_layout_iter_get_index (PangoLayoutIter *iter);
extern
PangoLayoutRun *pango_layout_iter_get_run (PangoLayoutIter *iter);
extern
PangoLayoutRun *pango_layout_iter_get_run_readonly (PangoLayoutIter *iter);
extern
PangoLayoutLine *pango_layout_iter_get_line (PangoLayoutIter *iter);
extern
PangoLayoutLine *pango_layout_iter_get_line_readonly (PangoLayoutIter *iter);
extern
gboolean pango_layout_iter_at_last_line (PangoLayoutIter *iter);
extern
PangoLayout *pango_layout_iter_get_layout (PangoLayoutIter *iter);

extern
gboolean pango_layout_iter_next_char (PangoLayoutIter *iter);
extern
gboolean pango_layout_iter_next_cluster (PangoLayoutIter *iter);
extern
gboolean pango_layout_iter_next_run (PangoLayoutIter *iter);
extern
gboolean pango_layout_iter_next_line (PangoLayoutIter *iter);

extern
void pango_layout_iter_get_char_extents (PangoLayoutIter *iter,
        PangoRectangle *logical_rect);
extern
void pango_layout_iter_get_cluster_extents (PangoLayoutIter *iter,
        PangoRectangle *ink_rect,
        PangoRectangle *logical_rect);
extern
void pango_layout_iter_get_run_extents (PangoLayoutIter *iter,
        PangoRectangle *ink_rect,
        PangoRectangle *logical_rect);
extern
void pango_layout_iter_get_line_extents (PangoLayoutIter *iter,
        PangoRectangle *ink_rect,
        PangoRectangle *logical_rect);



extern
void pango_layout_iter_get_line_yrange (PangoLayoutIter *iter,
        int *y0_,
        int *y1_);
extern
void pango_layout_iter_get_layout_extents (PangoLayoutIter *iter,
        PangoRectangle *ink_rect,
        PangoRectangle *logical_rect);
extern
int pango_layout_iter_get_baseline (PangoLayoutIter *iter);

}
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-renderer.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-renderer.h"
extern "C" {
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-renderer.h"
typedef struct _PangoRenderer PangoRenderer;
typedef struct _PangoRendererClass PangoRendererClass;
typedef struct _PangoRendererPrivate PangoRendererPrivate;
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-renderer.h"
typedef enum
{
 PANGO_RENDER_PART_FOREGROUND,
 PANGO_RENDER_PART_BACKGROUND,
 PANGO_RENDER_PART_UNDERLINE,
 PANGO_RENDER_PART_STRIKETHROUGH
} PangoRenderPart;
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-renderer.h"
struct _PangoRenderer
{

 GObject parent_instance;

 PangoUnderline underline;
 gboolean strikethrough;
 int active_count;


 PangoMatrix *matrix;


 PangoRendererPrivate *priv;
};
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-renderer.h"
struct _PangoRendererClass
{

 GObjectClass parent_class;







 void (*draw_glyphs) (PangoRenderer *renderer,
        PangoFont *font,
        PangoGlyphString *glyphs,
        int x,
        int y);
 void (*draw_rectangle) (PangoRenderer *renderer,
    PangoRenderPart part,
    int x,
    int y,
    int width,
    int height);
 void (*draw_error_underline) (PangoRenderer *renderer,
   int x,
   int y,
   int width,
   int height);


 void (*draw_shape) (PangoRenderer *renderer,
       PangoAttrShape *attr,
       int x,
       int y);




 void (*draw_trapezoid) (PangoRenderer *renderer,
    PangoRenderPart part,
    double y1_,
    double x11,
    double x21,
    double y2,
    double x12,
    double x22);
 void (*draw_glyph) (PangoRenderer *renderer,
       PangoFont *font,
       PangoGlyph glyph,
       double x,
       double y);



 void (*part_changed) (PangoRenderer *renderer,
  PangoRenderPart part);



 void (*begin) (PangoRenderer *renderer);
 void (*end) (PangoRenderer *renderer);



 void (*prepare_run) (PangoRenderer *renderer,
        PangoLayoutRun *run);




 void (*draw_glyph_item) (PangoRenderer *renderer,
     const char *text,
     PangoGlyphItem *glyph_item,
     int x,
     int y);




 void (*_pango_reserved2) (void);
 void (*_pango_reserved3) (void);
 void (*_pango_reserved4) (void);
};

extern
GType pango_renderer_get_type (void) __attribute__((__const__));

extern
void pango_renderer_draw_layout (PangoRenderer *renderer,
      PangoLayout *layout,
      int x,
      int y);
extern
void pango_renderer_draw_layout_line (PangoRenderer *renderer,
      PangoLayoutLine *line,
      int x,
      int y);
extern
void pango_renderer_draw_glyphs (PangoRenderer *renderer,
      PangoFont *font,
      PangoGlyphString *glyphs,
      int x,
      int y);
extern
void pango_renderer_draw_glyph_item (PangoRenderer *renderer,
      const char *text,
      PangoGlyphItem *glyph_item,
      int x,
      int y);
extern
void pango_renderer_draw_rectangle (PangoRenderer *renderer,
      PangoRenderPart part,
      int x,
      int y,
      int width,
      int height);
extern
void pango_renderer_draw_error_underline (PangoRenderer *renderer,
      int x,
      int y,
      int width,
      int height);
extern
void pango_renderer_draw_trapezoid (PangoRenderer *renderer,
      PangoRenderPart part,
      double y1_,
      double x11,
      double x21,
      double y2,
      double x12,
      double x22);
extern
void pango_renderer_draw_glyph (PangoRenderer *renderer,
      PangoFont *font,
      PangoGlyph glyph,
      double x,
      double y);

extern
void pango_renderer_activate (PangoRenderer *renderer);
extern
void pango_renderer_deactivate (PangoRenderer *renderer);

extern
void pango_renderer_part_changed (PangoRenderer *renderer,
     PangoRenderPart part);

extern
void pango_renderer_set_color (PangoRenderer *renderer,
         PangoRenderPart part,
         const PangoColor *color);
extern
PangoColor *pango_renderer_get_color (PangoRenderer *renderer,
         PangoRenderPart part);

extern
void pango_renderer_set_alpha (PangoRenderer *renderer,
         PangoRenderPart part,
         guint16 alpha);
extern
guint16 pango_renderer_get_alpha (PangoRenderer *renderer,
         PangoRenderPart part);

extern
void pango_renderer_set_matrix (PangoRenderer *renderer,
            const PangoMatrix *matrix);
extern
const PangoMatrix *pango_renderer_get_matrix (PangoRenderer *renderer);

extern
PangoLayout *pango_renderer_get_layout (PangoRenderer *renderer);
extern
PangoLayoutLine *pango_renderer_get_layout_line (PangoRenderer *renderer);

}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 2



# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-utils.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-utils.h"
extern "C" {

__attribute__((__deprecated__)) extern
char ** pango_split_file_list (const char *str);

__attribute__((__deprecated__)) extern
char *pango_trim_string (const char *str);
__attribute__((__deprecated__)) extern
gint pango_read_line (FILE *stream,
         GString *str);
__attribute__((__deprecated__)) extern
gboolean pango_skip_space (const char **pos);
__attribute__((__deprecated__)) extern
gboolean pango_scan_word (const char **pos,
         GString *out);
__attribute__((__deprecated__)) extern
gboolean pango_scan_string (const char **pos,
         GString *out);
__attribute__((__deprecated__)) extern
gboolean pango_scan_int (const char **pos,
         int *out);
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-utils.h"
__attribute__((__deprecated__)) extern
gboolean pango_parse_enum (GType type,
         const char *str,
         int *value,
         gboolean warn,
         char **possible_values);
# 76 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-utils.h"
extern
gboolean pango_parse_style (const char *str,
        PangoStyle *style,
        gboolean warn);
extern
gboolean pango_parse_variant (const char *str,
        PangoVariant *variant,
        gboolean warn);
extern
gboolean pango_parse_weight (const char *str,
        PangoWeight *weight,
        gboolean warn);
extern
gboolean pango_parse_stretch (const char *str,
        PangoStretch *stretch,
        gboolean warn);
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-utils.h"
extern
void pango_quantize_line_geometry (int *thickness,
      int *position);



extern
guint8 * pango_log2vis_get_embedding_levels (const gchar *text,
         int length,
         PangoDirection *pbase_dir);




extern
gboolean pango_is_zero_width (gunichar ch) __attribute__((__const__));
# 196 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango-utils.h"
extern
int pango_version (void) __attribute__((__const__));


extern
const char * pango_version_string (void) __attribute__((__const__));


extern
const char * pango_version_check (int required_major,
                                 int required_minor,
                                 int required_micro) __attribute__((__const__));

}
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pango.h" 2
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdktypes.h" 2
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdktypes.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/lib/gtk-2.0/include/gdkconfig.h" 1
# 10 "/tmp/graphics/geeqie/work/.buildlink/lib/gtk-2.0/include/gdkconfig.h"
extern "C" {
# 29 "/tmp/graphics/geeqie/work/.buildlink/lib/gtk-2.0/include/gdkconfig.h"
}
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdktypes.h" 2







extern "C" {




typedef struct _GdkPoint GdkPoint;
typedef struct _GdkRectangle GdkRectangle;
typedef struct _GdkSegment GdkSegment;
typedef struct _GdkSpan GdkSpan;






typedef guint32 GdkWChar;

typedef struct _GdkAtom *GdkAtom;
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdktypes.h"
typedef guint32 GdkNativeWindow;




typedef struct _GdkColor GdkColor;
typedef struct _GdkColormap GdkColormap;
typedef struct _GdkCursor GdkCursor;
typedef struct _GdkFont GdkFont;
typedef struct _GdkGC GdkGC;
typedef struct _GdkImage GdkImage;
typedef struct _GdkRegion GdkRegion;
typedef struct _GdkVisual GdkVisual;

typedef struct _GdkDrawable GdkDrawable;
typedef struct _GdkDrawable GdkBitmap;
typedef struct _GdkDrawable GdkPixmap;
typedef struct _GdkDrawable GdkWindow;
typedef struct _GdkDisplay GdkDisplay;
typedef struct _GdkScreen GdkScreen;

typedef enum
{
 GDK_LSB_FIRST,
 GDK_MSB_FIRST
} GdkByteOrder;



typedef enum
{
 GDK_SHIFT_MASK = 1 << 0,
 GDK_LOCK_MASK = 1 << 1,
 GDK_CONTROL_MASK = 1 << 2,
 GDK_MOD1_MASK = 1 << 3,
 GDK_MOD2_MASK = 1 << 4,
 GDK_MOD3_MASK = 1 << 5,
 GDK_MOD4_MASK = 1 << 6,
 GDK_MOD5_MASK = 1 << 7,
 GDK_BUTTON1_MASK = 1 << 8,
 GDK_BUTTON2_MASK = 1 << 9,
 GDK_BUTTON3_MASK = 1 << 10,
 GDK_BUTTON4_MASK = 1 << 11,
 GDK_BUTTON5_MASK = 1 << 12,





 GDK_SUPER_MASK = 1 << 26,
 GDK_HYPER_MASK = 1 << 27,
 GDK_META_MASK = 1 << 28,

 GDK_RELEASE_MASK = 1 << 30,

 GDK_MODIFIER_MASK = 0x5c001fff
} GdkModifierType;

typedef enum
{
 GDK_INPUT_READ = 1 << 0,
 GDK_INPUT_WRITE = 1 << 1,
 GDK_INPUT_EXCEPTION = 1 << 2
} GdkInputCondition;

typedef enum
{
 GDK_OK = 0,
 GDK_ERROR = -1,
 GDK_ERROR_PARAM = -2,
 GDK_ERROR_FILE = -3,
 GDK_ERROR_MEM = -4
} GdkStatus;





typedef enum
{
 GDK_GRAB_SUCCESS = 0,
 GDK_GRAB_ALREADY_GRABBED = 1,
 GDK_GRAB_INVALID_TIME = 2,
 GDK_GRAB_NOT_VIEWABLE = 3,
 GDK_GRAB_FROZEN = 4
} GdkGrabStatus;

typedef void (*GdkInputFunction) (gpointer data,
     gint source,
     GdkInputCondition condition);



typedef void (*GdkDestroyNotify) (gpointer data);



struct _GdkPoint
{
 gint x;
 gint y;
};

struct _GdkRectangle
{
 gint x;
 gint y;
 gint width;
 gint height;
};

struct _GdkSegment
{
 gint x1;
 gint y1;
 gint x2;
 gint y2;
};

struct _GdkSpan
{
 gint x;
 gint y;
 gint width;
};

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkscreen.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdisplay.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdisplay.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkevents.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkevents.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcolor.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcolor.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcolor.h"
struct _GdkColor
{
 guint32 pixel;
 guint16 red;
 guint16 green;
 guint16 blue;
};




typedef struct _GdkColormapClass GdkColormapClass;
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcolor.h"
struct _GdkColormap
{

 GObject parent_instance;


 gint size;
 GdkColor *colors;


 GdkVisual *visual;

 gpointer windowing_data;
};

struct _GdkColormapClass
{
 GObjectClass parent_class;

};

GType gdk_colormap_get_type (void) __attribute__((__const__));

GdkColormap* gdk_colormap_new (GdkVisual *visual,
      gboolean allocate);


GdkColormap* gdk_colormap_ref (GdkColormap *cmap);
void gdk_colormap_unref (GdkColormap *cmap);



GdkColormap* gdk_colormap_get_system (void);


GdkScreen *gdk_colormap_get_screen (GdkColormap *cmap);


gint gdk_colormap_get_system_size (void);




void gdk_colormap_change (GdkColormap *colormap,
    gint ncolors);


gint gdk_colormap_alloc_colors (GdkColormap *colormap,
      GdkColor *colors,
      gint n_colors,
      gboolean writeable,
      gboolean best_match,
      gboolean *success);
gboolean gdk_colormap_alloc_color (GdkColormap *colormap,
      GdkColor *color,
      gboolean writeable,
      gboolean best_match);
void gdk_colormap_free_colors (GdkColormap *colormap,
      const GdkColor *colors,
      gint n_colors);
void gdk_colormap_query_color (GdkColormap *colormap,
      gulong pixel,
      GdkColor *result);

GdkVisual *gdk_colormap_get_visual (GdkColormap *colormap);

GdkColor *gdk_color_copy (const GdkColor *color);
void gdk_color_free (GdkColor *color);
gboolean gdk_color_parse (const gchar *spec,
         GdkColor *color);
guint gdk_color_hash (const GdkColor *colora);
gboolean gdk_color_equal (const GdkColor *colora,
         const GdkColor *colorb);
gchar * gdk_color_to_string (const GdkColor *color);

GType gdk_color_get_type (void) __attribute__((__const__));



void gdk_colors_store (GdkColormap *colormap,
    GdkColor *colors,
    gint ncolors);
gint gdk_color_white (GdkColormap *colormap,
    GdkColor *color);
gint gdk_color_black (GdkColormap *colormap,
    GdkColor *color);
gint gdk_color_alloc (GdkColormap *colormap,
    GdkColor *color);
gint gdk_color_change (GdkColormap *colormap,
    GdkColor *color);




gint gdk_colors_alloc (GdkColormap *colormap,
    gboolean contiguous,
    gulong *planes,
    gint nplanes,
    gulong *pixels,
    gint npixels);
void gdk_colors_free (GdkColormap *colormap,
    gulong *pixels,
    gint npixels,
    gulong planes);


}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkevents.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdnd.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdnd.h"
extern "C" {

typedef struct _GdkDragContext GdkDragContext;

typedef enum
{
 GDK_ACTION_DEFAULT = 1 << 0,
 GDK_ACTION_COPY = 1 << 1,
 GDK_ACTION_MOVE = 1 << 2,
 GDK_ACTION_LINK = 1 << 3,
 GDK_ACTION_PRIVATE = 1 << 4,
 GDK_ACTION_ASK = 1 << 5
} GdkDragAction;

typedef enum
{
 GDK_DRAG_PROTO_MOTIF,
 GDK_DRAG_PROTO_XDND,
 GDK_DRAG_PROTO_ROOTWIN,

 GDK_DRAG_PROTO_NONE,
 GDK_DRAG_PROTO_WIN32_DROPFILES,
 GDK_DRAG_PROTO_OLE2,
 GDK_DRAG_PROTO_LOCAL
} GdkDragProtocol;





typedef struct _GdkDragContextClass GdkDragContextClass;
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdnd.h"
struct _GdkDragContext {
 GObject parent_instance;



 GdkDragProtocol protocol;

 gboolean is_source;

 GdkWindow *source_window;
 GdkWindow *dest_window;

 GList *targets;
 GdkDragAction actions;
 GdkDragAction suggested_action;
 GdkDragAction action;

 guint32 start_time;



 gpointer windowing_data;
};

struct _GdkDragContextClass {
 GObjectClass parent_class;

};



GType gdk_drag_context_get_type (void) __attribute__((__const__));

GdkDragContext * gdk_drag_context_new (void);


GList *gdk_drag_context_list_targets (GdkDragContext *context);
GdkDragAction gdk_drag_context_get_actions (GdkDragContext *context);
GdkDragAction gdk_drag_context_get_suggested_action (GdkDragContext *context);
GdkDragAction gdk_drag_context_get_selected_action (GdkDragContext *context);

GdkWindow *gdk_drag_context_get_source_window (GdkDragContext *context);
GdkWindow *gdk_drag_context_get_dest_window (GdkDragContext *context);
GdkDragProtocol gdk_drag_context_get_protocol (GdkDragContext *context);



void gdk_drag_context_ref (GdkDragContext *context);
void gdk_drag_context_unref (GdkDragContext *context);




void gdk_drag_status (GdkDragContext *context,
            GdkDragAction action,
     guint32 time_);
void gdk_drop_reply (GdkDragContext *context,
     gboolean ok,
     guint32 time_);
void gdk_drop_finish (GdkDragContext *context,
     gboolean success,
     guint32 time_);
GdkAtom gdk_drag_get_selection (GdkDragContext *context);



GdkDragContext * gdk_drag_begin (GdkWindow *window,
         GList *targets);

GdkNativeWindow gdk_drag_get_protocol_for_display (GdkDisplay *display,
        GdkNativeWindow xid,
        GdkDragProtocol *protocol);

void gdk_drag_find_window_for_screen (GdkDragContext *context,
       GdkWindow *drag_window,
       GdkScreen *screen,
       gint x_root,
       gint y_root,
       GdkWindow **dest_window,
       GdkDragProtocol *protocol);



GdkNativeWindow gdk_drag_get_protocol (GdkNativeWindow xid,
          GdkDragProtocol *protocol);

void gdk_drag_find_window (GdkDragContext *context,
         GdkWindow *drag_window,
         gint x_root,
         gint y_root,
         GdkWindow **dest_window,
         GdkDragProtocol *protocol);



gboolean gdk_drag_motion (GdkDragContext *context,
         GdkWindow *dest_window,
         GdkDragProtocol protocol,
         gint x_root,
         gint y_root,
         GdkDragAction suggested_action,
         GdkDragAction possible_actions,
         guint32 time_);
void gdk_drag_drop (GdkDragContext *context,
         guint32 time_);
void gdk_drag_abort (GdkDragContext *context,
         guint32 time_);
gboolean gdk_drag_drop_succeeded (GdkDragContext *context);

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkevents.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkinput.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkinput.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkinput.h"
typedef struct _GdkDeviceKey GdkDeviceKey;
typedef struct _GdkDeviceAxis GdkDeviceAxis;
typedef struct _GdkDevice GdkDevice;
typedef struct _GdkDeviceClass GdkDeviceClass;
typedef struct _GdkTimeCoord GdkTimeCoord;

typedef enum
{
 GDK_EXTENSION_EVENTS_NONE,
 GDK_EXTENSION_EVENTS_ALL,
 GDK_EXTENSION_EVENTS_CURSOR
} GdkExtensionMode;

typedef enum
{
 GDK_SOURCE_MOUSE,
 GDK_SOURCE_PEN,
 GDK_SOURCE_ERASER,
 GDK_SOURCE_CURSOR
} GdkInputSource;

typedef enum
{
 GDK_MODE_DISABLED,
 GDK_MODE_SCREEN,
 GDK_MODE_WINDOW
} GdkInputMode;

typedef enum
{
 GDK_AXIS_IGNORE,
 GDK_AXIS_X,
 GDK_AXIS_Y,
 GDK_AXIS_PRESSURE,
 GDK_AXIS_XTILT,
 GDK_AXIS_YTILT,
 GDK_AXIS_WHEEL,
 GDK_AXIS_LAST
} GdkAxisUse;

struct _GdkDeviceKey
{
 guint keyval;
 GdkModifierType modifiers;
};

struct _GdkDeviceAxis
{
 GdkAxisUse use;
 gdouble min;
 gdouble max;
};

struct _GdkDevice
{
 GObject parent_instance;


 gchar *name;
 GdkInputSource source;
 GdkInputMode mode;
 gboolean has_cursor;

 gint num_axes;
 GdkDeviceAxis *axes;

 gint num_keys;
 GdkDeviceKey *keys;
};






struct _GdkTimeCoord
{
 guint32 time;
 gdouble axes[128];
};

GType gdk_device_get_type (void) __attribute__((__const__));



GList * gdk_devices_list (void);


const gchar * gdk_device_get_name (GdkDevice *device);
GdkInputSource gdk_device_get_source (GdkDevice *device);
GdkInputMode gdk_device_get_mode (GdkDevice *device);
gboolean gdk_device_get_has_cursor (GdkDevice *device);

void gdk_device_get_key (GdkDevice *device,
                                                guint index,
                                                guint *keyval,
                                                GdkModifierType *modifiers);
GdkAxisUse gdk_device_get_axis_use (GdkDevice *device,
                                                guint index);
gint gdk_device_get_n_keys (GdkDevice *device);
gint gdk_device_get_n_axes (GdkDevice *device);


void gdk_device_set_source (GdkDevice *device,
     GdkInputSource source);

gboolean gdk_device_set_mode (GdkDevice *device,
     GdkInputMode mode);

void gdk_device_set_key (GdkDevice *device,
     guint index_,
     guint keyval,
     GdkModifierType modifiers);

void gdk_device_set_axis_use (GdkDevice *device,
     guint index_,
     GdkAxisUse use);

void gdk_device_get_state (GdkDevice *device,
     GdkWindow *window,
     gdouble *axes,
     GdkModifierType *mask);

gboolean gdk_device_get_history (GdkDevice *device,
     GdkWindow *window,
     guint32 start,
     guint32 stop,
     GdkTimeCoord ***events,
     gint *n_events);

void gdk_device_free_history (GdkTimeCoord **events,
     gint n_events);
gboolean gdk_device_get_axis (GdkDevice *device,
     gdouble *axes,
     GdkAxisUse use,
     gdouble *value);

void gdk_input_set_extension_events (GdkWindow *window,
        gint mask,
        GdkExtensionMode mode);


GdkDevice *gdk_device_get_core_pointer (void);


}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkevents.h" 2

extern "C" {







typedef struct _GdkEventAny GdkEventAny;
typedef struct _GdkEventExpose GdkEventExpose;
typedef struct _GdkEventNoExpose GdkEventNoExpose;
typedef struct _GdkEventVisibility GdkEventVisibility;
typedef struct _GdkEventMotion GdkEventMotion;
typedef struct _GdkEventButton GdkEventButton;
typedef struct _GdkEventScroll GdkEventScroll;
typedef struct _GdkEventKey GdkEventKey;
typedef struct _GdkEventFocus GdkEventFocus;
typedef struct _GdkEventCrossing GdkEventCrossing;
typedef struct _GdkEventConfigure GdkEventConfigure;
typedef struct _GdkEventProperty GdkEventProperty;
typedef struct _GdkEventSelection GdkEventSelection;
typedef struct _GdkEventOwnerChange GdkEventOwnerChange;
typedef struct _GdkEventProximity GdkEventProximity;
typedef struct _GdkEventClient GdkEventClient;
typedef struct _GdkEventDND GdkEventDND;
typedef struct _GdkEventWindowState GdkEventWindowState;
typedef struct _GdkEventSetting GdkEventSetting;
typedef struct _GdkEventGrabBroken GdkEventGrabBroken;

typedef union _GdkEvent GdkEvent;

typedef void (*GdkEventFunc) (GdkEvent *event,
        gpointer data);



typedef void GdkXEvent;



typedef enum {
 GDK_FILTER_CONTINUE,
 GDK_FILTER_TRANSLATE,


 GDK_FILTER_REMOVE
} GdkFilterReturn;

typedef GdkFilterReturn (*GdkFilterFunc) (GdkXEvent *xevent,
      GdkEvent *event,
      gpointer data);
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkevents.h"
typedef enum
{
 GDK_NOTHING = -1,
 GDK_DELETE = 0,
 GDK_DESTROY = 1,
 GDK_EXPOSE = 2,
 GDK_MOTION_NOTIFY = 3,
 GDK_BUTTON_PRESS = 4,
 GDK_2BUTTON_PRESS = 5,
 GDK_3BUTTON_PRESS = 6,
 GDK_BUTTON_RELEASE = 7,
 GDK_KEY_PRESS = 8,
 GDK_KEY_RELEASE = 9,
 GDK_ENTER_NOTIFY = 10,
 GDK_LEAVE_NOTIFY = 11,
 GDK_FOCUS_CHANGE = 12,
 GDK_CONFIGURE = 13,
 GDK_MAP = 14,
 GDK_UNMAP = 15,
 GDK_PROPERTY_NOTIFY = 16,
 GDK_SELECTION_CLEAR = 17,
 GDK_SELECTION_REQUEST = 18,
 GDK_SELECTION_NOTIFY = 19,
 GDK_PROXIMITY_IN = 20,
 GDK_PROXIMITY_OUT = 21,
 GDK_DRAG_ENTER = 22,
 GDK_DRAG_LEAVE = 23,
 GDK_DRAG_MOTION = 24,
 GDK_DRAG_STATUS = 25,
 GDK_DROP_START = 26,
 GDK_DROP_FINISHED = 27,
 GDK_CLIENT_EVENT = 28,
 GDK_VISIBILITY_NOTIFY = 29,
 GDK_NO_EXPOSE = 30,
 GDK_SCROLL = 31,
 GDK_WINDOW_STATE = 32,
 GDK_SETTING = 33,
 GDK_OWNER_CHANGE = 34,
 GDK_GRAB_BROKEN = 35,
 GDK_DAMAGE = 36,
 GDK_EVENT_LAST
} GdkEventType;




typedef enum
{
 GDK_EXPOSURE_MASK = 1 << 1,
 GDK_POINTER_MOTION_MASK = 1 << 2,
 GDK_POINTER_MOTION_HINT_MASK = 1 << 3,
 GDK_BUTTON_MOTION_MASK = 1 << 4,
 GDK_BUTTON1_MOTION_MASK = 1 << 5,
 GDK_BUTTON2_MOTION_MASK = 1 << 6,
 GDK_BUTTON3_MOTION_MASK = 1 << 7,
 GDK_BUTTON_PRESS_MASK = 1 << 8,
 GDK_BUTTON_RELEASE_MASK = 1 << 9,
 GDK_KEY_PRESS_MASK = 1 << 10,
 GDK_KEY_RELEASE_MASK = 1 << 11,
 GDK_ENTER_NOTIFY_MASK = 1 << 12,
 GDK_LEAVE_NOTIFY_MASK = 1 << 13,
 GDK_FOCUS_CHANGE_MASK = 1 << 14,
 GDK_STRUCTURE_MASK = 1 << 15,
 GDK_PROPERTY_CHANGE_MASK = 1 << 16,
 GDK_VISIBILITY_NOTIFY_MASK = 1 << 17,
 GDK_PROXIMITY_IN_MASK = 1 << 18,
 GDK_PROXIMITY_OUT_MASK = 1 << 19,
 GDK_SUBSTRUCTURE_MASK = 1 << 20,
 GDK_SCROLL_MASK = 1 << 21,
 GDK_ALL_EVENTS_MASK = 0x3FFFFE
} GdkEventMask;

typedef enum
{
 GDK_VISIBILITY_UNOBSCURED,
 GDK_VISIBILITY_PARTIAL,
 GDK_VISIBILITY_FULLY_OBSCURED
} GdkVisibilityState;

typedef enum
{
 GDK_SCROLL_UP,
 GDK_SCROLL_DOWN,
 GDK_SCROLL_LEFT,
 GDK_SCROLL_RIGHT
} GdkScrollDirection;
# 210 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkevents.h"
typedef enum
{
 GDK_NOTIFY_ANCESTOR = 0,
 GDK_NOTIFY_VIRTUAL = 1,
 GDK_NOTIFY_INFERIOR = 2,
 GDK_NOTIFY_NONLINEAR = 3,
 GDK_NOTIFY_NONLINEAR_VIRTUAL = 4,
 GDK_NOTIFY_UNKNOWN = 5
} GdkNotifyType;






typedef enum
{
 GDK_CROSSING_NORMAL,
 GDK_CROSSING_GRAB,
 GDK_CROSSING_UNGRAB,
 GDK_CROSSING_GTK_GRAB,
 GDK_CROSSING_GTK_UNGRAB,
 GDK_CROSSING_STATE_CHANGED
} GdkCrossingMode;

typedef enum
{
 GDK_PROPERTY_NEW_VALUE,
 GDK_PROPERTY_DELETE
} GdkPropertyState;

typedef enum
{
 GDK_WINDOW_STATE_WITHDRAWN = 1 << 0,
 GDK_WINDOW_STATE_ICONIFIED = 1 << 1,
 GDK_WINDOW_STATE_MAXIMIZED = 1 << 2,
 GDK_WINDOW_STATE_STICKY = 1 << 3,
 GDK_WINDOW_STATE_FULLSCREEN = 1 << 4,
 GDK_WINDOW_STATE_ABOVE = 1 << 5,
 GDK_WINDOW_STATE_BELOW = 1 << 6
} GdkWindowState;

typedef enum
{
 GDK_SETTING_ACTION_NEW,
 GDK_SETTING_ACTION_CHANGED,
 GDK_SETTING_ACTION_DELETED
} GdkSettingAction;

typedef enum
{
 GDK_OWNER_CHANGE_NEW_OWNER,
 GDK_OWNER_CHANGE_DESTROY,
 GDK_OWNER_CHANGE_CLOSE
} GdkOwnerChange;

struct _GdkEventAny
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
};

struct _GdkEventExpose
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkRectangle area;
 GdkRegion *region;
 gint count;
};

struct _GdkEventNoExpose
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
};

struct _GdkEventVisibility
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkVisibilityState state;
};

struct _GdkEventMotion
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 guint32 time;
 gdouble x;
 gdouble y;
 gdouble *axes;
 guint state;
 gint16 is_hint;
 GdkDevice *device;
 gdouble x_root, y_root;
};

struct _GdkEventButton
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 guint32 time;
 gdouble x;
 gdouble y;
 gdouble *axes;
 guint state;
 guint button;
 GdkDevice *device;
 gdouble x_root, y_root;
};

struct _GdkEventScroll
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 guint32 time;
 gdouble x;
 gdouble y;
 guint state;
 GdkScrollDirection direction;
 GdkDevice *device;
 gdouble x_root, y_root;
};

struct _GdkEventKey
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 guint32 time;
 guint state;
 guint keyval;
 gint length;
 gchar *string;
 guint16 hardware_keycode;
 guint8 group;
 guint is_modifier : 1;
};

struct _GdkEventCrossing
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkWindow *subwindow;
 guint32 time;
 gdouble x;
 gdouble y;
 gdouble x_root;
 gdouble y_root;
 GdkCrossingMode mode;
 GdkNotifyType detail;
 gboolean focus;
 guint state;
};

struct _GdkEventFocus
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 gint16 in;
};

struct _GdkEventConfigure
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 gint x, y;
 gint width;
 gint height;
};

struct _GdkEventProperty
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkAtom atom;
 guint32 time;
 guint state;
};

struct _GdkEventSelection
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkAtom selection;
 GdkAtom target;
 GdkAtom property;
 guint32 time;
 GdkNativeWindow requestor;
};

struct _GdkEventOwnerChange
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkNativeWindow owner;
 GdkOwnerChange reason;
 GdkAtom selection;
 guint32 time;
 guint32 selection_time;
};




struct _GdkEventProximity
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 guint32 time;
 GdkDevice *device;
};

struct _GdkEventClient
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkAtom message_type;
 gushort data_format;
 union {
   char b[20];
   short s[10];
   long l[5];
 } data;
};

struct _GdkEventSetting
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkSettingAction action;
 char *name;
};

struct _GdkEventWindowState
{
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkWindowState changed_mask;
 GdkWindowState new_window_state;
};

struct _GdkEventGrabBroken {
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 gboolean keyboard;
 gboolean implicit;
 GdkWindow *grab_window;
};



struct _GdkEventDND {
 GdkEventType type;
 GdkWindow *window;
 gint8 send_event;
 GdkDragContext *context;

 guint32 time;
 gshort x_root, y_root;
};

union _GdkEvent
{
 GdkEventType type;
 GdkEventAny any;
 GdkEventExpose expose;
 GdkEventNoExpose no_expose;
 GdkEventVisibility visibility;
 GdkEventMotion motion;
 GdkEventButton button;
 GdkEventScroll scroll;
 GdkEventKey key;
 GdkEventCrossing crossing;
 GdkEventFocus focus_change;
 GdkEventConfigure configure;
 GdkEventProperty property;
 GdkEventSelection selection;
 GdkEventOwnerChange owner_change;
 GdkEventProximity proximity;
 GdkEventClient client;
 GdkEventDND dnd;
 GdkEventWindowState window_state;
 GdkEventSetting setting;
 GdkEventGrabBroken grab_broken;
};

GType gdk_event_get_type (void) __attribute__((__const__));

gboolean gdk_events_pending (void);
GdkEvent* gdk_event_get (void);

GdkEvent* gdk_event_peek (void);

GdkEvent* gdk_event_get_graphics_expose (GdkWindow *window);

void gdk_event_put (const GdkEvent *event);

GdkEvent* gdk_event_new (GdkEventType type);
GdkEvent* gdk_event_copy (const GdkEvent *event);
void gdk_event_free (GdkEvent *event);

guint32 gdk_event_get_time (const GdkEvent *event);
gboolean gdk_event_get_state (const GdkEvent *event,
                                        GdkModifierType *state);
gboolean gdk_event_get_coords (const GdkEvent *event,
     gdouble *x_win,
     gdouble *y_win);
gboolean gdk_event_get_root_coords (const GdkEvent *event,
     gdouble *x_root,
     gdouble *y_root);
gboolean gdk_event_get_axis (const GdkEvent *event,
                                        GdkAxisUse axis_use,
                                        gdouble *value);
void gdk_event_request_motions (const GdkEventMotion *event);
void gdk_event_handler_set (GdkEventFunc func,
     gpointer data,
     GDestroyNotify notify);

void gdk_event_set_screen (GdkEvent *event,
                                        GdkScreen *screen);
GdkScreen *gdk_event_get_screen (const GdkEvent *event);

void gdk_set_show_events (gboolean show_events);
gboolean gdk_get_show_events (void);


void gdk_add_client_message_filter (GdkAtom message_type,
       GdkFilterFunc func,
       gpointer data);

gboolean gdk_setting_get (const gchar *name,
    GValue *value);


}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdisplay.h" 2

extern "C" {

typedef struct _GdkDisplayClass GdkDisplayClass;
typedef struct _GdkDisplayPointerHooks GdkDisplayPointerHooks;
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdisplay.h"
typedef struct
{
 GdkWindow *window;
 GdkWindow *native_window;
 gulong serial;
 gboolean owner_events;
 guint32 time;
} GdkKeyboardGrabInfo;
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdisplay.h"
typedef struct
{
 GdkWindow *toplevel_under_pointer;
 GdkWindow *window_under_pointer;
 gdouble toplevel_x, toplevel_y;
 guint32 state;
 guint32 button;
 gulong motion_hint_serial;
} GdkPointerWindowInfo;

struct _GdkDisplay
{
 GObject parent_instance;


 GList *queued_events;
 GList *queued_tail;




 guint32 button_click_time[2];
 GdkWindow *button_window[2];
 gint button_number[2];

 guint double_click_time;
 GdkDevice *core_pointer;

 const GdkDisplayPointerHooks *pointer_hooks;

 guint closed : 1;
 guint ignore_core_events : 1;

 guint double_click_distance;
 gint button_x[2];
 gint button_y[2];

 GList *pointer_grabs;
 GdkKeyboardGrabInfo keyboard_grab;
 GdkPointerWindowInfo pointer_info;


 guint32 last_event_time;
};

struct _GdkDisplayClass
{
 GObjectClass parent_class;

 const gchar * (*get_display_name) (GdkDisplay *display);
 gint (*get_n_screens) (GdkDisplay *display);
 GdkScreen * (*get_screen) (GdkDisplay *display,
         gint screen_num);
 GdkScreen * (*get_default_screen) (GdkDisplay *display);



 void (*closed) (GdkDisplay *display,
   gboolean is_error);
};

struct _GdkDisplayPointerHooks
{
 void (*get_pointer) (GdkDisplay *display,
       GdkScreen **screen,
       gint *x,
       gint *y,
       GdkModifierType *mask);
 GdkWindow* (*window_get_pointer) (GdkDisplay *display,
       GdkWindow *window,
       gint *x,
       gint *y,
       GdkModifierType *mask);
 GdkWindow* (*window_at_pointer) (GdkDisplay *display,
       gint *win_x,
       gint *win_y);
};

GType gdk_display_get_type (void) __attribute__((__const__));
GdkDisplay *gdk_display_open (const gchar *display_name);

const gchar * gdk_display_get_name (GdkDisplay *display);

gint gdk_display_get_n_screens (GdkDisplay *display);
GdkScreen * gdk_display_get_screen (GdkDisplay *display,
        gint screen_num);
GdkScreen * gdk_display_get_default_screen (GdkDisplay *display);
void gdk_display_pointer_ungrab (GdkDisplay *display,
        guint32 time_);
void gdk_display_keyboard_ungrab (GdkDisplay *display,
        guint32 time_);
gboolean gdk_display_pointer_is_grabbed (GdkDisplay *display);
void gdk_display_beep (GdkDisplay *display);
void gdk_display_sync (GdkDisplay *display);
void gdk_display_flush (GdkDisplay *display);

void gdk_display_close (GdkDisplay *display);
gboolean gdk_display_is_closed (GdkDisplay *display);

GList * gdk_display_list_devices (GdkDisplay *display);

GdkEvent* gdk_display_get_event (GdkDisplay *display);
GdkEvent* gdk_display_peek_event (GdkDisplay *display);
void gdk_display_put_event (GdkDisplay *display,
     const GdkEvent *event);

void gdk_display_add_client_message_filter (GdkDisplay *display,
        GdkAtom message_type,
        GdkFilterFunc func,
        gpointer data);

void gdk_display_set_double_click_time (GdkDisplay *display,
        guint msec);
void gdk_display_set_double_click_distance (GdkDisplay *display,
        guint distance);

GdkDisplay *gdk_display_get_default (void);

GdkDevice *gdk_display_get_core_pointer (GdkDisplay *display);

void gdk_display_get_pointer (GdkDisplay *display,
         GdkScreen **screen,
         gint *x,
         gint *y,
         GdkModifierType *mask);
GdkWindow * gdk_display_get_window_at_pointer (GdkDisplay *display,
         gint *win_x,
         gint *win_y);
void gdk_display_warp_pointer (GdkDisplay *display,
         GdkScreen *screen,
         gint x,
         gint y);


GdkDisplayPointerHooks *gdk_display_set_pointer_hooks (GdkDisplay *display,
            const GdkDisplayPointerHooks *new_hooks);


GdkDisplay *gdk_display_open_default_libgtk_only (void);

gboolean gdk_display_supports_cursor_alpha (GdkDisplay *display);
gboolean gdk_display_supports_cursor_color (GdkDisplay *display);
guint gdk_display_get_default_cursor_size (GdkDisplay *display);
void gdk_display_get_maximal_cursor_size (GdkDisplay *display,
     guint *width,
     guint *height);

GdkWindow *gdk_display_get_default_group (GdkDisplay *display);

gboolean gdk_display_supports_selection_notification (GdkDisplay *display);
gboolean gdk_display_request_selection_notification (GdkDisplay *display,
           GdkAtom selection);

gboolean gdk_display_supports_clipboard_persistence (GdkDisplay *display);
void gdk_display_store_clipboard (GdkDisplay *display,
          GdkWindow *clipboard_window,
          guint32 time_,
          const GdkAtom *targets,
          gint n_targets);

gboolean gdk_display_supports_shapes (GdkDisplay *display);
gboolean gdk_display_supports_input_shapes (GdkDisplay *display);
gboolean gdk_display_supports_composite (GdkDisplay *display);

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkscreen.h" 2

extern "C" {

typedef struct _GdkScreenClass GdkScreenClass;
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkscreen.h"
struct _GdkScreen
{
 GObject parent_instance;

 guint closed : 1;

 GdkGC *normal_gcs[32];
 GdkGC *exposure_gcs[32];
 GdkGC *subwindow_gcs[32];

 cairo_font_options_t *font_options;
 double resolution;
};

struct _GdkScreenClass
{
 GObjectClass parent_class;

 void (*size_changed) (GdkScreen *screen);
 void (*composited_changed) (GdkScreen *screen);
 void (*monitors_changed) (GdkScreen *screen);
};

GType gdk_screen_get_type (void) __attribute__((__const__));
GdkColormap *gdk_screen_get_default_colormap (GdkScreen *screen);
void gdk_screen_set_default_colormap (GdkScreen *screen,
           GdkColormap *colormap);
GdkColormap* gdk_screen_get_system_colormap (GdkScreen *screen);
GdkVisual* gdk_screen_get_system_visual (GdkScreen *screen);
GdkColormap *gdk_screen_get_rgb_colormap (GdkScreen *screen);
GdkVisual * gdk_screen_get_rgb_visual (GdkScreen *screen);
GdkColormap *gdk_screen_get_rgba_colormap (GdkScreen *screen);
GdkVisual * gdk_screen_get_rgba_visual (GdkScreen *screen);
gboolean gdk_screen_is_composited (GdkScreen *screen);

GdkWindow * gdk_screen_get_root_window (GdkScreen *screen);
GdkDisplay * gdk_screen_get_display (GdkScreen *screen);
gint gdk_screen_get_number (GdkScreen *screen);
gint gdk_screen_get_width (GdkScreen *screen);
gint gdk_screen_get_height (GdkScreen *screen);
gint gdk_screen_get_width_mm (GdkScreen *screen);
gint gdk_screen_get_height_mm (GdkScreen *screen);

GList * gdk_screen_list_visuals (GdkScreen *screen);
GList * gdk_screen_get_toplevel_windows (GdkScreen *screen);
gchar * gdk_screen_make_display_name (GdkScreen *screen);

gint gdk_screen_get_n_monitors (GdkScreen *screen);
gint gdk_screen_get_primary_monitor (GdkScreen *screen);
void gdk_screen_get_monitor_geometry (GdkScreen *screen,
     gint monitor_num,
     GdkRectangle *dest);
gint gdk_screen_get_monitor_at_point (GdkScreen *screen,
     gint x,
     gint y);
gint gdk_screen_get_monitor_at_window (GdkScreen *screen,
     GdkWindow *window);
gint gdk_screen_get_monitor_width_mm (GdkScreen *screen,
                                               gint monitor_num);
gint gdk_screen_get_monitor_height_mm (GdkScreen *screen,
                                               gint monitor_num);
gchar * gdk_screen_get_monitor_plug_name (GdkScreen *screen,
                                               gint monitor_num);

void gdk_screen_broadcast_client_message (GdkScreen *screen,
         GdkEvent *event);

GdkScreen *gdk_screen_get_default (void);

gboolean gdk_screen_get_setting (GdkScreen *screen,
      const gchar *name,
      GValue *value);

void gdk_screen_set_font_options (GdkScreen *screen,
       const cairo_font_options_t *options);
const cairo_font_options_t *gdk_screen_get_font_options (GdkScreen *screen);

void gdk_screen_set_resolution (GdkScreen *screen,
      gdouble dpi);
gdouble gdk_screen_get_resolution (GdkScreen *screen);

GdkWindow *gdk_screen_get_active_window (GdkScreen *screen);
GList *gdk_screen_get_window_stack (GdkScreen *screen);

}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkapplaunchcontext.h" 2

extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkapplaunchcontext.h"
typedef struct GdkAppLaunchContext GdkAppLaunchContext;
typedef struct GdkAppLaunchContextClass GdkAppLaunchContextClass;
typedef struct GdkAppLaunchContextPrivate GdkAppLaunchContextPrivate;

struct GdkAppLaunchContext
{
 GAppLaunchContext parent_instance;

 GdkAppLaunchContextPrivate *priv;
};

struct GdkAppLaunchContextClass
{
 GAppLaunchContextClass parent_class;
};

GType gdk_app_launch_context_get_type (void);

GdkAppLaunchContext *gdk_app_launch_context_new (void);
void gdk_app_launch_context_set_display (GdkAppLaunchContext *context,
         GdkDisplay *display);
void gdk_app_launch_context_set_screen (GdkAppLaunchContext *context,
         GdkScreen *screen);
void gdk_app_launch_context_set_desktop (GdkAppLaunchContext *context,
         gint desktop);
void gdk_app_launch_context_set_timestamp (GdkAppLaunchContext *context,
         guint32 timestamp);
void gdk_app_launch_context_set_icon (GdkAppLaunchContext *context,
         GIcon *icon);
void gdk_app_launch_context_set_icon_name (GdkAppLaunchContext *context,
         const char *icon_name);

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcairo.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcairo.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpixbuf.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpixbuf.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkrgb.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkrgb.h"
extern "C" {

typedef struct _GdkRgbCmap GdkRgbCmap;

typedef enum
{
 GDK_RGB_DITHER_NONE,
 GDK_RGB_DITHER_NORMAL,
 GDK_RGB_DITHER_MAX
} GdkRgbDither;



struct _GdkRgbCmap {
 guint32 colors[256];
 gint n_colors;


 GSList *info_list;
};

void gdk_rgb_init (void);

gulong gdk_rgb_xpixel_from_rgb (guint32 rgb) __attribute__((__const__));
void gdk_rgb_gc_set_foreground (GdkGC *gc,
     guint32 rgb);
void gdk_rgb_gc_set_background (GdkGC *gc,
     guint32 rgb);


void gdk_rgb_find_color (GdkColormap *colormap,
     GdkColor *color);

void gdk_draw_rgb_image (GdkDrawable *drawable,
         GdkGC *gc,
         gint x,
         gint y,
         gint width,
         gint height,
         GdkRgbDither dith,
         const guchar *rgb_buf,
         gint rowstride);
void gdk_draw_rgb_image_dithalign (GdkDrawable *drawable,
         GdkGC *gc,
         gint x,
         gint y,
         gint width,
         gint height,
         GdkRgbDither dith,
         const guchar *rgb_buf,
         gint rowstride,
         gint xdith,
         gint ydith);
void gdk_draw_rgb_32_image (GdkDrawable *drawable,
         GdkGC *gc,
         gint x,
         gint y,
         gint width,
         gint height,
         GdkRgbDither dith,
         const guchar *buf,
         gint rowstride);
void gdk_draw_rgb_32_image_dithalign (GdkDrawable *drawable,
         GdkGC *gc,
         gint x,
         gint y,
         gint width,
         gint height,
         GdkRgbDither dith,
         const guchar *buf,
         gint rowstride,
         gint xdith,
         gint ydith);
void gdk_draw_gray_image (GdkDrawable *drawable,
         GdkGC *gc,
         gint x,
         gint y,
         gint width,
         gint height,
         GdkRgbDither dith,
         const guchar *buf,
         gint rowstride);
void gdk_draw_indexed_image (GdkDrawable *drawable,
         GdkGC *gc,
         gint x,
         gint y,
         gint width,
         gint height,
         GdkRgbDither dith,
         const guchar *buf,
         gint rowstride,
         GdkRgbCmap *cmap);
GdkRgbCmap *gdk_rgb_cmap_new (guint32 *colors,
         gint n_colors);
void gdk_rgb_cmap_free (GdkRgbCmap *cmap);

void gdk_rgb_set_verbose (gboolean verbose);


void gdk_rgb_set_install (gboolean install);
void gdk_rgb_set_min_colors (gint min_colors);


GdkColormap *gdk_rgb_get_colormap (void);
GdkVisual * gdk_rgb_get_visual (void);
gboolean gdk_rgb_ditherable (void);
gboolean gdk_rgb_colormap_ditherable (GdkColormap *cmap);



}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpixbuf.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-features.h" 1
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-features.h"
extern const guint gdk_pixbuf_major_version;
extern const guint gdk_pixbuf_minor_version;
extern const guint gdk_pixbuf_micro_version;
extern const char *gdk_pixbuf_version;
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h"
extern "C" {
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h"
typedef enum
{
       GDK_PIXBUF_ALPHA_BILEVEL,
       GDK_PIXBUF_ALPHA_FULL
} GdkPixbufAlphaMode;
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h"
typedef enum {
GDK_COLORSPACE_RGB
} GdkColorspace;
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h"
typedef struct _GdkPixbuf GdkPixbuf;
# 175 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h"
typedef void (* GdkPixbufDestroyNotify) (guchar *pixels, gpointer data);
# 201 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h"
typedef enum {

       GDK_PIXBUF_ERROR_CORRUPT_IMAGE,

       GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY,

       GDK_PIXBUF_ERROR_BAD_OPTION,

       GDK_PIXBUF_ERROR_UNKNOWN_TYPE,

       GDK_PIXBUF_ERROR_UNSUPPORTED_OPERATION,
       GDK_PIXBUF_ERROR_FAILED,
       GDK_PIXBUF_ERROR_INCOMPLETE_ANIMATION
} GdkPixbufError;

GQuark gdk_pixbuf_error_quark (void);



GType gdk_pixbuf_get_type (void) __attribute__((__const__));




__attribute__((__deprecated__("Use '" "g_object_ref" "' instead")))
GdkPixbuf *gdk_pixbuf_ref (GdkPixbuf *pixbuf);
__attribute__((__deprecated__("Use '" "g_object_unref" "' instead")))
void gdk_pixbuf_unref (GdkPixbuf *pixbuf);




GdkColorspace gdk_pixbuf_get_colorspace (const GdkPixbuf *pixbuf);
int gdk_pixbuf_get_n_channels (const GdkPixbuf *pixbuf);
gboolean gdk_pixbuf_get_has_alpha (const GdkPixbuf *pixbuf);
int gdk_pixbuf_get_bits_per_sample (const GdkPixbuf *pixbuf);
guchar *gdk_pixbuf_get_pixels (const GdkPixbuf *pixbuf);
int gdk_pixbuf_get_width (const GdkPixbuf *pixbuf);
int gdk_pixbuf_get_height (const GdkPixbuf *pixbuf);
int gdk_pixbuf_get_rowstride (const GdkPixbuf *pixbuf);
gsize gdk_pixbuf_get_byte_length (const GdkPixbuf *pixbuf);

guchar *gdk_pixbuf_get_pixels_with_length (const GdkPixbuf *pixbuf,
                                                guint *length);

const guint8* gdk_pixbuf_read_pixels (const GdkPixbuf *pixbuf);
GBytes * gdk_pixbuf_read_pixel_bytes (const GdkPixbuf *pixbuf);




GdkPixbuf *gdk_pixbuf_new (GdkColorspace colorspace, gboolean has_alpha, int bits_per_sample,
     int width, int height);



GdkPixbuf *gdk_pixbuf_copy (const GdkPixbuf *pixbuf);


GdkPixbuf *gdk_pixbuf_new_subpixbuf (GdkPixbuf *src_pixbuf,
                                    int src_x,
                                    int src_y,
                                    int width,
                                    int height);
# 277 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h"
GdkPixbuf *gdk_pixbuf_new_from_file (const char *filename,
                                    GError **error);
GdkPixbuf *gdk_pixbuf_new_from_file_at_size (const char *filename,
         int width,
         int height,
         GError **error);
GdkPixbuf *gdk_pixbuf_new_from_file_at_scale (const char *filename,
          int width,
          int height,
          gboolean preserve_aspect_ratio,
          GError **error);
GdkPixbuf *gdk_pixbuf_new_from_resource (const char *resource_path,
     GError **error);
GdkPixbuf *gdk_pixbuf_new_from_resource_at_scale (const char *resource_path,
       int width,
       int height,
       gboolean preserve_aspect_ratio,
       GError **error);

GdkPixbuf *gdk_pixbuf_new_from_data (const guchar *data,
        GdkColorspace colorspace,
        gboolean has_alpha,
        int bits_per_sample,
        int width, int height,
        int rowstride,
        GdkPixbufDestroyNotify destroy_fn,
        gpointer destroy_fn_data);

GdkPixbuf *gdk_pixbuf_new_from_bytes (GBytes *data,
         GdkColorspace colorspace,
         gboolean has_alpha,
         int bits_per_sample,
         int width, int height,
         int rowstride);

GdkPixbuf *gdk_pixbuf_new_from_xpm_data (const char **data);


__attribute__((__deprecated__))
GdkPixbuf* gdk_pixbuf_new_from_inline (gint data_length,
     const guint8 *data,
     gboolean copy_pixels,
     GError **error);



void gdk_pixbuf_fill (GdkPixbuf *pixbuf,
                                        guint32 pixel);
# 336 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h"
gboolean gdk_pixbuf_save (GdkPixbuf *pixbuf,
                                   const char *filename,
                                   const char *type,
                                   GError **error,
                                   ...) __attribute__((__sentinel__));

gboolean gdk_pixbuf_savev (GdkPixbuf *pixbuf,
                                   const char *filename,
                                   const char *type,
                                   char **option_keys,
                                   char **option_values,
                                   GError **error);
# 370 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h"
typedef gboolean (*GdkPixbufSaveFunc) (const gchar *buf,
     gsize count,
     GError **error,
     gpointer data);

gboolean gdk_pixbuf_save_to_callback (GdkPixbuf *pixbuf,
     GdkPixbufSaveFunc save_func,
     gpointer user_data,
     const char *type,
     GError **error,
     ...) __attribute__((__sentinel__));

gboolean gdk_pixbuf_save_to_callbackv (GdkPixbuf *pixbuf,
     GdkPixbufSaveFunc save_func,
     gpointer user_data,
     const char *type,
     char **option_keys,
     char **option_values,
     GError **error);



gboolean gdk_pixbuf_save_to_buffer (GdkPixbuf *pixbuf,
     gchar **buffer,
     gsize *buffer_size,
     const char *type,
     GError **error,
     ...) __attribute__((__sentinel__));

gboolean gdk_pixbuf_save_to_bufferv (GdkPixbuf *pixbuf,
     gchar **buffer,
     gsize *buffer_size,
     const char *type,
     char **option_keys,
     char **option_values,
     GError **error);

GdkPixbuf *gdk_pixbuf_new_from_stream (GInputStream *stream,
     GCancellable *cancellable,
                                        GError **error);

void gdk_pixbuf_new_from_stream_async (GInputStream *stream,
          GCancellable *cancellable,
          GAsyncReadyCallback callback,
          gpointer user_data);

GdkPixbuf *gdk_pixbuf_new_from_stream_finish (GAsyncResult *async_result,
          GError **error);

GdkPixbuf *gdk_pixbuf_new_from_stream_at_scale (GInputStream *stream,
                                                 gint width,
                                                 gint height,
                                                 gboolean preserve_aspect_ratio,
       GCancellable *cancellable,
                                                 GError **error);

void gdk_pixbuf_new_from_stream_at_scale_async (GInputStream *stream,
     gint width,
     gint height,
     gboolean preserve_aspect_ratio,
     GCancellable *cancellable,
     GAsyncReadyCallback callback,
     gpointer user_data);

gboolean gdk_pixbuf_save_to_stream (GdkPixbuf *pixbuf,
                                        GOutputStream *stream,
                                        const char *type,
     GCancellable *cancellable,
                                        GError **error,
                                        ...);

void gdk_pixbuf_save_to_stream_async (GdkPixbuf *pixbuf,
         GOutputStream *stream,
         const gchar *type,
         GCancellable *cancellable,
         GAsyncReadyCallback callback,
         gpointer user_data,
         ...);

gboolean gdk_pixbuf_save_to_stream_finish (GAsyncResult *async_result,
       GError **error);


GdkPixbuf *gdk_pixbuf_add_alpha (const GdkPixbuf *pixbuf, gboolean substitute_color,
    guchar r, guchar g, guchar b);


void gdk_pixbuf_copy_area (const GdkPixbuf *src_pixbuf,
     int src_x, int src_y,
     int width, int height,
     GdkPixbuf *dest_pixbuf,
     int dest_x, int dest_y);


void gdk_pixbuf_saturate_and_pixelate (const GdkPixbuf *src,
                                      GdkPixbuf *dest,
                                      gfloat saturation,
                                      gboolean pixelate);


GdkPixbuf *gdk_pixbuf_apply_embedded_orientation (GdkPixbuf *src);

const gchar * gdk_pixbuf_get_option (GdkPixbuf *pixbuf,
                                             const gchar *key);
GHashTable * gdk_pixbuf_get_options (GdkPixbuf *pixbuf);


}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h"
extern "C" {
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h"
typedef enum {
GDK_INTERP_NEAREST,
GDK_INTERP_TILES,
GDK_INTERP_BILINEAR,
GDK_INTERP_HYPER
} GdkInterpType;
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h"
typedef enum {
GDK_PIXBUF_ROTATE_NONE = 0,
GDK_PIXBUF_ROTATE_COUNTERCLOCKWISE = 90,
GDK_PIXBUF_ROTATE_UPSIDEDOWN = 180,
GDK_PIXBUF_ROTATE_CLOCKWISE = 270
} GdkPixbufRotation;

void gdk_pixbuf_scale (const GdkPixbuf *src,
    GdkPixbuf *dest,
    int dest_x,
    int dest_y,
    int dest_width,
    int dest_height,
    double offset_x,
    double offset_y,
    double scale_x,
    double scale_y,
    GdkInterpType interp_type);
void gdk_pixbuf_composite (const GdkPixbuf *src,
    GdkPixbuf *dest,
    int dest_x,
    int dest_y,
    int dest_width,
    int dest_height,
    double offset_x,
    double offset_y,
    double scale_x,
    double scale_y,
    GdkInterpType interp_type,
    int overall_alpha);
void gdk_pixbuf_composite_color (const GdkPixbuf *src,
    GdkPixbuf *dest,
    int dest_x,
    int dest_y,
    int dest_width,
    int dest_height,
    double offset_x,
    double offset_y,
    double scale_x,
    double scale_y,
    GdkInterpType interp_type,
    int overall_alpha,
    int check_x,
    int check_y,
    int check_size,
    guint32 color1,
    guint32 color2);

GdkPixbuf *gdk_pixbuf_scale_simple (const GdkPixbuf *src,
          int dest_width,
          int dest_height,
          GdkInterpType interp_type);

GdkPixbuf *gdk_pixbuf_composite_color_simple (const GdkPixbuf *src,
          int dest_width,
          int dest_height,
          GdkInterpType interp_type,
          int overall_alpha,
          int check_size,
          guint32 color1,
          guint32 color2);

GdkPixbuf *gdk_pixbuf_rotate_simple (const GdkPixbuf *src,
                 GdkPixbufRotation angle);
GdkPixbuf *gdk_pixbuf_flip (const GdkPixbuf *src,
                 gboolean horizontal);

}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h"
typedef struct _GdkPixbufAnimation GdkPixbufAnimation;
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h"
typedef struct _GdkPixbufAnimationIter GdkPixbufAnimationIter;
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h"
GType gdk_pixbuf_animation_get_type (void) __attribute__((__const__));







GdkPixbufAnimation *gdk_pixbuf_animation_new_from_file (const char *filename,
                                                         GError **error);
GdkPixbufAnimation *gdk_pixbuf_animation_new_from_stream (GInputStream *stream,
                                                         GCancellable *cancellable,
                                                         GError **error);
void gdk_pixbuf_animation_new_from_stream_async (GInputStream *stream,
                                                         GCancellable *cancellable,
                                                         GAsyncReadyCallback callback,
                                                         gpointer user_data);
GdkPixbufAnimation *gdk_pixbuf_animation_new_from_stream_finish (GAsyncResult*async_result,
                                                         GError **error);
GdkPixbufAnimation *gdk_pixbuf_animation_new_from_resource(const char *resource_path,
                                                         GError **error);


__attribute__((__deprecated__("Use '" "g_object_ref" "' instead")))
GdkPixbufAnimation *gdk_pixbuf_animation_ref (GdkPixbufAnimation *animation);
__attribute__((__deprecated__("Use '" "g_object_unref" "' instead")))
void gdk_pixbuf_animation_unref (GdkPixbufAnimation *animation);


int gdk_pixbuf_animation_get_width (GdkPixbufAnimation *animation);
int gdk_pixbuf_animation_get_height (GdkPixbufAnimation *animation);
gboolean gdk_pixbuf_animation_is_static_image (GdkPixbufAnimation *animation);
GdkPixbuf *gdk_pixbuf_animation_get_static_image (GdkPixbufAnimation *animation);

GdkPixbufAnimationIter *gdk_pixbuf_animation_get_iter (GdkPixbufAnimation *animation,
                                                                             const GTimeVal *start_time);
GType gdk_pixbuf_animation_iter_get_type (void) __attribute__((__const__));
int gdk_pixbuf_animation_iter_get_delay_time (GdkPixbufAnimationIter *iter);
GdkPixbuf *gdk_pixbuf_animation_iter_get_pixbuf (GdkPixbufAnimationIter *iter);
gboolean gdk_pixbuf_animation_iter_on_currently_loading_frame (GdkPixbufAnimationIter *iter);
gboolean gdk_pixbuf_animation_iter_advance (GdkPixbufAnimationIter *iter,
                                                                             const GTimeVal *current_time);
# 202 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h"
}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h"
extern "C" {






typedef struct _GdkPixbufSimpleAnim GdkPixbufSimpleAnim;
typedef struct _GdkPixbufSimpleAnimClass GdkPixbufSimpleAnimClass;
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h"
GType gdk_pixbuf_simple_anim_get_type (void) __attribute__((__const__));
GType gdk_pixbuf_simple_anim_iter_get_type (void) __attribute__((__const__));

GdkPixbufSimpleAnim *gdk_pixbuf_simple_anim_new (gint width,
                                                          gint height,
                                                          gfloat rate);
void gdk_pixbuf_simple_anim_add_frame (GdkPixbufSimpleAnim *animation,
                                                          GdkPixbuf *pixbuf);
void gdk_pixbuf_simple_anim_set_loop (GdkPixbufSimpleAnim *animation,
                                                          gboolean loop);
gboolean gdk_pixbuf_simple_anim_get_loop (GdkPixbufSimpleAnim *animation);

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-io.h" 1
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-io.h"
extern "C" {

typedef struct _GdkPixbufFormat GdkPixbufFormat;

GType gdk_pixbuf_format_get_type (void) __attribute__((__const__));

GSList *gdk_pixbuf_get_formats (void);
gchar *gdk_pixbuf_format_get_name (GdkPixbufFormat *format);
gchar *gdk_pixbuf_format_get_description (GdkPixbufFormat *format);
gchar **gdk_pixbuf_format_get_mime_types (GdkPixbufFormat *format);
gchar **gdk_pixbuf_format_get_extensions (GdkPixbufFormat *format);
gboolean gdk_pixbuf_format_is_writable (GdkPixbufFormat *format);
gboolean gdk_pixbuf_format_is_scalable (GdkPixbufFormat *format);
gboolean gdk_pixbuf_format_is_disabled (GdkPixbufFormat *format);
void gdk_pixbuf_format_set_disabled (GdkPixbufFormat *format,
          gboolean disabled);
gchar *gdk_pixbuf_format_get_license (GdkPixbufFormat *format);

GdkPixbufFormat *gdk_pixbuf_get_file_info (const gchar *filename,
          gint *width,
          gint *height);
void gdk_pixbuf_get_file_info_async (const gchar *filename,
       GCancellable *cancellable,
       GAsyncReadyCallback callback,
       gpointer user_data);
GdkPixbufFormat *gdk_pixbuf_get_file_info_finish (GAsyncResult *async_result,
       gint *width,
       gint *height,
       GError **error);

GdkPixbufFormat *gdk_pixbuf_format_copy (const GdkPixbufFormat *format);
void gdk_pixbuf_format_free (GdkPixbufFormat *format);
# 349 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-io.h"
}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-loader.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-loader.h"
extern "C" {
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-loader.h"
typedef struct _GdkPixbufLoader GdkPixbufLoader;
struct _GdkPixbufLoader
{
 GObject parent_instance;


 gpointer priv;
};

typedef struct _GdkPixbufLoaderClass GdkPixbufLoaderClass;
struct _GdkPixbufLoaderClass
{
 GObjectClass parent_class;

 void (*size_prepared) (GdkPixbufLoader *loader,
        int width,
        int height);

 void (*area_prepared) (GdkPixbufLoader *loader);


 void (*area_updated) (GdkPixbufLoader *loader,
                             int x,
                             int y,
        int width,
        int height);

 void (*closed) (GdkPixbufLoader *loader);
};

GType gdk_pixbuf_loader_get_type (void) __attribute__((__const__));
GdkPixbufLoader * gdk_pixbuf_loader_new (void);
GdkPixbufLoader * gdk_pixbuf_loader_new_with_type (const char *image_type,
                                                     GError **error);
GdkPixbufLoader * gdk_pixbuf_loader_new_with_mime_type (const char *mime_type,
         GError **error);
void gdk_pixbuf_loader_set_size (GdkPixbufLoader *loader,
                                                int width,
      int height);
gboolean gdk_pixbuf_loader_write (GdkPixbufLoader *loader,
           const guchar *buf,
           gsize count,
                                                     GError **error);
gboolean gdk_pixbuf_loader_write_bytes (GdkPixbufLoader *loader,
                                                     GBytes *buffer,
                                                     GError **error);
GdkPixbuf * gdk_pixbuf_loader_get_pixbuf (GdkPixbufLoader *loader);
GdkPixbufAnimation * gdk_pixbuf_loader_get_animation (GdkPixbufLoader *loader);
gboolean gdk_pixbuf_loader_close (GdkPixbufLoader *loader,
                                                     GError **error);
GdkPixbufFormat *gdk_pixbuf_loader_get_format (GdkPixbufLoader *loader);

}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h" 1
# 13 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h"
extern "C" {


GType gdk_pixbuf_alpha_mode_get_type (void) __attribute__((__const__));

GType gdk_colorspace_get_type (void) __attribute__((__const__));

GType gdk_pixbuf_error_get_type (void) __attribute__((__const__));



GType gdk_interp_type_get_type (void) __attribute__((__const__));

GType gdk_pixbuf_rotation_get_type (void) __attribute__((__const__));

}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
typedef GdkPixbuf *GdkPixbuf_autoptr;
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic push
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
static inline void glib_autoptr_cleanup_GdkPixbuf (GdkPixbuf **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic pop
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

typedef GdkPixbufAnimation *GdkPixbufAnimation_autoptr;
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic push
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
static inline void glib_autoptr_cleanup_GdkPixbufAnimation (GdkPixbufAnimation **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic pop
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

typedef GdkPixbufAnimationIter *GdkPixbufAnimationIter_autoptr;
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic push
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
static inline void glib_autoptr_cleanup_GdkPixbufAnimationIter (GdkPixbufAnimationIter **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic pop
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

typedef GdkPixbufLoader *GdkPixbufLoader_autoptr;
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic push
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
static inline void glib_autoptr_cleanup_GdkPixbufLoader (GdkPixbufLoader **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic pop
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

typedef GdkPixbufSimpleAnim *GdkPixbufSimpleAnim_autoptr;
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic push
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
static inline void glib_autoptr_cleanup_GdkPixbufSimpleAnim (GdkPixbufSimpleAnim **_ptr) { if (*_ptr) (g_object_unref) (*_ptr); }
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"
#pragma GCC diagnostic pop
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h"

# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h" 2
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpixbuf.h" 2

extern "C" {



void gdk_pixbuf_render_threshold_alpha (GdkPixbuf *pixbuf,
      GdkBitmap *bitmap,
      int src_x,
      int src_y,
      int dest_x,
      int dest_y,
      int width,
      int height,
      int alpha_threshold);

void gdk_pixbuf_render_to_drawable (GdkPixbuf *pixbuf,
      GdkDrawable *drawable,
      GdkGC *gc,
      int src_x,
      int src_y,
      int dest_x,
      int dest_y,
      int width,
      int height,
      GdkRgbDither dither,
      int x_dither,
      int y_dither);
void gdk_pixbuf_render_to_drawable_alpha (GdkPixbuf *pixbuf,
      GdkDrawable *drawable,
      int src_x,
      int src_y,
      int dest_x,
      int dest_y,
      int width,
      int height,
      GdkPixbufAlphaMode alpha_mode,
      int alpha_threshold,
      GdkRgbDither dither,
      int x_dither,
      int y_dither);

void gdk_pixbuf_render_pixmap_and_mask_for_colormap (GdkPixbuf *pixbuf,
          GdkColormap *colormap,
          GdkPixmap **pixmap_return,
          GdkBitmap **mask_return,
          int alpha_threshold);

void gdk_pixbuf_render_pixmap_and_mask (GdkPixbuf *pixbuf,
          GdkPixmap **pixmap_return,
          GdkBitmap **mask_return,
          int alpha_threshold);




GdkPixbuf *gdk_pixbuf_get_from_drawable (GdkPixbuf *dest,
     GdkDrawable *src,
     GdkColormap *cmap,
     int src_x,
     int src_y,
     int dest_x,
     int dest_y,
     int width,
     int height);

GdkPixbuf *gdk_pixbuf_get_from_image (GdkPixbuf *dest,
                                        GdkImage *src,
                                        GdkColormap *cmap,
                                        int src_x,
                                        int src_y,
                                        int dest_x,
                                        int dest_y,
                                        int width,
                                        int height);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcairo.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pangocairo.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pangocairo.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pangocairo.h"
typedef struct _PangoCairoFont PangoCairoFont;
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pangocairo.h"
typedef struct _PangoCairoFontMap PangoCairoFontMap;
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/pango-1.0/pango/pangocairo.h"
typedef void (* PangoCairoShapeRendererFunc) (cairo_t *cr,
          PangoAttrShape *attr,
          gboolean do_path,
          gpointer data);




extern
GType pango_cairo_font_map_get_type (void) __attribute__((__const__));

extern
PangoFontMap *pango_cairo_font_map_new (void);
extern
PangoFontMap *pango_cairo_font_map_new_for_font_type (cairo_font_type_t fonttype);
extern
PangoFontMap *pango_cairo_font_map_get_default (void);
extern
void pango_cairo_font_map_set_default (PangoCairoFontMap *fontmap);
extern
cairo_font_type_t pango_cairo_font_map_get_font_type (PangoCairoFontMap *fontmap);

extern
void pango_cairo_font_map_set_resolution (PangoCairoFontMap *fontmap,
        double dpi);
extern
double pango_cairo_font_map_get_resolution (PangoCairoFontMap *fontmap);

__attribute__((__deprecated__("Use '" "pango_font_map_create_context" "' instead"))) extern
PangoContext *pango_cairo_font_map_create_context (PangoCairoFontMap *fontmap);





extern
GType pango_cairo_font_get_type (void) __attribute__((__const__));

extern
cairo_scaled_font_t *pango_cairo_font_get_scaled_font (PangoCairoFont *font);



extern
void pango_cairo_update_context (cairo_t *cr,
     PangoContext *context);

extern
void pango_cairo_context_set_font_options (PangoContext *context,
         const cairo_font_options_t *options);
extern
const cairo_font_options_t *pango_cairo_context_get_font_options (PangoContext *context);

extern
void pango_cairo_context_set_resolution (PangoContext *context,
         double dpi);
extern
double pango_cairo_context_get_resolution (PangoContext *context);

extern
void pango_cairo_context_set_shape_renderer (PangoContext *context,
           PangoCairoShapeRendererFunc func,
           gpointer data,
           GDestroyNotify dnotify);
extern
PangoCairoShapeRendererFunc pango_cairo_context_get_shape_renderer (PangoContext *context,
           gpointer *data);



extern
PangoContext *pango_cairo_create_context (cairo_t *cr);
extern
PangoLayout *pango_cairo_create_layout (cairo_t *cr);
extern
void pango_cairo_update_layout (cairo_t *cr,
    PangoLayout *layout);




extern
void pango_cairo_show_glyph_string (cairo_t *cr,
       PangoFont *font,
       PangoGlyphString *glyphs);
extern
void pango_cairo_show_glyph_item (cairo_t *cr,
       const char *text,
       PangoGlyphItem *glyph_item);
extern
void pango_cairo_show_layout_line (cairo_t *cr,
       PangoLayoutLine *line);
extern
void pango_cairo_show_layout (cairo_t *cr,
       PangoLayout *layout);

extern
void pango_cairo_show_error_underline (cairo_t *cr,
          double x,
          double y,
          double width,
          double height);




extern
void pango_cairo_glyph_string_path (cairo_t *cr,
       PangoFont *font,
       PangoGlyphString *glyphs);
extern
void pango_cairo_layout_line_path (cairo_t *cr,
       PangoLayoutLine *line);
extern
void pango_cairo_layout_path (cairo_t *cr,
       PangoLayout *layout);

extern
void pango_cairo_error_underline_path (cairo_t *cr,
          double x,
          double y,
          double width,
          double height);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcairo.h" 2

extern "C" {

cairo_t *gdk_cairo_create (GdkDrawable *drawable);
void gdk_cairo_reset_clip (cairo_t *cr,
         GdkDrawable *drawable);

void gdk_cairo_set_source_color (cairo_t *cr,
                                     const GdkColor *color);
void gdk_cairo_set_source_pixbuf (cairo_t *cr,
                                     const GdkPixbuf *pixbuf,
                                     double pixbuf_x,
                                     double pixbuf_y);
void gdk_cairo_set_source_pixmap (cairo_t *cr,
                                     GdkPixmap *pixmap,
                                     double pixmap_x,
                                     double pixmap_y);
void gdk_cairo_set_source_window (cairo_t *cr,
                                     GdkWindow *window,
                                     double x,
                                     double y);

void gdk_cairo_rectangle (cairo_t *cr,
                                     const GdkRectangle *rectangle);
void gdk_cairo_region (cairo_t *cr,
                                     const GdkRegion *region);

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcursor.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkcursor.h"
extern "C" {





typedef enum
{
 GDK_X_CURSOR = 0,
 GDK_ARROW = 2,
 GDK_BASED_ARROW_DOWN = 4,
 GDK_BASED_ARROW_UP = 6,
 GDK_BOAT = 8,
 GDK_BOGOSITY = 10,
 GDK_BOTTOM_LEFT_CORNER = 12,
 GDK_BOTTOM_RIGHT_CORNER = 14,
 GDK_BOTTOM_SIDE = 16,
 GDK_BOTTOM_TEE = 18,
 GDK_BOX_SPIRAL = 20,
 GDK_CENTER_PTR = 22,
 GDK_CIRCLE = 24,
 GDK_CLOCK = 26,
 GDK_COFFEE_MUG = 28,
 GDK_CROSS = 30,
 GDK_CROSS_REVERSE = 32,
 GDK_CROSSHAIR = 34,
 GDK_DIAMOND_CROSS = 36,
 GDK_DOT = 38,
 GDK_DOTBOX = 40,
 GDK_DOUBLE_ARROW = 42,
 GDK_DRAFT_LARGE = 44,
 GDK_DRAFT_SMALL = 46,
 GDK_DRAPED_BOX = 48,
 GDK_EXCHANGE = 50,
 GDK_FLEUR = 52,
 GDK_GOBBLER = 54,
 GDK_GUMBY = 56,
 GDK_HAND1 = 58,
 GDK_HAND2 = 60,
 GDK_HEART = 62,
 GDK_ICON = 64,
 GDK_IRON_CROSS = 66,
 GDK_LEFT_PTR = 68,
 GDK_LEFT_SIDE = 70,
 GDK_LEFT_TEE = 72,
 GDK_LEFTBUTTON = 74,
 GDK_LL_ANGLE = 76,
 GDK_LR_ANGLE = 78,
 GDK_MAN = 80,
 GDK_MIDDLEBUTTON = 82,
 GDK_MOUSE = 84,
 GDK_PENCIL = 86,
 GDK_PIRATE = 88,
 GDK_PLUS = 90,
 GDK_QUESTION_ARROW = 92,
 GDK_RIGHT_PTR = 94,
 GDK_RIGHT_SIDE = 96,
 GDK_RIGHT_TEE = 98,
 GDK_RIGHTBUTTON = 100,
 GDK_RTL_LOGO = 102,
 GDK_SAILBOAT = 104,
 GDK_SB_DOWN_ARROW = 106,
 GDK_SB_H_DOUBLE_ARROW = 108,
 GDK_SB_LEFT_ARROW = 110,
 GDK_SB_RIGHT_ARROW = 112,
 GDK_SB_UP_ARROW = 114,
 GDK_SB_V_DOUBLE_ARROW = 116,
 GDK_SHUTTLE = 118,
 GDK_SIZING = 120,
 GDK_SPIDER = 122,
 GDK_SPRAYCAN = 124,
 GDK_STAR = 126,
 GDK_TARGET = 128,
 GDK_TCROSS = 130,
 GDK_TOP_LEFT_ARROW = 132,
 GDK_TOP_LEFT_CORNER = 134,
 GDK_TOP_RIGHT_CORNER = 136,
 GDK_TOP_SIDE = 138,
 GDK_TOP_TEE = 140,
 GDK_TREK = 142,
 GDK_UL_ANGLE = 144,
 GDK_UMBRELLA = 146,
 GDK_UR_ANGLE = 148,
 GDK_WATCH = 150,
 GDK_XTERM = 152,
 GDK_LAST_CURSOR,
 GDK_BLANK_CURSOR = -2,
 GDK_CURSOR_IS_PIXMAP = -1
} GdkCursorType;

struct _GdkCursor
{
 GdkCursorType type;

 guint ref_count;
};




GType gdk_cursor_get_type (void) __attribute__((__const__));

GdkCursor* gdk_cursor_new_for_display (GdkDisplay *display,
      GdkCursorType cursor_type);

GdkCursor* gdk_cursor_new (GdkCursorType cursor_type);

GdkCursor* gdk_cursor_new_from_pixmap (GdkPixmap *source,
      GdkPixmap *mask,
      const GdkColor *fg,
      const GdkColor *bg,
      gint x,
      gint y);
GdkCursor* gdk_cursor_new_from_pixbuf (GdkDisplay *display,
      GdkPixbuf *pixbuf,
      gint x,
      gint y);
GdkDisplay* gdk_cursor_get_display (GdkCursor *cursor);
GdkCursor* gdk_cursor_ref (GdkCursor *cursor);
void gdk_cursor_unref (GdkCursor *cursor);
GdkCursor* gdk_cursor_new_from_name (GdkDisplay *display,
      const gchar *name);
GdkPixbuf* gdk_cursor_get_image (GdkCursor *cursor);
GdkCursorType gdk_cursor_get_cursor_type (GdkCursor *cursor);





}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdisplaymanager.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdisplaymanager.h"
extern "C" {

typedef struct _GdkDisplayManager GdkDisplayManager;
typedef struct _GdkDisplayManagerClass GdkDisplayManagerClass;
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdisplaymanager.h"
struct _GdkDisplayManagerClass
{
 GObjectClass parent_class;

 void (*display_opened) (GdkDisplayManager *display_manager,
    GdkDisplay *display);
};

GType gdk_display_manager_get_type (void) __attribute__((__const__));

GdkDisplayManager *gdk_display_manager_get (void);
GdkDisplay * gdk_display_manager_get_default_display (GdkDisplayManager *display_manager);
void gdk_display_manager_set_default_display (GdkDisplayManager *display_manager,
          GdkDisplay *display);
GSList * gdk_display_manager_list_displays (GdkDisplayManager *display_manager);

}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdrawable.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdrawable.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkgc.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkgc.h"
extern "C" {

typedef struct _GdkGCValues GdkGCValues;
typedef struct _GdkGCClass GdkGCClass;







typedef enum
{
 GDK_CAP_NOT_LAST,
 GDK_CAP_BUTT,
 GDK_CAP_ROUND,
 GDK_CAP_PROJECTING
} GdkCapStyle;







typedef enum
{
 GDK_SOLID,
 GDK_TILED,
 GDK_STIPPLED,
 GDK_OPAQUE_STIPPLED
} GdkFill;
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkgc.h"
typedef enum
{
 GDK_COPY,
 GDK_INVERT,
 GDK_XOR,
 GDK_CLEAR,
 GDK_AND,
 GDK_AND_REVERSE,
 GDK_AND_INVERT,
 GDK_NOOP,
 GDK_OR,
 GDK_EQUIV,
 GDK_OR_REVERSE,
 GDK_COPY_INVERT,
 GDK_OR_INVERT,
 GDK_NAND,
 GDK_NOR,
 GDK_SET
} GdkFunction;






typedef enum
{
 GDK_JOIN_MITER,
 GDK_JOIN_ROUND,
 GDK_JOIN_BEVEL
} GdkJoinStyle;






typedef enum
{
 GDK_LINE_SOLID,
 GDK_LINE_ON_OFF_DASH,
 GDK_LINE_DOUBLE_DASH
} GdkLineStyle;

typedef enum
{
 GDK_CLIP_BY_CHILDREN = 0,
 GDK_INCLUDE_INFERIORS = 1
} GdkSubwindowMode;

typedef enum
{
 GDK_GC_FOREGROUND = 1 << 0,
 GDK_GC_BACKGROUND = 1 << 1,
 GDK_GC_FONT = 1 << 2,
 GDK_GC_FUNCTION = 1 << 3,
 GDK_GC_FILL = 1 << 4,
 GDK_GC_TILE = 1 << 5,
 GDK_GC_STIPPLE = 1 << 6,
 GDK_GC_CLIP_MASK = 1 << 7,
 GDK_GC_SUBWINDOW = 1 << 8,
 GDK_GC_TS_X_ORIGIN = 1 << 9,
 GDK_GC_TS_Y_ORIGIN = 1 << 10,
 GDK_GC_CLIP_X_ORIGIN = 1 << 11,
 GDK_GC_CLIP_Y_ORIGIN = 1 << 12,
 GDK_GC_EXPOSURES = 1 << 13,
 GDK_GC_LINE_WIDTH = 1 << 14,
 GDK_GC_LINE_STYLE = 1 << 15,
 GDK_GC_CAP_STYLE = 1 << 16,
 GDK_GC_JOIN_STYLE = 1 << 17
} GdkGCValuesMask;

struct _GdkGCValues
{
 GdkColor foreground;
 GdkColor background;
 GdkFont *font;
 GdkFunction function;
 GdkFill fill;
 GdkPixmap *tile;
 GdkPixmap *stipple;
 GdkPixmap *clip_mask;
 GdkSubwindowMode subwindow_mode;
 gint ts_x_origin;
 gint ts_y_origin;
 gint clip_x_origin;
 gint clip_y_origin;
 gint graphics_exposures;
 gint line_width;
 GdkLineStyle line_style;
 GdkCapStyle cap_style;
 GdkJoinStyle join_style;
};
# 189 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkgc.h"
struct _GdkGC
{
 GObject parent_instance;

 gint clip_x_origin;
 gint clip_y_origin;
 gint ts_x_origin;
 gint ts_y_origin;

 GdkColormap *colormap;
};

struct _GdkGCClass
{
 GObjectClass parent_class;

 void (*get_values) (GdkGC *gc,
    GdkGCValues *values);
 void (*set_values) (GdkGC *gc,
    GdkGCValues *values,
    GdkGCValuesMask mask);
 void (*set_dashes) (GdkGC *gc,
    gint dash_offset,
    gint8 dash_list[],
    gint n);


 void (*_gdk_reserved1) (void);
 void (*_gdk_reserved2) (void);
 void (*_gdk_reserved3) (void);
 void (*_gdk_reserved4) (void);
};



GType gdk_gc_get_type (void) __attribute__((__const__));
GdkGC *gdk_gc_new (GdkDrawable *drawable);
GdkGC *gdk_gc_new_with_values (GdkDrawable *drawable,
      GdkGCValues *values,
      GdkGCValuesMask values_mask);

GdkGC *gdk_gc_ref (GdkGC *gc);
void gdk_gc_unref (GdkGC *gc);

void gdk_gc_get_values (GdkGC *gc,
      GdkGCValues *values);
void gdk_gc_set_values (GdkGC *gc,
                                  GdkGCValues *values,
                                  GdkGCValuesMask values_mask);
void gdk_gc_set_foreground (GdkGC *gc,
      const GdkColor *color);
void gdk_gc_set_background (GdkGC *gc,
      const GdkColor *color);
void gdk_gc_set_font (GdkGC *gc,
      GdkFont *font);
void gdk_gc_set_function (GdkGC *gc,
      GdkFunction function);
void gdk_gc_set_fill (GdkGC *gc,
      GdkFill fill);
void gdk_gc_set_tile (GdkGC *gc,
      GdkPixmap *tile);
void gdk_gc_set_stipple (GdkGC *gc,
      GdkPixmap *stipple);
void gdk_gc_set_ts_origin (GdkGC *gc,
      gint x,
      gint y);
void gdk_gc_set_clip_origin (GdkGC *gc,
      gint x,
      gint y);
void gdk_gc_set_clip_mask (GdkGC *gc,
      GdkBitmap *mask);
void gdk_gc_set_clip_rectangle (GdkGC *gc,
      const GdkRectangle *rectangle);
void gdk_gc_set_clip_region (GdkGC *gc,
      const GdkRegion *region);
void gdk_gc_set_subwindow (GdkGC *gc,
      GdkSubwindowMode mode);
void gdk_gc_set_exposures (GdkGC *gc,
      gboolean exposures);
void gdk_gc_set_line_attributes (GdkGC *gc,
      gint line_width,
      GdkLineStyle line_style,
      GdkCapStyle cap_style,
      GdkJoinStyle join_style);
void gdk_gc_set_dashes (GdkGC *gc,
      gint dash_offset,
      gint8 dash_list[],
      gint n);
void gdk_gc_offset (GdkGC *gc,
      gint x_offset,
      gint y_offset);
void gdk_gc_copy (GdkGC *dst_gc,
      GdkGC *src_gc);


void gdk_gc_set_colormap (GdkGC *gc,
         GdkColormap *colormap);
GdkColormap *gdk_gc_get_colormap (GdkGC *gc);
void gdk_gc_set_rgb_fg_color (GdkGC *gc,
         const GdkColor *color);
void gdk_gc_set_rgb_bg_color (GdkGC *gc,
         const GdkColor *color);
GdkScreen * gdk_gc_get_screen (GdkGC *gc);




}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdrawable.h" 2





extern "C" {

typedef struct _GdkDrawableClass GdkDrawableClass;
typedef struct _GdkTrapezoid GdkTrapezoid;
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkdrawable.h"
struct _GdkDrawable
{
 GObject parent_instance;
};

struct _GdkDrawableClass
{
 GObjectClass parent_class;

 GdkGC *(*create_gc) (GdkDrawable *drawable,
           GdkGCValues *values,
           GdkGCValuesMask mask);
 void (*draw_rectangle) (GdkDrawable *drawable,
    GdkGC *gc,
    gboolean filled,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_arc) (GdkDrawable *drawable,
    GdkGC *gc,
    gboolean filled,
    gint x,
    gint y,
    gint width,
    gint height,
    gint angle1,
    gint angle2);
 void (*draw_polygon) (GdkDrawable *drawable,
    GdkGC *gc,
    gboolean filled,
    GdkPoint *points,
    gint npoints);
 void (*draw_text) (GdkDrawable *drawable,
    GdkFont *font,
    GdkGC *gc,
    gint x,
    gint y,
    const gchar *text,
    gint text_length);
 void (*draw_text_wc) (GdkDrawable *drawable,
    GdkFont *font,
    GdkGC *gc,
    gint x,
    gint y,
    const GdkWChar *text,
    gint text_length);
 void (*draw_drawable) (GdkDrawable *drawable,
    GdkGC *gc,
    GdkDrawable *src,
    gint xsrc,
    gint ysrc,
    gint xdest,
    gint ydest,
    gint width,
    gint height);
 void (*draw_points) (GdkDrawable *drawable,
    GdkGC *gc,
    GdkPoint *points,
    gint npoints);
 void (*draw_segments) (GdkDrawable *drawable,
    GdkGC *gc,
    GdkSegment *segs,
    gint nsegs);
 void (*draw_lines) (GdkDrawable *drawable,
    GdkGC *gc,
    GdkPoint *points,
    gint npoints);

 void (*draw_glyphs) (GdkDrawable *drawable,
    GdkGC *gc,
    PangoFont *font,
    gint x,
    gint y,
    PangoGlyphString *glyphs);

 void (*draw_image) (GdkDrawable *drawable,
                         GdkGC *gc,
                         GdkImage *image,
                         gint xsrc,
                         gint ysrc,
                         gint xdest,
                         gint ydest,
                         gint width,
                         gint height);

 gint (*get_depth) (GdkDrawable *drawable);
 void (*get_size) (GdkDrawable *drawable,
                         gint *width,
                         gint *height);

 void (*set_colormap) (GdkDrawable *drawable,
                         GdkColormap *cmap);

 GdkColormap* (*get_colormap) (GdkDrawable *drawable);
 GdkVisual* (*get_visual) (GdkDrawable *drawable);
 GdkScreen* (*get_screen) (GdkDrawable *drawable);

 GdkImage* (*get_image) (GdkDrawable *drawable,
                             gint x,
                             gint y,
                             gint width,
                             gint height);

 GdkRegion* (*get_clip_region) (GdkDrawable *drawable);
 GdkRegion* (*get_visible_region) (GdkDrawable *drawable);

 GdkDrawable* (*get_composite_drawable) (GdkDrawable *drawable,
                                         gint x,
                                         gint y,
                                         gint width,
                                         gint height,
                                         gint *composite_x_offset,
                                         gint *composite_y_offset);

 void (*draw_pixbuf) (GdkDrawable *drawable,
         GdkGC *gc,
         GdkPixbuf *pixbuf,
         gint src_x,
         gint src_y,
         gint dest_x,
         gint dest_y,
         gint width,
         gint height,
         GdkRgbDither dither,
         gint x_dither,
         gint y_dither);
 GdkImage* (*_copy_to_image) (GdkDrawable *drawable,
     GdkImage *image,
     gint src_x,
     gint src_y,
     gint dest_x,
     gint dest_y,
     gint width,
     gint height);

 void (*draw_glyphs_transformed) (GdkDrawable *drawable,
      GdkGC *gc,
      PangoMatrix *matrix,
      PangoFont *font,
      gint x,
      gint y,
      PangoGlyphString *glyphs);
 void (*draw_trapezoids) (GdkDrawable *drawable,
      GdkGC *gc,
      GdkTrapezoid *trapezoids,
      gint n_trapezoids);

 cairo_surface_t *(*ref_cairo_surface) (GdkDrawable *drawable);

 GdkDrawable *(*get_source_drawable) (GdkDrawable *drawable);

 void (*set_cairo_clip) (GdkDrawable *drawable,
          cairo_t *cr);

 cairo_surface_t * (*create_cairo_surface) (GdkDrawable *drawable,
         int width,
         int height);

 void (*draw_drawable_with_src) (GdkDrawable *drawable,
      GdkGC *gc,
      GdkDrawable *src,
      gint xsrc,
      gint ysrc,
      gint xdest,
      gint ydest,
      gint width,
      gint height,
      GdkDrawable *original_src);


 void (*_gdk_reserved7) (void);
 void (*_gdk_reserved9) (void);
 void (*_gdk_reserved10) (void);
 void (*_gdk_reserved11) (void);
 void (*_gdk_reserved12) (void);
 void (*_gdk_reserved13) (void);
 void (*_gdk_reserved14) (void);
 void (*_gdk_reserved15) (void);
};

struct _GdkTrapezoid
{
 double y1, x11, x21, y2, x12, x22;
};

GType gdk_drawable_get_type (void) __attribute__((__const__));





void gdk_drawable_set_data (GdkDrawable *drawable,
       const gchar *key,
       gpointer data,
       GDestroyNotify destroy_func);
gpointer gdk_drawable_get_data (GdkDrawable *drawable,
       const gchar *key);


void gdk_drawable_set_colormap (GdkDrawable *drawable,
       GdkColormap *colormap);
GdkColormap* gdk_drawable_get_colormap (GdkDrawable *drawable);
gint gdk_drawable_get_depth (GdkDrawable *drawable);


void gdk_drawable_get_size (GdkDrawable *drawable,
       gint *width,
       gint *height);
GdkVisual* gdk_drawable_get_visual (GdkDrawable *drawable);
GdkScreen* gdk_drawable_get_screen (GdkDrawable *drawable);
GdkDisplay* gdk_drawable_get_display (GdkDrawable *drawable);



GdkDrawable* gdk_drawable_ref (GdkDrawable *drawable);
void gdk_drawable_unref (GdkDrawable *drawable);





void gdk_draw_point (GdkDrawable *drawable,
   GdkGC *gc,
   gint x,
   gint y);
void gdk_draw_line (GdkDrawable *drawable,
   GdkGC *gc,
   gint x1_,
   gint y1_,
   gint x2_,
   gint y2_);
void gdk_draw_rectangle (GdkDrawable *drawable,
   GdkGC *gc,
   gboolean filled,
   gint x,
   gint y,
   gint width,
   gint height);
void gdk_draw_arc (GdkDrawable *drawable,
   GdkGC *gc,
   gboolean filled,
   gint x,
   gint y,
   gint width,
   gint height,
   gint angle1,
   gint angle2);
void gdk_draw_polygon (GdkDrawable *drawable,
   GdkGC *gc,
   gboolean filled,
   const GdkPoint *points,
   gint n_points);
void gdk_draw_string (GdkDrawable *drawable,
   GdkFont *font,
   GdkGC *gc,
   gint x,
   gint y,
   const gchar *string);
void gdk_draw_text (GdkDrawable *drawable,
   GdkFont *font,
   GdkGC *gc,
   gint x,
   gint y,
   const gchar *text,
   gint text_length);
void gdk_draw_text_wc (GdkDrawable *drawable,
   GdkFont *font,
   GdkGC *gc,
   gint x,
   gint y,
   const GdkWChar *text,
   gint text_length);
void gdk_draw_drawable (GdkDrawable *drawable,
   GdkGC *gc,
   GdkDrawable *src,
   gint xsrc,
   gint ysrc,
   gint xdest,
   gint ydest,
   gint width,
   gint height);
void gdk_draw_image (GdkDrawable *drawable,
   GdkGC *gc,
   GdkImage *image,
   gint xsrc,
   gint ysrc,
   gint xdest,
   gint ydest,
   gint width,
   gint height);
void gdk_draw_points (GdkDrawable *drawable,
   GdkGC *gc,
   const GdkPoint *points,
   gint n_points);
void gdk_draw_segments (GdkDrawable *drawable,
   GdkGC *gc,
   const GdkSegment *segs,
   gint n_segs);
void gdk_draw_lines (GdkDrawable *drawable,
   GdkGC *gc,
   const GdkPoint *points,
   gint n_points);
void gdk_draw_pixbuf (GdkDrawable *drawable,
   GdkGC *gc,
   const GdkPixbuf *pixbuf,
   gint src_x,
   gint src_y,
   gint dest_x,
   gint dest_y,
   gint width,
   gint height,
   GdkRgbDither dither,
   gint x_dither,
   gint y_dither);

void gdk_draw_glyphs (GdkDrawable *drawable,
     GdkGC *gc,
     PangoFont *font,
     gint x,
     gint y,
     PangoGlyphString *glyphs);
void gdk_draw_layout_line (GdkDrawable *drawable,
     GdkGC *gc,
     gint x,
     gint y,
     PangoLayoutLine *line);
void gdk_draw_layout (GdkDrawable *drawable,
     GdkGC *gc,
     gint x,
     gint y,
     PangoLayout *layout);

void gdk_draw_layout_line_with_colors (GdkDrawable *drawable,
                                      GdkGC *gc,
                                      gint x,
                                      gint y,
                                      PangoLayoutLine *line,
                                      const GdkColor *foreground,
                                      const GdkColor *background);
void gdk_draw_layout_with_colors (GdkDrawable *drawable,
                                      GdkGC *gc,
                                      gint x,
                                      gint y,
                                      PangoLayout *layout,
                                      const GdkColor *foreground,
                                      const GdkColor *background);

void gdk_draw_glyphs_transformed (GdkDrawable *drawable,
     GdkGC *gc,
     const PangoMatrix *matrix,
     PangoFont *font,
     gint x,
     gint y,
     PangoGlyphString *glyphs);
void gdk_draw_trapezoids (GdkDrawable *drawable,
     GdkGC *gc,
     const GdkTrapezoid *trapezoids,
     gint n_trapezoids);




GdkImage* gdk_drawable_get_image (GdkDrawable *drawable,
                                      gint x,
                                      gint y,
                                      gint width,
                                      gint height);
GdkImage *gdk_drawable_copy_to_image (GdkDrawable *drawable,
         GdkImage *image,
         gint src_x,
         gint src_y,
         gint dest_x,
         gint dest_y,
         gint width,
         gint height);


GdkRegion *gdk_drawable_get_clip_region (GdkDrawable *drawable);
GdkRegion *gdk_drawable_get_visible_region (GdkDrawable *drawable);

}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkenumtypes.h" 1
# 13 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkenumtypes.h"
extern "C" {


GType gdk_cursor_type_get_type (void) __attribute__((__const__));



GType gdk_drag_action_get_type (void) __attribute__((__const__));

GType gdk_drag_protocol_get_type (void) __attribute__((__const__));



GType gdk_filter_return_get_type (void) __attribute__((__const__));

GType gdk_event_type_get_type (void) __attribute__((__const__));

GType gdk_event_mask_get_type (void) __attribute__((__const__));

GType gdk_visibility_state_get_type (void) __attribute__((__const__));

GType gdk_scroll_direction_get_type (void) __attribute__((__const__));

GType gdk_notify_type_get_type (void) __attribute__((__const__));

GType gdk_crossing_mode_get_type (void) __attribute__((__const__));

GType gdk_property_state_get_type (void) __attribute__((__const__));

GType gdk_window_state_get_type (void) __attribute__((__const__));

GType gdk_setting_action_get_type (void) __attribute__((__const__));

GType gdk_owner_change_get_type (void) __attribute__((__const__));



GType gdk_font_type_get_type (void) __attribute__((__const__));



GType gdk_cap_style_get_type (void) __attribute__((__const__));

GType gdk_fill_get_type (void) __attribute__((__const__));

GType gdk_function_get_type (void) __attribute__((__const__));

GType gdk_join_style_get_type (void) __attribute__((__const__));

GType gdk_line_style_get_type (void) __attribute__((__const__));

GType gdk_subwindow_mode_get_type (void) __attribute__((__const__));

GType gdk_gc_values_mask_get_type (void) __attribute__((__const__));



GType gdk_image_type_get_type (void) __attribute__((__const__));



GType gdk_extension_mode_get_type (void) __attribute__((__const__));

GType gdk_input_source_get_type (void) __attribute__((__const__));

GType gdk_input_mode_get_type (void) __attribute__((__const__));

GType gdk_axis_use_get_type (void) __attribute__((__const__));



GType gdk_prop_mode_get_type (void) __attribute__((__const__));



GType gdk_fill_rule_get_type (void) __attribute__((__const__));

GType gdk_overlap_type_get_type (void) __attribute__((__const__));



GType gdk_rgb_dither_get_type (void) __attribute__((__const__));



GType gdk_byte_order_get_type (void) __attribute__((__const__));

GType gdk_modifier_type_get_type (void) __attribute__((__const__));

GType gdk_input_condition_get_type (void) __attribute__((__const__));

GType gdk_status_get_type (void) __attribute__((__const__));

GType gdk_grab_status_get_type (void) __attribute__((__const__));



GType gdk_visual_type_get_type (void) __attribute__((__const__));



GType gdk_window_class_get_type (void) __attribute__((__const__));

GType gdk_window_type_get_type (void) __attribute__((__const__));

GType gdk_window_attributes_type_get_type (void) __attribute__((__const__));

GType gdk_window_hints_get_type (void) __attribute__((__const__));

GType gdk_window_type_hint_get_type (void) __attribute__((__const__));

GType gdk_wm_decoration_get_type (void) __attribute__((__const__));

GType gdk_wm_function_get_type (void) __attribute__((__const__));

GType gdk_gravity_get_type (void) __attribute__((__const__));

GType gdk_window_edge_get_type (void) __attribute__((__const__));

}
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkfont.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkfont.h"
extern "C" {







typedef enum
{
 GDK_FONT_FONT,
 GDK_FONT_FONTSET
} GdkFontType;

struct _GdkFont
{
 GdkFontType type;
 gint ascent;
 gint descent;
};

GType gdk_font_get_type (void) __attribute__((__const__));

GdkFont* gdk_font_ref (GdkFont *font);
void gdk_font_unref (GdkFont *font);
gint gdk_font_id (const GdkFont *font);
gboolean gdk_font_equal (const GdkFont *fonta,
       const GdkFont *fontb);

GdkFont *gdk_font_load_for_display (GdkDisplay *display,
     const gchar *font_name);
GdkFont *gdk_fontset_load_for_display (GdkDisplay *display,
     const gchar *fontset_name);
GdkFont *gdk_font_from_description_for_display (GdkDisplay *display,
     PangoFontDescription *font_desc);




GdkFont* gdk_font_load (const gchar *font_name);
GdkFont* gdk_fontset_load (const gchar *fontset_name);
GdkFont* gdk_font_from_description (PangoFontDescription *font_desc);


gint gdk_string_width (GdkFont *font,
       const gchar *string);
gint gdk_text_width (GdkFont *font,
       const gchar *text,
       gint text_length);
gint gdk_text_width_wc (GdkFont *font,
       const GdkWChar *text,
       gint text_length);
gint gdk_char_width (GdkFont *font,
       gchar character);
gint gdk_char_width_wc (GdkFont *font,
       GdkWChar character);
gint gdk_string_measure (GdkFont *font,
       const gchar *string);
gint gdk_text_measure (GdkFont *font,
       const gchar *text,
       gint text_length);
gint gdk_char_measure (GdkFont *font,
       gchar character);
gint gdk_string_height (GdkFont *font,
       const gchar *string);
gint gdk_text_height (GdkFont *font,
       const gchar *text,
       gint text_length);
gint gdk_char_height (GdkFont *font,
       gchar character);

void gdk_text_extents (GdkFont *font,
       const gchar *text,
       gint text_length,
       gint *lbearing,
       gint *rbearing,
       gint *width,
       gint *ascent,
       gint *descent);
void gdk_text_extents_wc (GdkFont *font,
       const GdkWChar *text,
       gint text_length,
       gint *lbearing,
       gint *rbearing,
       gint *width,
       gint *ascent,
       gint *descent);
void gdk_string_extents (GdkFont *font,
       const gchar *string,
       gint *lbearing,
       gint *rbearing,
       gint *width,
       gint *ascent,
       gint *descent);

GdkDisplay * gdk_font_get_display (GdkFont *font);



}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkimage.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkimage.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkimage.h"
typedef enum
{
 GDK_IMAGE_NORMAL,
 GDK_IMAGE_SHARED,
 GDK_IMAGE_FASTEST
} GdkImageType;

typedef struct _GdkImageClass GdkImageClass;
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkimage.h"
struct _GdkImage
{
 GObject parent_instance;



 GdkImageType type;
 GdkVisual *visual;
 GdkByteOrder byte_order;
 gint width;
 gint height;
 guint16 depth;
 guint16 bpp;
 guint16 bpl;
 guint16 bits_per_pixel;
 gpointer mem;

 GdkColormap *colormap;


 gpointer windowing_data;
};

struct _GdkImageClass
{
 GObjectClass parent_class;
};

GType gdk_image_get_type (void) __attribute__((__const__));


GdkImage* gdk_image_new (GdkImageType type,
   GdkVisual *visual,
   gint width,
   gint height);

GdkImage* gdk_image_get (GdkDrawable *drawable,
   gint x,
   gint y,
   gint width,
   gint height);

GdkImage * gdk_image_ref (GdkImage *image);
void gdk_image_unref (GdkImage *image);

void gdk_image_put_pixel (GdkImage *image,
   gint x,
   gint y,
   guint32 pixel);
guint32 gdk_image_get_pixel (GdkImage *image,
   gint x,
   gint y);

void gdk_image_set_colormap (GdkImage *image,
                                  GdkColormap *colormap);
GdkColormap* gdk_image_get_colormap (GdkImage *image);

GdkImageType gdk_image_get_image_type (GdkImage *image);
GdkVisual *gdk_image_get_visual (GdkImage *image);
GdkByteOrder gdk_image_get_byte_order (GdkImage *image);
gint gdk_image_get_width (GdkImage *image);
gint gdk_image_get_height (GdkImage *image);
guint16 gdk_image_get_depth (GdkImage *image);
guint16 gdk_image_get_bytes_per_pixel(GdkImage *image);
guint16 gdk_image_get_bytes_per_line (GdkImage *image);
guint16 gdk_image_get_bits_per_pixel (GdkImage *image);
gpointer gdk_image_get_pixels (GdkImage *image);
# 143 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkimage.h"
}
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkkeys.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkkeys.h"
extern "C" {

typedef struct _GdkKeymapKey GdkKeymapKey;


struct _GdkKeymapKey
{
 guint keycode;
 gint group;
 gint level;
};
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkkeys.h"
typedef struct _GdkKeymap GdkKeymap;
typedef struct _GdkKeymapClass GdkKeymapClass;
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkkeys.h"
struct _GdkKeymap
{
 GObject parent_instance;
 GdkDisplay *display;
};

struct _GdkKeymapClass
{
 GObjectClass parent_class;

 void (*direction_changed) (GdkKeymap *keymap);
 void (*keys_changed) (GdkKeymap *keymap);
 void (*state_changed) (GdkKeymap *keymap);
};

GType gdk_keymap_get_type (void) __attribute__((__const__));


GdkKeymap* gdk_keymap_get_default (void);

GdkKeymap* gdk_keymap_get_for_display (GdkDisplay *display);


guint gdk_keymap_lookup_key (GdkKeymap *keymap,
         const GdkKeymapKey *key);
gboolean gdk_keymap_translate_keyboard_state (GdkKeymap *keymap,
         guint hardware_keycode,
         GdkModifierType state,
         gint group,
         guint *keyval,
         gint *effective_group,
         gint *level,
         GdkModifierType *consumed_modifiers);
gboolean gdk_keymap_get_entries_for_keyval (GdkKeymap *keymap,
         guint keyval,
         GdkKeymapKey **keys,
         gint *n_keys);
gboolean gdk_keymap_get_entries_for_keycode (GdkKeymap *keymap,
         guint hardware_keycode,
         GdkKeymapKey **keys,
         guint **keyvals,
         gint *n_entries);
PangoDirection gdk_keymap_get_direction (GdkKeymap *keymap);
gboolean gdk_keymap_have_bidi_layouts (GdkKeymap *keymap);
gboolean gdk_keymap_get_caps_lock_state (GdkKeymap *keymap);
void gdk_keymap_add_virtual_modifiers (GdkKeymap *keymap,
                                                   GdkModifierType *state);
gboolean gdk_keymap_map_virtual_modifiers (GdkKeymap *keymap,
                                                   GdkModifierType *state);



gchar* gdk_keyval_name (guint keyval) __attribute__((__const__));
guint gdk_keyval_from_name (const gchar *keyval_name);
void gdk_keyval_convert_case (guint symbol,
     guint *lower,
     guint *upper);
guint gdk_keyval_to_upper (guint keyval) __attribute__((__const__));
guint gdk_keyval_to_lower (guint keyval) __attribute__((__const__));
gboolean gdk_keyval_is_upper (guint keyval) __attribute__((__const__));
gboolean gdk_keyval_is_lower (guint keyval) __attribute__((__const__));

guint32 gdk_keyval_to_unicode (guint keyval) __attribute__((__const__));
guint gdk_unicode_to_keyval (guint32 wc) __attribute__((__const__));


}
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpango.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpango.h"
extern "C" {



typedef struct _GdkPangoRenderer GdkPangoRenderer;
typedef struct _GdkPangoRendererClass GdkPangoRendererClass;
typedef struct _GdkPangoRendererPrivate GdkPangoRendererPrivate;
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpango.h"
struct _GdkPangoRenderer
{

 PangoRenderer parent_instance;

 GdkPangoRendererPrivate *priv;
};
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpango.h"
struct _GdkPangoRendererClass
{

 PangoRendererClass parent_class;
};

GType gdk_pango_renderer_get_type (void) __attribute__((__const__));

PangoRenderer *gdk_pango_renderer_new (GdkScreen *screen);
PangoRenderer *gdk_pango_renderer_get_default (GdkScreen *screen);

void gdk_pango_renderer_set_drawable (GdkPangoRenderer *gdk_renderer,
        GdkDrawable *drawable);
void gdk_pango_renderer_set_gc (GdkPangoRenderer *gdk_renderer,
        GdkGC *gc);
void gdk_pango_renderer_set_stipple (GdkPangoRenderer *gdk_renderer,
        PangoRenderPart part,
        GdkBitmap *stipple);
void gdk_pango_renderer_set_override_color (GdkPangoRenderer *gdk_renderer,
        PangoRenderPart part,
        const GdkColor *color);



PangoContext *gdk_pango_context_get_for_screen (GdkScreen *screen);

PangoContext *gdk_pango_context_get (void);


void gdk_pango_context_set_colormap (PangoContext *context,
                                               GdkColormap *colormap);
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpango.h"
GdkRegion *gdk_pango_layout_line_get_clip_region (PangoLayoutLine *line,
                                                    gint x_origin,
                                                    gint y_origin,
                                                    const gint *index_ranges,
                                                    gint n_ranges);
GdkRegion *gdk_pango_layout_get_clip_region (PangoLayout *layout,
                                                    gint x_origin,
                                                    gint y_origin,
                                                    const gint *index_ranges,
                                                    gint n_ranges);





typedef struct _GdkPangoAttrStipple GdkPangoAttrStipple;
typedef struct _GdkPangoAttrEmbossed GdkPangoAttrEmbossed;
typedef struct _GdkPangoAttrEmbossColor GdkPangoAttrEmbossColor;

struct _GdkPangoAttrStipple
{
 PangoAttribute attr;
 GdkBitmap *stipple;
};

struct _GdkPangoAttrEmbossed
{
 PangoAttribute attr;
 gboolean embossed;
};

struct _GdkPangoAttrEmbossColor
{
 PangoAttribute attr;
 PangoColor color;
};

PangoAttribute *gdk_pango_attr_stipple_new (GdkBitmap *stipple);
PangoAttribute *gdk_pango_attr_embossed_new (gboolean embossed);
PangoAttribute *gdk_pango_attr_emboss_color_new (const GdkColor *color);

}
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpixmap.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpixmap.h"
extern "C" {

typedef struct _GdkPixmapObject GdkPixmapObject;
typedef struct _GdkPixmapObjectClass GdkPixmapObjectClass;
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpixmap.h"
struct _GdkPixmapObject
{
 GdkDrawable parent_instance;

 GdkDrawable *impl;

 gint depth;
};

struct _GdkPixmapObjectClass
{
 GdkDrawableClass parent_class;

};

GType gdk_pixmap_get_type (void) __attribute__((__const__));



GdkPixmap* gdk_pixmap_new (GdkDrawable *drawable,
     gint width,
     gint height,
     gint depth);

GdkBitmap* gdk_bitmap_create_from_data (GdkDrawable *drawable,
     const gchar *data,
     gint width,
     gint height);
GdkPixmap* gdk_pixmap_create_from_data (GdkDrawable *drawable,
     const gchar *data,
     gint width,
     gint height,
     gint depth,
     const GdkColor *fg,
     const GdkColor *bg);

GdkPixmap* gdk_pixmap_create_from_xpm (GdkDrawable *drawable,
       GdkBitmap **mask,
       const GdkColor *transparent_color,
       const gchar *filename);
GdkPixmap* gdk_pixmap_colormap_create_from_xpm (GdkDrawable *drawable,
       GdkColormap *colormap,
       GdkBitmap **mask,
       const GdkColor *transparent_color,
       const gchar *filename);
GdkPixmap* gdk_pixmap_create_from_xpm_d (GdkDrawable *drawable,
       GdkBitmap **mask,
       const GdkColor *transparent_color,
       gchar **data);
GdkPixmap* gdk_pixmap_colormap_create_from_xpm_d (GdkDrawable *drawable,
       GdkColormap *colormap,
       GdkBitmap **mask,
       const GdkColor *transparent_color,
       gchar **data);


void gdk_pixmap_get_size (GdkPixmap *pixmap,
                                                 gint *width,
                                                 gint *height);




GdkPixmap* gdk_pixmap_foreign_new (GdkNativeWindow anid);
GdkPixmap* gdk_pixmap_lookup (GdkNativeWindow anid);


GdkPixmap* gdk_pixmap_foreign_new_for_display (GdkDisplay *display,
       GdkNativeWindow anid);
GdkPixmap* gdk_pixmap_lookup_for_display (GdkDisplay *display,
       GdkNativeWindow anid);
GdkPixmap* gdk_pixmap_foreign_new_for_screen (GdkScreen *screen,
       GdkNativeWindow anid,
       gint width,
                                                 gint height,
                                                 gint depth);
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkpixmap.h"
}
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkproperty.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkproperty.h"
extern "C" {

typedef enum
{
 GDK_PROP_MODE_REPLACE,
 GDK_PROP_MODE_PREPEND,
 GDK_PROP_MODE_APPEND
} GdkPropMode;

GdkAtom gdk_atom_intern (const gchar *atom_name,
   gboolean only_if_exists);
GdkAtom gdk_atom_intern_static_string (const gchar *atom_name);
gchar* gdk_atom_name (GdkAtom atom);

gboolean gdk_property_get (GdkWindow *window,
        GdkAtom property,
        GdkAtom type,
        gulong offset,
        gulong length,
        gint pdelete,
        GdkAtom *actual_property_type,
        gint *actual_format,
        gint *actual_length,
        guchar **data);
void gdk_property_change (GdkWindow *window,
        GdkAtom property,
        GdkAtom type,
        gint format,
        GdkPropMode mode,
        const guchar *data,
        gint nelements);
void gdk_property_delete (GdkWindow *window,
        GdkAtom property);


gint gdk_text_property_to_text_list (GdkAtom encoding,
        gint format,
        const guchar *text,
        gint length,
        gchar ***list);
gboolean gdk_utf8_to_compound_text (const gchar *str,
       GdkAtom *encoding,
       gint *format,
       guchar **ctext,
       gint *length);
gint gdk_string_to_compound_text (const gchar *str,
        GdkAtom *encoding,
        gint *format,
        guchar **ctext,
        gint *length);
gint gdk_text_property_to_utf8_list (GdkAtom encoding,
        gint format,
        const guchar *text,
        gint length,
        gchar ***list);



gint gdk_text_property_to_utf8_list_for_display (GdkDisplay *display,
      GdkAtom encoding,
      gint format,
      const guchar *text,
      gint length,
      gchar ***list);

gchar *gdk_utf8_to_string_target (const gchar *str);

gint gdk_text_property_to_text_list_for_display (GdkDisplay *display,
      GdkAtom encoding,
      gint format,
      const guchar *text,
      gint length,
      gchar ***list);
gint gdk_string_to_compound_text_for_display (GdkDisplay *display,
       const gchar *str,
       GdkAtom *encoding,
       gint *format,
       guchar **ctext,
       gint *length);
gboolean gdk_utf8_to_compound_text_for_display (GdkDisplay *display,
       const gchar *str,
       GdkAtom *encoding,
       gint *format,
       guchar **ctext,
       gint *length);

void gdk_free_text_list (gchar **list);
void gdk_free_compound_text (guchar *ctext);


}
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkregion.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkregion.h"
extern "C" {






typedef enum
{
 GDK_EVEN_ODD_RULE,
 GDK_WINDING_RULE
} GdkFillRule;







typedef enum
{
 GDK_OVERLAP_RECTANGLE_IN,
 GDK_OVERLAP_RECTANGLE_OUT,
 GDK_OVERLAP_RECTANGLE_PART
} GdkOverlapType;


typedef void (* GdkSpanFunc) (GdkSpan *span,
                             gpointer data);


GdkRegion * gdk_region_new (void);

GdkRegion * gdk_region_polygon (const GdkPoint *points,
                                          gint n_points,
                                          GdkFillRule fill_rule);

GdkRegion * gdk_region_copy (const GdkRegion *region);
GdkRegion * gdk_region_rectangle (const GdkRectangle *rectangle);
void gdk_region_destroy (GdkRegion *region);

void gdk_region_get_clipbox (const GdkRegion *region,
                                          GdkRectangle *rectangle);
void gdk_region_get_rectangles (const GdkRegion *region,
                                          GdkRectangle **rectangles,
                                          gint *n_rectangles);

gboolean gdk_region_empty (const GdkRegion *region);
gboolean gdk_region_equal (const GdkRegion *region1,
                                          const GdkRegion *region2);

gboolean gdk_region_rect_equal (const GdkRegion *region,
                                          const GdkRectangle *rectangle);

gboolean gdk_region_point_in (const GdkRegion *region,
                                          int x,
                                          int y);
GdkOverlapType gdk_region_rect_in (const GdkRegion *region,
                                          const GdkRectangle *rectangle);

void gdk_region_offset (GdkRegion *region,
                                          gint dx,
                                          gint dy);

void gdk_region_shrink (GdkRegion *region,
                                          gint dx,
                                          gint dy);

void gdk_region_union_with_rect (GdkRegion *region,
                                          const GdkRectangle *rect);
void gdk_region_intersect (GdkRegion *source1,
                                          const GdkRegion *source2);
void gdk_region_union (GdkRegion *source1,
                                          const GdkRegion *source2);
void gdk_region_subtract (GdkRegion *source1,
                                          const GdkRegion *source2);
void gdk_region_xor (GdkRegion *source1,
                                          const GdkRegion *source2);


void gdk_region_spans_intersect_foreach (GdkRegion *region,
                                          const GdkSpan *spans,
                                          int n_spans,
                                          gboolean sorted,
                                          GdkSpanFunc function,
                                          gpointer data);


}
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkselection.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkselection.h"
extern "C" {
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkselection.h"
typedef GdkAtom GdkSelection;
typedef GdkAtom GdkTarget;
typedef GdkAtom GdkSelectionType;







gboolean gdk_selection_owner_set (GdkWindow *owner,
       GdkAtom selection,
       guint32 time_,
       gboolean send_event);
GdkWindow* gdk_selection_owner_get (GdkAtom selection);


gboolean gdk_selection_owner_set_for_display (GdkDisplay *display,
     GdkWindow *owner,
     GdkAtom selection,
     guint32 time_,
     gboolean send_event);
GdkWindow *gdk_selection_owner_get_for_display (GdkDisplay *display,
     GdkAtom selection);

void gdk_selection_convert (GdkWindow *requestor,
       GdkAtom selection,
       GdkAtom target,
       guint32 time_);
gint gdk_selection_property_get (GdkWindow *requestor,
          guchar **data,
          GdkAtom *prop_type,
          gint *prop_format);


void gdk_selection_send_notify (GdkNativeWindow requestor,
         GdkAtom selection,
         GdkAtom target,
         GdkAtom property,
         guint32 time_);


void gdk_selection_send_notify_for_display (GdkDisplay *display,
       GdkNativeWindow requestor,
       GdkAtom selection,
       GdkAtom target,
       GdkAtom property,
       guint32 time_);

}
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkspawn.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkspawn.h"
extern "C" {


gboolean gdk_spawn_on_screen (GdkScreen *screen,
       const gchar *working_directory,
       gchar **argv,
       gchar **envp,
       GSpawnFlags flags,
       GSpawnChildSetupFunc child_setup,
       gpointer user_data,
       gint *child_pid,
       GError **error);

gboolean gdk_spawn_on_screen_with_pipes (GdkScreen *screen,
       const gchar *working_directory,
       gchar **argv,
       gchar **envp,
       GSpawnFlags flags,
       GSpawnChildSetupFunc child_setup,
       gpointer user_data,
       gint *child_pid,
       gint *standard_input,
       gint *standard_output,
       gint *standard_error,
       GError **error);

gboolean gdk_spawn_command_line_on_screen (GdkScreen *screen,
       const gchar *command_line,
       GError **error);


}
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdktestutils.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdktestutils.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
extern "C" {

typedef struct _GdkGeometry GdkGeometry;
typedef struct _GdkWindowAttr GdkWindowAttr;
typedef struct _GdkPointerHooks GdkPointerHooks;
typedef struct _GdkWindowRedirect GdkWindowRedirect;
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
typedef enum
{
 GDK_INPUT_OUTPUT,
 GDK_INPUT_ONLY
} GdkWindowClass;
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
typedef enum
{
 GDK_WINDOW_ROOT,
 GDK_WINDOW_TOPLEVEL,
 GDK_WINDOW_CHILD,
 GDK_WINDOW_DIALOG,
 GDK_WINDOW_TEMP,
 GDK_WINDOW_FOREIGN,
 GDK_WINDOW_OFFSCREEN
} GdkWindowType;
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
typedef enum
{
 GDK_WA_TITLE = 1 << 1,
 GDK_WA_X = 1 << 2,
 GDK_WA_Y = 1 << 3,
 GDK_WA_CURSOR = 1 << 4,
 GDK_WA_COLORMAP = 1 << 5,
 GDK_WA_VISUAL = 1 << 6,
 GDK_WA_WMCLASS = 1 << 7,
 GDK_WA_NOREDIR = 1 << 8,
 GDK_WA_TYPE_HINT = 1 << 9
} GdkWindowAttributesType;



typedef enum
{
 GDK_HINT_POS = 1 << 0,
 GDK_HINT_MIN_SIZE = 1 << 1,
 GDK_HINT_MAX_SIZE = 1 << 2,
 GDK_HINT_BASE_SIZE = 1 << 3,
 GDK_HINT_ASPECT = 1 << 4,
 GDK_HINT_RESIZE_INC = 1 << 5,
 GDK_HINT_WIN_GRAVITY = 1 << 6,
 GDK_HINT_USER_POS = 1 << 7,
 GDK_HINT_USER_SIZE = 1 << 8
} GdkWindowHints;
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
typedef enum
{
 GDK_WINDOW_TYPE_HINT_NORMAL,
 GDK_WINDOW_TYPE_HINT_DIALOG,
 GDK_WINDOW_TYPE_HINT_MENU,
 GDK_WINDOW_TYPE_HINT_TOOLBAR,
 GDK_WINDOW_TYPE_HINT_SPLASHSCREEN,
 GDK_WINDOW_TYPE_HINT_UTILITY,
 GDK_WINDOW_TYPE_HINT_DOCK,
 GDK_WINDOW_TYPE_HINT_DESKTOP,
 GDK_WINDOW_TYPE_HINT_DROPDOWN_MENU,
 GDK_WINDOW_TYPE_HINT_POPUP_MENU,
 GDK_WINDOW_TYPE_HINT_TOOLTIP,
 GDK_WINDOW_TYPE_HINT_NOTIFICATION,
 GDK_WINDOW_TYPE_HINT_COMBO,
 GDK_WINDOW_TYPE_HINT_DND
} GdkWindowTypeHint;






typedef enum
{
 GDK_DECOR_ALL = 1 << 0,
 GDK_DECOR_BORDER = 1 << 1,
 GDK_DECOR_RESIZEH = 1 << 2,
 GDK_DECOR_TITLE = 1 << 3,
 GDK_DECOR_MENU = 1 << 4,
 GDK_DECOR_MINIMIZE = 1 << 5,
 GDK_DECOR_MAXIMIZE = 1 << 6
} GdkWMDecoration;

typedef enum
{
 GDK_FUNC_ALL = 1 << 0,
 GDK_FUNC_RESIZE = 1 << 1,
 GDK_FUNC_MOVE = 1 << 2,
 GDK_FUNC_MINIMIZE = 1 << 3,
 GDK_FUNC_MAXIMIZE = 1 << 4,
 GDK_FUNC_CLOSE = 1 << 5
} GdkWMFunction;





typedef enum
{
 GDK_GRAVITY_NORTH_WEST = 1,
 GDK_GRAVITY_NORTH,
 GDK_GRAVITY_NORTH_EAST,
 GDK_GRAVITY_WEST,
 GDK_GRAVITY_CENTER,
 GDK_GRAVITY_EAST,
 GDK_GRAVITY_SOUTH_WEST,
 GDK_GRAVITY_SOUTH,
 GDK_GRAVITY_SOUTH_EAST,
 GDK_GRAVITY_STATIC
} GdkGravity;


typedef enum
{
 GDK_WINDOW_EDGE_NORTH_WEST,
 GDK_WINDOW_EDGE_NORTH,
 GDK_WINDOW_EDGE_NORTH_EAST,
 GDK_WINDOW_EDGE_WEST,
 GDK_WINDOW_EDGE_EAST,
 GDK_WINDOW_EDGE_SOUTH_WEST,
 GDK_WINDOW_EDGE_SOUTH,
 GDK_WINDOW_EDGE_SOUTH_EAST
} GdkWindowEdge;

struct _GdkWindowAttr
{
 gchar *title;
 gint event_mask;
 gint x, y;
 gint width;
 gint height;
 GdkWindowClass wclass;
 GdkVisual *visual;
 GdkColormap *colormap;
 GdkWindowType window_type;
 GdkCursor *cursor;
 gchar *wmclass_name;
 gchar *wmclass_class;
 gboolean override_redirect;
 GdkWindowTypeHint type_hint;
};

struct _GdkGeometry
{
 gint min_width;
 gint min_height;
 gint max_width;
 gint max_height;
 gint base_width;
 gint base_height;
 gint width_inc;
 gint height_inc;
 gdouble min_aspect;
 gdouble max_aspect;
 GdkGravity win_gravity;
};

struct _GdkPointerHooks
{
 GdkWindow* (*get_pointer) (GdkWindow *window,
             gint *x,
             gint *y,
             GdkModifierType *mask);
 GdkWindow* (*window_at_pointer) (GdkScreen *screen,
                                  gint *win_x,
                                  gint *win_y);
};

typedef struct _GdkWindowObject GdkWindowObject;
typedef struct _GdkWindowObjectClass GdkWindowObjectClass;
# 272 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
struct _GdkWindowObject
{
 GdkDrawable parent_instance;

 GdkDrawable *impl;

 GdkWindowObject *parent;

 gpointer user_data;

 gint x;
 gint y;

 gint extension_events;

 GList *filters;
 GList *children;

 GdkColor bg_color;
 GdkPixmap *bg_pixmap;

 GSList *paint_stack;

 GdkRegion *update_area;
 guint update_freeze_count;

 guint8 window_type;
 guint8 depth;
 guint8 resize_count;

 GdkWindowState state;

 guint guffaw_gravity : 1;
 guint input_only : 1;
 guint modal_hint : 1;
 guint composited : 1;

 guint destroyed : 2;

 guint accept_focus : 1;
 guint focus_on_map : 1;
 guint shaped : 1;

 GdkEventMask event_mask;

 guint update_and_descendants_freeze_count;

 GdkWindowRedirect *redirect;
};



struct _GdkWindowObjectClass
{
 GdkDrawableClass parent_class;
};



GType gdk_window_object_get_type (void) __attribute__((__const__));
GdkWindow* gdk_window_new (GdkWindow *parent,
                                               GdkWindowAttr *attributes,
                                               gint attributes_mask);
void gdk_window_destroy (GdkWindow *window);
GdkWindowType gdk_window_get_window_type (GdkWindow *window);
gboolean gdk_window_is_destroyed (GdkWindow *window);

GdkScreen* gdk_window_get_screen (GdkWindow *window);
GdkDisplay* gdk_window_get_display (GdkWindow *window);
GdkVisual* gdk_window_get_visual (GdkWindow *window);
int gdk_window_get_width (GdkWindow *window);
int gdk_window_get_height (GdkWindow *window);

GdkWindow* gdk_window_at_pointer (gint *win_x,
                                               gint *win_y);
void gdk_window_show (GdkWindow *window);
void gdk_window_hide (GdkWindow *window);
void gdk_window_withdraw (GdkWindow *window);
void gdk_window_show_unraised (GdkWindow *window);
void gdk_window_move (GdkWindow *window,
                                               gint x,
                                               gint y);
void gdk_window_resize (GdkWindow *window,
                                               gint width,
                                               gint height);
void gdk_window_move_resize (GdkWindow *window,
                                               gint x,
                                               gint y,
                                               gint width,
                                               gint height);
void gdk_window_reparent (GdkWindow *window,
                                               GdkWindow *new_parent,
                                               gint x,
                                               gint y);
void gdk_window_clear (GdkWindow *window);
void gdk_window_clear_area (GdkWindow *window,
                                               gint x,
                                               gint y,
                                               gint width,
                                               gint height);
void gdk_window_clear_area_e (GdkWindow *window,
                                               gint x,
                                               gint y,
                                               gint width,
                                               gint height);
void gdk_window_raise (GdkWindow *window);
void gdk_window_lower (GdkWindow *window);
void gdk_window_restack (GdkWindow *window,
     GdkWindow *sibling,
     gboolean above);
void gdk_window_focus (GdkWindow *window,
                                               guint32 timestamp);
void gdk_window_set_user_data (GdkWindow *window,
                                               gpointer user_data);
void gdk_window_set_override_redirect (GdkWindow *window,
                                               gboolean override_redirect);
gboolean gdk_window_get_accept_focus (GdkWindow *window);
void gdk_window_set_accept_focus (GdkWindow *window,
            gboolean accept_focus);
gboolean gdk_window_get_focus_on_map (GdkWindow *window);
void gdk_window_set_focus_on_map (GdkWindow *window,
            gboolean focus_on_map);
void gdk_window_add_filter (GdkWindow *window,
                                               GdkFilterFunc function,
                                               gpointer data);
void gdk_window_remove_filter (GdkWindow *window,
                                               GdkFilterFunc function,
                                               gpointer data);
void gdk_window_scroll (GdkWindow *window,
                                               gint dx,
                                               gint dy);
void gdk_window_move_region (GdkWindow *window,
     const GdkRegion *region,
     gint dx,
     gint dy);
gboolean gdk_window_ensure_native (GdkWindow *window);







void gdk_window_shape_combine_mask (GdkWindow *window,
                                    GdkBitmap *mask,
                                    gint x,
                                    gint y);
void gdk_window_shape_combine_region (GdkWindow *window,
                                     const GdkRegion *shape_region,
                                     gint offset_x,
                                     gint offset_y);
# 431 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
void gdk_window_set_child_shapes (GdkWindow *window);

gboolean gdk_window_get_composited (GdkWindow *window);
void gdk_window_set_composited (GdkWindow *window,
                                 gboolean composited);
# 444 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
void gdk_window_merge_child_shapes (GdkWindow *window);

void gdk_window_input_shape_combine_mask (GdkWindow *window,
        GdkBitmap *mask,
        gint x,
        gint y);
void gdk_window_input_shape_combine_region (GdkWindow *window,
                                           const GdkRegion *shape_region,
                                           gint offset_x,
                                           gint offset_y);
void gdk_window_set_child_input_shapes (GdkWindow *window);
void gdk_window_merge_child_input_shapes (GdkWindow *window);
# 464 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
gboolean gdk_window_is_visible (GdkWindow *window);
gboolean gdk_window_is_viewable (GdkWindow *window);
gboolean gdk_window_is_input_only (GdkWindow *window);
gboolean gdk_window_is_shaped (GdkWindow *window);

GdkWindowState gdk_window_get_state (GdkWindow *window);




gboolean gdk_window_set_static_gravities (GdkWindow *window,
      gboolean use_static);




GdkWindow* gdk_window_foreign_new (GdkNativeWindow anid);
GdkWindow* gdk_window_lookup (GdkNativeWindow anid);

GdkWindow *gdk_window_foreign_new_for_display (GdkDisplay *display,
       GdkNativeWindow anid);
GdkWindow* gdk_window_lookup_for_display (GdkDisplay *display,
         GdkNativeWindow anid);





gboolean gdk_window_has_native (GdkWindow *window);

void gdk_window_set_hints (GdkWindow *window,
      gint x,
      gint y,
      gint min_width,
      gint min_height,
      gint max_width,
      gint max_height,
      gint flags);

void gdk_window_set_type_hint (GdkWindow *window,
                                           GdkWindowTypeHint hint);
GdkWindowTypeHint gdk_window_get_type_hint (GdkWindow *window);

gboolean gdk_window_get_modal_hint (GdkWindow *window);
void gdk_window_set_modal_hint (GdkWindow *window,
                                          gboolean modal);

void gdk_window_set_skip_taskbar_hint (GdkWindow *window,
                                      gboolean skips_taskbar);
void gdk_window_set_skip_pager_hint (GdkWindow *window,
                                      gboolean skips_pager);
void gdk_window_set_urgency_hint (GdkWindow *window,
          gboolean urgent);

void gdk_window_set_geometry_hints (GdkWindow *window,
         const GdkGeometry *geometry,
         GdkWindowHints geom_mask);

void gdk_set_sm_client_id (const gchar *sm_client_id);


void gdk_window_begin_paint_rect (GdkWindow *window,
         const GdkRectangle *rectangle);
void gdk_window_begin_paint_region (GdkWindow *window,
         const GdkRegion *region);
void gdk_window_end_paint (GdkWindow *window);
void gdk_window_flush (GdkWindow *window);

void gdk_window_set_title (GdkWindow *window,
        const gchar *title);
void gdk_window_set_role (GdkWindow *window,
        const gchar *role);
void gdk_window_set_startup_id (GdkWindow *window,
        const gchar *startup_id);
void gdk_window_set_transient_for (GdkWindow *window,
        GdkWindow *parent);
void gdk_window_set_background (GdkWindow *window,
      const GdkColor *color);
void gdk_window_set_back_pixmap (GdkWindow *window,
      GdkPixmap *pixmap,
      gboolean parent_relative);
cairo_pattern_t *gdk_window_get_background_pattern (GdkWindow *window);

void gdk_window_set_cursor (GdkWindow *window,
      GdkCursor *cursor);
GdkCursor *gdk_window_get_cursor (GdkWindow *window);
void gdk_window_get_user_data (GdkWindow *window,
      gpointer *data);
void gdk_window_get_geometry (GdkWindow *window,
      gint *x,
      gint *y,
      gint *width,
      gint *height,
      gint *depth);
void gdk_window_get_position (GdkWindow *window,
      gint *x,
      gint *y);
gint gdk_window_get_origin (GdkWindow *window,
      gint *x,
      gint *y);
void gdk_window_get_root_coords (GdkWindow *window,
      gint x,
      gint y,
      gint *root_x,
      gint *root_y);
void gdk_window_coords_to_parent (GdkWindow *window,
                                         gdouble x,
                                         gdouble y,
                                         gdouble *parent_x,
                                         gdouble *parent_y);
void gdk_window_coords_from_parent (GdkWindow *window,
                                         gdouble parent_x,
                                         gdouble parent_y,
                                         gdouble *x,
                                         gdouble *y);



gboolean gdk_window_get_deskrelative_origin (GdkWindow *window,
      gint *x,
      gint *y);


void gdk_window_get_root_origin (GdkWindow *window,
      gint *x,
      gint *y);
void gdk_window_get_frame_extents (GdkWindow *window,
                                           GdkRectangle *rect);
GdkWindow* gdk_window_get_pointer (GdkWindow *window,
      gint *x,
      gint *y,
      GdkModifierType *mask);
GdkWindow * gdk_window_get_parent (GdkWindow *window);
GdkWindow * gdk_window_get_toplevel (GdkWindow *window);

GdkWindow * gdk_window_get_effective_parent (GdkWindow *window);
GdkWindow * gdk_window_get_effective_toplevel (GdkWindow *window);

GList * gdk_window_get_children (GdkWindow *window);
GList * gdk_window_peek_children (GdkWindow *window);
GdkEventMask gdk_window_get_events (GdkWindow *window);
void gdk_window_set_events (GdkWindow *window,
      GdkEventMask event_mask);

void gdk_window_set_icon_list (GdkWindow *window,
      GList *pixbufs);
void gdk_window_set_icon (GdkWindow *window,
      GdkWindow *icon_window,
      GdkPixmap *pixmap,
      GdkBitmap *mask);
void gdk_window_set_icon_name (GdkWindow *window,
      const gchar *name);
void gdk_window_set_group (GdkWindow *window,
      GdkWindow *leader);
GdkWindow* gdk_window_get_group (GdkWindow *window);
void gdk_window_set_decorations (GdkWindow *window,
      GdkWMDecoration decorations);
gboolean gdk_window_get_decorations (GdkWindow *window,
      GdkWMDecoration *decorations);
void gdk_window_set_functions (GdkWindow *window,
      GdkWMFunction functions);

GList * gdk_window_get_toplevels (void);


cairo_surface_t *
             gdk_window_create_similar_surface (GdkWindow *window,
                                         cairo_content_t content,
                                         int width,
                                         int height);

void gdk_window_beep (GdkWindow *window);
void gdk_window_iconify (GdkWindow *window);
void gdk_window_deiconify (GdkWindow *window);
void gdk_window_stick (GdkWindow *window);
void gdk_window_unstick (GdkWindow *window);
void gdk_window_maximize (GdkWindow *window);
void gdk_window_unmaximize (GdkWindow *window);
void gdk_window_fullscreen (GdkWindow *window);
void gdk_window_unfullscreen (GdkWindow *window);
void gdk_window_set_keep_above (GdkWindow *window,
                                         gboolean setting);
void gdk_window_set_keep_below (GdkWindow *window,
                                         gboolean setting);
void gdk_window_set_opacity (GdkWindow *window,
                                         gdouble opacity);
void gdk_window_register_dnd (GdkWindow *window);

void gdk_window_begin_resize_drag (GdkWindow *window,
                                  GdkWindowEdge edge,
                                  gint button,
                                  gint root_x,
                                  gint root_y,
                                  guint32 timestamp);
void gdk_window_begin_move_drag (GdkWindow *window,
                                  gint button,
                                  gint root_x,
                                  gint root_y,
                                  guint32 timestamp);


void gdk_window_invalidate_rect (GdkWindow *window,
             const GdkRectangle *rect,
             gboolean invalidate_children);
void gdk_window_invalidate_region (GdkWindow *window,
             const GdkRegion *region,
             gboolean invalidate_children);
void gdk_window_invalidate_maybe_recurse (GdkWindow *window,
      const GdkRegion *region,
      gboolean (*child_func) (GdkWindow *, gpointer),
      gpointer user_data);
GdkRegion *gdk_window_get_update_area (GdkWindow *window);

void gdk_window_freeze_updates (GdkWindow *window);
void gdk_window_thaw_updates (GdkWindow *window);

void gdk_window_freeze_toplevel_updates_libgtk_only (GdkWindow *window);
void gdk_window_thaw_toplevel_updates_libgtk_only (GdkWindow *window);

void gdk_window_process_all_updates (void);
void gdk_window_process_updates (GdkWindow *window,
       gboolean update_children);


void gdk_window_set_debug_updates (gboolean setting);

void gdk_window_constrain_size (GdkGeometry *geometry,
                                          guint flags,
                                          gint width,
                                          gint height,
                                          gint *new_width,
                                          gint *new_height);

void gdk_window_get_internal_paint_info (GdkWindow *window,
     GdkDrawable **real_drawable,
     gint *x_offset,
     gint *y_offset);

void gdk_window_enable_synchronized_configure (GdkWindow *window);
void gdk_window_configure_finished (GdkWindow *window);

GdkWindow *gdk_get_default_root_window (void);


GdkPixmap *gdk_offscreen_window_get_pixmap (GdkWindow *window);
void gdk_offscreen_window_set_embedder (GdkWindow *window,
     GdkWindow *embedder);
GdkWindow *gdk_offscreen_window_get_embedder (GdkWindow *window);
void gdk_window_geometry_changed (GdkWindow *window);

void gdk_window_redirect_to_drawable (GdkWindow *window,
                                             GdkDrawable *drawable,
                                             gint src_x,
                                             gint src_y,
                                             gint dest_x,
                                             gint dest_y,
                                             gint width,
                                             gint height);
void gdk_window_remove_redirection (GdkWindow *window);



GdkPointerHooks *gdk_set_pointer_hooks (const GdkPointerHooks *new_hooks);
# 741 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkwindow.h"
}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdktestutils.h" 2

extern "C" {


void gdk_test_render_sync (GdkWindow *window);
gboolean gdk_test_simulate_key (GdkWindow *window,
                                                gint x,
                                                gint y,
                                                guint keyval,
                                                GdkModifierType modifiers,
                                                GdkEventType key_pressrelease);
gboolean gdk_test_simulate_button (GdkWindow *window,
                                                gint x,
                                                gint y,
                                                guint button,
                                                GdkModifierType modifiers,
                                                GdkEventType button_pressrelease);

}
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkvisual.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkvisual.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkvisual.h"
typedef struct _GdkVisualClass GdkVisualClass;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkvisual.h"
typedef enum
{
 GDK_VISUAL_STATIC_GRAY,
 GDK_VISUAL_GRAYSCALE,
 GDK_VISUAL_STATIC_COLOR,
 GDK_VISUAL_PSEUDO_COLOR,
 GDK_VISUAL_TRUE_COLOR,
 GDK_VISUAL_DIRECT_COLOR
} GdkVisualType;
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdkvisual.h"
struct _GdkVisual
{
 GObject parent_instance;

 GdkVisualType type;
 gint depth;
 GdkByteOrder byte_order;
 gint colormap_size;
 gint bits_per_rgb;

 guint32 red_mask;
 gint red_shift;
 gint red_prec;

 guint32 green_mask;
 gint green_shift;
 gint green_prec;

 guint32 blue_mask;
 gint blue_shift;
 gint blue_prec;
};

GType gdk_visual_get_type (void) __attribute__((__const__));


gint gdk_visual_get_best_depth (void);
GdkVisualType gdk_visual_get_best_type (void);
GdkVisual* gdk_visual_get_system (void);
GdkVisual* gdk_visual_get_best (void);
GdkVisual* gdk_visual_get_best_with_depth (gint depth);
GdkVisual* gdk_visual_get_best_with_type (GdkVisualType visual_type);
GdkVisual* gdk_visual_get_best_with_both (gint depth,
          GdkVisualType visual_type);

void gdk_query_depths (gint **depths,
       gint *count);
void gdk_query_visual_types (GdkVisualType **visual_types,
       gint *count);

GList* gdk_list_visuals (void);


GdkScreen *gdk_visual_get_screen (GdkVisual *visual);

GdkVisualType gdk_visual_get_visual_type (GdkVisual *visual);
gint gdk_visual_get_depth (GdkVisual *visual);
GdkByteOrder gdk_visual_get_byte_order (GdkVisual *visual);
gint gdk_visual_get_colormap_size (GdkVisual *visual);
gint gdk_visual_get_bits_per_rgb (GdkVisual *visual);
void gdk_visual_get_red_pixel_details (GdkVisual *visual,
                                                 guint32 *mask,
                                                 gint *shift,
                                                 gint *precision);
void gdk_visual_get_green_pixel_details (GdkVisual *visual,
                                                 guint32 *mask,
                                                 gint *shift,
                                                 gint *precision);
void gdk_visual_get_blue_pixel_details (GdkVisual *visual,
                                                 guint32 *mask,
                                                 gint *shift,
                                                 gint *precision);






}
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h" 2




extern "C" {





void gdk_parse_args (gint *argc,
     gchar ***argv);
void gdk_init (gint *argc,
     gchar ***argv);
gboolean gdk_init_check (gint *argc,
     gchar ***argv);
void gdk_add_option_entries_libgtk_only (GOptionGroup *group);
void gdk_pre_parse_libgtk_only (void);


void gdk_exit (gint error_code);
gchar* gdk_set_locale (void);


const char * gdk_get_program_class (void);
void gdk_set_program_class (const char *program_class);



void gdk_error_trap_push (void);
gint gdk_error_trap_pop (void);


void gdk_set_use_xshm (gboolean use_xshm);
gboolean gdk_get_use_xshm (void);


gchar* gdk_get_display (void);
const gchar* gdk_get_display_arg_name (void);


gint gdk_input_add_full (gint source,
     GdkInputCondition condition,
     GdkInputFunction function,
     gpointer data,
     GDestroyNotify destroy);
gint gdk_input_add (gint source,
     GdkInputCondition condition,
     GdkInputFunction function,
     gpointer data);
void gdk_input_remove (gint tag);


GdkGrabStatus gdk_pointer_grab (GdkWindow *window,
         gboolean owner_events,
         GdkEventMask event_mask,
         GdkWindow *confine_to,
         GdkCursor *cursor,
         guint32 time_);
GdkGrabStatus gdk_keyboard_grab (GdkWindow *window,
         gboolean owner_events,
         guint32 time_);

gboolean gdk_pointer_grab_info_libgtk_only (GdkDisplay *display,
        GdkWindow **grab_window,
        gboolean *owner_events);
gboolean gdk_keyboard_grab_info_libgtk_only (GdkDisplay *display,
         GdkWindow **grab_window,
         gboolean *owner_events);


void gdk_pointer_ungrab (guint32 time_);
void gdk_keyboard_ungrab (guint32 time_);
gboolean gdk_pointer_is_grabbed (void);

gint gdk_screen_width (void) __attribute__((__const__));
gint gdk_screen_height (void) __attribute__((__const__));

gint gdk_screen_width_mm (void) __attribute__((__const__));
gint gdk_screen_height_mm (void) __attribute__((__const__));

void gdk_beep (void);


void gdk_flush (void);


void gdk_set_double_click_time (guint msec);




gboolean gdk_rectangle_intersect (const GdkRectangle *src1,
     const GdkRectangle *src2,
     GdkRectangle *dest);
void gdk_rectangle_union (const GdkRectangle *src1,
     const GdkRectangle *src2,
     GdkRectangle *dest);

GType gdk_rectangle_get_type (void) __attribute__((__const__));






gchar *gdk_wcstombs (const GdkWChar *src);
gint gdk_mbstowcs (GdkWChar *dest,
     const gchar *src,
     gint dest_max);




gboolean gdk_event_send_client_message (GdkEvent *event,
         GdkNativeWindow winid);
void gdk_event_send_clientmessage_toall (GdkEvent *event);

gboolean gdk_event_send_client_message_for_display (GdkDisplay *display,
         GdkEvent *event,
         GdkNativeWindow winid);

void gdk_notify_startup_complete (void);

void gdk_notify_startup_complete_with_id (const gchar* startup_id);





extern GMutex *gdk_threads_mutex;


extern GCallback gdk_threads_lock;
extern GCallback gdk_threads_unlock;

void gdk_threads_enter (void);
void gdk_threads_leave (void);
void gdk_threads_init (void);
void gdk_threads_set_lock_functions (GCallback enter_fn,
           GCallback leave_fn);

guint gdk_threads_add_idle_full (gint priority,
                                GSourceFunc function,
                                gpointer data,
                                GDestroyNotify notify);
guint gdk_threads_add_idle (GSourceFunc function,
                                gpointer data);
guint gdk_threads_add_timeout_full (gint priority,
                                              guint interval,
                                              GSourceFunc function,
                                              gpointer data,
                                              GDestroyNotify notify);
guint gdk_threads_add_timeout (guint interval,
                                              GSourceFunc function,
                                              gpointer data);
guint gdk_threads_add_timeout_seconds_full (gint priority,
                                              guint interval,
                                              GSourceFunc function,
                                              gpointer data,
                                              GDestroyNotify notify);
guint gdk_threads_add_timeout_seconds (guint interval,
                                              GSourceFunc function,
                                              gpointer data);
# 238 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gdk/gdk.h"
}
# 63 "main.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaboutdialog.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaboutdialog.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdialog.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdialog.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwindow.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwindow.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelgroup.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelgroup.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkenums.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkenums.h"
extern "C" {


typedef enum
{
 GTK_ANCHOR_CENTER,
 GTK_ANCHOR_NORTH,
 GTK_ANCHOR_NORTH_WEST,
 GTK_ANCHOR_NORTH_EAST,
 GTK_ANCHOR_SOUTH,
 GTK_ANCHOR_SOUTH_WEST,
 GTK_ANCHOR_SOUTH_EAST,
 GTK_ANCHOR_WEST,
 GTK_ANCHOR_EAST,
 GTK_ANCHOR_N = GTK_ANCHOR_NORTH,
 GTK_ANCHOR_NW = GTK_ANCHOR_NORTH_WEST,
 GTK_ANCHOR_NE = GTK_ANCHOR_NORTH_EAST,
 GTK_ANCHOR_S = GTK_ANCHOR_SOUTH,
 GTK_ANCHOR_SW = GTK_ANCHOR_SOUTH_WEST,
 GTK_ANCHOR_SE = GTK_ANCHOR_SOUTH_EAST,
 GTK_ANCHOR_W = GTK_ANCHOR_WEST,
 GTK_ANCHOR_E = GTK_ANCHOR_EAST
} GtkAnchorType;


typedef enum
{
 GTK_ARROWS_BOTH,
 GTK_ARROWS_START,
 GTK_ARROWS_END
} GtkArrowPlacement;


typedef enum
{
 GTK_ARROW_UP,
 GTK_ARROW_DOWN,
 GTK_ARROW_LEFT,
 GTK_ARROW_RIGHT,
 GTK_ARROW_NONE
} GtkArrowType;


typedef enum
{
 GTK_EXPAND = 1 << 0,
 GTK_SHRINK = 1 << 1,
 GTK_FILL = 1 << 2
} GtkAttachOptions;


typedef enum
{
 GTK_BUTTONBOX_DEFAULT_STYLE,
 GTK_BUTTONBOX_SPREAD,
 GTK_BUTTONBOX_EDGE,
 GTK_BUTTONBOX_START,
 GTK_BUTTONBOX_END,
 GTK_BUTTONBOX_CENTER
} GtkButtonBoxStyle;



typedef enum
{
 GTK_CURVE_TYPE_LINEAR,
 GTK_CURVE_TYPE_SPLINE,
 GTK_CURVE_TYPE_FREE
} GtkCurveType;


typedef enum
{
 GTK_DELETE_CHARS,
 GTK_DELETE_WORD_ENDS,


 GTK_DELETE_WORDS,
 GTK_DELETE_DISPLAY_LINES,
 GTK_DELETE_DISPLAY_LINE_ENDS,
 GTK_DELETE_PARAGRAPH_ENDS,
 GTK_DELETE_PARAGRAPHS,
 GTK_DELETE_WHITESPACE
} GtkDeleteType;


typedef enum
{
 GTK_DIR_TAB_FORWARD,
 GTK_DIR_TAB_BACKWARD,
 GTK_DIR_UP,
 GTK_DIR_DOWN,
 GTK_DIR_LEFT,
 GTK_DIR_RIGHT
} GtkDirectionType;


typedef enum
{
 GTK_EXPANDER_COLLAPSED,
 GTK_EXPANDER_SEMI_COLLAPSED,
 GTK_EXPANDER_SEMI_EXPANDED,
 GTK_EXPANDER_EXPANDED
} GtkExpanderStyle;


typedef enum
{
 GTK_ICON_SIZE_INVALID,
 GTK_ICON_SIZE_MENU,
 GTK_ICON_SIZE_SMALL_TOOLBAR,
 GTK_ICON_SIZE_LARGE_TOOLBAR,
 GTK_ICON_SIZE_BUTTON,
 GTK_ICON_SIZE_DND,
 GTK_ICON_SIZE_DIALOG
} GtkIconSize;


typedef enum
{
 GTK_SENSITIVITY_AUTO,
 GTK_SENSITIVITY_ON,
 GTK_SENSITIVITY_OFF
} GtkSensitivityType;



typedef enum
{
 GTK_SIDE_TOP,
 GTK_SIDE_BOTTOM,
 GTK_SIDE_LEFT,
 GTK_SIDE_RIGHT
} GtkSideType;



typedef enum
{
 GTK_TEXT_DIR_NONE,
 GTK_TEXT_DIR_LTR,
 GTK_TEXT_DIR_RTL
} GtkTextDirection;


typedef enum
{
 GTK_JUSTIFY_LEFT,
 GTK_JUSTIFY_RIGHT,
 GTK_JUSTIFY_CENTER,
 GTK_JUSTIFY_FILL
} GtkJustification;



typedef enum
{
 GTK_MATCH_ALL,
 GTK_MATCH_ALL_TAIL,
 GTK_MATCH_HEAD,
 GTK_MATCH_TAIL,
 GTK_MATCH_EXACT,
 GTK_MATCH_LAST
} GtkMatchType;



typedef enum
{
 GTK_MENU_DIR_PARENT,
 GTK_MENU_DIR_CHILD,
 GTK_MENU_DIR_NEXT,
 GTK_MENU_DIR_PREV
} GtkMenuDirectionType;
# 221 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkenums.h"
typedef enum
{
 GTK_MESSAGE_INFO,
 GTK_MESSAGE_WARNING,
 GTK_MESSAGE_QUESTION,
 GTK_MESSAGE_ERROR,
 GTK_MESSAGE_OTHER
} GtkMessageType;

typedef enum
{
 GTK_PIXELS,
 GTK_INCHES,
 GTK_CENTIMETERS
} GtkMetricType;

typedef enum
{
 GTK_MOVEMENT_LOGICAL_POSITIONS,
 GTK_MOVEMENT_VISUAL_POSITIONS,
 GTK_MOVEMENT_WORDS,
 GTK_MOVEMENT_DISPLAY_LINES,
 GTK_MOVEMENT_DISPLAY_LINE_ENDS,
 GTK_MOVEMENT_PARAGRAPHS,
 GTK_MOVEMENT_PARAGRAPH_ENDS,
 GTK_MOVEMENT_PAGES,
 GTK_MOVEMENT_BUFFER_ENDS,
 GTK_MOVEMENT_HORIZONTAL_PAGES
} GtkMovementStep;

typedef enum
{
 GTK_SCROLL_STEPS,
 GTK_SCROLL_PAGES,
 GTK_SCROLL_ENDS,
 GTK_SCROLL_HORIZONTAL_STEPS,
 GTK_SCROLL_HORIZONTAL_PAGES,
 GTK_SCROLL_HORIZONTAL_ENDS
} GtkScrollStep;


typedef enum
{
 GTK_ORIENTATION_HORIZONTAL,
 GTK_ORIENTATION_VERTICAL
} GtkOrientation;


typedef enum
{
 GTK_CORNER_TOP_LEFT,
 GTK_CORNER_BOTTOM_LEFT,
 GTK_CORNER_TOP_RIGHT,
 GTK_CORNER_BOTTOM_RIGHT
} GtkCornerType;


typedef enum
{
 GTK_PACK_START,
 GTK_PACK_END
} GtkPackType;


typedef enum
{
 GTK_PATH_PRIO_LOWEST = 0,
 GTK_PATH_PRIO_GTK = 4,
 GTK_PATH_PRIO_APPLICATION = 8,
 GTK_PATH_PRIO_THEME = 10,
 GTK_PATH_PRIO_RC = 12,
 GTK_PATH_PRIO_HIGHEST = 15
} GtkPathPriorityType;



typedef enum
{
 GTK_PATH_WIDGET,
 GTK_PATH_WIDGET_CLASS,
 GTK_PATH_CLASS
} GtkPathType;


typedef enum
{
 GTK_POLICY_ALWAYS,
 GTK_POLICY_AUTOMATIC,
 GTK_POLICY_NEVER
} GtkPolicyType;

typedef enum
{
 GTK_POS_LEFT,
 GTK_POS_RIGHT,
 GTK_POS_TOP,
 GTK_POS_BOTTOM
} GtkPositionType;


typedef enum
{
 GTK_PREVIEW_COLOR,
 GTK_PREVIEW_GRAYSCALE
} GtkPreviewType;



typedef enum
{
 GTK_RELIEF_NORMAL,
 GTK_RELIEF_HALF,
 GTK_RELIEF_NONE
} GtkReliefStyle;


typedef enum
{
 GTK_RESIZE_PARENT,
 GTK_RESIZE_QUEUE,
 GTK_RESIZE_IMMEDIATE
} GtkResizeMode;



typedef enum
{
 GTK_RUN_FIRST = G_SIGNAL_RUN_FIRST,
 GTK_RUN_LAST = G_SIGNAL_RUN_LAST,
 GTK_RUN_BOTH = (GTK_RUN_FIRST | GTK_RUN_LAST),
 GTK_RUN_NO_RECURSE = G_SIGNAL_NO_RECURSE,
 GTK_RUN_ACTION = G_SIGNAL_ACTION,
 GTK_RUN_NO_HOOKS = G_SIGNAL_NO_HOOKS
} GtkSignalRunType;



typedef enum
{
 GTK_SCROLL_NONE,
 GTK_SCROLL_JUMP,
 GTK_SCROLL_STEP_BACKWARD,
 GTK_SCROLL_STEP_FORWARD,
 GTK_SCROLL_PAGE_BACKWARD,
 GTK_SCROLL_PAGE_FORWARD,
 GTK_SCROLL_STEP_UP,
 GTK_SCROLL_STEP_DOWN,
 GTK_SCROLL_PAGE_UP,
 GTK_SCROLL_PAGE_DOWN,
 GTK_SCROLL_STEP_LEFT,
 GTK_SCROLL_STEP_RIGHT,
 GTK_SCROLL_PAGE_LEFT,
 GTK_SCROLL_PAGE_RIGHT,
 GTK_SCROLL_START,
 GTK_SCROLL_END
} GtkScrollType;


typedef enum
{
 GTK_SELECTION_NONE,
 GTK_SELECTION_SINGLE,
 GTK_SELECTION_BROWSE,
 GTK_SELECTION_MULTIPLE,
 GTK_SELECTION_EXTENDED = GTK_SELECTION_MULTIPLE
} GtkSelectionMode;


typedef enum
{
 GTK_SHADOW_NONE,
 GTK_SHADOW_IN,
 GTK_SHADOW_OUT,
 GTK_SHADOW_ETCHED_IN,
 GTK_SHADOW_ETCHED_OUT
} GtkShadowType;


typedef enum
{
 GTK_STATE_NORMAL,
 GTK_STATE_ACTIVE,
 GTK_STATE_PRELIGHT,
 GTK_STATE_SELECTED,
 GTK_STATE_INSENSITIVE
} GtkStateType;



typedef enum
{
 GTK_DIRECTION_LEFT,
 GTK_DIRECTION_RIGHT
} GtkSubmenuDirection;


typedef enum
{
 GTK_TOP_BOTTOM,
 GTK_LEFT_RIGHT
} GtkSubmenuPlacement;



typedef enum
{
 GTK_TOOLBAR_ICONS,
 GTK_TOOLBAR_TEXT,
 GTK_TOOLBAR_BOTH,
 GTK_TOOLBAR_BOTH_HORIZ
} GtkToolbarStyle;


typedef enum
{
 GTK_UPDATE_CONTINUOUS,
 GTK_UPDATE_DISCONTINUOUS,
 GTK_UPDATE_DELAYED
} GtkUpdateType;


typedef enum
{
 GTK_VISIBILITY_NONE,
 GTK_VISIBILITY_PARTIAL,
 GTK_VISIBILITY_FULL
} GtkVisibility;


typedef enum
{
 GTK_WIN_POS_NONE,
 GTK_WIN_POS_CENTER,
 GTK_WIN_POS_MOUSE,
 GTK_WIN_POS_CENTER_ALWAYS,
 GTK_WIN_POS_CENTER_ON_PARENT
} GtkWindowPosition;


typedef enum
{
 GTK_WINDOW_TOPLEVEL,
 GTK_WINDOW_POPUP
} GtkWindowType;


typedef enum
{
 GTK_WRAP_NONE,
 GTK_WRAP_CHAR,
 GTK_WRAP_WORD,
 GTK_WRAP_WORD_CHAR
} GtkWrapMode;


typedef enum
{
 GTK_SORT_ASCENDING,
 GTK_SORT_DESCENDING
} GtkSortType;


typedef enum
{
 GTK_IM_PREEDIT_NOTHING,
 GTK_IM_PREEDIT_CALLBACK,
 GTK_IM_PREEDIT_NONE
} GtkIMPreeditStyle;

typedef enum
{
 GTK_IM_STATUS_NOTHING,
 GTK_IM_STATUS_CALLBACK,
 GTK_IM_STATUS_NONE
} GtkIMStatusStyle;

typedef enum
{
 GTK_PACK_DIRECTION_LTR,
 GTK_PACK_DIRECTION_RTL,
 GTK_PACK_DIRECTION_TTB,
 GTK_PACK_DIRECTION_BTT
} GtkPackDirection;

typedef enum
{
 GTK_PRINT_PAGES_ALL,
 GTK_PRINT_PAGES_CURRENT,
 GTK_PRINT_PAGES_RANGES,
 GTK_PRINT_PAGES_SELECTION
} GtkPrintPages;

typedef enum
{
 GTK_PAGE_SET_ALL,
 GTK_PAGE_SET_EVEN,
 GTK_PAGE_SET_ODD
} GtkPageSet;

typedef enum
{
 GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM,
 GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP,
 GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM,
 GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP,
 GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT,
 GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT,
 GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT,
 GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT
} GtkNumberUpLayout;

typedef enum
{
 GTK_PAGE_ORIENTATION_PORTRAIT,
 GTK_PAGE_ORIENTATION_LANDSCAPE,
 GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT,
 GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE
} GtkPageOrientation;

typedef enum
{
 GTK_PRINT_QUALITY_LOW,
 GTK_PRINT_QUALITY_NORMAL,
 GTK_PRINT_QUALITY_HIGH,
 GTK_PRINT_QUALITY_DRAFT
} GtkPrintQuality;

typedef enum
{
 GTK_PRINT_DUPLEX_SIMPLEX,
 GTK_PRINT_DUPLEX_HORIZONTAL,
 GTK_PRINT_DUPLEX_VERTICAL
} GtkPrintDuplex;


typedef enum
{
 GTK_UNIT_PIXEL,
 GTK_UNIT_POINTS,
 GTK_UNIT_INCH,
 GTK_UNIT_MM
} GtkUnit;

typedef enum
{
 GTK_TREE_VIEW_GRID_LINES_NONE,
 GTK_TREE_VIEW_GRID_LINES_HORIZONTAL,
 GTK_TREE_VIEW_GRID_LINES_VERTICAL,
 GTK_TREE_VIEW_GRID_LINES_BOTH
} GtkTreeViewGridLines;

typedef enum
{
 GTK_DRAG_RESULT_SUCCESS,
 GTK_DRAG_RESULT_NO_TARGET,
 GTK_DRAG_RESULT_USER_CANCELLED,
 GTK_DRAG_RESULT_TIMEOUT_EXPIRED,
 GTK_DRAG_RESULT_GRAB_BROKEN,
 GTK_DRAG_RESULT_ERROR
} GtkDragResult;

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelgroup.h" 2

extern "C" {
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelgroup.h"
typedef enum
{
 GTK_ACCEL_VISIBLE = 1 << 0,
 GTK_ACCEL_LOCKED = 1 << 1,
 GTK_ACCEL_MASK = 0x07
} GtkAccelFlags;



typedef struct _GtkAccelGroup GtkAccelGroup;
typedef struct _GtkAccelGroupClass GtkAccelGroupClass;
typedef struct _GtkAccelKey GtkAccelKey;
typedef struct _GtkAccelGroupEntry GtkAccelGroupEntry;
typedef gboolean (*GtkAccelGroupActivate) (GtkAccelGroup *accel_group,
       GObject *acceleratable,
       guint keyval,
       GdkModifierType modifier);
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelgroup.h"
typedef gboolean (*GtkAccelGroupFindFunc) (GtkAccelKey *key,
       GClosure *closure,
       gpointer data);






struct _GtkAccelGroup
{
 GObject parent;

 guint lock_count;
 GdkModifierType modifier_mask;
 GSList *acceleratables;
 guint n_accels;
 GtkAccelGroupEntry *priv_accels;
};

struct _GtkAccelGroupClass
{
 GObjectClass parent_class;

 void (*accel_changed) (GtkAccelGroup *accel_group,
    guint keyval,
    GdkModifierType modifier,
    GClosure *accel_closure);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

struct _GtkAccelKey
{
 guint accel_key;
 GdkModifierType accel_mods;
 guint accel_flags : 16;
};



GType gtk_accel_group_get_type (void) __attribute__((__const__));
GtkAccelGroup* gtk_accel_group_new (void);
gboolean gtk_accel_group_get_is_locked (GtkAccelGroup *accel_group);
GdkModifierType
              gtk_accel_group_get_modifier_mask (GtkAccelGroup *accel_group);
void gtk_accel_group_lock (GtkAccelGroup *accel_group);
void gtk_accel_group_unlock (GtkAccelGroup *accel_group);
void gtk_accel_group_connect (GtkAccelGroup *accel_group,
        guint accel_key,
        GdkModifierType accel_mods,
        GtkAccelFlags accel_flags,
        GClosure *closure);
void gtk_accel_group_connect_by_path (GtkAccelGroup *accel_group,
        const gchar *accel_path,
        GClosure *closure);
gboolean gtk_accel_group_disconnect (GtkAccelGroup *accel_group,
        GClosure *closure);
gboolean gtk_accel_group_disconnect_key (GtkAccelGroup *accel_group,
        guint accel_key,
        GdkModifierType accel_mods);
gboolean gtk_accel_group_activate (GtkAccelGroup *accel_group,
                                                  GQuark accel_quark,
                                                  GObject *acceleratable,
                                                  guint accel_key,
                                                  GdkModifierType accel_mods);



void _gtk_accel_group_attach (GtkAccelGroup *accel_group,
      GObject *object);
void _gtk_accel_group_detach (GtkAccelGroup *accel_group,
      GObject *object);
gboolean gtk_accel_groups_activate (GObject *object,
      guint accel_key,
      GdkModifierType accel_mods);
GSList* gtk_accel_groups_from_object (GObject *object);
GtkAccelKey* gtk_accel_group_find (GtkAccelGroup *accel_group,
      GtkAccelGroupFindFunc find_func,
      gpointer data);
GtkAccelGroup* gtk_accel_group_from_accel_closure (GClosure *closure);



gboolean gtk_accelerator_valid (guint keyval,
           GdkModifierType modifiers) __attribute__((__const__));
void gtk_accelerator_parse (const gchar *accelerator,
           guint *accelerator_key,
           GdkModifierType *accelerator_mods);
gchar* gtk_accelerator_name (guint accelerator_key,
           GdkModifierType accelerator_mods);
gchar* gtk_accelerator_get_label (guint accelerator_key,
                                              GdkModifierType accelerator_mods);
void gtk_accelerator_set_default_mod_mask (GdkModifierType default_mod_mask);
guint gtk_accelerator_get_default_mod_mask (void);



GtkAccelGroupEntry* gtk_accel_group_query (GtkAccelGroup *accel_group,
      guint accel_key,
      GdkModifierType accel_mods,
      guint *n_entries);

void _gtk_accel_group_reconnect (GtkAccelGroup *accel_group,
      GQuark accel_path_quark);

struct _GtkAccelGroupEntry
{
 GtkAccelKey key;
 GClosure *closure;
 GQuark accel_path_quark;
};
# 213 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelgroup.h"
}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwindow.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbin.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbin.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcontainer.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcontainer.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkobject.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkobject.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypeutils.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypeutils.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypebuiltins.h" 1
# 13 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypebuiltins.h"
extern "C" {


GType gtk_accel_flags_get_type (void) __attribute__((__const__));



GType gtk_assistant_page_type_get_type (void) __attribute__((__const__));



GType gtk_builder_error_get_type (void) __attribute__((__const__));



GType gtk_calendar_display_options_get_type (void) __attribute__((__const__));



GType gtk_cell_renderer_state_get_type (void) __attribute__((__const__));

GType gtk_cell_renderer_mode_get_type (void) __attribute__((__const__));



GType gtk_cell_renderer_accel_mode_get_type (void) __attribute__((__const__));



GType gtk_debug_flag_get_type (void) __attribute__((__const__));



GType gtk_dialog_flags_get_type (void) __attribute__((__const__));

GType gtk_response_type_get_type (void) __attribute__((__const__));



GType gtk_dest_defaults_get_type (void) __attribute__((__const__));

GType gtk_target_flags_get_type (void) __attribute__((__const__));



GType gtk_entry_icon_position_get_type (void) __attribute__((__const__));



GType gtk_anchor_type_get_type (void) __attribute__((__const__));

GType gtk_arrow_placement_get_type (void) __attribute__((__const__));

GType gtk_arrow_type_get_type (void) __attribute__((__const__));

GType gtk_attach_options_get_type (void) __attribute__((__const__));

GType gtk_button_box_style_get_type (void) __attribute__((__const__));

GType gtk_curve_type_get_type (void) __attribute__((__const__));

GType gtk_delete_type_get_type (void) __attribute__((__const__));

GType gtk_direction_type_get_type (void) __attribute__((__const__));

GType gtk_expander_style_get_type (void) __attribute__((__const__));

GType gtk_icon_size_get_type (void) __attribute__((__const__));

GType gtk_sensitivity_type_get_type (void) __attribute__((__const__));

GType gtk_side_type_get_type (void) __attribute__((__const__));

GType gtk_text_direction_get_type (void) __attribute__((__const__));

GType gtk_justification_get_type (void) __attribute__((__const__));

GType gtk_match_type_get_type (void) __attribute__((__const__));

GType gtk_menu_direction_type_get_type (void) __attribute__((__const__));

GType gtk_message_type_get_type (void) __attribute__((__const__));

GType gtk_metric_type_get_type (void) __attribute__((__const__));

GType gtk_movement_step_get_type (void) __attribute__((__const__));

GType gtk_scroll_step_get_type (void) __attribute__((__const__));

GType gtk_orientation_get_type (void) __attribute__((__const__));

GType gtk_corner_type_get_type (void) __attribute__((__const__));

GType gtk_pack_type_get_type (void) __attribute__((__const__));

GType gtk_path_priority_type_get_type (void) __attribute__((__const__));

GType gtk_path_type_get_type (void) __attribute__((__const__));

GType gtk_policy_type_get_type (void) __attribute__((__const__));

GType gtk_position_type_get_type (void) __attribute__((__const__));

GType gtk_preview_type_get_type (void) __attribute__((__const__));

GType gtk_relief_style_get_type (void) __attribute__((__const__));

GType gtk_resize_mode_get_type (void) __attribute__((__const__));

GType gtk_signal_run_type_get_type (void) __attribute__((__const__));

GType gtk_scroll_type_get_type (void) __attribute__((__const__));

GType gtk_selection_mode_get_type (void) __attribute__((__const__));

GType gtk_shadow_type_get_type (void) __attribute__((__const__));

GType gtk_state_type_get_type (void) __attribute__((__const__));

GType gtk_submenu_direction_get_type (void) __attribute__((__const__));

GType gtk_submenu_placement_get_type (void) __attribute__((__const__));

GType gtk_toolbar_style_get_type (void) __attribute__((__const__));

GType gtk_update_type_get_type (void) __attribute__((__const__));

GType gtk_visibility_get_type (void) __attribute__((__const__));

GType gtk_window_position_get_type (void) __attribute__((__const__));

GType gtk_window_type_get_type (void) __attribute__((__const__));

GType gtk_wrap_mode_get_type (void) __attribute__((__const__));

GType gtk_sort_type_get_type (void) __attribute__((__const__));

GType gtk_im_preedit_style_get_type (void) __attribute__((__const__));

GType gtk_im_status_style_get_type (void) __attribute__((__const__));

GType gtk_pack_direction_get_type (void) __attribute__((__const__));

GType gtk_print_pages_get_type (void) __attribute__((__const__));

GType gtk_page_set_get_type (void) __attribute__((__const__));

GType gtk_number_up_layout_get_type (void) __attribute__((__const__));

GType gtk_page_orientation_get_type (void) __attribute__((__const__));

GType gtk_print_quality_get_type (void) __attribute__((__const__));

GType gtk_print_duplex_get_type (void) __attribute__((__const__));

GType gtk_unit_get_type (void) __attribute__((__const__));

GType gtk_tree_view_grid_lines_get_type (void) __attribute__((__const__));

GType gtk_drag_result_get_type (void) __attribute__((__const__));



GType gtk_file_chooser_action_get_type (void) __attribute__((__const__));

GType gtk_file_chooser_confirmation_get_type (void) __attribute__((__const__));

GType gtk_file_chooser_error_get_type (void) __attribute__((__const__));



GType gtk_file_filter_flags_get_type (void) __attribute__((__const__));



GType gtk_icon_lookup_flags_get_type (void) __attribute__((__const__));

GType gtk_icon_theme_error_get_type (void) __attribute__((__const__));



GType gtk_icon_view_drop_position_get_type (void) __attribute__((__const__));



GType gtk_image_type_get_type (void) __attribute__((__const__));



GType gtk_buttons_type_get_type (void) __attribute__((__const__));



GType gtk_notebook_tab_get_type (void) __attribute__((__const__));



GType gtk_object_flags_get_type (void) __attribute__((__const__));

GType gtk_arg_flags_get_type (void) __attribute__((__const__));



GType gtk_print_status_get_type (void) __attribute__((__const__));

GType gtk_print_operation_result_get_type (void) __attribute__((__const__));

GType gtk_print_operation_action_get_type (void) __attribute__((__const__));

GType gtk_print_error_get_type (void) __attribute__((__const__));



GType gtk_private_flags_get_type (void) __attribute__((__const__));



GType gtk_progress_bar_style_get_type (void) __attribute__((__const__));

GType gtk_progress_bar_orientation_get_type (void) __attribute__((__const__));



GType gtk_rc_flags_get_type (void) __attribute__((__const__));

GType gtk_rc_token_type_get_type (void) __attribute__((__const__));



GType gtk_recent_sort_type_get_type (void) __attribute__((__const__));

GType gtk_recent_chooser_error_get_type (void) __attribute__((__const__));



GType gtk_recent_filter_flags_get_type (void) __attribute__((__const__));



GType gtk_recent_manager_error_get_type (void) __attribute__((__const__));



GType gtk_size_group_mode_get_type (void) __attribute__((__const__));



GType gtk_spin_button_update_policy_get_type (void) __attribute__((__const__));

GType gtk_spin_type_get_type (void) __attribute__((__const__));



GType gtk_text_buffer_target_info_get_type (void) __attribute__((__const__));



GType gtk_text_search_flags_get_type (void) __attribute__((__const__));



GType gtk_text_window_type_get_type (void) __attribute__((__const__));



GType gtk_toolbar_child_type_get_type (void) __attribute__((__const__));

GType gtk_toolbar_space_style_get_type (void) __attribute__((__const__));



GType gtk_tool_palette_drag_targets_get_type (void) __attribute__((__const__));



GType gtk_tree_model_flags_get_type (void) __attribute__((__const__));



GType gtk_tree_view_drop_position_get_type (void) __attribute__((__const__));



GType gtk_tree_view_column_sizing_get_type (void) __attribute__((__const__));



GType gtk_ui_manager_item_type_get_type (void) __attribute__((__const__));



GType gtk_widget_flags_get_type (void) __attribute__((__const__));

GType gtk_widget_help_type_get_type (void) __attribute__((__const__));



GType gtk_tree_view_mode_get_type (void) __attribute__((__const__));



GType gtk_cell_type_get_type (void) __attribute__((__const__));

GType gtk_clist_drag_pos_get_type (void) __attribute__((__const__));

GType gtk_button_action_get_type (void) __attribute__((__const__));



GType gtk_ctree_pos_get_type (void) __attribute__((__const__));

GType gtk_ctree_line_style_get_type (void) __attribute__((__const__));

GType gtk_ctree_expander_style_get_type (void) __attribute__((__const__));

GType gtk_ctree_expansion_type_get_type (void) __attribute__((__const__));

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypeutils.h" 2

extern "C" {



GType gtk_identifier_get_type (void) __attribute__((__const__));





typedef struct _GtkArg GtkArg;
typedef struct _GtkObject GtkObject;

typedef gboolean (*GtkFunction) (gpointer data);
typedef void (*GtkCallbackMarshal) (GtkObject *object,
        gpointer data,
        guint n_args,
        GtkArg *args);





typedef gchar * (*GtkTranslateFunc) (const gchar *path,
        gpointer func_data);
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypeutils.h"
typedef GType GtkFundamentalType;
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypeutils.h"
typedef GType GtkType;
typedef GTypeInstance GtkTypeObject;
typedef GTypeClass GtkTypeClass;
typedef GBaseInitFunc GtkClassInitFunc;
typedef GInstanceInitFunc GtkObjectInitFunc;
typedef GSignalCMarshaller GtkSignalMarshaller;

typedef void (*GtkDestroyNotify) (gpointer data);
typedef void (*GtkSignalFunc) (void);
# 138 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypeutils.h"
struct _GtkArg
{
 GType type;
 gchar *name;







 union {

   gchar char_data;
   guchar uchar_data;
   gboolean bool_data;
   gint int_data;
   guint uint_data;
   glong long_data;
   gulong ulong_data;
   gfloat float_data;
   gdouble double_data;
   gchar *string_data;
   GtkObject *object_data;
   gpointer pointer_data;


   struct {
     GCallback f;
     gpointer d;
   } signal_data;
 } d;
};
# 222 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypeutils.h"
typedef struct _GtkTypeInfo GtkTypeInfo;

struct _GtkTypeInfo
{
 gchar *type_name;
 guint object_size;
 guint class_size;
 GtkClassInitFunc class_init_func;
 GtkObjectInitFunc object_init_func;
 gpointer reserved_1;
 gpointer reserved_2;
 GtkClassInitFunc base_class_init_func;
};

void gtk_type_init (GTypeDebugFlags debug_flags);
GtkType gtk_type_unique (GtkType parent_type,
                                const GtkTypeInfo *gtkinfo);
gpointer gtk_type_class (GtkType type);
gpointer gtk_type_new (GtkType type);
# 251 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktypeutils.h"
typedef GEnumValue GtkEnumValue;
typedef GFlagsValue GtkFlagValue;
GtkEnumValue* gtk_type_enum_get_values (GtkType enum_type);
GtkFlagValue* gtk_type_flags_get_values (GtkType flags_type);
GtkEnumValue* gtk_type_enum_find_value (GtkType enum_type,
      const gchar *value_name);
GtkFlagValue* gtk_type_flags_find_value (GtkType flags_type,
      const gchar *value_name);



}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkobject.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdebug.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdebug.h"
extern "C" {

typedef enum {
 GTK_DEBUG_MISC = 1 << 0,
 GTK_DEBUG_PLUGSOCKET = 1 << 1,
 GTK_DEBUG_TEXT = 1 << 2,
 GTK_DEBUG_TREE = 1 << 3,
 GTK_DEBUG_UPDATES = 1 << 4,
 GTK_DEBUG_KEYBINDINGS = 1 << 5,
 GTK_DEBUG_MULTIHEAD = 1 << 6,
 GTK_DEBUG_MODULES = 1 << 7,
 GTK_DEBUG_GEOMETRY = 1 << 8,
 GTK_DEBUG_ICONTHEME = 1 << 9,
 GTK_DEBUG_PRINTING = 1 << 10,
 GTK_DEBUG_BUILDER = 1 << 11
} GtkDebugFlag;
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdebug.h"
extern guint gtk_debug_flags;

}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkobject.h" 2


extern "C" {
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkobject.h"
typedef enum
{
 GTK_IN_DESTRUCTION = 1 << 0,
 GTK_FLOATING = 1 << 1,
 GTK_RESERVED_1 = 1 << 2,
 GTK_RESERVED_2 = 1 << 3
} GtkObjectFlags;
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkobject.h"
typedef struct _GtkObjectClass GtkObjectClass;


struct _GtkObject
{
 GInitiallyUnowned parent_instance;






 guint32 flags;
};

struct _GtkObjectClass
{
 GInitiallyUnownedClass parent_class;


 void (*set_arg) (GtkObject *object,
    GtkArg *arg,
    guint arg_id);
 void (*get_arg) (GtkObject *object,
    GtkArg *arg,
    guint arg_id);
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkobject.h"
 void (*destroy) (GtkObject *object);
};





GType gtk_object_get_type (void) __attribute__((__const__));


void gtk_object_sink (GtkObject *object);

void gtk_object_destroy (GtkObject *object);





GtkObject* gtk_object_new (GType type,
       const gchar *first_property_name,
       ...);
GtkObject* gtk_object_ref (GtkObject *object);
void gtk_object_unref (GtkObject *object);
void gtk_object_weakref (GtkObject *object,
     GDestroyNotify notify,
     gpointer data);
void gtk_object_weakunref (GtkObject *object,
     GDestroyNotify notify,
     gpointer data);
# 181 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkobject.h"
void gtk_object_set_data (GtkObject *object,
         const gchar *key,
         gpointer data);
void gtk_object_set_data_full (GtkObject *object,
         const gchar *key,
         gpointer data,
         GDestroyNotify destroy);
void gtk_object_remove_data (GtkObject *object,
         const gchar *key);
gpointer gtk_object_get_data (GtkObject *object,
         const gchar *key);
void gtk_object_remove_no_notify (GtkObject *object,
         const gchar *key);






void gtk_object_set_user_data (GtkObject *object,
      gpointer data);
gpointer gtk_object_get_user_data (GtkObject *object);





void gtk_object_set_data_by_id (GtkObject *object,
     GQuark data_id,
     gpointer data);
void gtk_object_set_data_by_id_full (GtkObject *object,
     GQuark data_id,
     gpointer data,
     GDestroyNotify destroy);
gpointer gtk_object_get_data_by_id (GtkObject *object,
     GQuark data_id);
void gtk_object_remove_data_by_id (GtkObject *object,
     GQuark data_id);
void gtk_object_remove_no_notify_by_id (GtkObject *object,
     GQuark key_id);





typedef enum
{
 GTK_ARG_READABLE = G_PARAM_READABLE,
 GTK_ARG_WRITABLE = G_PARAM_WRITABLE,
 GTK_ARG_CONSTRUCT = G_PARAM_CONSTRUCT,
 GTK_ARG_CONSTRUCT_ONLY = G_PARAM_CONSTRUCT_ONLY,
 GTK_ARG_CHILD_ARG = 1 << 4
} GtkArgFlags;

void gtk_object_get (GtkObject *object,
    const gchar *first_property_name,
    ...) __attribute__((__sentinel__));
void gtk_object_set (GtkObject *object,
    const gchar *first_property_name,
    ...) __attribute__((__sentinel__));
void gtk_object_add_arg_type (const gchar *arg_name,
     GType arg_type,
     guint arg_flags,
     guint arg_id);



}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkadjustment.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkadjustment.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkadjustment.h"
typedef struct _GtkAdjustment GtkAdjustment;
typedef struct _GtkAdjustmentClass GtkAdjustmentClass;

struct _GtkAdjustment
{
 GtkObject parent_instance;

 gdouble lower;
 gdouble upper;
 gdouble value;
 gdouble step_increment;
 gdouble page_increment;
 gdouble page_size;
};

struct _GtkAdjustmentClass
{
 GtkObjectClass parent_class;

 void (* changed) (GtkAdjustment *adjustment);
 void (* value_changed) (GtkAdjustment *adjustment);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_adjustment_get_type (void) __attribute__((__const__));
GtkObject* gtk_adjustment_new (gdouble value,
      gdouble lower,
      gdouble upper,
      gdouble step_increment,
      gdouble page_increment,
      gdouble page_size);

void gtk_adjustment_changed (GtkAdjustment *adjustment);
void gtk_adjustment_value_changed (GtkAdjustment *adjustment);
void gtk_adjustment_clamp_page (GtkAdjustment *adjustment,
      gdouble lower,
      gdouble upper);

gdouble gtk_adjustment_get_value (GtkAdjustment *adjustment);
void gtk_adjustment_set_value (GtkAdjustment *adjustment,
      gdouble value);
gdouble gtk_adjustment_get_lower (GtkAdjustment *adjustment);
void gtk_adjustment_set_lower (GtkAdjustment *adjustment,
                                                gdouble lower);
gdouble gtk_adjustment_get_upper (GtkAdjustment *adjustment);
void gtk_adjustment_set_upper (GtkAdjustment *adjustment,
                                                gdouble upper);
gdouble gtk_adjustment_get_step_increment (GtkAdjustment *adjustment);
void gtk_adjustment_set_step_increment (GtkAdjustment *adjustment,
                                                gdouble step_increment);
gdouble gtk_adjustment_get_page_increment (GtkAdjustment *adjustment);
void gtk_adjustment_set_page_increment (GtkAdjustment *adjustment,
                                                gdouble page_increment);
gdouble gtk_adjustment_get_page_size (GtkAdjustment *adjustment);
void gtk_adjustment_set_page_size (GtkAdjustment *adjustment,
                                                gdouble page_size);

void gtk_adjustment_configure (GtkAdjustment *adjustment,
                                                gdouble value,
      gdouble lower,
      gdouble upper,
      gdouble step_increment,
      gdouble page_increment,
      gdouble page_size);

}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstyle.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstyle.h"
extern "C" {
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstyle.h"
typedef struct _GtkBorder GtkBorder;
typedef struct _GtkStyle GtkStyle;
typedef struct _GtkStyleClass GtkStyleClass;
typedef struct _GtkThemeEngine GtkThemeEngine;
typedef struct _GtkRcStyle GtkRcStyle;
typedef struct _GtkIconSet GtkIconSet;
typedef struct _GtkIconSource GtkIconSource;
typedef struct _GtkRcProperty GtkRcProperty;
typedef struct _GtkSettings GtkSettings;
typedef gboolean (*GtkRcPropertyParser) (const GParamSpec *pspec,
     const GString *rc_string,
     GValue *property_value);




typedef struct _GtkWidget GtkWidget;



struct _GtkStyle
{
 GObject parent_instance;



 GdkColor fg[5];
 GdkColor bg[5];
 GdkColor light[5];
 GdkColor dark[5];
 GdkColor mid[5];
 GdkColor text[5];
 GdkColor base[5];
 GdkColor text_aa[5];

 GdkColor black;
 GdkColor white;
 PangoFontDescription *font_desc;

 gint xthickness;
 gint ythickness;

 GdkGC *fg_gc[5];
 GdkGC *bg_gc[5];
 GdkGC *light_gc[5];
 GdkGC *dark_gc[5];
 GdkGC *mid_gc[5];
 GdkGC *text_gc[5];
 GdkGC *base_gc[5];
 GdkGC *text_aa_gc[5];
 GdkGC *black_gc;
 GdkGC *white_gc;

 GdkPixmap *bg_pixmap[5];



 gint attach_count;

 gint depth;
 GdkColormap *colormap;
 GdkFont *private_font;
 PangoFontDescription *private_font_desc;


 GtkRcStyle *rc_style;

 GSList *styles;
 GArray *property_cache;
 GSList *icon_factories;
};

struct _GtkStyleClass
{
 GObjectClass parent_class;





 void (*realize) (GtkStyle *style);




 void (*unrealize) (GtkStyle *style);



 void (*copy) (GtkStyle *style,
    GtkStyle *src);






 GtkStyle *(*clone) (GtkStyle *style);




 void (*init_from_rc) (GtkStyle *style,
    GtkRcStyle *rc_style);

 void (*set_background) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type);


 GdkPixbuf * (* render_icon) (GtkStyle *style,
                                const GtkIconSource *source,
                                GtkTextDirection direction,
                                GtkStateType state,
                                GtkIconSize size,
                                GtkWidget *widget,
                                const gchar *detail);




 void (*draw_hline) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x1,
    gint x2,
    gint y);
 void (*draw_vline) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint y1_,
    gint y2_,
    gint x);
 void (*draw_shadow) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_polygon) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    GdkPoint *point,
    gint npoints,
    gboolean fill);
 void (*draw_arrow) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    GtkArrowType arrow_type,
    gboolean fill,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_diamond) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_string) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    const gchar *string);
 void (*draw_box) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_flat_box) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_check) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_option) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_tab) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_shadow_gap) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkPositionType gap_side,
    gint gap_x,
    gint gap_width);
 void (*draw_box_gap) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkPositionType gap_side,
    gint gap_x,
    gint gap_width);
 void (*draw_extension) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkPositionType gap_side);
 void (*draw_focus) (GtkStyle *style,
    GdkWindow *window,
                                GtkStateType state_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_slider) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkOrientation orientation);
 void (*draw_handle) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkOrientation orientation);

 void (*draw_expander) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
                                GtkExpanderStyle expander_style);
 void (*draw_layout) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    gboolean use_text,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    gint x,
    gint y,
                                PangoLayout *layout);
 void (*draw_resize_grip) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
                                GdkWindowEdge edge,
    gint x,
    gint y,
    gint width,
    gint height);
 void (*draw_spinner) (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GdkRectangle *area,
    GtkWidget *widget,
    const gchar *detail,
    guint step,
    gint x,
    gint y,
    gint width,
    gint height);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
 void (*_gtk_reserved6) (void);
 void (*_gtk_reserved7) (void);
 void (*_gtk_reserved8) (void);
 void (*_gtk_reserved9) (void);
 void (*_gtk_reserved10) (void);
 void (*_gtk_reserved11) (void);
};

struct _GtkBorder
{
 gint left;
 gint right;
 gint top;
 gint bottom;
};

GType gtk_style_get_type (void) __attribute__((__const__));
GtkStyle* gtk_style_new (void);
GtkStyle* gtk_style_copy (GtkStyle *style);
GtkStyle* gtk_style_attach (GtkStyle *style,
          GdkWindow *window) __attribute__((warn_unused_result));
void gtk_style_detach (GtkStyle *style);


GtkStyle* gtk_style_ref (GtkStyle *style);
void gtk_style_unref (GtkStyle *style);

GdkFont * gtk_style_get_font (GtkStyle *style);
void gtk_style_set_font (GtkStyle *style,
          GdkFont *font);


void gtk_style_set_background (GtkStyle *style,
          GdkWindow *window,
          GtkStateType state_type);
void gtk_style_apply_default_background (GtkStyle *style,
          GdkWindow *window,
          gboolean set_bg,
          GtkStateType state_type,
          const GdkRectangle *area,
          gint x,
          gint y,
          gint width,
          gint height);

GtkIconSet* gtk_style_lookup_icon_set (GtkStyle *style,
                                             const gchar *stock_id);
gboolean gtk_style_lookup_color (GtkStyle *style,
                                             const gchar *color_name,
                                             GdkColor *color);

GdkPixbuf* gtk_style_render_icon (GtkStyle *style,
                                      const GtkIconSource *source,
                                      GtkTextDirection direction,
                                      GtkStateType state,
                                      GtkIconSize size,
                                      GtkWidget *widget,
                                      const gchar *detail);


void gtk_draw_hline (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    gint x1,
    gint x2,
    gint y);
void gtk_draw_vline (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    gint y1_,
    gint y2_,
    gint x);
void gtk_draw_shadow (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height);
void gtk_draw_polygon (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GdkPoint *points,
    gint npoints,
    gboolean fill);
void gtk_draw_arrow (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    GtkArrowType arrow_type,
    gboolean fill,
    gint x,
    gint y,
    gint width,
    gint height);
void gtk_draw_diamond (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height);
void gtk_draw_box (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height);
void gtk_draw_flat_box (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height);
void gtk_draw_check (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height);
void gtk_draw_option (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height);
void gtk_draw_tab (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height);
void gtk_draw_shadow_gap (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkPositionType gap_side,
    gint gap_x,
    gint gap_width);
void gtk_draw_box_gap (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkPositionType gap_side,
    gint gap_x,
    gint gap_width);
void gtk_draw_extension (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkPositionType gap_side);
void gtk_draw_focus (GtkStyle *style,
    GdkWindow *window,
    gint x,
    gint y,
    gint width,
    gint height);
void gtk_draw_slider (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkOrientation orientation);
void gtk_draw_handle (GtkStyle *style,
    GdkWindow *window,
    GtkStateType state_type,
    GtkShadowType shadow_type,
    gint x,
    gint y,
    gint width,
    gint height,
    GtkOrientation orientation);
void gtk_draw_expander (GtkStyle *style,
                         GdkWindow *window,
                         GtkStateType state_type,
                         gint x,
                         gint y,
    GtkExpanderStyle expander_style);
void gtk_draw_layout (GtkStyle *style,
                         GdkWindow *window,
                         GtkStateType state_type,
    gboolean use_text,
                         gint x,
                         gint y,
                         PangoLayout *layout);
void gtk_draw_resize_grip (GtkStyle *style,
                          GdkWindow *window,
                          GtkStateType state_type,
                          GdkWindowEdge edge,
                          gint x,
                          gint y,
                          gint width,
                          gint height);


void gtk_paint_hline (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x1,
      gint x2,
      gint y);
void gtk_paint_vline (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint y1_,
      gint y2_,
      gint x);
void gtk_paint_shadow (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height);
void gtk_paint_polygon (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      const GdkPoint *points,
      gint n_points,
      gboolean fill);
void gtk_paint_arrow (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      GtkArrowType arrow_type,
      gboolean fill,
      gint x,
      gint y,
      gint width,
      gint height);
void gtk_paint_diamond (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height);
void gtk_paint_box (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height);
void gtk_paint_flat_box (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height);
void gtk_paint_check (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height);
void gtk_paint_option (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height);
void gtk_paint_tab (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height);
void gtk_paint_shadow_gap (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height,
      GtkPositionType gap_side,
      gint gap_x,
      gint gap_width);
void gtk_paint_box_gap (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height,
      GtkPositionType gap_side,
      gint gap_x,
      gint gap_width);
void gtk_paint_extension (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height,
      GtkPositionType gap_side);
void gtk_paint_focus (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height);
void gtk_paint_slider (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height,
      GtkOrientation orientation);
void gtk_paint_handle (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
      GtkShadowType shadow_type,
      const GdkRectangle *area,
      GtkWidget *widget,
      const gchar *detail,
      gint x,
      gint y,
      gint width,
      gint height,
      GtkOrientation orientation);
void gtk_paint_expander (GtkStyle *style,
                           GdkWindow *window,
                           GtkStateType state_type,
                           const GdkRectangle *area,
                           GtkWidget *widget,
                           const gchar *detail,
                           gint x,
                           gint y,
      GtkExpanderStyle expander_style);
void gtk_paint_layout (GtkStyle *style,
                           GdkWindow *window,
                           GtkStateType state_type,
      gboolean use_text,
                           const GdkRectangle *area,
                           GtkWidget *widget,
                           const gchar *detail,
                           gint x,
                           gint y,
                           PangoLayout *layout);
void gtk_paint_resize_grip (GtkStyle *style,
                           GdkWindow *window,
                           GtkStateType state_type,
                           const GdkRectangle *area,
                           GtkWidget *widget,
                           const gchar *detail,
                           GdkWindowEdge edge,
                           gint x,
                           gint y,
                           gint width,
                           gint height);
void gtk_paint_spinner (GtkStyle *style,
      GdkWindow *window,
      GtkStateType state_type,
                           const GdkRectangle *area,
                           GtkWidget *widget,
                           const gchar *detail,
      guint step,
      gint x,
      gint y,
      gint width,
      gint height);

GType gtk_border_get_type (void) __attribute__((__const__));
GtkBorder *gtk_border_new (void) __attribute__((__malloc__));
GtkBorder *gtk_border_copy (const GtkBorder *border_);
void gtk_border_free (GtkBorder *border_);

void gtk_style_get_style_property (GtkStyle *style,
                                  GType widget_type,
                                  const gchar *property_name,
                                  GValue *value);
void gtk_style_get_valist (GtkStyle *style,
                                  GType widget_type,
                                  const gchar *first_property_name,
                                  va_list var_args);
void gtk_style_get (GtkStyle *style,
                                  GType widget_type,
                                  const gchar *first_property_name,
                                  ...) __attribute__((__sentinel__));


const GValue* _gtk_style_peek_property_value (GtkStyle *style,
          GType widget_type,
          GParamSpec *pspec,
          GtkRcPropertyParser parser);

void _gtk_style_init_for_settings (GtkStyle *style,
                                             GtkSettings *settings);

void _gtk_style_shade (const GdkColor *a,
                                             GdkColor *b,
                                             gdouble k);




void gtk_draw_string (GtkStyle *style,
     GdkWindow *window,
                          GtkStateType state_type,
                          gint x,
                          gint y,
                          const gchar *string);
void gtk_paint_string (GtkStyle *style,
     GdkWindow *window,
     GtkStateType state_type,
     const GdkRectangle *area,
     GtkWidget *widget,
     const gchar *detail,
     gint x,
     gint y,
     const gchar *string);


void gtk_draw_insertion_cursor (GtkWidget *widget,
                                    GdkDrawable *drawable,
                                    const GdkRectangle *area,
                                    const GdkRectangle *location,
                                    gboolean is_primary,
                                    GtkTextDirection direction,
                                    gboolean draw_arrow);
GdkGC *_gtk_widget_get_cursor_gc (GtkWidget *widget);
void _gtk_widget_get_cursor_color (GtkWidget *widget,
        GdkColor *color);

}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksettings.h" 1
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksettings.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrc.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrc.h"
extern "C" {


typedef struct _GtkIconFactory GtkIconFactory;
typedef struct _GtkRcContext GtkRcContext;

typedef struct _GtkRcStyleClass GtkRcStyleClass;
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrc.h"
typedef enum
{
 GTK_RC_FG = 1 << 0,
 GTK_RC_BG = 1 << 1,
 GTK_RC_TEXT = 1 << 2,
 GTK_RC_BASE = 1 << 3
} GtkRcFlags;

struct _GtkRcStyle
{
 GObject parent_instance;



 gchar *name;
 gchar *bg_pixmap_name[5];
 PangoFontDescription *font_desc;

 GtkRcFlags color_flags[5];
 GdkColor fg[5];
 GdkColor bg[5];
 GdkColor text[5];
 GdkColor base[5];

 gint xthickness;
 gint ythickness;


 GArray *rc_properties;


 GSList *rc_style_lists;

 GSList *icon_factories;

 guint engine_specified : 1;
};

struct _GtkRcStyleClass
{
 GObjectClass parent_class;






 GtkRcStyle * (*create_rc_style) (GtkRcStyle *rc_style);





 guint (*parse) (GtkRcStyle *rc_style,
        GtkSettings *settings,
        GScanner *scanner);




 void (*merge) (GtkRcStyle *dest,
        GtkRcStyle *src);



 GtkStyle * (*create_style) (GtkRcStyle *rc_style);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};
# 133 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrc.h"
void _gtk_rc_init (void);
GSList* _gtk_rc_parse_widget_class_path (const gchar *pattern);
void _gtk_rc_free_widget_class_path (GSList *list);
gboolean _gtk_rc_match_widget_class (GSList *list,
                                         gint length,
                                         gchar *path,
                                         gchar *path_reversed);

void gtk_rc_add_default_file (const gchar *filename);
void gtk_rc_set_default_files (gchar **filenames);
gchar** gtk_rc_get_default_files (void);
GtkStyle* gtk_rc_get_style (GtkWidget *widget);
GtkStyle* gtk_rc_get_style_by_paths (GtkSettings *settings,
     const char *widget_path,
     const char *class_path,
     GType type);

gboolean gtk_rc_reparse_all_for_settings (GtkSettings *settings,
      gboolean force_load);
void gtk_rc_reset_styles (GtkSettings *settings);

gchar* gtk_rc_find_pixmap_in_path (GtkSettings *settings,
        GScanner *scanner,
        const gchar *pixmap_file);

void gtk_rc_parse (const gchar *filename);
void gtk_rc_parse_string (const gchar *rc_string);
gboolean gtk_rc_reparse_all (void);


void gtk_rc_add_widget_name_style (GtkRcStyle *rc_style,
     const gchar *pattern);
void gtk_rc_add_widget_class_style (GtkRcStyle *rc_style,
     const gchar *pattern);
void gtk_rc_add_class_style (GtkRcStyle *rc_style,
     const gchar *pattern);



GType gtk_rc_style_get_type (void) __attribute__((__const__));
GtkRcStyle* gtk_rc_style_new (void);
GtkRcStyle* gtk_rc_style_copy (GtkRcStyle *orig);


void gtk_rc_style_ref (GtkRcStyle *rc_style);
void gtk_rc_style_unref (GtkRcStyle *rc_style);


gchar* gtk_rc_find_module_in_path (const gchar *module_file);
gchar* gtk_rc_get_theme_dir (void);
gchar* gtk_rc_get_module_dir (void);
gchar* gtk_rc_get_im_module_path (void);
gchar* gtk_rc_get_im_module_file (void);


typedef enum {
 GTK_RC_TOKEN_INVALID = G_TOKEN_LAST,
 GTK_RC_TOKEN_INCLUDE,
 GTK_RC_TOKEN_NORMAL,
 GTK_RC_TOKEN_ACTIVE,
 GTK_RC_TOKEN_PRELIGHT,
 GTK_RC_TOKEN_SELECTED,
 GTK_RC_TOKEN_INSENSITIVE,
 GTK_RC_TOKEN_FG,
 GTK_RC_TOKEN_BG,
 GTK_RC_TOKEN_TEXT,
 GTK_RC_TOKEN_BASE,
 GTK_RC_TOKEN_XTHICKNESS,
 GTK_RC_TOKEN_YTHICKNESS,
 GTK_RC_TOKEN_FONT,
 GTK_RC_TOKEN_FONTSET,
 GTK_RC_TOKEN_FONT_NAME,
 GTK_RC_TOKEN_BG_PIXMAP,
 GTK_RC_TOKEN_PIXMAP_PATH,
 GTK_RC_TOKEN_STYLE,
 GTK_RC_TOKEN_BINDING,
 GTK_RC_TOKEN_BIND,
 GTK_RC_TOKEN_WIDGET,
 GTK_RC_TOKEN_WIDGET_CLASS,
 GTK_RC_TOKEN_CLASS,
 GTK_RC_TOKEN_LOWEST,
 GTK_RC_TOKEN_GTK,
 GTK_RC_TOKEN_APPLICATION,
 GTK_RC_TOKEN_THEME,
 GTK_RC_TOKEN_RC,
 GTK_RC_TOKEN_HIGHEST,
 GTK_RC_TOKEN_ENGINE,
 GTK_RC_TOKEN_MODULE_PATH,
 GTK_RC_TOKEN_IM_MODULE_PATH,
 GTK_RC_TOKEN_IM_MODULE_FILE,
 GTK_RC_TOKEN_STOCK,
 GTK_RC_TOKEN_LTR,
 GTK_RC_TOKEN_RTL,
 GTK_RC_TOKEN_COLOR,
 GTK_RC_TOKEN_UNBIND,
 GTK_RC_TOKEN_LAST
} GtkRcTokenType;

GScanner* gtk_rc_scanner_new (void);
guint gtk_rc_parse_color (GScanner *scanner,
    GdkColor *color);
guint gtk_rc_parse_color_full (GScanner *scanner,
                                  GtkRcStyle *style,
      GdkColor *color);
guint gtk_rc_parse_state (GScanner *scanner,
    GtkStateType *state);
guint gtk_rc_parse_priority (GScanner *scanner,
    GtkPathPriorityType *priority);




struct _GtkRcProperty
{

 GQuark type_name;
 GQuark property_name;


 gchar *origin;
 GValue value;
};
const GtkRcProperty* _gtk_rc_style_lookup_rc_property (GtkRcStyle *rc_style,
            GQuark type_name,
            GQuark property_name);
void _gtk_rc_style_set_rc_property (GtkRcStyle *rc_style,
            GtkRcProperty *property);
void _gtk_rc_style_unset_rc_property (GtkRcStyle *rc_style,
            GQuark type_name,
            GQuark property_name);

GSList * _gtk_rc_style_get_color_hashes (GtkRcStyle *rc_style);

const gchar* _gtk_rc_context_get_default_font_name (GtkSettings *settings);
void _gtk_rc_context_destroy (GtkSettings *settings);

}
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksettings.h" 2

extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksettings.h"
typedef struct _GtkSettingsClass GtkSettingsClass;
typedef struct _GtkSettingsValue GtkSettingsValue;
typedef struct _GtkSettingsPropertyValue GtkSettingsPropertyValue;



struct _GtkSettings
{
 GObject parent_instance;

 GData *queued_settings;
 GtkSettingsPropertyValue *property_values;

 GtkRcContext *rc_context;
 GdkScreen *screen;
};

struct _GtkSettingsClass
{
 GObjectClass parent_class;
};

struct _GtkSettingsValue
{



 gchar *origin;




 GValue value;
};



GType gtk_settings_get_type (void) __attribute__((__const__));

GtkSettings* gtk_settings_get_default (void);

GtkSettings* gtk_settings_get_for_screen (GdkScreen *screen);

void gtk_settings_install_property (GParamSpec *pspec);
void gtk_settings_install_property_parser (GParamSpec *pspec,
           GtkRcPropertyParser parser);


gboolean gtk_rc_property_parse_color (const GParamSpec *pspec,
        const GString *gstring,
        GValue *property_value);
gboolean gtk_rc_property_parse_enum (const GParamSpec *pspec,
        const GString *gstring,
        GValue *property_value);
gboolean gtk_rc_property_parse_flags (const GParamSpec *pspec,
        const GString *gstring,
        GValue *property_value);
gboolean gtk_rc_property_parse_requisition (const GParamSpec *pspec,
        const GString *gstring,
        GValue *property_value);
gboolean gtk_rc_property_parse_border (const GParamSpec *pspec,
        const GString *gstring,
        GValue *property_value);


void gtk_settings_set_property_value (GtkSettings *settings,
       const gchar *name,
       const GtkSettingsValue *svalue);
void gtk_settings_set_string_property (GtkSettings *settings,
       const gchar *name,
       const gchar *v_string,
       const gchar *origin);
void gtk_settings_set_long_property (GtkSettings *settings,
       const gchar *name,
       glong v_long,
       const gchar *origin);
void gtk_settings_set_double_property (GtkSettings *settings,
       const gchar *name,
       gdouble v_double,
       const gchar *origin);



void _gtk_settings_set_property_value_from_rc (GtkSettings *settings,
           const gchar *name,
           const GtkSettingsValue *svalue);
void _gtk_settings_reset_rc_values (GtkSettings *settings);

void _gtk_settings_handle_event (GdkEventSetting *event);
GtkRcPropertyParser _gtk_rc_property_parser_from_type (GType type);
gboolean _gtk_settings_parse_convert (GtkRcPropertyParser parser,
            const GValue *src_value,
            GParamSpec *pspec,
            GValue *dest_value);


}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 1
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 377 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h"
extern
guint atk_get_major_version (void) __attribute__((__const__));
extern
guint atk_get_minor_version (void) __attribute__((__const__));
extern
guint atk_get_micro_version (void) __attribute__((__const__));
extern
guint atk_get_binary_age (void) __attribute__((__const__));
extern
guint atk_get_interface_age (void) __attribute__((__const__));
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstate.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstate.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstate.h" 2

extern "C" {
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstate.h"
typedef enum
{
 ATK_STATE_INVALID,
 ATK_STATE_ACTIVE,
 ATK_STATE_ARMED,
 ATK_STATE_BUSY,
 ATK_STATE_CHECKED,
 ATK_STATE_DEFUNCT,
 ATK_STATE_EDITABLE,
 ATK_STATE_ENABLED,
 ATK_STATE_EXPANDABLE,
 ATK_STATE_EXPANDED,
 ATK_STATE_FOCUSABLE,
 ATK_STATE_FOCUSED,
 ATK_STATE_HORIZONTAL,
 ATK_STATE_ICONIFIED,
 ATK_STATE_MODAL,
 ATK_STATE_MULTI_LINE,
 ATK_STATE_MULTISELECTABLE,
 ATK_STATE_OPAQUE,
 ATK_STATE_PRESSED,
 ATK_STATE_RESIZABLE,
 ATK_STATE_SELECTABLE,
 ATK_STATE_SELECTED,
 ATK_STATE_SENSITIVE,
 ATK_STATE_SHOWING,
 ATK_STATE_SINGLE_LINE,
 ATK_STATE_STALE,
 ATK_STATE_TRANSIENT,
 ATK_STATE_VERTICAL,
 ATK_STATE_VISIBLE,
 ATK_STATE_MANAGES_DESCENDANTS,
 ATK_STATE_INDETERMINATE,
 ATK_STATE_TRUNCATED,
 ATK_STATE_REQUIRED,
 ATK_STATE_INVALID_ENTRY,
 ATK_STATE_SUPPORTS_AUTOCOMPLETION,
 ATK_STATE_SELECTABLE_TEXT,
 ATK_STATE_DEFAULT,
 ATK_STATE_ANIMATED,
 ATK_STATE_VISITED,
 ATK_STATE_CHECKABLE,
 ATK_STATE_HAS_POPUP,
 ATK_STATE_HAS_TOOLTIP,
 ATK_STATE_READ_ONLY,
 ATK_STATE_LAST_DEFINED
} AtkStateType;

typedef guint64 AtkState;

extern
AtkStateType atk_state_type_register (const gchar *name);

extern
const gchar* atk_state_type_get_name (AtkStateType type);
extern
AtkStateType atk_state_type_for_name (const gchar *name);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationtype.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationtype.h"
extern "C" {
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationtype.h"
typedef enum
{
 ATK_RELATION_NULL = 0,
 ATK_RELATION_CONTROLLED_BY,
 ATK_RELATION_CONTROLLER_FOR,
 ATK_RELATION_LABEL_FOR,
 ATK_RELATION_LABELLED_BY,
 ATK_RELATION_MEMBER_OF,
 ATK_RELATION_NODE_CHILD_OF,
 ATK_RELATION_FLOWS_TO,
 ATK_RELATION_FLOWS_FROM,
 ATK_RELATION_SUBWINDOW_OF,
 ATK_RELATION_EMBEDS,
 ATK_RELATION_EMBEDDED_BY,
 ATK_RELATION_POPUP_FOR,
 ATK_RELATION_PARENT_WINDOW_OF,
 ATK_RELATION_DESCRIBED_BY,
 ATK_RELATION_DESCRIPTION_FOR,
 ATK_RELATION_NODE_PARENT_OF,
 ATK_RELATION_LAST_DEFINED
} AtkRelationType;

}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 2

extern "C" {
# 232 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
typedef enum
{
 ATK_ROLE_INVALID = 0,
 ATK_ROLE_ACCEL_LABEL,
 ATK_ROLE_ALERT,
 ATK_ROLE_ANIMATION,
 ATK_ROLE_ARROW,
 ATK_ROLE_CALENDAR,
 ATK_ROLE_CANVAS,
 ATK_ROLE_CHECK_BOX,
 ATK_ROLE_CHECK_MENU_ITEM,
 ATK_ROLE_COLOR_CHOOSER,
 ATK_ROLE_COLUMN_HEADER,
 ATK_ROLE_COMBO_BOX,
 ATK_ROLE_DATE_EDITOR,
 ATK_ROLE_DESKTOP_ICON,
 ATK_ROLE_DESKTOP_FRAME,
 ATK_ROLE_DIAL,
 ATK_ROLE_DIALOG,
 ATK_ROLE_DIRECTORY_PANE,
 ATK_ROLE_DRAWING_AREA,
 ATK_ROLE_FILE_CHOOSER,
 ATK_ROLE_FILLER,
 ATK_ROLE_FONT_CHOOSER,
 ATK_ROLE_FRAME,
 ATK_ROLE_GLASS_PANE,
 ATK_ROLE_HTML_CONTAINER,
 ATK_ROLE_ICON,
 ATK_ROLE_IMAGE,
 ATK_ROLE_INTERNAL_FRAME,
 ATK_ROLE_LABEL,
 ATK_ROLE_LAYERED_PANE,
 ATK_ROLE_LIST,
 ATK_ROLE_LIST_ITEM,
 ATK_ROLE_MENU,
 ATK_ROLE_MENU_BAR,
 ATK_ROLE_MENU_ITEM,
 ATK_ROLE_OPTION_PANE,
 ATK_ROLE_PAGE_TAB,
 ATK_ROLE_PAGE_TAB_LIST,
 ATK_ROLE_PANEL,
 ATK_ROLE_PASSWORD_TEXT,
 ATK_ROLE_POPUP_MENU,
 ATK_ROLE_PROGRESS_BAR,
 ATK_ROLE_PUSH_BUTTON,
 ATK_ROLE_RADIO_BUTTON,
 ATK_ROLE_RADIO_MENU_ITEM,
 ATK_ROLE_ROOT_PANE,
 ATK_ROLE_ROW_HEADER,
 ATK_ROLE_SCROLL_BAR,
 ATK_ROLE_SCROLL_PANE,
 ATK_ROLE_SEPARATOR,
 ATK_ROLE_SLIDER,
 ATK_ROLE_SPLIT_PANE,
 ATK_ROLE_SPIN_BUTTON,
 ATK_ROLE_STATUSBAR,
 ATK_ROLE_TABLE,
 ATK_ROLE_TABLE_CELL,
 ATK_ROLE_TABLE_COLUMN_HEADER,
 ATK_ROLE_TABLE_ROW_HEADER,
 ATK_ROLE_TEAR_OFF_MENU_ITEM,
 ATK_ROLE_TERMINAL,
 ATK_ROLE_TEXT,
 ATK_ROLE_TOGGLE_BUTTON,
 ATK_ROLE_TOOL_BAR,
 ATK_ROLE_TOOL_TIP,
 ATK_ROLE_TREE,
 ATK_ROLE_TREE_TABLE,
 ATK_ROLE_UNKNOWN,
 ATK_ROLE_VIEWPORT,
 ATK_ROLE_WINDOW,
 ATK_ROLE_HEADER,
 ATK_ROLE_FOOTER,
 ATK_ROLE_PARAGRAPH,
 ATK_ROLE_RULER,
 ATK_ROLE_APPLICATION,
 ATK_ROLE_AUTOCOMPLETE,
 ATK_ROLE_EDITBAR,
 ATK_ROLE_EMBEDDED,
 ATK_ROLE_ENTRY,
 ATK_ROLE_CHART,
 ATK_ROLE_CAPTION,
 ATK_ROLE_DOCUMENT_FRAME,
 ATK_ROLE_HEADING,
 ATK_ROLE_PAGE,
 ATK_ROLE_SECTION,
 ATK_ROLE_REDUNDANT_OBJECT,
 ATK_ROLE_FORM,
 ATK_ROLE_LINK,
 ATK_ROLE_INPUT_METHOD_WINDOW,
 ATK_ROLE_TABLE_ROW,
 ATK_ROLE_TREE_ITEM,
 ATK_ROLE_DOCUMENT_SPREADSHEET,
 ATK_ROLE_DOCUMENT_PRESENTATION,
 ATK_ROLE_DOCUMENT_TEXT,
 ATK_ROLE_DOCUMENT_WEB,
 ATK_ROLE_DOCUMENT_EMAIL,
 ATK_ROLE_COMMENT,
 ATK_ROLE_LIST_BOX,
 ATK_ROLE_GROUPING,
 ATK_ROLE_IMAGE_MAP,
 ATK_ROLE_NOTIFICATION,
 ATK_ROLE_INFO_BAR,
 ATK_ROLE_LEVEL_BAR,
 ATK_ROLE_TITLE_BAR,
 ATK_ROLE_BLOCK_QUOTE,
 ATK_ROLE_AUDIO,
 ATK_ROLE_VIDEO,
 ATK_ROLE_DEFINITION,
 ATK_ROLE_ARTICLE,
 ATK_ROLE_LANDMARK,
 ATK_ROLE_LOG,
 ATK_ROLE_MARQUEE,
 ATK_ROLE_MATH,
 ATK_ROLE_RATING,
 ATK_ROLE_TIMER,
 ATK_ROLE_DESCRIPTION_LIST,
 ATK_ROLE_DESCRIPTION_TERM,
 ATK_ROLE_DESCRIPTION_VALUE,
 ATK_ROLE_STATIC,
 ATK_ROLE_MATH_FRACTION,
 ATK_ROLE_MATH_ROOT,
 ATK_ROLE_SUBSCRIPT,
 ATK_ROLE_SUPERSCRIPT,
 ATK_ROLE_LAST_DEFINED
} AtkRole;
# 376 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
typedef enum
{
 ATK_LAYER_INVALID,
 ATK_LAYER_BACKGROUND,
 ATK_LAYER_CANVAS,
 ATK_LAYER_WIDGET,
 ATK_LAYER_MDI,
 ATK_LAYER_POPUP,
 ATK_LAYER_OVERLAY,
 ATK_LAYER_WINDOW
} AtkLayer;
# 397 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
typedef GSList AtkAttributeSet;
# 416 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
typedef struct _AtkAttribute AtkAttribute;

struct _AtkAttribute {
 gchar* name;
 gchar* value;
};
# 436 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
typedef struct _AtkImplementor AtkImplementor;
typedef struct _AtkImplementorIface AtkImplementorIface;


typedef struct _AtkObject AtkObject;
typedef struct _AtkObjectClass AtkObjectClass;
typedef struct _AtkRelationSet AtkRelationSet;
typedef struct _AtkStateSet AtkStateSet;
# 456 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
struct _AtkPropertyValues
{
 const gchar *property_name;
 GValue old_value;
 GValue new_value;
};

typedef struct _AtkPropertyValues AtkPropertyValues;
# 475 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
typedef gboolean (*AtkFunction) (gpointer user_data);
# 500 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
typedef void (*AtkPropertyChangeHandler) (AtkObject* obj, AtkPropertyValues* vals);


struct _AtkObject
{
 GObject parent;

 gchar *description;
 gchar *name;
 AtkObject *accessible_parent;
 AtkRole role;
 AtkRelationSet *relation_set;
 AtkLayer layer;
};
# 530 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
struct _AtkObjectClass
{
 GObjectClass parent;




 const gchar* (* get_name) (AtkObject *accessible);



 const gchar* (* get_description) (AtkObject *accessible);



 AtkObject* (*get_parent) (AtkObject *accessible);




 gint (* get_n_children) (AtkObject *accessible);





 AtkObject* (* ref_child) (AtkObject *accessible,
                                                   gint i);




 gint (* get_index_in_parent) (AtkObject *accessible);



 AtkRelationSet* (* ref_relation_set) (AtkObject *accessible);



 AtkRole (* get_role) (AtkObject *accessible);
 AtkLayer (* get_layer) (AtkObject *accessible);
 gint (* get_mdi_zorder) (AtkObject *accessible);



 AtkStateSet* (* ref_state_set) (AtkObject *accessible);



 void (* set_name) (AtkObject *accessible,
                                                  const gchar *name);



 void (* set_description) (AtkObject *accessible,
                                                  const gchar *description);



 void (* set_parent) (AtkObject *accessible,
                                                  AtkObject *parent);



 void (* set_role) (AtkObject *accessible,
                                                  AtkRole role);



guint (* connect_property_change_handler) (AtkObject
                *accessible,
                                                                 AtkPropertyChangeHandler *handler);




void (* remove_property_change_handler) (AtkObject
               *accessible,
                                                                 guint
               handler_id);
void (* initialize) (AtkObject *accessible,
                                                                 gpointer data);




 void (* children_changed) (AtkObject *accessible,
                                                  guint change_index,
                                                  gpointer changed_child);




 void (* focus_event) (AtkObject *accessible,
                                                  gboolean focus_in);




 void (* property_change) (AtkObject *accessible,
                                                  AtkPropertyValues *values);




 void (* state_change) (AtkObject *accessible,
                                                  const gchar *name,
                                                  gboolean state_set);




 void (*visible_data_changed) (AtkObject *accessible);







 void (*active_descendant_changed) (AtkObject *accessible,
                                                       gpointer *child);





 AtkAttributeSet* (*get_attributes) (AtkObject *accessible);

 const gchar* (*get_object_locale) (AtkObject *accessible);

 AtkFunction pad1;
};

extern
GType atk_object_get_type (void);
# 675 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h"
struct _AtkImplementorIface
{
 GTypeInterface parent;

 AtkObject* (*ref_accessible) (AtkImplementor *implementor);
};

extern
GType atk_implementor_get_type (void);
extern
AtkObject* atk_implementor_ref_accessible (AtkImplementor *implementor);





extern
const gchar* atk_object_get_name (AtkObject *accessible);
extern
const gchar* atk_object_get_description (AtkObject *accessible);
extern
AtkObject* atk_object_get_parent (AtkObject *accessible);
extern
AtkObject* atk_object_peek_parent (AtkObject *accessible);
extern
gint atk_object_get_n_accessible_children (AtkObject *accessible);
extern
AtkObject* atk_object_ref_accessible_child (AtkObject *accessible,
                                                                  gint i);
extern
AtkRelationSet* atk_object_ref_relation_set (AtkObject *accessible);
extern
AtkRole atk_object_get_role (AtkObject *accessible);

__attribute__((__deprecated__("Use '" "atk_component_get_layer" "' instead"))) extern
AtkLayer atk_object_get_layer (AtkObject *accessible);
__attribute__((__deprecated__("Use '" "atk_component_get_mdi_zorder" "' instead"))) extern
gint atk_object_get_mdi_zorder (AtkObject *accessible);

extern
AtkAttributeSet* atk_object_get_attributes (AtkObject *accessible);
extern
AtkStateSet* atk_object_ref_state_set (AtkObject *accessible);
extern
gint atk_object_get_index_in_parent (AtkObject *accessible);
extern
void atk_object_set_name (AtkObject *accessible,
                                                                  const gchar *name);
extern
void atk_object_set_description (AtkObject *accessible,
                                                                  const gchar *description);
extern
void atk_object_set_parent (AtkObject *accessible,
                                                                  AtkObject *parent);
extern
void atk_object_set_role (AtkObject *accessible,
                                                                  AtkRole role);


__attribute__((__deprecated__)) extern
guint atk_object_connect_property_change_handler (AtkObject *accessible,
                                                                 AtkPropertyChangeHandler *handler);
__attribute__((__deprecated__)) extern
void atk_object_remove_property_change_handler (AtkObject *accessible,
                                                                 guint handler_id);

extern
void atk_object_notify_state_change (AtkObject *accessible,
                                                                 AtkState state,
                                                                 gboolean value);
extern
void atk_object_initialize (AtkObject *accessible,
                                                                 gpointer data);

extern
const gchar* atk_role_get_name (AtkRole role);
extern
AtkRole atk_role_for_name (const gchar *name);



extern
gboolean atk_object_add_relationship (AtkObject *object,
       AtkRelationType relationship,
       AtkObject *target);
extern
gboolean atk_object_remove_relationship (AtkObject *object,
       AtkRelationType relationship,
       AtkObject *target);
extern
const gchar* atk_role_get_localized_name (AtkRole role);
__attribute__((__deprecated__)) extern
AtkRole atk_role_register (const gchar *name);
extern
const gchar* atk_object_get_object_locale (AtkObject *accessible);

}
# 26 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkaction.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkaction.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkaction.h" 2

extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkaction.h"
typedef struct _AtkAction AtkAction;

typedef struct _AtkActionIface AtkActionIface;

struct _AtkActionIface
{
 GTypeInterface parent;

 gboolean (*do_action) (AtkAction *action,
                                               gint i);
 gint (*get_n_actions) (AtkAction *action);
 const gchar* (*get_description) (AtkAction *action,
                                               gint i);
 const gchar* (*get_name) (AtkAction *action,
                                               gint i);
 const gchar* (*get_keybinding) (AtkAction *action,
                                               gint i);
 gboolean (*set_description) (AtkAction *action,
                                               gint i,
                                               const gchar *desc);
 const gchar* (*get_localized_name)(AtkAction *action,
     gint i);
};

extern
GType atk_action_get_type (void);
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkaction.h"
extern
gboolean atk_action_do_action (AtkAction *action,
                                           gint i);
extern
gint atk_action_get_n_actions (AtkAction *action);
extern
const gchar* atk_action_get_description (AtkAction *action,
                                                  gint i);
extern
const gchar* atk_action_get_name (AtkAction *action,
                                                  gint i);
extern
const gchar* atk_action_get_keybinding (AtkAction *action,
                                                  gint i);
extern
gboolean atk_action_set_description (AtkAction *action,
                                                  gint i,
                                                  const gchar *desc);


extern
const gchar* atk_action_get_localized_name (AtkAction *action,
          gint i);







}
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkcomponent.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkcomponent.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkcomponent.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h" 2

extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
typedef struct _AtkUtil AtkUtil;
typedef struct _AtkUtilClass AtkUtilClass;
typedef struct _AtkKeyEventStruct AtkKeyEventStruct;
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
typedef void (*AtkEventListener) (AtkObject* obj);
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
typedef void (*AtkEventListenerInit) (void);
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
typedef gint (*AtkKeySnoopFunc) (AtkKeyEventStruct *event,
      gpointer user_data);
# 110 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
struct _AtkKeyEventStruct {
 gint type;
 guint state;
 guint keyval;
 gint length;
 gchar *string;
 guint16 keycode;
 guint32 timestamp;
};
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
typedef enum
{
 ATK_KEY_EVENT_PRESS,
 ATK_KEY_EVENT_RELEASE,
 ATK_KEY_EVENT_LAST_DEFINED
} AtkKeyEventType;

struct _AtkUtil
{
 GObject parent;
};
# 160 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
struct _AtkUtilClass
{
  GObjectClass parent;
  guint (* add_global_event_listener) (GSignalEmissionHook listener,
       const gchar *event_type);
  void (* remove_global_event_listener) (guint listener_id);
  guint (* add_key_event_listener) (AtkKeySnoopFunc listener,
       gpointer data);
  void (* remove_key_event_listener) (guint listener_id);
  AtkObject* (* get_root) (void);
  const gchar* (* get_toolkit_name) (void);
  const gchar* (* get_toolkit_version) (void);
};
extern
GType atk_util_get_type (void);
# 185 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
typedef enum {
 ATK_XY_SCREEN,
 ATK_XY_WINDOW
}AtkCoordType;

__attribute__((__deprecated__)) extern
guint atk_add_focus_tracker (AtkEventListener focus_tracker);
__attribute__((__deprecated__)) extern
void atk_remove_focus_tracker (guint tracker_id);
__attribute__((__deprecated__)) extern
void atk_focus_tracker_init (AtkEventListenerInit init);
__attribute__((__deprecated__)) extern
void atk_focus_tracker_notify (AtkObject *object);
extern
guint atk_add_global_event_listener (GSignalEmissionHook listener,
          const gchar *event_type);
extern
void atk_remove_global_event_listener (guint listener_id);
extern
guint atk_add_key_event_listener (AtkKeySnoopFunc listener, gpointer data);
extern
void atk_remove_key_event_listener (guint listener_id);

extern
AtkObject* atk_get_root(void);
extern
AtkObject* atk_get_focus_object (void);

extern
const gchar *atk_get_toolkit_name (void);
extern
const gchar *atk_get_toolkit_version (void);
extern
const gchar *atk_get_version (void);
# 355 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h"
}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkcomponent.h" 2

extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkcomponent.h"
typedef struct _AtkComponent AtkComponent;

typedef struct _AtkComponentIface AtkComponentIface;
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkcomponent.h"
typedef void (*AtkFocusHandler) (AtkObject* object, gboolean focus_in);

typedef struct _AtkRectangle AtkRectangle;
# 77 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkcomponent.h"
struct _AtkRectangle
{
 gint x;
 gint y;
 gint width;
 gint height;
};

extern
GType atk_rectangle_get_type (void);
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkcomponent.h"
struct _AtkComponentIface
{
 GTypeInterface parent;

 guint (* add_focus_handler) (AtkComponent *component,
                                        AtkFocusHandler handler);

 gboolean (* contains) (AtkComponent *component,
                                        gint x,
                                        gint y,
                                        AtkCoordType coord_type);

 AtkObject* (* ref_accessible_at_point) (AtkComponent *component,
                                        gint x,
                                        gint y,
                                        AtkCoordType coord_type);
 void (* get_extents) (AtkComponent *component,
                                        gint *x,
                                        gint *y,
                                        gint *width,
                                        gint *height,
                                        AtkCoordType coord_type);
 void (* get_position) (AtkComponent *component,
                                                gint *x,
                                                gint *y,
                                                AtkCoordType coord_type);
 void (* get_size) (AtkComponent *component,
                                                        gint *width,
                                                        gint *height);
 gboolean (* grab_focus) (AtkComponent *component);
 void (* remove_focus_handler) (AtkComponent *component,
                                                         guint handler_id);
 gboolean (* set_extents) (AtkComponent *component,
                                                gint x,
                                                gint y,
                                                gint width,
                                                gint height,
                                                AtkCoordType coord_type);
 gboolean (* set_position) (AtkComponent *component,
                                                gint x,
                                                gint y,
                                                AtkCoordType coord_type);
 gboolean (* set_size) (AtkComponent *component,
                                                gint width,
                                                gint height);

 AtkLayer (* get_layer) (AtkComponent *component);
 gint (* get_mdi_zorder) (AtkComponent *component);




 void (* bounds_changed) (AtkComponent *component,
                                                AtkRectangle *bounds);
 gdouble (* get_alpha) (AtkComponent *component);
};

extern
GType atk_component_get_type (void);


__attribute__((__deprecated__)) extern
guint atk_component_add_focus_handler (AtkComponent *component,
                                                          AtkFocusHandler handler);
extern
gboolean atk_component_contains (AtkComponent *component,
                                                           gint x,
                                                           gint y,
                                                           AtkCoordType coord_type);
extern
AtkObject* atk_component_ref_accessible_at_point(AtkComponent *component,
                                                           gint x,
                                                           gint y,
                                                           AtkCoordType coord_type);
extern
void atk_component_get_extents (AtkComponent *component,
                                                           gint *x,
                                                           gint *y,
                                                           gint *width,
                                                           gint *height,
                                                           AtkCoordType coord_type);
__attribute__((__deprecated__("Use '" "atk_component_get_extents" "' instead"))) extern
void atk_component_get_position (AtkComponent *component,
                                                           gint *x,
                                                           gint *y,
                                                           AtkCoordType coord_type);
__attribute__((__deprecated__("Use '" "atk_component_get_extents" "' instead"))) extern
void atk_component_get_size (AtkComponent *component,
                                                           gint *width,
                                                           gint *height);
extern
AtkLayer atk_component_get_layer (AtkComponent *component);
extern
gint atk_component_get_mdi_zorder (AtkComponent *component);
extern
gboolean atk_component_grab_focus (AtkComponent *component);
__attribute__((__deprecated__)) extern
void atk_component_remove_focus_handler (AtkComponent *component,
                                                           guint handler_id);
extern
gboolean atk_component_set_extents (AtkComponent *component,
                                                           gint x,
                                                           gint y,
                                                           gint width,
                                                           gint height,
                                                           AtkCoordType coord_type);
extern
gboolean atk_component_set_position (AtkComponent *component,
                                                           gint x,
                                                           gint y,
                                                           AtkCoordType coord_type);
extern
gboolean atk_component_set_size (AtkComponent *component,
                                                           gint width,
                                                           gint height);
extern
gdouble atk_component_get_alpha (AtkComponent *component);

}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkdocument.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkdocument.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkdocument.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkdocument.h" 2

extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkdocument.h"
typedef struct _AtkDocument AtkDocument;

typedef struct _AtkDocumentIface AtkDocumentIface;
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkdocument.h"
struct _AtkDocumentIface
{
 GTypeInterface parent;
 const gchar* ( *get_document_type) (AtkDocument *document);
 gpointer ( *get_document) (AtkDocument *document);

 const gchar* ( *get_document_locale) (AtkDocument *document);
 AtkAttributeSet * ( *get_document_attributes) (AtkDocument *document);
 const gchar* ( *get_document_attribute_value) (AtkDocument *document,
                                                         const gchar *attribute_name);
 gboolean ( *set_document_attribute) (AtkDocument *document,
                                                   const gchar *attribute_name,
                                                   const gchar *attribute_value);
 gint ( *get_current_page_number) (AtkDocument *document);
 gint ( *get_page_count) (AtkDocument *document);
};

extern
GType atk_document_get_type (void);

__attribute__((__deprecated__)) extern
const gchar* atk_document_get_document_type (AtkDocument *document);

__attribute__((__deprecated__)) extern
gpointer atk_document_get_document (AtkDocument *document);

__attribute__((__deprecated__("Use '" "atk_object_get_object_locale" "' instead"))) extern
const gchar* atk_document_get_locale (AtkDocument *document);

extern
AtkAttributeSet* atk_document_get_attributes (AtkDocument *document);
extern
const gchar* atk_document_get_attribute_value (AtkDocument *document,
                                                       const gchar *attribute_name);
extern
gboolean atk_document_set_attribute_value (AtkDocument *document,
                                                       const gchar *attribute_name,
                                                       const gchar *attribute_value);
extern
gint atk_document_get_current_page_number (AtkDocument *document);
extern
gint atk_document_get_page_count (AtkDocument *document);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkeditabletext.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkeditabletext.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkeditabletext.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h" 2

extern "C" {
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
typedef enum
{
 ATK_TEXT_ATTR_INVALID = 0,
 ATK_TEXT_ATTR_LEFT_MARGIN,
 ATK_TEXT_ATTR_RIGHT_MARGIN,
 ATK_TEXT_ATTR_INDENT,
 ATK_TEXT_ATTR_INVISIBLE,
 ATK_TEXT_ATTR_EDITABLE,
 ATK_TEXT_ATTR_PIXELS_ABOVE_LINES,
 ATK_TEXT_ATTR_PIXELS_BELOW_LINES,
 ATK_TEXT_ATTR_PIXELS_INSIDE_WRAP,
 ATK_TEXT_ATTR_BG_FULL_HEIGHT,
 ATK_TEXT_ATTR_RISE,
 ATK_TEXT_ATTR_UNDERLINE,
 ATK_TEXT_ATTR_STRIKETHROUGH,
 ATK_TEXT_ATTR_SIZE,
 ATK_TEXT_ATTR_SCALE,
 ATK_TEXT_ATTR_WEIGHT,
 ATK_TEXT_ATTR_LANGUAGE,
 ATK_TEXT_ATTR_FAMILY_NAME,
 ATK_TEXT_ATTR_BG_COLOR,
 ATK_TEXT_ATTR_FG_COLOR,
 ATK_TEXT_ATTR_BG_STIPPLE,
 ATK_TEXT_ATTR_FG_STIPPLE,
 ATK_TEXT_ATTR_WRAP_MODE,
 ATK_TEXT_ATTR_DIRECTION,
 ATK_TEXT_ATTR_JUSTIFICATION,
 ATK_TEXT_ATTR_STRETCH,
 ATK_TEXT_ATTR_VARIANT,
 ATK_TEXT_ATTR_STYLE,
 ATK_TEXT_ATTR_LAST_DEFINED
} AtkTextAttribute;

extern
AtkTextAttribute atk_text_attribute_register (const gchar *name);
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
typedef struct _AtkText AtkText;

typedef struct _AtkTextIface AtkTextIface;
# 137 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
typedef enum {
 ATK_TEXT_BOUNDARY_CHAR,
 ATK_TEXT_BOUNDARY_WORD_START,
 ATK_TEXT_BOUNDARY_WORD_END,
 ATK_TEXT_BOUNDARY_SENTENCE_START,
 ATK_TEXT_BOUNDARY_SENTENCE_END,
 ATK_TEXT_BOUNDARY_LINE_START,
 ATK_TEXT_BOUNDARY_LINE_END
} AtkTextBoundary;
# 167 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
typedef enum {
 ATK_TEXT_GRANULARITY_CHAR,
 ATK_TEXT_GRANULARITY_WORD,
 ATK_TEXT_GRANULARITY_SENTENCE,
 ATK_TEXT_GRANULARITY_LINE,
 ATK_TEXT_GRANULARITY_PARAGRAPH
} AtkTextGranularity;
# 185 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
typedef struct _AtkTextRectangle AtkTextRectangle;

struct _AtkTextRectangle {
 gint x;
 gint y;
 gint width;
 gint height;
};
# 203 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
typedef struct _AtkTextRange AtkTextRange;

struct _AtkTextRange {
 AtkTextRectangle bounds;
 gint start_offset;
 gint end_offset;
 gchar* content;
};

extern
GType atk_text_range_get_type (void);
# 224 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
typedef enum {
   ATK_TEXT_CLIP_NONE,
   ATK_TEXT_CLIP_MIN,
   ATK_TEXT_CLIP_MAX,
   ATK_TEXT_CLIP_BOTH
} AtkTextClipType;
# 247 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
struct _AtkTextIface
{
 GTypeInterface parent;

 gchar* (* get_text) (AtkText *text,
                                                  gint start_offset,
                                                  gint end_offset);
 gchar* (* get_text_after_offset) (AtkText *text,
                                                  gint offset,
                                                  AtkTextBoundary boundary_type,
        gint *start_offset,
        gint *end_offset);
 gchar* (* get_text_at_offset) (AtkText *text,
                                                  gint offset,
                                                  AtkTextBoundary boundary_type,
        gint *start_offset,
        gint *end_offset);
 gunichar (* get_character_at_offset) (AtkText *text,
                                                  gint offset);
 gchar* (* get_text_before_offset) (AtkText *text,
                                                  gint offset,
                                                  AtkTextBoundary boundary_type,
         gint *start_offset,
        gint *end_offset);
 gint (* get_caret_offset) (AtkText *text);
 AtkAttributeSet* (* get_run_attributes) (AtkText *text,
        gint offset,
        gint *start_offset,
        gint *end_offset);
 AtkAttributeSet* (* get_default_attributes) (AtkText *text);
 void (* get_character_extents) (AtkText *text,
                                                  gint offset,
                                                  gint *x,
                                                  gint *y,
                                                  gint *width,
                                                  gint *height,
                                                  AtkCoordType coords);
 gint (* get_character_count) (AtkText *text);
 gint (* get_offset_at_point) (AtkText *text,
                                                  gint x,
                                                  gint y,
                                                  AtkCoordType coords);
 gint (* get_n_selections) (AtkText *text);
 gchar* (* get_selection) (AtkText *text,
        gint selection_num,
        gint *start_offset,
        gint *end_offset);
 gboolean (* add_selection) (AtkText *text,
        gint start_offset,
        gint end_offset);
 gboolean (* remove_selection) (AtkText *text,
        gint selection_num);
 gboolean (* set_selection) (AtkText *text,
        gint selection_num,
        gint start_offset,
        gint end_offset);
 gboolean (* set_caret_offset) (AtkText *text,
                                                  gint offset);




 void (* text_changed) (AtkText *text,
                                                  gint position,
                                                  gint length);
 void (* text_caret_moved) (AtkText *text,
                                                  gint location);
 void (* text_selection_changed) (AtkText *text);

 void (* text_attributes_changed) (AtkText *text);


 void (* get_range_extents) (AtkText *text,
                                                  gint start_offset,
                                                  gint end_offset,
                                                  AtkCoordType coord_type,
                                                  AtkTextRectangle *rect);

 AtkTextRange** (* get_bounded_ranges) (AtkText *text,
                                                  AtkTextRectangle *rect,
                                                  AtkCoordType coord_type,
                                                  AtkTextClipType x_clip_type,
                                                  AtkTextClipType y_clip_type);

 gchar* (* get_string_at_offset) (AtkText *text,
                                                  gint offset,
                                                  AtkTextGranularity granularity,
                                                  gint *start_offset,
                                                  gint *end_offset);
};

extern
GType atk_text_get_type (void);
# 349 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h"
extern
gchar* atk_text_get_text (AtkText *text,
                                                          gint start_offset,
                                                          gint end_offset);
extern
gunichar atk_text_get_character_at_offset (AtkText *text,
                                                          gint offset);
__attribute__((__deprecated__("Use '" "atk_text_get_string_at_offset" "' instead"))) extern
gchar* atk_text_get_text_after_offset (AtkText *text,
                                                          gint offset,
                                                          AtkTextBoundary boundary_type,
         gint *start_offset,
         gint *end_offset);
__attribute__((__deprecated__("Use '" "atk_text_get_string_at_offset" "' instead"))) extern
gchar* atk_text_get_text_at_offset (AtkText *text,
                                                          gint offset,
                                                          AtkTextBoundary boundary_type,
         gint *start_offset,
         gint *end_offset);
__attribute__((__deprecated__("Use '" "atk_text_get_string_at_offset" "' instead"))) extern
gchar* atk_text_get_text_before_offset (AtkText *text,
                                                          gint offset,
                                                          AtkTextBoundary boundary_type,
         gint *start_offset,
         gint *end_offset);
extern
gchar* atk_text_get_string_at_offset (AtkText *text,
                                                          gint offset,
                                                          AtkTextGranularity granularity,
                                                          gint *start_offset,
                                                          gint *end_offset);
extern
gint atk_text_get_caret_offset (AtkText *text);
extern
void atk_text_get_character_extents (AtkText *text,
                                                          gint offset,
                                                          gint *x,
                                                          gint *y,
                                                          gint *width,
                                                          gint *height,
                                                          AtkCoordType coords);
extern
AtkAttributeSet* atk_text_get_run_attributes (AtkText *text,
                gint offset,
                gint *start_offset,
                gint *end_offset);
extern
AtkAttributeSet* atk_text_get_default_attributes (AtkText *text);
extern
gint atk_text_get_character_count (AtkText *text);
extern
gint atk_text_get_offset_at_point (AtkText *text,
                                                          gint x,
                                                          gint y,
                                                          AtkCoordType coords);
extern
gint atk_text_get_n_selections (AtkText *text);
extern
gchar* atk_text_get_selection (AtkText *text,
         gint selection_num,
         gint *start_offset,
         gint *end_offset);
extern
gboolean atk_text_add_selection (AtkText *text,
         gint start_offset,
         gint end_offset);
extern
gboolean atk_text_remove_selection (AtkText *text,
         gint selection_num);
extern
gboolean atk_text_set_selection (AtkText *text,
         gint selection_num,
         gint start_offset,
         gint end_offset);
extern
gboolean atk_text_set_caret_offset (AtkText *text,
                                                          gint offset);
extern
void atk_text_get_range_extents (AtkText *text,

                                                          gint start_offset,
                                                          gint end_offset,
                                                          AtkCoordType coord_type,
                                                          AtkTextRectangle *rect);
extern
AtkTextRange** atk_text_get_bounded_ranges (AtkText *text,
                                                          AtkTextRectangle *rect,
                                                          AtkCoordType coord_type,
                                                          AtkTextClipType x_clip_type,
                                                          AtkTextClipType y_clip_type);
extern
void atk_text_free_ranges (AtkTextRange **ranges);
extern
void atk_attribute_set_free (AtkAttributeSet *attrib_set);
extern
const gchar* atk_text_attribute_get_name (AtkTextAttribute attr);
extern
AtkTextAttribute atk_text_attribute_for_name (const gchar *name);
extern
const gchar* atk_text_attribute_get_value (AtkTextAttribute attr,
                                                          gint index_);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkeditabletext.h" 2

extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkeditabletext.h"
typedef struct _AtkEditableText AtkEditableText;

typedef struct _AtkEditableTextIface AtkEditableTextIface;

struct _AtkEditableTextIface
{
 GTypeInterface parent_interface;

 gboolean (* set_run_attributes) (AtkEditableText *text,
                                  AtkAttributeSet *attrib_set,
                                  gint start_offset,
       gint end_offset);
 void (* set_text_contents) (AtkEditableText *text,
                                  const gchar *string);
 void (* insert_text) (AtkEditableText *text,
                                  const gchar *string,
                                  gint length,
                                  gint *position);
 void (* copy_text) (AtkEditableText *text,
                                  gint start_pos,
                                  gint end_pos);
 void (* cut_text) (AtkEditableText *text,
                                  gint start_pos,
                                  gint end_pos);
 void (* delete_text) (AtkEditableText *text,
                                  gint start_pos,
                                  gint end_pos);
 void (* paste_text) (AtkEditableText *text,
                                  gint position);
};
extern
GType atk_editable_text_get_type (void);


extern
gboolean atk_editable_text_set_run_attributes (AtkEditableText *text,
                                              AtkAttributeSet *attrib_set,
                                              gint start_offset,
            gint end_offset);
extern
void atk_editable_text_set_text_contents (AtkEditableText *text,
                                            const gchar *string);
extern
void atk_editable_text_insert_text (AtkEditableText *text,
                                            const gchar *string,
                                            gint length,
                                            gint *position);
extern
void atk_editable_text_copy_text (AtkEditableText *text,
                                            gint start_pos,
                                            gint end_pos);
extern
void atk_editable_text_cut_text (AtkEditableText *text,
                                            gint start_pos,
                                            gint end_pos);
extern
void atk_editable_text_delete_text (AtkEditableText *text,
                                            gint start_pos,
                                            gint end_pos);
extern
void atk_editable_text_paste_text (AtkEditableText *text,
                                            gint position);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk-enum-types.h" 1
# 11 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk-enum-types.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 12 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk-enum-types.h" 2


extern "C" {

extern
GType atk_hyperlink_state_flags_get_type (void);


extern
GType atk_role_get_type (void);

extern
GType atk_layer_get_type (void);


extern
GType atk_relation_type_get_type (void);


extern
GType atk_state_type_get_type (void);


extern
GType atk_text_attribute_get_type (void);

extern
GType atk_text_boundary_get_type (void);

extern
GType atk_text_granularity_get_type (void);

extern
GType atk_text_clip_type_get_type (void);


extern
GType atk_key_event_type_get_type (void);

extern
GType atk_coord_type_get_type (void);


extern
GType atk_value_type_get_type (void);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkgobjectaccessible.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkgobjectaccessible.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkgobjectaccessible.h" 2

extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkgobjectaccessible.h"
typedef struct _AtkGObjectAccessible AtkGObjectAccessible;
typedef struct _AtkGObjectAccessibleClass AtkGObjectAccessibleClass;

struct _AtkGObjectAccessible
{
 AtkObject parent;
};

extern
GType atk_gobject_accessible_get_type (void);

struct _AtkGObjectAccessibleClass
{
 AtkObjectClass parent_class;

 AtkFunction pad1;
 AtkFunction pad2;
};

extern
AtkObject *atk_gobject_accessible_for_object (GObject *obj);
extern
GObject *atk_gobject_accessible_get_object (AtkGObjectAccessible *obj);

}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlink.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlink.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkaction.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlink.h" 2

extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlink.h"
typedef enum
{
 ATK_HYPERLINK_IS_INLINE = 1 << 0
} AtkHyperlinkStateFlags;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlink.h"
typedef struct _AtkHyperlink AtkHyperlink;
typedef struct _AtkHyperlinkClass AtkHyperlinkClass;

struct _AtkHyperlink
{
 GObject parent;
};

struct _AtkHyperlinkClass
{
 GObjectClass parent;

 gchar* (* get_uri) (AtkHyperlink *link_,
                                           gint i);
 AtkObject* (* get_object) (AtkHyperlink *link_,
                                           gint i);
 gint (* get_end_index) (AtkHyperlink *link_);
 gint (* get_start_index) (AtkHyperlink *link_);
 gboolean (* is_valid) (AtkHyperlink *link_);
 gint (* get_n_anchors) (AtkHyperlink *link_);
 guint (* link_state) (AtkHyperlink *link_);
 gboolean (* is_selected_link) (AtkHyperlink *link_);


 void ( *link_activated) (AtkHyperlink *link_);
 AtkFunction pad1;
};

extern
GType atk_hyperlink_get_type (void);

extern
gchar* atk_hyperlink_get_uri (AtkHyperlink *link_,
                                                    gint i);

extern
AtkObject* atk_hyperlink_get_object (AtkHyperlink *link_,
                                                    gint i);

extern
gint atk_hyperlink_get_end_index (AtkHyperlink *link_);

extern
gint atk_hyperlink_get_start_index (AtkHyperlink *link_);

extern
gboolean atk_hyperlink_is_valid (AtkHyperlink *link_);

extern
gboolean atk_hyperlink_is_inline (AtkHyperlink *link_);

extern
gint atk_hyperlink_get_n_anchors (AtkHyperlink *link_);

__attribute__((__deprecated__)) extern
gboolean atk_hyperlink_is_selected_link (AtkHyperlink *link_);

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlinkimpl.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlinkimpl.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlinkimpl.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlink.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlinkimpl.h" 2

extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlinkimpl.h"
typedef struct _AtkHyperlinkImpl AtkHyperlinkImpl;

typedef struct _AtkHyperlinkImplIface AtkHyperlinkImplIface;

struct _AtkHyperlinkImplIface
{
 GTypeInterface parent;

 AtkHyperlink* (* get_hyperlink) (AtkHyperlinkImpl *impl);
};

extern
GType atk_hyperlink_impl_get_type (void);

extern
AtkHyperlink *atk_hyperlink_impl_get_hyperlink (AtkHyperlinkImpl *impl);

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhypertext.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhypertext.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhypertext.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhyperlink.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhypertext.h" 2

extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkhypertext.h"
typedef struct _AtkHypertext AtkHypertext;

typedef struct _AtkHypertextIface AtkHypertextIface;

struct _AtkHypertextIface
{
 GTypeInterface parent;

 AtkHyperlink*(* get_link) (AtkHypertext *hypertext,
                                            gint link_index);
 gint (* get_n_links) (AtkHypertext *hypertext);
 gint (* get_link_index) (AtkHypertext *hypertext,
                                            gint char_index);




 void (* link_selected) (AtkHypertext *hypertext,
                                            gint link_index);
};
extern
GType atk_hypertext_get_type (void);

extern
AtkHyperlink* atk_hypertext_get_link (AtkHypertext *hypertext,
                                           gint link_index);
extern
gint atk_hypertext_get_n_links (AtkHypertext *hypertext);
extern
gint atk_hypertext_get_link_index (AtkHypertext *hypertext,
                                           gint char_index);

}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkimage.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkimage.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkimage.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkimage.h" 2

extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkimage.h"
typedef struct _AtkImage AtkImage;

typedef struct _AtkImageIface AtkImageIface;

struct _AtkImageIface
{
 GTypeInterface parent;
 void ( *get_image_position) (AtkImage *image,
                                                  gint *x,
                      gint *y,
                                 AtkCoordType coord_type);
 const gchar* ( *get_image_description) (AtkImage *image);
 void ( *get_image_size) (AtkImage *image,
                                                  gint *width,
                                                  gint *height);
 gboolean ( *set_image_description) (AtkImage *image,
                                                  const gchar *description);
 const gchar* ( *get_image_locale) (AtkImage *image);
};

extern
GType atk_image_get_type (void);

extern
const gchar* atk_image_get_image_description (AtkImage *image);

extern
void atk_image_get_image_size (AtkImage *image,
                                         gint *width,
                                         gint *height);

extern
gboolean atk_image_set_image_description (AtkImage *image,
                                         const gchar *description);
extern
void atk_image_get_image_position (AtkImage *image,
                                         gint *x,
      gint *y,
          AtkCoordType coord_type);

extern
const gchar* atk_image_get_image_locale (AtkImage *image);

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atknoopobject.h" 1
# 24 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atknoopobject.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 25 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atknoopobject.h" 2




extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atknoopobject.h"
typedef struct _AtkNoOpObject AtkNoOpObject;
typedef struct _AtkNoOpObjectClass AtkNoOpObjectClass;

struct _AtkNoOpObject
{
 AtkObject parent;
};

extern
GType atk_no_op_object_get_type (void);

struct _AtkNoOpObjectClass
{
 AtkObjectClass parent_class;
};

extern
AtkObject *atk_no_op_object_new (GObject *obj);

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atknoopobjectfactory.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atknoopobjectfactory.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobjectfactory.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobjectfactory.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobjectfactory.h" 2

extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobjectfactory.h"
typedef struct _AtkObjectFactory AtkObjectFactory;
typedef struct _AtkObjectFactoryClass AtkObjectFactoryClass;

struct _AtkObjectFactory
{
 GObject parent;
};

struct _AtkObjectFactoryClass
{
 GObjectClass parent_class;

 AtkObject* (* create_accessible) (GObject *obj);
 void (* invalidate) (AtkObjectFactory *factory);
 GType (* get_accessible_type) (void);

 AtkFunction pad1;
 AtkFunction pad2;
};

extern
GType atk_object_factory_get_type(void);


extern
AtkObject* atk_object_factory_create_accessible (AtkObjectFactory *factory, GObject *obj);
extern
void atk_object_factory_invalidate (AtkObjectFactory *factory);
extern
GType atk_object_factory_get_accessible_type (AtkObjectFactory *factory);

}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atknoopobjectfactory.h" 2

extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atknoopobjectfactory.h"
typedef struct _AtkNoOpObjectFactory AtkNoOpObjectFactory;
typedef struct _AtkNoOpObjectFactoryClass AtkNoOpObjectFactoryClass;

struct _AtkNoOpObjectFactory
{
 AtkObjectFactory parent;
};

struct _AtkNoOpObjectFactoryClass
{
 AtkObjectFactoryClass parent_class;
};

extern
GType atk_no_op_object_factory_get_type(void);

extern
AtkObjectFactory *atk_no_op_object_factory_new(void);

}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobjectfactory.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkplug.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkplug.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkplug.h" 2

extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkplug.h"
typedef struct _AtkPlug AtkPlug;
typedef struct _AtkPlugClass AtkPlugClass;

struct _AtkPlug
{
 AtkObject parent;
};

extern
GType atk_plug_get_type (void);

struct _AtkPlugClass
{
 AtkObjectClass parent_class;




 gchar* (* get_object_id) (AtkPlug* obj);
};

extern
AtkObject* atk_plug_new (void);
extern
gchar* atk_plug_get_id (AtkPlug* plug);

}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrange.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrange.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrange.h" 2

extern "C" {



typedef struct _AtkRange AtkRange;


extern
GType atk_range_get_type (void);

extern
AtkRange* atk_range_copy (AtkRange *src);
extern
void atk_range_free (AtkRange *range);

extern
gdouble atk_range_get_lower_limit (AtkRange *range);
extern
gdouble atk_range_get_upper_limit (AtkRange *range);
extern
const gchar* atk_range_get_description (AtkRange *range);
extern
AtkRange* atk_range_new (gdouble lower_limit,
                                        gdouble upper_limit,
                                        const gchar *description);

}
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkregistry.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkregistry.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobjectfactory.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkregistry.h" 2

extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkregistry.h"
struct _AtkRegistry
{
 GObject parent;
 GHashTable *factory_type_registry;
 GHashTable *factory_singleton_cache;
};

struct _AtkRegistryClass
{
 GObjectClass parent_class;
};

typedef struct _AtkRegistry AtkRegistry;
typedef struct _AtkRegistryClass AtkRegistryClass;


extern
GType atk_registry_get_type (void);
extern
void atk_registry_set_factory_type (AtkRegistry *registry,
                                                GType type,
                                                GType factory_type);
extern
GType atk_registry_get_factory_type (AtkRegistry *registry,
      GType type);
extern
AtkObjectFactory* atk_registry_get_factory (AtkRegistry *registry,
                                                GType type);

extern
AtkRegistry* atk_get_default_registry (void);

}
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelation.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelation.h"
extern "C" {


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationtype.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelation.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelation.h" 2
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelation.h"
typedef struct _AtkRelation AtkRelation;
typedef struct _AtkRelationClass AtkRelationClass;

struct _AtkRelation
{
 GObject parent;

 GPtrArray *target;
 AtkRelationType relationship;
};

struct _AtkRelationClass
{
 GObjectClass parent;
};

extern
GType atk_relation_get_type (void);

extern
AtkRelationType atk_relation_type_register (const gchar *name);
extern
const gchar* atk_relation_type_get_name (AtkRelationType type);
extern
AtkRelationType atk_relation_type_for_name (const gchar *name);





extern
AtkRelation* atk_relation_new (AtkObject **targets,
                                                      gint n_targets,
                                                      AtkRelationType relationship);



extern
AtkRelationType atk_relation_get_relation_type (AtkRelation *relation);



extern
GPtrArray* atk_relation_get_target (AtkRelation *relation);
extern
void atk_relation_add_target (AtkRelation *relation,
                                                      AtkObject *target);
extern
gboolean atk_relation_remove_target (AtkRelation *relation,
                                                      AtkObject *target);

}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationset.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationset.h"
extern "C" {


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationset.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelation.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationset.h" 2
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationset.h"
typedef struct _AtkRelationSetClass AtkRelationSetClass;


struct _AtkRelationSet
{
 GObject parent;

 GPtrArray *relations;
};

struct _AtkRelationSetClass
{
 GObjectClass parent;

 AtkFunction pad1;
 AtkFunction pad2;
};

extern
GType atk_relation_set_get_type (void);

extern
AtkRelationSet* atk_relation_set_new (void);
extern
gboolean atk_relation_set_contains (AtkRelationSet *set,
                                                      AtkRelationType relationship);
extern
gboolean atk_relation_set_contains_target (AtkRelationSet *set,
                                                      AtkRelationType relationship,
                                                      AtkObject *target);
extern
void atk_relation_set_remove (AtkRelationSet *set,
                                                      AtkRelation *relation);
extern
void atk_relation_set_add (AtkRelationSet *set,
                                                      AtkRelation *relation);
extern
gint atk_relation_set_get_n_relations (AtkRelationSet *set);
extern
AtkRelation* atk_relation_set_get_relation (AtkRelationSet *set,
                                                      gint i);
extern
AtkRelation* atk_relation_set_get_relation_by_type (AtkRelationSet *set,
                                                      AtkRelationType relationship);
extern
void atk_relation_set_add_relation_by_type (AtkRelationSet *set,
                                                      AtkRelationType relationship,
                                                      AtkObject *target);

}
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrelationtype.h" 1
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkselection.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkselection.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkselection.h" 2

extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkselection.h"
typedef struct _AtkSelection AtkSelection;

typedef struct _AtkSelectionIface AtkSelectionIface;

struct _AtkSelectionIface
{
 GTypeInterface parent;

 gboolean (* add_selection) (AtkSelection *selection,
                                        gint i);
 gboolean (* clear_selection) (AtkSelection *selection);
 AtkObject* (* ref_selection) (AtkSelection *selection,
                                        gint i);
 gint (* get_selection_count) (AtkSelection *selection);
 gboolean (* is_child_selected) (AtkSelection *selection,
                                        gint i);
 gboolean (* remove_selection) (AtkSelection *selection,
                                        gint i);
 gboolean (* select_all_selection) (AtkSelection *selection);



 void (*selection_changed) (AtkSelection *selection);
};

extern
GType atk_selection_get_type (void);

extern
gboolean atk_selection_add_selection (AtkSelection *selection,
                                                gint i);

extern
gboolean atk_selection_clear_selection (AtkSelection *selection);

extern
AtkObject* atk_selection_ref_selection (AtkSelection *selection,
                                                gint i);

extern
gint atk_selection_get_selection_count (AtkSelection *selection);

extern
gboolean atk_selection_is_child_selected (AtkSelection *selection,
                                                gint i);

extern
gboolean atk_selection_remove_selection (AtkSelection *selection,
                                                gint i);

extern
gboolean atk_selection_select_all_selection (AtkSelection *selection);

}
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atksocket.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atksocket.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atksocket.h" 2

extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atksocket.h"
typedef struct _AtkSocket AtkSocket;
typedef struct _AtkSocketClass AtkSocketClass;

struct _AtkSocket
{
 AtkObject parent;


 gchar* embedded_plug_id;
};

extern
GType atk_socket_get_type (void);

struct _AtkSocketClass
{
 AtkObjectClass parent_class;




 void (* embed) (AtkSocket *obj, gchar* plug_id);
};

extern
AtkObject* atk_socket_new (void);
extern
void atk_socket_embed (AtkSocket* obj, gchar* plug_id);
extern
gboolean atk_socket_is_occupied (AtkSocket* obj);

}
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstate.h" 1
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstateset.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstateset.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstateset.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstate.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstateset.h" 2

extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstateset.h"
typedef struct _AtkStateSetClass AtkStateSetClass;


struct _AtkStateSet
{
 GObject parent;

};

struct _AtkStateSetClass
{
 GObjectClass parent;
};

extern
GType atk_state_set_get_type (void);

extern
AtkStateSet* atk_state_set_new (void);
extern
gboolean atk_state_set_is_empty (AtkStateSet *set);
extern
gboolean atk_state_set_add_state (AtkStateSet *set,
                                                AtkStateType type);
extern
void atk_state_set_add_states (AtkStateSet *set,
                                                AtkStateType *types,
                                                gint n_types);
extern
void atk_state_set_clear_states (AtkStateSet *set);
extern
gboolean atk_state_set_contains_state (AtkStateSet *set,
                                                AtkStateType type);
extern
gboolean atk_state_set_contains_states (AtkStateSet *set,
                                                AtkStateType *types,
                                                gint n_types);
extern
gboolean atk_state_set_remove_state (AtkStateSet *set,
                                                AtkStateType type);
extern
AtkStateSet* atk_state_set_and_sets (AtkStateSet *set,
                                                AtkStateSet *compare_set);
extern
AtkStateSet* atk_state_set_or_sets (AtkStateSet *set,
                                                AtkStateSet *compare_set);
extern
AtkStateSet* atk_state_set_xor_sets (AtkStateSet *set,
                                                AtkStateSet *compare_set);

}
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstreamablecontent.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstreamablecontent.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstreamablecontent.h" 2

extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstreamablecontent.h"
typedef struct _AtkStreamableContent AtkStreamableContent;

typedef struct _AtkStreamableContentIface AtkStreamableContentIface;

struct _AtkStreamableContentIface
{
 GTypeInterface parent;




 gint (* get_n_mime_types) (AtkStreamableContent *streamable);
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstreamablecontent.h"
 const gchar* (* get_mime_type) (AtkStreamableContent *streamable,
                                                  gint i);






 GIOChannel* (* get_stream) (AtkStreamableContent *streamable,
                                                  const gchar *mime_type);
# 83 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkstreamablecontent.h"
   const gchar* (* get_uri) (AtkStreamableContent *streamable,
                                                  const gchar *mime_type);


 AtkFunction pad1;
 AtkFunction pad2;
 AtkFunction pad3;
};
extern
GType atk_streamable_content_get_type (void);

extern
gint atk_streamable_content_get_n_mime_types (AtkStreamableContent *streamable);

extern
const gchar* atk_streamable_content_get_mime_type (AtkStreamableContent *streamable,
                                                               gint i);
extern
GIOChannel* atk_streamable_content_get_stream (AtkStreamableContent *streamable,
                                                                const gchar *mime_type);

extern
const gchar* atk_streamable_content_get_uri (AtkStreamableContent *streamable,
                                                               const gchar *mime_type);

}
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktable.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktable.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktable.h" 2

extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktable.h"
typedef struct _AtkTable AtkTable;

typedef struct _AtkTableIface AtkTableIface;

struct _AtkTableIface
{
 GTypeInterface parent;

 AtkObject* (* ref_at) (AtkTable *table,
                                                 gint row,
                                                 gint column);
 gint (* get_index_at) (AtkTable *table,
                                                 gint row,
                                                 gint column);
 gint (* get_column_at_index) (AtkTable *table,
                                                 gint index_);
 gint (* get_row_at_index) (AtkTable *table,
                                                 gint index_);
 gint (* get_n_columns) (AtkTable *table);
 gint (* get_n_rows) (AtkTable *table);
 gint (* get_column_extent_at) (AtkTable *table,
                                                 gint row,
                                                 gint column);
 gint (* get_row_extent_at) (AtkTable *table,
                                                 gint row,
                                                 gint column);
 AtkObject*
                   (* get_caption) (AtkTable *table);
 const gchar* (* get_column_description) (AtkTable *table,
                                                 gint column);
 AtkObject* (* get_column_header) (AtkTable *table,
       gint column);
 const gchar* (* get_row_description) (AtkTable *table,
                                                 gint row);
 AtkObject* (* get_row_header) (AtkTable *table,
       gint row);
 AtkObject* (* get_summary) (AtkTable *table);
 void (* set_caption) (AtkTable *table,
                                                 AtkObject *caption);
 void (* set_column_description) (AtkTable *table,
                                                 gint column,
                                                 const gchar *description);
 void (* set_column_header) (AtkTable *table,
                                                 gint column,
                                                 AtkObject *header);
 void (* set_row_description) (AtkTable *table,
                                                 gint row,
                                                 const gchar *description);
 void (* set_row_header) (AtkTable *table,
                                                 gint row,
                                                 AtkObject *header);
 void (* set_summary) (AtkTable *table,
                                                 AtkObject *accessible);
 gint (* get_selected_columns) (AtkTable *table,
                                                 gint **selected);
 gint (* get_selected_rows) (AtkTable *table,
                                                 gint **selected);
 gboolean (* is_column_selected) (AtkTable *table,
                                                 gint column);
 gboolean (* is_row_selected) (AtkTable *table,
                                                 gint row);
 gboolean (* is_selected) (AtkTable *table,
                                                 gint row,
                                                 gint column);
 gboolean (* add_row_selection) (AtkTable *table,
                                                 gint row);
 gboolean (* remove_row_selection) (AtkTable *table,
                                                 gint row);
 gboolean (* add_column_selection) (AtkTable *table,
                                                 gint column);
 gboolean (* remove_column_selection) (AtkTable *table,
                                                 gint column);




 void (* row_inserted) (AtkTable *table,
                                                 gint row,
                                                 gint num_inserted);
 void (* column_inserted) (AtkTable *table,
                                                 gint column,
                                                 gint num_inserted);
 void (* row_deleted) (AtkTable *table,
                                                 gint row,
                                                 gint num_deleted);
 void (* column_deleted) (AtkTable *table,
                                                 gint column,
                                                 gint num_deleted);
 void (* row_reordered) (AtkTable *table);
 void (* column_reordered) (AtkTable *table);
 void (* model_changed) (AtkTable *table);
};

extern
GType atk_table_get_type (void);

extern
AtkObject* atk_table_ref_at (AtkTable *table,
                                                 gint row,
                                                 gint column);
__attribute__((__deprecated__("Use '" "atk_table_ref_at" "' instead"))) extern
gint atk_table_get_index_at (AtkTable *table,
                                                 gint row,
                                                 gint column);
__attribute__((__deprecated__)) extern
gint atk_table_get_column_at_index (AtkTable *table,
                                                 gint index_);
__attribute__((__deprecated__)) extern
gint atk_table_get_row_at_index (AtkTable *table,
                                                 gint index_);
extern
gint atk_table_get_n_columns (AtkTable *table);
extern
gint atk_table_get_n_rows (AtkTable *table);
extern
gint atk_table_get_column_extent_at (AtkTable *table,
                                                 gint row,
                                                 gint column);
extern
gint atk_table_get_row_extent_at (AtkTable *table,
                                                 gint row,
                                                 gint column);
extern
AtkObject*
                 atk_table_get_caption (AtkTable *table);
extern
const gchar* atk_table_get_column_description
                                                (AtkTable *table,
                                                 gint column);
extern
AtkObject* atk_table_get_column_header (AtkTable *table,
       gint column);
extern
const gchar* atk_table_get_row_description (AtkTable *table,
                                                 gint row);
extern
AtkObject* atk_table_get_row_header (AtkTable *table,
       gint row);
extern
AtkObject* atk_table_get_summary (AtkTable *table);
extern
void atk_table_set_caption (AtkTable *table,
                                                 AtkObject *caption);
extern
void atk_table_set_column_description
                                                (AtkTable *table,
                                                 gint column,
                                                 const gchar *description);
extern
void atk_table_set_column_header (AtkTable *table,
                                                 gint column,
                                                 AtkObject *header);
extern
void atk_table_set_row_description (AtkTable *table,
                                                 gint row,
                                                 const gchar *description);
extern
void atk_table_set_row_header (AtkTable *table,
                                                 gint row,
                                                 AtkObject *header);
extern
void atk_table_set_summary (AtkTable *table,
                                                 AtkObject *accessible);
extern
gint atk_table_get_selected_columns (AtkTable *table,
                                                 gint **selected);
extern
gint atk_table_get_selected_rows (AtkTable *table,
                                                 gint **selected);
extern
gboolean atk_table_is_column_selected (AtkTable *table,
                                                 gint column);
extern
gboolean atk_table_is_row_selected (AtkTable *table,
                                                 gint row);
extern
gboolean atk_table_is_selected (AtkTable *table,
                                                 gint row,
                                                 gint column);
extern
gboolean atk_table_add_row_selection (AtkTable *table,
                                                 gint row);
extern
gboolean atk_table_remove_row_selection (AtkTable *table,
                                                 gint row);
extern
gboolean atk_table_add_column_selection (AtkTable *table,
                                                 gint column);
extern
gboolean atk_table_remove_column_selection
                                                (AtkTable *table,
                                                 gint column);

}
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktablecell.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktablecell.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktablecell.h" 2

extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktablecell.h"
typedef struct _AtkTableCell AtkTableCell;

typedef struct _AtkTableCellIface AtkTableCellIface;
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktablecell.h"
struct _AtkTableCellIface
{
 GTypeInterface parent;

 gint (*get_column_span) (AtkTableCell *cell);
 GPtrArray * (*get_column_header_cells) (AtkTableCell *cell);
 gboolean (*get_position) (AtkTableCell *cell,
                                           gint *row,
                                           gint *column);
 gint (*get_row_span) (AtkTableCell *cell);
 GPtrArray * (*get_row_header_cells) (AtkTableCell *cell);
 gboolean (*get_row_column_span) (AtkTableCell *cell,
                                           gint *row,
                                           gint *column,
                                           gint *row_span,
                                           gint *column_span);
 AtkObject * (*get_table) (AtkTableCell *cell);
};

extern
GType atk_table_cell_get_type (void);

extern
gint atk_table_cell_get_column_span (AtkTableCell *cell);
extern
GPtrArray * atk_table_cell_get_column_header_cells (AtkTableCell *cell);
extern
gboolean atk_table_cell_get_position (AtkTableCell *cell,
                                                   gint *row,
                                                   gint *column);
extern
gint atk_table_cell_get_row_span (AtkTableCell *cell);
extern
GPtrArray * atk_table_cell_get_row_header_cells (AtkTableCell *cell);
extern
gboolean atk_table_cell_get_row_column_span (AtkTableCell *cell,
                                                   gint *row,
                                                   gint *column,
                                                   gint *row_span,
                                                   gint *column_span);
extern
AtkObject * atk_table_cell_get_table (AtkTableCell *cell);

}
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atktext.h" 1
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkutil.h" 1
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkmisc.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkmisc.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkmisc.h" 2
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkmisc.h"
extern "C" {
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkmisc.h"
typedef struct _AtkMisc AtkMisc;
typedef struct _AtkMiscClass AtkMiscClass;


struct _AtkMisc
{
 GObject parent;
};
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkmisc.h"
extern AtkMisc *atk_misc_instance;
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkmisc.h"
struct _AtkMiscClass
{
  GObjectClass parent;
  void (* threads_enter) (AtkMisc *misc);
  void (* threads_leave) (AtkMisc *misc);
  gpointer vfuncs[32];
};

__attribute__((__deprecated__)) extern
GType atk_misc_get_type (void);

__attribute__((__deprecated__)) extern
void atk_misc_threads_enter (AtkMisc *misc);
__attribute__((__deprecated__)) extern
void atk_misc_threads_leave (AtkMisc *misc);
__attribute__((__deprecated__)) extern
const AtkMisc *atk_misc_get_instance (void);

}
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkvalue.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkvalue.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkvalue.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkrange.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkvalue.h" 2

extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkvalue.h"
typedef struct _AtkValue AtkValue;

typedef struct _AtkValueIface AtkValueIface;
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkvalue.h"
typedef enum
{
 ATK_VALUE_VERY_WEAK,
 ATK_VALUE_WEAK,
 ATK_VALUE_ACCEPTABLE,
 ATK_VALUE_STRONG,
 ATK_VALUE_VERY_STRONG,
 ATK_VALUE_VERY_LOW,
 ATK_VALUE_LOW,
 ATK_VALUE_MEDIUM,
 ATK_VALUE_HIGH,
 ATK_VALUE_VERY_HIGH,
 ATK_VALUE_VERY_BAD,
 ATK_VALUE_BAD,
 ATK_VALUE_GOOD,
 ATK_VALUE_VERY_GOOD,
 ATK_VALUE_BEST,
 ATK_VALUE_LAST_DEFINED
}AtkValueType;
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkvalue.h"
struct _AtkValueIface
{
 GTypeInterface parent;


 void (* get_current_value) (AtkValue *obj,
                                 GValue *value);
 void (* get_maximum_value) (AtkValue *obj,
                                 GValue *value);
 void (* get_minimum_value) (AtkValue *obj,
                                 GValue *value);
 gboolean (* set_current_value) (AtkValue *obj,
                                 const GValue *value);
 void (* get_minimum_increment) (AtkValue *obj,
         GValue *value);

 void (* get_value_and_text) (AtkValue *obj,
                                  gdouble *value,
                                  gchar **text);
 AtkRange*(* get_range) (AtkValue *obj);
 gdouble (* get_increment) (AtkValue *obj);
 GSList* (* get_sub_ranges) (AtkValue *obj);
 void (* set_value) (AtkValue *obj,
                                  const gdouble new_value);

};

extern
GType atk_value_get_type (void);

__attribute__((__deprecated__("Use '" "atk_value_get_value_and_text" "' instead"))) extern
void atk_value_get_current_value (AtkValue *obj,
                                      GValue *value);

__attribute__((__deprecated__("Use '" "atk_value_get_range" "' instead"))) extern
void atk_value_get_maximum_value (AtkValue *obj,
                                      GValue *value);
__attribute__((__deprecated__("Use '" "atk_value_get_range" "' instead"))) extern
void atk_value_get_minimum_value (AtkValue *obj,
                                      GValue *value);
__attribute__((__deprecated__("Use '" "atk_value_set_value" "' instead"))) extern
gboolean atk_value_set_current_value (AtkValue *obj,
                                      const GValue *value);
__attribute__((__deprecated__("Use '" "atk_value_get_increment" "' instead"))) extern
void atk_value_get_minimum_increment (AtkValue *obj,
       GValue *value);

extern
void atk_value_get_value_and_text (AtkValue *obj,
                                       gdouble *value,
                                       gchar **text);
extern
AtkRange* atk_value_get_range (AtkValue *obj);
extern
gdouble atk_value_get_increment (AtkValue *obj);
extern
GSList* atk_value_get_sub_ranges (AtkValue *obj);
extern
void atk_value_set_value (AtkValue *obj,
                                       const gdouble new_value);

extern
const gchar* atk_value_type_get_name (AtkValueType value_type);
extern
const gchar* atk_value_type_get_localized_name (AtkValueType value_type);

}
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkversion.h" 1
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkwindow.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkwindow.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkobject.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkwindow.h" 2

extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atkwindow.h"
typedef struct _AtkWindow AtkWindow;
typedef struct _AtkWindowIface AtkWindowIface;

struct _AtkWindowIface
{
 GTypeInterface parent;
};

extern
GType atk_window_get_type (void);
}
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/atk-1.0/atk/atk.h" 2
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h" 2

extern "C" {
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
typedef enum
{
 GTK_TOPLEVEL = 1 << 4,
 GTK_NO_WINDOW = 1 << 5,
 GTK_REALIZED = 1 << 6,
 GTK_MAPPED = 1 << 7,
 GTK_VISIBLE = 1 << 8,
 GTK_SENSITIVE = 1 << 9,
 GTK_PARENT_SENSITIVE = 1 << 10,
 GTK_CAN_FOCUS = 1 << 11,
 GTK_HAS_FOCUS = 1 << 12,
 GTK_CAN_DEFAULT = 1 << 13,
 GTK_HAS_DEFAULT = 1 << 14,
 GTK_HAS_GRAB = 1 << 15,
 GTK_RC_STYLE = 1 << 16,
 GTK_COMPOSITE_CHILD = 1 << 17,

 GTK_NO_REPARENT = 1 << 18,

 GTK_APP_PAINTABLE = 1 << 19,
 GTK_RECEIVES_DEFAULT = 1 << 20,
 GTK_DOUBLE_BUFFERED = 1 << 21,
 GTK_NO_SHOW_ALL = 1 << 22
} GtkWidgetFlags;


typedef enum
{
 GTK_WIDGET_HELP_TOOLTIP,
 GTK_WIDGET_HELP_WHATS_THIS
} GtkWidgetHelpType;
# 478 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
typedef struct _GtkRequisition GtkRequisition;
typedef struct _GtkSelectionData GtkSelectionData;
typedef struct _GtkWidgetClass GtkWidgetClass;
typedef struct _GtkWidgetAuxInfo GtkWidgetAuxInfo;
typedef struct _GtkWidgetShapeInfo GtkWidgetShapeInfo;
typedef struct _GtkClipboard GtkClipboard;
typedef struct _GtkTooltip GtkTooltip;
typedef struct _GtkWindow GtkWindow;
# 498 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
typedef GdkRectangle GtkAllocation;
# 508 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
typedef void (*GtkCallback) (GtkWidget *widget,
       gpointer data);
# 519 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
struct _GtkRequisition
{
 gint width;
 gint height;
};






struct _GtkWidget
{






 GtkObject object;






 guint16 private_flags;




 guint8 state;







 guint8 saved_state;







 gchar *name;
# 575 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
 GtkStyle *style;



 GtkRequisition requisition;



 GtkAllocation allocation;





 GdkWindow *window;



 GtkWidget *parent;
};
# 614 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
struct _GtkWidgetClass
{






 GtkObjectClass parent_class;



 guint activate_signal;

 guint set_scroll_adjustments_signal;




 void (*dispatch_child_properties_changed) (GtkWidget *widget,
         guint n_pspecs,
         GParamSpec **pspecs);


 void (* show) (GtkWidget *widget);
 void (* show_all) (GtkWidget *widget);
 void (* hide) (GtkWidget *widget);
 void (* hide_all) (GtkWidget *widget);
 void (* map) (GtkWidget *widget);
 void (* unmap) (GtkWidget *widget);
 void (* realize) (GtkWidget *widget);
 void (* unrealize) (GtkWidget *widget);
 void (* size_request) (GtkWidget *widget,
   GtkRequisition *requisition);
 void (* size_allocate) (GtkWidget *widget,
   GtkAllocation *allocation);
 void (* state_changed) (GtkWidget *widget,
   GtkStateType previous_state);
 void (* parent_set) (GtkWidget *widget,
   GtkWidget *previous_parent);
 void (* hierarchy_changed) (GtkWidget *widget,
   GtkWidget *previous_toplevel);
 void (* style_set) (GtkWidget *widget,
   GtkStyle *previous_style);
 void (* direction_changed) (GtkWidget *widget,
   GtkTextDirection previous_direction);
 void (* grab_notify) (GtkWidget *widget,
   gboolean was_grabbed);
 void (* child_notify) (GtkWidget *widget,
   GParamSpec *pspec);


 gboolean (* mnemonic_activate) (GtkWidget *widget,
     gboolean group_cycling);


 void (* grab_focus) (GtkWidget *widget);
 gboolean (* focus) (GtkWidget *widget,
                               GtkDirectionType direction);


 gboolean (* event) (GtkWidget *widget,
     GdkEvent *event);
 gboolean (* button_press_event) (GtkWidget *widget,
     GdkEventButton *event);
 gboolean (* button_release_event) (GtkWidget *widget,
     GdkEventButton *event);
 gboolean (* scroll_event) (GtkWidget *widget,
     GdkEventScroll *event);
 gboolean (* motion_notify_event) (GtkWidget *widget,
     GdkEventMotion *event);
 gboolean (* delete_event) (GtkWidget *widget,
     GdkEventAny *event);
 gboolean (* destroy_event) (GtkWidget *widget,
     GdkEventAny *event);
 gboolean (* expose_event) (GtkWidget *widget,
     GdkEventExpose *event);
 gboolean (* key_press_event) (GtkWidget *widget,
     GdkEventKey *event);
 gboolean (* key_release_event) (GtkWidget *widget,
     GdkEventKey *event);
 gboolean (* enter_notify_event) (GtkWidget *widget,
     GdkEventCrossing *event);
 gboolean (* leave_notify_event) (GtkWidget *widget,
     GdkEventCrossing *event);
 gboolean (* configure_event) (GtkWidget *widget,
     GdkEventConfigure *event);
 gboolean (* focus_in_event) (GtkWidget *widget,
     GdkEventFocus *event);
 gboolean (* focus_out_event) (GtkWidget *widget,
     GdkEventFocus *event);
 gboolean (* map_event) (GtkWidget *widget,
     GdkEventAny *event);
 gboolean (* unmap_event) (GtkWidget *widget,
     GdkEventAny *event);
 gboolean (* property_notify_event) (GtkWidget *widget,
     GdkEventProperty *event);
 gboolean (* selection_clear_event) (GtkWidget *widget,
     GdkEventSelection *event);
 gboolean (* selection_request_event) (GtkWidget *widget,
     GdkEventSelection *event);
 gboolean (* selection_notify_event) (GtkWidget *widget,
     GdkEventSelection *event);
 gboolean (* proximity_in_event) (GtkWidget *widget,
     GdkEventProximity *event);
 gboolean (* proximity_out_event) (GtkWidget *widget,
     GdkEventProximity *event);
 gboolean (* visibility_notify_event) (GtkWidget *widget,
     GdkEventVisibility *event);
 gboolean (* client_event) (GtkWidget *widget,
     GdkEventClient *event);
 gboolean (* no_expose_event) (GtkWidget *widget,
     GdkEventAny *event);
 gboolean (* window_state_event) (GtkWidget *widget,
     GdkEventWindowState *event);


 void (* selection_get) (GtkWidget *widget,
       GtkSelectionData *selection_data,
       guint info,
       guint time_);
 void (* selection_received) (GtkWidget *widget,
       GtkSelectionData *selection_data,
       guint time_);


 void (* drag_begin) (GtkWidget *widget,
       GdkDragContext *context);
 void (* drag_end) (GtkWidget *widget,
       GdkDragContext *context);
 void (* drag_data_get) (GtkWidget *widget,
       GdkDragContext *context,
       GtkSelectionData *selection_data,
       guint info,
       guint time_);
 void (* drag_data_delete) (GtkWidget *widget,
       GdkDragContext *context);


 void (* drag_leave) (GtkWidget *widget,
       GdkDragContext *context,
       guint time_);
 gboolean (* drag_motion) (GtkWidget *widget,
       GdkDragContext *context,
       gint x,
       gint y,
       guint time_);
 gboolean (* drag_drop) (GtkWidget *widget,
       GdkDragContext *context,
       gint x,
       gint y,
       guint time_);
 void (* drag_data_received) (GtkWidget *widget,
       GdkDragContext *context,
       gint x,
       gint y,
       GtkSelectionData *selection_data,
       guint info,
       guint time_);


 gboolean (* popup_menu) (GtkWidget *widget);






 gboolean (* show_help) (GtkWidget *widget,
                                   GtkWidgetHelpType help_type);



 AtkObject* (*get_accessible) (GtkWidget *widget);

 void (*screen_changed) (GtkWidget *widget,
                                     GdkScreen *previous_screen);
 gboolean (*can_activate_accel) (GtkWidget *widget,
                                     guint signal_id);


 gboolean (*grab_broken_event) (GtkWidget *widget,
                                GdkEventGrabBroken *event);

 void (* composited_changed) (GtkWidget *widget);

 gboolean (* query_tooltip) (GtkWidget *widget,
          gint x,
          gint y,
          gboolean keyboard_tooltip,
          GtkTooltip *tooltip);






 void (*_gtk_reserved5) (void);
 void (*_gtk_reserved6) (void);
 void (*_gtk_reserved7) (void);
};

struct _GtkWidgetAuxInfo
{
 gint x;
 gint y;
 gint width;
 gint height;
 guint x_set : 1;
 guint y_set : 1;
};

struct _GtkWidgetShapeInfo
{
 gint16 offset_x;
 gint16 offset_y;
 GdkBitmap *shape_mask;
};

GType gtk_widget_get_type (void) __attribute__((__const__));
GtkWidget* gtk_widget_new (GType type,
       const gchar *first_property_name,
       ...);
void gtk_widget_destroy (GtkWidget *widget);
void gtk_widget_destroyed (GtkWidget *widget,
       GtkWidget **widget_pointer);

GtkWidget* gtk_widget_ref (GtkWidget *widget);
void gtk_widget_unref (GtkWidget *widget);
void gtk_widget_set (GtkWidget *widget,
       const gchar *first_property_name,
       ...) __attribute__((__sentinel__));


void gtk_widget_hide_all (GtkWidget *widget);

void gtk_widget_unparent (GtkWidget *widget);
void gtk_widget_show (GtkWidget *widget);
void gtk_widget_show_now (GtkWidget *widget);
void gtk_widget_hide (GtkWidget *widget);
void gtk_widget_show_all (GtkWidget *widget);
void gtk_widget_set_no_show_all (GtkWidget *widget,
       gboolean no_show_all);
gboolean gtk_widget_get_no_show_all (GtkWidget *widget);
void gtk_widget_map (GtkWidget *widget);
void gtk_widget_unmap (GtkWidget *widget);
void gtk_widget_realize (GtkWidget *widget);
void gtk_widget_unrealize (GtkWidget *widget);


void gtk_widget_queue_draw (GtkWidget *widget);
void gtk_widget_queue_draw_area (GtkWidget *widget,
       gint x,
       gint y,
       gint width,
       gint height);

void gtk_widget_queue_clear (GtkWidget *widget);
void gtk_widget_queue_clear_area (GtkWidget *widget,
       gint x,
       gint y,
       gint width,
       gint height);



void gtk_widget_queue_resize (GtkWidget *widget);
void gtk_widget_queue_resize_no_redraw (GtkWidget *widget);

void gtk_widget_draw (GtkWidget *widget,
       const GdkRectangle *area);

void gtk_widget_size_request (GtkWidget *widget,
       GtkRequisition *requisition);
void gtk_widget_size_allocate (GtkWidget *widget,
       GtkAllocation *allocation);
void gtk_widget_get_child_requisition (GtkWidget *widget,
         GtkRequisition *requisition);
void gtk_widget_add_accelerator (GtkWidget *widget,
       const gchar *accel_signal,
       GtkAccelGroup *accel_group,
       guint accel_key,
       GdkModifierType accel_mods,
       GtkAccelFlags accel_flags);
gboolean gtk_widget_remove_accelerator (GtkWidget *widget,
       GtkAccelGroup *accel_group,
       guint accel_key,
       GdkModifierType accel_mods);
void gtk_widget_set_accel_path (GtkWidget *widget,
       const gchar *accel_path,
       GtkAccelGroup *accel_group);
const gchar* _gtk_widget_get_accel_path (GtkWidget *widget,
       gboolean *locked);
GList* gtk_widget_list_accel_closures (GtkWidget *widget);
gboolean gtk_widget_can_activate_accel (GtkWidget *widget,
                                          guint signal_id);
gboolean gtk_widget_mnemonic_activate (GtkWidget *widget,
       gboolean group_cycling);
gboolean gtk_widget_event (GtkWidget *widget,
       GdkEvent *event);
gint gtk_widget_send_expose (GtkWidget *widget,
       GdkEvent *event);
gboolean gtk_widget_send_focus_change (GtkWidget *widget,
                                          GdkEvent *event);

gboolean gtk_widget_activate (GtkWidget *widget);
gboolean gtk_widget_set_scroll_adjustments (GtkWidget *widget,
          GtkAdjustment *hadjustment,
          GtkAdjustment *vadjustment);

void gtk_widget_reparent (GtkWidget *widget,
       GtkWidget *new_parent);
gboolean gtk_widget_intersect (GtkWidget *widget,
       const GdkRectangle *area,
       GdkRectangle *intersection);
GdkRegion *gtk_widget_region_intersect (GtkWidget *widget,
       const GdkRegion *region);

void gtk_widget_freeze_child_notify (GtkWidget *widget);
void gtk_widget_child_notify (GtkWidget *widget,
       const gchar *child_property);
void gtk_widget_thaw_child_notify (GtkWidget *widget);

void gtk_widget_set_can_focus (GtkWidget *widget,
                                          gboolean can_focus);
gboolean gtk_widget_get_can_focus (GtkWidget *widget);
gboolean gtk_widget_has_focus (GtkWidget *widget);
gboolean gtk_widget_is_focus (GtkWidget *widget);
void gtk_widget_grab_focus (GtkWidget *widget);

void gtk_widget_set_can_default (GtkWidget *widget,
                                          gboolean can_default);
gboolean gtk_widget_get_can_default (GtkWidget *widget);
gboolean gtk_widget_has_default (GtkWidget *widget);
void gtk_widget_grab_default (GtkWidget *widget);

void gtk_widget_set_receives_default (GtkWidget *widget,
                                          gboolean receives_default);
gboolean gtk_widget_get_receives_default (GtkWidget *widget);

gboolean gtk_widget_has_grab (GtkWidget *widget);

void gtk_widget_set_name (GtkWidget *widget,
       const gchar *name);
const gchar* gtk_widget_get_name (GtkWidget *widget);

void gtk_widget_set_state (GtkWidget *widget,
       GtkStateType state);
GtkStateType gtk_widget_get_state (GtkWidget *widget);

void gtk_widget_set_sensitive (GtkWidget *widget,
       gboolean sensitive);
gboolean gtk_widget_get_sensitive (GtkWidget *widget);
gboolean gtk_widget_is_sensitive (GtkWidget *widget);

void gtk_widget_set_visible (GtkWidget *widget,
                                                        gboolean visible);
gboolean gtk_widget_get_visible (GtkWidget *widget);

void gtk_widget_set_has_window (GtkWidget *widget,
                                                        gboolean has_window);
gboolean gtk_widget_get_has_window (GtkWidget *widget);

gboolean gtk_widget_is_toplevel (GtkWidget *widget);
gboolean gtk_widget_is_drawable (GtkWidget *widget);
void gtk_widget_set_realized (GtkWidget *widget,
                                                        gboolean realized);
gboolean gtk_widget_get_realized (GtkWidget *widget);
void gtk_widget_set_mapped (GtkWidget *widget,
                                                        gboolean mapped);
gboolean gtk_widget_get_mapped (GtkWidget *widget);

void gtk_widget_set_app_paintable (GtkWidget *widget,
       gboolean app_paintable);
gboolean gtk_widget_get_app_paintable (GtkWidget *widget);

void gtk_widget_set_double_buffered (GtkWidget *widget,
       gboolean double_buffered);
gboolean gtk_widget_get_double_buffered (GtkWidget *widget);

void gtk_widget_set_redraw_on_allocate (GtkWidget *widget,
       gboolean redraw_on_allocate);

void gtk_widget_set_parent (GtkWidget *widget,
       GtkWidget *parent);
GtkWidget * gtk_widget_get_parent (GtkWidget *widget);

void gtk_widget_set_parent_window (GtkWidget *widget,
       GdkWindow *parent_window);
GdkWindow * gtk_widget_get_parent_window (GtkWidget *widget);

void gtk_widget_set_child_visible (GtkWidget *widget,
       gboolean is_visible);
gboolean gtk_widget_get_child_visible (GtkWidget *widget);

void gtk_widget_set_window (GtkWidget *widget,
                                                        GdkWindow *window);
GdkWindow * gtk_widget_get_window (GtkWidget *widget);

void gtk_widget_get_allocation (GtkWidget *widget,
                                                        GtkAllocation *allocation);
void gtk_widget_set_allocation (GtkWidget *widget,
                                                        const GtkAllocation *allocation);

void gtk_widget_get_requisition (GtkWidget *widget,
                                                        GtkRequisition *requisition);

gboolean gtk_widget_child_focus (GtkWidget *widget,
                                          GtkDirectionType direction);
gboolean gtk_widget_keynav_failed (GtkWidget *widget,
                                          GtkDirectionType direction);
void gtk_widget_error_bell (GtkWidget *widget);

void gtk_widget_set_size_request (GtkWidget *widget,
                                          gint width,
                                          gint height);
void gtk_widget_get_size_request (GtkWidget *widget,
                                          gint *width,
                                          gint *height);

void gtk_widget_set_uposition (GtkWidget *widget,
       gint x,
       gint y);
void gtk_widget_set_usize (GtkWidget *widget,
       gint width,
       gint height);


void gtk_widget_set_events (GtkWidget *widget,
       gint events);
void gtk_widget_add_events (GtkWidget *widget,
       gint events);
void gtk_widget_set_extension_events (GtkWidget *widget,
        GdkExtensionMode mode);

GdkExtensionMode gtk_widget_get_extension_events (GtkWidget *widget);
GtkWidget* gtk_widget_get_toplevel (GtkWidget *widget);
GtkWidget* gtk_widget_get_ancestor (GtkWidget *widget,
     GType widget_type);
GdkColormap* gtk_widget_get_colormap (GtkWidget *widget);
GdkVisual* gtk_widget_get_visual (GtkWidget *widget);

GdkScreen * gtk_widget_get_screen (GtkWidget *widget);
gboolean gtk_widget_has_screen (GtkWidget *widget);
GdkDisplay * gtk_widget_get_display (GtkWidget *widget);
GdkWindow * gtk_widget_get_root_window (GtkWidget *widget);
GtkSettings* gtk_widget_get_settings (GtkWidget *widget);
GtkClipboard *gtk_widget_get_clipboard (GtkWidget *widget,
      GdkAtom selection);
GdkPixmap * gtk_widget_get_snapshot (GtkWidget *widget,
                                         GdkRectangle *clip_rect);
# 1103 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
AtkObject* gtk_widget_get_accessible (GtkWidget *widget);







void gtk_widget_set_colormap (GtkWidget *widget,
     GdkColormap *colormap);

gint gtk_widget_get_events (GtkWidget *widget);
void gtk_widget_get_pointer (GtkWidget *widget,
     gint *x,
     gint *y);

gboolean gtk_widget_is_ancestor (GtkWidget *widget,
     GtkWidget *ancestor);

gboolean gtk_widget_translate_coordinates (GtkWidget *src_widget,
           GtkWidget *dest_widget,
           gint src_x,
           gint src_y,
           gint *dest_x,
           gint *dest_y);



gboolean gtk_widget_hide_on_delete (GtkWidget *widget);



void gtk_widget_style_attach (GtkWidget *style);

gboolean gtk_widget_has_rc_style (GtkWidget *widget);
void gtk_widget_set_style (GtkWidget *widget,
                                          GtkStyle *style);
void gtk_widget_ensure_style (GtkWidget *widget);
GtkStyle * gtk_widget_get_style (GtkWidget *widget);

void gtk_widget_modify_style (GtkWidget *widget,
       GtkRcStyle *style);
GtkRcStyle *gtk_widget_get_modifier_style (GtkWidget *widget);
void gtk_widget_modify_fg (GtkWidget *widget,
       GtkStateType state,
       const GdkColor *color);
void gtk_widget_modify_bg (GtkWidget *widget,
       GtkStateType state,
       const GdkColor *color);
void gtk_widget_modify_text (GtkWidget *widget,
       GtkStateType state,
       const GdkColor *color);
void gtk_widget_modify_base (GtkWidget *widget,
       GtkStateType state,
       const GdkColor *color);
void gtk_widget_modify_cursor (GtkWidget *widget,
       const GdkColor *primary,
       const GdkColor *secondary);
void gtk_widget_modify_font (GtkWidget *widget,
       PangoFontDescription *font_desc);
# 1187 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwidget.h"
PangoContext *gtk_widget_create_pango_context (GtkWidget *widget);
PangoContext *gtk_widget_get_pango_context (GtkWidget *widget);
PangoLayout *gtk_widget_create_pango_layout (GtkWidget *widget,
           const gchar *text);

GdkPixbuf *gtk_widget_render_icon (GtkWidget *widget,
                                              const gchar *stock_id,
                                              GtkIconSize size,
                                              const gchar *detail);




void gtk_widget_set_composite_name (GtkWidget *widget,
     const gchar *name);
gchar* gtk_widget_get_composite_name (GtkWidget *widget);


void gtk_widget_reset_rc_styles (GtkWidget *widget);





void gtk_widget_push_colormap (GdkColormap *cmap);
void gtk_widget_push_composite_child (void);
void gtk_widget_pop_composite_child (void);
void gtk_widget_pop_colormap (void);



void gtk_widget_class_install_style_property (GtkWidgetClass *klass,
          GParamSpec *pspec);
void gtk_widget_class_install_style_property_parser (GtkWidgetClass *klass,
          GParamSpec *pspec,
          GtkRcPropertyParser parser);
GParamSpec* gtk_widget_class_find_style_property (GtkWidgetClass *klass,
          const gchar *property_name);
GParamSpec** gtk_widget_class_list_style_properties (GtkWidgetClass *klass,
          guint *n_properties);
void gtk_widget_style_get_property (GtkWidget *widget,
       const gchar *property_name,
       GValue *value);
void gtk_widget_style_get_valist (GtkWidget *widget,
       const gchar *first_property_name,
       va_list var_args);
void gtk_widget_style_get (GtkWidget *widget,
       const gchar *first_property_name,
       ...) __attribute__((__sentinel__));




void gtk_widget_set_default_colormap (GdkColormap *colormap);
GtkStyle* gtk_widget_get_default_style (void);

GdkColormap* gtk_widget_get_default_colormap (void);
GdkVisual* gtk_widget_get_default_visual (void);





void gtk_widget_set_direction (GtkWidget *widget,
        GtkTextDirection dir);
GtkTextDirection gtk_widget_get_direction (GtkWidget *widget);

void gtk_widget_set_default_direction (GtkTextDirection dir);
GtkTextDirection gtk_widget_get_default_direction (void);


gboolean gtk_widget_is_composited (GtkWidget *widget);



void gtk_widget_shape_combine_mask (GtkWidget *widget,
        GdkBitmap *shape_mask,
        gint offset_x,
        gint offset_y);
void gtk_widget_input_shape_combine_mask (GtkWidget *widget,
       GdkBitmap *shape_mask,
       gint offset_x,
       gint offset_y);



void gtk_widget_reset_shapes (GtkWidget *widget);





void gtk_widget_path (GtkWidget *widget,
        guint *path_length,
        gchar **path,
        gchar **path_reversed);
void gtk_widget_class_path (GtkWidget *widget,
        guint *path_length,
        gchar **path,
        gchar **path_reversed);

GList* gtk_widget_list_mnemonic_labels (GtkWidget *widget);
void gtk_widget_add_mnemonic_label (GtkWidget *widget,
     GtkWidget *label);
void gtk_widget_remove_mnemonic_label (GtkWidget *widget,
     GtkWidget *label);

void gtk_widget_set_tooltip_window (GtkWidget *widget,
                                                       GtkWindow *custom_window);
GtkWindow *gtk_widget_get_tooltip_window (GtkWidget *widget);
void gtk_widget_trigger_tooltip_query (GtkWidget *widget);
void gtk_widget_set_tooltip_text (GtkWidget *widget,
                                            const gchar *text);
gchar * gtk_widget_get_tooltip_text (GtkWidget *widget);
void gtk_widget_set_tooltip_markup (GtkWidget *widget,
                                            const gchar *markup);
gchar * gtk_widget_get_tooltip_markup (GtkWidget *widget);
void gtk_widget_set_has_tooltip (GtkWidget *widget,
         gboolean has_tooltip);
gboolean gtk_widget_get_has_tooltip (GtkWidget *widget);

GType gtk_requisition_get_type (void) __attribute__((__const__));
GtkRequisition *gtk_requisition_copy (const GtkRequisition *requisition);
void gtk_requisition_free (GtkRequisition *requisition);






void _gtk_widget_set_has_default (GtkWidget *widget,
                                                          gboolean has_default);
void _gtk_widget_set_has_grab (GtkWidget *widget,
                                                          gboolean has_grab);
void _gtk_widget_set_is_toplevel (GtkWidget *widget,
                                                          gboolean is_toplevel);

void _gtk_widget_grab_notify (GtkWidget *widget,
                gboolean was_grabbed);

GtkWidgetAuxInfo *_gtk_widget_get_aux_info (GtkWidget *widget,
         gboolean create);
void _gtk_widget_propagate_hierarchy_changed (GtkWidget *widget,
         GtkWidget *previous_toplevel);
void _gtk_widget_propagate_screen_changed (GtkWidget *widget,
         GdkScreen *previous_screen);
void _gtk_widget_propagate_composited_changed (GtkWidget *widget);

void _gtk_widget_set_pointer_window (GtkWidget *widget,
        GdkWindow *pointer_window);
GdkWindow *_gtk_widget_get_pointer_window (GtkWidget *widget);
gboolean _gtk_widget_is_pointer_widget (GtkWidget *widget);
void _gtk_widget_synthesize_crossing (GtkWidget *from,
        GtkWidget *to,
        GdkCrossingMode mode);

GdkColormap* _gtk_widget_peek_colormap (void);

void _gtk_widget_buildable_finish_accelerator (GtkWidget *widget,
            GtkWidget *toplevel,
            gpointer user_data);

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcontainer.h" 2



extern "C" {
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcontainer.h"
typedef struct _GtkContainer GtkContainer;
typedef struct _GtkContainerClass GtkContainerClass;

struct _GtkContainer
{
 GtkWidget widget;

 GtkWidget *focus_child;

 guint border_width : 16;


 guint need_resize : 1;
 guint resize_mode : 2;
 guint reallocate_redraws : 1;
 guint has_focus_chain : 1;
};

struct _GtkContainerClass
{
 GtkWidgetClass parent_class;

 void (*add) (GtkContainer *container,
    GtkWidget *widget);
 void (*remove) (GtkContainer *container,
    GtkWidget *widget);
 void (*check_resize) (GtkContainer *container);
 void (*forall) (GtkContainer *container,
    gboolean include_internals,
    GtkCallback callback,
    gpointer callback_data);
 void (*set_focus_child) (GtkContainer *container,
    GtkWidget *widget);
 GType (*child_type) (GtkContainer *container);
 gchar* (*composite_name) (GtkContainer *container,
    GtkWidget *child);
 void (*set_child_property) (GtkContainer *container,
    GtkWidget *child,
    guint property_id,
    const GValue *value,
    GParamSpec *pspec);
 void (*get_child_property) (GtkContainer *container,
                                GtkWidget *child,
    guint property_id,
    GValue *value,
    GParamSpec *pspec);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};



GType gtk_container_get_type (void) __attribute__((__const__));
void gtk_container_set_border_width (GtkContainer *container,
      guint border_width);
guint gtk_container_get_border_width (GtkContainer *container);
void gtk_container_add (GtkContainer *container,
      GtkWidget *widget);
void gtk_container_remove (GtkContainer *container,
      GtkWidget *widget);

void gtk_container_set_resize_mode (GtkContainer *container,
      GtkResizeMode resize_mode);
GtkResizeMode gtk_container_get_resize_mode (GtkContainer *container);

void gtk_container_check_resize (GtkContainer *container);

void gtk_container_foreach (GtkContainer *container,
        GtkCallback callback,
        gpointer callback_data);

void gtk_container_foreach_full (GtkContainer *container,
        GtkCallback callback,
        GtkCallbackMarshal marshal,
        gpointer callback_data,
        GDestroyNotify notify);


GList* gtk_container_get_children (GtkContainer *container);





void gtk_container_propagate_expose (GtkContainer *container,
     GtkWidget *child,
     GdkEventExpose *event);

void gtk_container_set_focus_chain (GtkContainer *container,
                                        GList *focusable_widgets);
gboolean gtk_container_get_focus_chain (GtkContainer *container,
     GList **focusable_widgets);
void gtk_container_unset_focus_chain (GtkContainer *container);



void gtk_container_set_reallocate_redraws (GtkContainer *container,
         gboolean needs_redraws);
void gtk_container_set_focus_child (GtkContainer *container,
        GtkWidget *child);
GtkWidget *
      gtk_container_get_focus_child (GtkContainer *container);
void gtk_container_set_focus_vadjustment (GtkContainer *container,
        GtkAdjustment *adjustment);
GtkAdjustment *gtk_container_get_focus_vadjustment (GtkContainer *container);
void gtk_container_set_focus_hadjustment (GtkContainer *container,
        GtkAdjustment *adjustment);
GtkAdjustment *gtk_container_get_focus_hadjustment (GtkContainer *container);

void gtk_container_resize_children (GtkContainer *container);

GType gtk_container_child_type (GtkContainer *container);


void gtk_container_class_install_child_property (GtkContainerClass *cclass,
       guint property_id,
       GParamSpec *pspec);
GParamSpec* gtk_container_class_find_child_property (GObjectClass *cclass,
       const gchar *property_name);
GParamSpec** gtk_container_class_list_child_properties (GObjectClass *cclass,
       guint *n_properties);
void gtk_container_add_with_properties (GtkContainer *container,
       GtkWidget *widget,
       const gchar *first_prop_name,
       ...) __attribute__((__sentinel__));
void gtk_container_child_set (GtkContainer *container,
       GtkWidget *child,
       const gchar *first_prop_name,
       ...) __attribute__((__sentinel__));
void gtk_container_child_get (GtkContainer *container,
       GtkWidget *child,
       const gchar *first_prop_name,
       ...) __attribute__((__sentinel__));
void gtk_container_child_set_valist (GtkContainer *container,
       GtkWidget *child,
       const gchar *first_property_name,
       va_list var_args);
void gtk_container_child_get_valist (GtkContainer *container,
       GtkWidget *child,
       const gchar *first_property_name,
       va_list var_args);
void gtk_container_child_set_property (GtkContainer *container,
       GtkWidget *child,
       const gchar *property_name,
       const GValue *value);
void gtk_container_child_get_property (GtkContainer *container,
       GtkWidget *child,
       const gchar *property_name,
       GValue *value);





void gtk_container_forall (GtkContainer *container,
          GtkCallback callback,
          gpointer callback_data);


void _gtk_container_queue_resize (GtkContainer *container);
void _gtk_container_clear_resize_widgets (GtkContainer *container);
gchar* _gtk_container_child_composite_name (GtkContainer *container,
          GtkWidget *child);
void _gtk_container_dequeue_resize_handler (GtkContainer *container);
GList *_gtk_container_focus_sort (GtkContainer *container,
          GList *children,
          GtkDirectionType direction,
          GtkWidget *old_focus);





}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbin.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbin.h"
typedef struct _GtkBin GtkBin;
typedef struct _GtkBinClass GtkBinClass;

struct _GtkBin
{
 GtkContainer container;

 GtkWidget *child;
};

struct _GtkBinClass
{
 GtkContainerClass parent_class;
};


GType gtk_bin_get_type (void) __attribute__((__const__));

GtkWidget *gtk_bin_get_child (GtkBin *bin);

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwindow.h" 2


extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwindow.h"
typedef struct _GtkWindowClass GtkWindowClass;
typedef struct _GtkWindowGeometryInfo GtkWindowGeometryInfo;
typedef struct _GtkWindowGroup GtkWindowGroup;
typedef struct _GtkWindowGroupClass GtkWindowGroupClass;

struct _GtkWindow
{
 GtkBin bin;

 gchar *title;
 gchar *wmclass_name;
 gchar *wmclass_class;
 gchar *wm_role;

 GtkWidget *focus_widget;
 GtkWidget *default_widget;
 GtkWindow *transient_parent;
 GtkWindowGeometryInfo *geometry_info;
 GdkWindow *frame;
 GtkWindowGroup *group;

 guint16 configure_request_count;
 guint allow_shrink : 1;
 guint allow_grow : 1;
 guint configure_notify_received : 1;






 guint need_default_position : 1;
 guint need_default_size : 1;
 guint position : 3;
 guint type : 4;
 guint has_user_ref_count : 1;
 guint has_focus : 1;

 guint modal : 1;
 guint destroy_with_parent : 1;

 guint has_frame : 1;


 guint iconify_initially : 1;
 guint stick_initially : 1;
 guint maximize_initially : 1;
 guint decorated : 1;

 guint type_hint : 3;


 guint gravity : 5;

 guint is_active : 1;
 guint has_toplevel_focus : 1;

 guint frame_left;
 guint frame_top;
 guint frame_right;
 guint frame_bottom;

 guint keys_changed_handler;

 GdkModifierType mnemonic_modifier;
 GdkScreen *screen;
};

struct _GtkWindowClass
{
 GtkBinClass parent_class;

 void (* set_focus) (GtkWindow *window,
      GtkWidget *focus);
 gboolean (* frame_event) (GtkWindow *window,
      GdkEvent *event);



 void (* activate_focus) (GtkWindow *window);
 void (* activate_default) (GtkWindow *window);





 void (* move_focus) (GtkWindow *window,
                                       GtkDirectionType direction);

 void (*keys_changed) (GtkWindow *window);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};
# 154 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkwindow.h"
struct _GtkWindowGroup
{
 GObject parent_instance;

 GSList *grabs;
};

struct _GtkWindowGroupClass
{
 GObjectClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};







GType gtk_window_get_type (void) __attribute__((__const__));
GtkWidget* gtk_window_new (GtkWindowType type);
void gtk_window_set_title (GtkWindow *window,
     const gchar *title);
const gchar *gtk_window_get_title (GtkWindow *window);
void gtk_window_set_wmclass (GtkWindow *window,
     const gchar *wmclass_name,
     const gchar *wmclass_class);
void gtk_window_set_role (GtkWindow *window,
                                               const gchar *role);
void gtk_window_set_startup_id (GtkWindow *window,
                                               const gchar *startup_id);
const gchar *gtk_window_get_role (GtkWindow *window);
void gtk_window_add_accel_group (GtkWindow *window,
     GtkAccelGroup *accel_group);
void gtk_window_remove_accel_group (GtkWindow *window,
     GtkAccelGroup *accel_group);
void gtk_window_set_position (GtkWindow *window,
     GtkWindowPosition position);
gboolean gtk_window_activate_focus (GtkWindow *window);
void gtk_window_set_focus (GtkWindow *window,
     GtkWidget *focus);
GtkWidget *gtk_window_get_focus (GtkWindow *window);
void gtk_window_set_default (GtkWindow *window,
     GtkWidget *default_widget);
GtkWidget *gtk_window_get_default_widget (GtkWindow *window);
gboolean gtk_window_activate_default (GtkWindow *window);

void gtk_window_set_transient_for (GtkWindow *window,
     GtkWindow *parent);
GtkWindow *gtk_window_get_transient_for (GtkWindow *window);
void gtk_window_set_opacity (GtkWindow *window,
     gdouble opacity);
gdouble gtk_window_get_opacity (GtkWindow *window);
void gtk_window_set_type_hint (GtkWindow *window,
     GdkWindowTypeHint hint);
GdkWindowTypeHint gtk_window_get_type_hint (GtkWindow *window);
void gtk_window_set_skip_taskbar_hint (GtkWindow *window,
                                               gboolean setting);
gboolean gtk_window_get_skip_taskbar_hint (GtkWindow *window);
void gtk_window_set_skip_pager_hint (GtkWindow *window,
                                               gboolean setting);
gboolean gtk_window_get_skip_pager_hint (GtkWindow *window);
void gtk_window_set_urgency_hint (GtkWindow *window,
                                               gboolean setting);
gboolean gtk_window_get_urgency_hint (GtkWindow *window);
void gtk_window_set_accept_focus (GtkWindow *window,
                                               gboolean setting);
gboolean gtk_window_get_accept_focus (GtkWindow *window);
void gtk_window_set_focus_on_map (GtkWindow *window,
                                               gboolean setting);
gboolean gtk_window_get_focus_on_map (GtkWindow *window);
void gtk_window_set_destroy_with_parent (GtkWindow *window,
                                               gboolean setting);
gboolean gtk_window_get_destroy_with_parent (GtkWindow *window);
void gtk_window_set_mnemonics_visible (GtkWindow *window,
                                               gboolean setting);
gboolean gtk_window_get_mnemonics_visible (GtkWindow *window);

void gtk_window_set_resizable (GtkWindow *window,
                                               gboolean resizable);
gboolean gtk_window_get_resizable (GtkWindow *window);

void gtk_window_set_gravity (GtkWindow *window,
                                               GdkGravity gravity);
GdkGravity gtk_window_get_gravity (GtkWindow *window);


void gtk_window_set_geometry_hints (GtkWindow *window,
     GtkWidget *geometry_widget,
     GdkGeometry *geometry,
     GdkWindowHints geom_mask);

void gtk_window_set_screen (GtkWindow *window,
     GdkScreen *screen);
GdkScreen* gtk_window_get_screen (GtkWindow *window);

gboolean gtk_window_is_active (GtkWindow *window);
gboolean gtk_window_has_toplevel_focus (GtkWindow *window);




void gtk_window_set_has_frame (GtkWindow *window,
     gboolean setting);
gboolean gtk_window_get_has_frame (GtkWindow *window);
void gtk_window_set_frame_dimensions (GtkWindow *window,
     gint left,
     gint top,
     gint right,
     gint bottom);
void gtk_window_get_frame_dimensions (GtkWindow *window,
     gint *left,
     gint *top,
     gint *right,
     gint *bottom);

void gtk_window_set_decorated (GtkWindow *window,
                                               gboolean setting);
gboolean gtk_window_get_decorated (GtkWindow *window);
void gtk_window_set_deletable (GtkWindow *window,
                                               gboolean setting);
gboolean gtk_window_get_deletable (GtkWindow *window);

void gtk_window_set_icon_list (GtkWindow *window,
                                                   GList *list);
GList* gtk_window_get_icon_list (GtkWindow *window);
void gtk_window_set_icon (GtkWindow *window,
                                                   GdkPixbuf *icon);
void gtk_window_set_icon_name (GtkWindow *window,
         const gchar *name);
gboolean gtk_window_set_icon_from_file (GtkWindow *window,
         const gchar *filename,
         GError **err);
GdkPixbuf* gtk_window_get_icon (GtkWindow *window);
const gchar *
          gtk_window_get_icon_name (GtkWindow *window);
void gtk_window_set_default_icon_list (GList *list);
GList* gtk_window_get_default_icon_list (void);
void gtk_window_set_default_icon (GdkPixbuf *icon);
void gtk_window_set_default_icon_name (const gchar *name);
const gchar *
          gtk_window_get_default_icon_name (void);
gboolean gtk_window_set_default_icon_from_file (const gchar *filename,
         GError **err);

void gtk_window_set_auto_startup_notification (gboolean setting);


void gtk_window_set_modal (GtkWindow *window,
         gboolean modal);
gboolean gtk_window_get_modal (GtkWindow *window);
GList* gtk_window_list_toplevels (void);

void gtk_window_add_mnemonic (GtkWindow *window,
       guint keyval,
       GtkWidget *target);
void gtk_window_remove_mnemonic (GtkWindow *window,
       guint keyval,
       GtkWidget *target);
gboolean gtk_window_mnemonic_activate (GtkWindow *window,
       guint keyval,
       GdkModifierType modifier);
void gtk_window_set_mnemonic_modifier (GtkWindow *window,
       GdkModifierType modifier);
GdkModifierType gtk_window_get_mnemonic_modifier (GtkWindow *window);

gboolean gtk_window_activate_key (GtkWindow *window,
       GdkEventKey *event);
gboolean gtk_window_propagate_key_event (GtkWindow *window,
       GdkEventKey *event);

void gtk_window_present (GtkWindow *window);
void gtk_window_present_with_time (GtkWindow *window,
           guint32 timestamp);
void gtk_window_iconify (GtkWindow *window);
void gtk_window_deiconify (GtkWindow *window);
void gtk_window_stick (GtkWindow *window);
void gtk_window_unstick (GtkWindow *window);
void gtk_window_maximize (GtkWindow *window);
void gtk_window_unmaximize (GtkWindow *window);
void gtk_window_fullscreen (GtkWindow *window);
void gtk_window_unfullscreen (GtkWindow *window);
void gtk_window_set_keep_above (GtkWindow *window, gboolean setting);
void gtk_window_set_keep_below (GtkWindow *window, gboolean setting);

void gtk_window_begin_resize_drag (GtkWindow *window,
                                  GdkWindowEdge edge,
                                  gint button,
                                  gint root_x,
                                  gint root_y,
                                  guint32 timestamp);
void gtk_window_begin_move_drag (GtkWindow *window,
                                  gint button,
                                  gint root_x,
                                  gint root_y,
                                  guint32 timestamp);


void gtk_window_set_policy (GtkWindow *window,
     gint allow_shrink,
     gint allow_grow,
     gint auto_shrink);






void gtk_window_set_default_size (GtkWindow *window,
                                     gint width,
                                     gint height);
void gtk_window_get_default_size (GtkWindow *window,
                                     gint *width,
                                     gint *height);
void gtk_window_resize (GtkWindow *window,
                                     gint width,
                                     gint height);
void gtk_window_get_size (GtkWindow *window,
                                     gint *width,
                                     gint *height);
void gtk_window_move (GtkWindow *window,
                                     gint x,
                                     gint y);
void gtk_window_get_position (GtkWindow *window,
                                     gint *root_x,
                                     gint *root_y);
gboolean gtk_window_parse_geometry (GtkWindow *window,
                                     const gchar *geometry);
GtkWindowGroup *gtk_window_get_group (GtkWindow *window);
gboolean gtk_window_has_group (GtkWindow *window);


void gtk_window_reshow_with_initial_size (GtkWindow *window);

GtkWindowType gtk_window_get_window_type (GtkWindow *window);



GType gtk_window_group_get_type (void) __attribute__((__const__));

GtkWindowGroup * gtk_window_group_new (void);
void gtk_window_group_add_window (GtkWindowGroup *window_group,
      GtkWindow *window);
void gtk_window_group_remove_window (GtkWindowGroup *window_group,
             GtkWindow *window);
GList * gtk_window_group_list_windows (GtkWindowGroup *window_group);



void _gtk_window_internal_set_focus (GtkWindow *window,
     GtkWidget *focus);
void gtk_window_remove_embedded_xid (GtkWindow *window,
     GdkNativeWindow xid);
void gtk_window_add_embedded_xid (GtkWindow *window,
     GdkNativeWindow xid);
void _gtk_window_reposition (GtkWindow *window,
     gint x,
     gint y);
void _gtk_window_constrain_size (GtkWindow *window,
     gint width,
     gint height,
     gint *new_width,
     gint *new_height);
GtkWidget *gtk_window_group_get_current_grab (GtkWindowGroup *window_group);

void _gtk_window_set_has_toplevel_focus (GtkWindow *window,
         gboolean has_toplevel_focus);
void _gtk_window_unset_focus_and_default (GtkWindow *window,
          GtkWidget *widget);

void _gtk_window_set_is_active (GtkWindow *window,
         gboolean is_active);

void _gtk_window_set_is_toplevel (GtkWindow *window,
         gboolean is_toplevel);

typedef void (*GtkWindowKeysForeachFunc) (GtkWindow *window,
      guint keyval,
      GdkModifierType modifiers,
      gboolean is_mnemonic,
      gpointer data);

void _gtk_window_keys_foreach (GtkWindow *window,
         GtkWindowKeysForeachFunc func,
         gpointer func_data);


gboolean _gtk_window_query_nonaccels (GtkWindow *window,
      guint accel_key,
      GdkModifierType accel_mods);

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdialog.h" 2


extern "C" {


typedef enum
{
 GTK_DIALOG_MODAL = 1 << 0,
 GTK_DIALOG_DESTROY_WITH_PARENT = 1 << 1,
 GTK_DIALOG_NO_SEPARATOR = 1 << 2
} GtkDialogFlags;
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdialog.h"
typedef enum
{



 GTK_RESPONSE_NONE = -1,





 GTK_RESPONSE_REJECT = -2,
 GTK_RESPONSE_ACCEPT = -3,


 GTK_RESPONSE_DELETE_EVENT = -4,




 GTK_RESPONSE_OK = -5,
 GTK_RESPONSE_CANCEL = -6,
 GTK_RESPONSE_CLOSE = -7,
 GTK_RESPONSE_YES = -8,
 GTK_RESPONSE_NO = -9,
 GTK_RESPONSE_APPLY = -10,
 GTK_RESPONSE_HELP = -11
} GtkResponseType;
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdialog.h"
typedef struct _GtkDialog GtkDialog;
typedef struct _GtkDialogClass GtkDialogClass;

struct _GtkDialog
{
 GtkWindow window;


 GtkWidget *vbox;
 GtkWidget *action_area;


 GtkWidget *separator;
};

struct _GtkDialogClass
{
 GtkWindowClass parent_class;

 void (* response) (GtkDialog *dialog, gint response_id);



 void (* close) (GtkDialog *dialog);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_dialog_get_type (void) __attribute__((__const__));
GtkWidget* gtk_dialog_new (void);

GtkWidget* gtk_dialog_new_with_buttons (const gchar *title,
                                       GtkWindow *parent,
                                       GtkDialogFlags flags,
                                       const gchar *first_button_text,
                                       ...);

void gtk_dialog_add_action_widget (GtkDialog *dialog,
                                        GtkWidget *child,
                                        gint response_id);
GtkWidget* gtk_dialog_add_button (GtkDialog *dialog,
                                        const gchar *button_text,
                                        gint response_id);
void gtk_dialog_add_buttons (GtkDialog *dialog,
                                        const gchar *first_button_text,
                                        ...) __attribute__((__sentinel__));

void gtk_dialog_set_response_sensitive (GtkDialog *dialog,
                                       gint response_id,
                                       gboolean setting);
void gtk_dialog_set_default_response (GtkDialog *dialog,
                                       gint response_id);
GtkWidget* gtk_dialog_get_widget_for_response (GtkDialog *dialog,
                                              gint response_id);
gint gtk_dialog_get_response_for_widget (GtkDialog *dialog,
     GtkWidget *widget);


void gtk_dialog_set_has_separator (GtkDialog *dialog,
                                      gboolean setting);
gboolean gtk_dialog_get_has_separator (GtkDialog *dialog);


gboolean gtk_alternative_dialog_button_order (GdkScreen *screen);
void gtk_dialog_set_alternative_button_order (GtkDialog *dialog,
       gint first_response_id,
       ...);
void gtk_dialog_set_alternative_button_order_from_array (GtkDialog *dialog,
                                                            gint n_params,
                                                            gint *new_order);


void gtk_dialog_response (GtkDialog *dialog,
                                   gint response_id);


gint gtk_dialog_run (GtkDialog *dialog);

GtkWidget * gtk_dialog_get_action_area (GtkDialog *dialog);
GtkWidget * gtk_dialog_get_content_area (GtkDialog *dialog);


void _gtk_dialog_set_ignore_separator (GtkDialog *dialog,
          gboolean ignore_separator);

}
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaboutdialog.h" 2

extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaboutdialog.h"
typedef struct _GtkAboutDialog GtkAboutDialog;
typedef struct _GtkAboutDialogClass GtkAboutDialogClass;







struct _GtkAboutDialog
{
 GtkDialog parent_instance;


 gpointer private_data;
};

struct _GtkAboutDialogClass
{
 GtkDialogClass parent_class;

 gboolean (*activate_link) (GtkAboutDialog *dialog,
                            const gchar *uri);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
};

GType gtk_about_dialog_get_type (void) __attribute__((__const__));
GtkWidget *gtk_about_dialog_new (void);
void gtk_show_about_dialog (GtkWindow *parent,
       const gchar *first_property_name,
       ...) __attribute__((__sentinel__));


const gchar * gtk_about_dialog_get_name (GtkAboutDialog *about);
void gtk_about_dialog_set_name (GtkAboutDialog *about,
       const gchar *name);

const gchar * gtk_about_dialog_get_program_name (GtkAboutDialog *about);
void gtk_about_dialog_set_program_name (GtkAboutDialog *about,
       const gchar *name);
const gchar * gtk_about_dialog_get_version (GtkAboutDialog *about);
void gtk_about_dialog_set_version (GtkAboutDialog *about,
       const gchar *version);
const gchar * gtk_about_dialog_get_copyright (GtkAboutDialog *about);
void gtk_about_dialog_set_copyright (GtkAboutDialog *about,
       const gchar *copyright);
const gchar * gtk_about_dialog_get_comments (GtkAboutDialog *about);
void gtk_about_dialog_set_comments (GtkAboutDialog *about,
       const gchar *comments);
const gchar * gtk_about_dialog_get_license (GtkAboutDialog *about);
void gtk_about_dialog_set_license (GtkAboutDialog *about,
       const gchar *license);

gboolean gtk_about_dialog_get_wrap_license (GtkAboutDialog *about);
void gtk_about_dialog_set_wrap_license (GtkAboutDialog *about,
                                                               gboolean wrap_license);

const gchar * gtk_about_dialog_get_website (GtkAboutDialog *about);
void gtk_about_dialog_set_website (GtkAboutDialog *about,
       const gchar *website);
const gchar * gtk_about_dialog_get_website_label (GtkAboutDialog *about);
void gtk_about_dialog_set_website_label (GtkAboutDialog *about,
       const gchar *website_label);
const gchar* const * gtk_about_dialog_get_authors (GtkAboutDialog *about);
void gtk_about_dialog_set_authors (GtkAboutDialog *about,
       const gchar **authors);
const gchar* const * gtk_about_dialog_get_documenters (GtkAboutDialog *about);
void gtk_about_dialog_set_documenters (GtkAboutDialog *about,
       const gchar **documenters);
const gchar* const * gtk_about_dialog_get_artists (GtkAboutDialog *about);
void gtk_about_dialog_set_artists (GtkAboutDialog *about,
       const gchar **artists);
const gchar * gtk_about_dialog_get_translator_credits (GtkAboutDialog *about);
void gtk_about_dialog_set_translator_credits (GtkAboutDialog *about,
       const gchar *translator_credits);
GdkPixbuf *gtk_about_dialog_get_logo (GtkAboutDialog *about);
void gtk_about_dialog_set_logo (GtkAboutDialog *about,
       GdkPixbuf *logo);
const gchar * gtk_about_dialog_get_logo_icon_name (GtkAboutDialog *about);
void gtk_about_dialog_set_logo_icon_name (GtkAboutDialog *about,
       const gchar *icon_name);
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaboutdialog.h"
typedef void (* GtkAboutDialogActivateLinkFunc) (GtkAboutDialog *about,
      const gchar *link_,
      gpointer data);


GtkAboutDialogActivateLinkFunc gtk_about_dialog_set_email_hook (GtkAboutDialogActivateLinkFunc func,
       gpointer data,
       GDestroyNotify destroy);
GtkAboutDialogActivateLinkFunc gtk_about_dialog_set_url_hook (GtkAboutDialogActivateLinkFunc func,
       gpointer data,
       GDestroyNotify destroy);


}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccellabel.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccellabel.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklabel.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklabel.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmisc.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmisc.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmisc.h"
typedef struct _GtkMisc GtkMisc;
typedef struct _GtkMiscClass GtkMiscClass;

struct _GtkMisc
{
 GtkWidget widget;

 gfloat xalign;
 gfloat yalign;

 guint16 xpad;
 guint16 ypad;
};

struct _GtkMiscClass
{
 GtkWidgetClass parent_class;
};


GType gtk_misc_get_type (void) __attribute__((__const__));
void gtk_misc_set_alignment (GtkMisc *misc,
   gfloat xalign,
   gfloat yalign);
void gtk_misc_get_alignment (GtkMisc *misc,
   gfloat *xalign,
   gfloat *yalign);
void gtk_misc_set_padding (GtkMisc *misc,
   gint xpad,
   gint ypad);
void gtk_misc_get_padding (GtkMisc *misc,
   gint *xpad,
   gint *ypad);


}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklabel.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenu.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenu.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenushell.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenushell.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenushell.h"
typedef struct _GtkMenuShell GtkMenuShell;
typedef struct _GtkMenuShellClass GtkMenuShellClass;

struct _GtkMenuShell
{
 GtkContainer container;

 GList *children;
 GtkWidget *active_menu_item;
 GtkWidget *parent_menu_shell;

 guint button;
 guint32 activate_time;

 guint active : 1;
 guint have_grab : 1;
 guint have_xgrab : 1;
 guint ignore_leave : 1;
 guint menu_flag : 1;
 guint ignore_enter : 1;
 guint keyboard_mode : 1;
};

struct _GtkMenuShellClass
{
 GtkContainerClass parent_class;

 guint submenu_placement : 1;

 void (*deactivate) (GtkMenuShell *menu_shell);
 void (*selection_done) (GtkMenuShell *menu_shell);

 void (*move_current) (GtkMenuShell *menu_shell,
      GtkMenuDirectionType direction);
 void (*activate_current) (GtkMenuShell *menu_shell,
      gboolean force_hide);
 void (*cancel) (GtkMenuShell *menu_shell);
 void (*select_item) (GtkMenuShell *menu_shell,
      GtkWidget *menu_item);
 void (*insert) (GtkMenuShell *menu_shell,
      GtkWidget *child,
      gint position);
 gint (*get_popup_delay) (GtkMenuShell *menu_shell);
 gboolean (*move_selected) (GtkMenuShell *menu_shell,
       gint distance);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
};


GType gtk_menu_shell_get_type (void) __attribute__((__const__));
void gtk_menu_shell_append (GtkMenuShell *menu_shell,
    GtkWidget *child);
void gtk_menu_shell_prepend (GtkMenuShell *menu_shell,
    GtkWidget *child);
void gtk_menu_shell_insert (GtkMenuShell *menu_shell,
    GtkWidget *child,
    gint position);
void gtk_menu_shell_deactivate (GtkMenuShell *menu_shell);
void gtk_menu_shell_select_item (GtkMenuShell *menu_shell,
    GtkWidget *menu_item);
void gtk_menu_shell_deselect (GtkMenuShell *menu_shell);
void gtk_menu_shell_activate_item (GtkMenuShell *menu_shell,
    GtkWidget *menu_item,
    gboolean force_deactivate);
void gtk_menu_shell_select_first (GtkMenuShell *menu_shell,
    gboolean search_sensitive);
void _gtk_menu_shell_select_last (GtkMenuShell *menu_shell,
    gboolean search_sensitive);
void _gtk_menu_shell_activate (GtkMenuShell *menu_shell);
gint _gtk_menu_shell_get_popup_delay (GtkMenuShell *menu_shell);
void gtk_menu_shell_cancel (GtkMenuShell *menu_shell);

void _gtk_menu_shell_add_mnemonic (GtkMenuShell *menu_shell,
                                       guint keyval,
                                       GtkWidget *target);
void _gtk_menu_shell_remove_mnemonic (GtkMenuShell *menu_shell,
                                       guint keyval,
                                       GtkWidget *target);

gboolean gtk_menu_shell_get_take_focus (GtkMenuShell *menu_shell);
void gtk_menu_shell_set_take_focus (GtkMenuShell *menu_shell,
                                       gboolean take_focus);

void _gtk_menu_shell_update_mnemonics (GtkMenuShell *menu_shell);
void _gtk_menu_shell_set_keyboard_mode (GtkMenuShell *menu_shell,
                                           gboolean keyboard_mode);
gboolean _gtk_menu_shell_get_keyboard_mode (GtkMenuShell *menu_shell);

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenu.h" 2


extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenu.h"
typedef struct _GtkMenu GtkMenu;
typedef struct _GtkMenuClass GtkMenuClass;

typedef void (*GtkMenuPositionFunc) (GtkMenu *menu,
        gint *x,
        gint *y,
        gboolean *push_in,
        gpointer user_data);
typedef void (*GtkMenuDetachFunc) (GtkWidget *attach_widget,
        GtkMenu *menu);

struct _GtkMenu
{
 GtkMenuShell menu_shell;

 GtkWidget *parent_menu_item;
 GtkWidget *old_active_menu_item;

 GtkAccelGroup *accel_group;
 gchar *accel_path;
 GtkMenuPositionFunc position_func;
 gpointer position_func_data;

 guint toggle_size;




 GtkWidget *toplevel;

 GtkWidget *tearoff_window;
 GtkWidget *tearoff_hbox;
 GtkWidget *tearoff_scrollbar;
 GtkAdjustment *tearoff_adjustment;

 GdkWindow *view_window;
 GdkWindow *bin_window;

 gint scroll_offset;
 gint saved_scroll_offset;
 gint scroll_step;
 guint timeout_id;




 GdkRegion *navigation_region;
 guint navigation_timeout;

 guint needs_destruction_ref_count : 1;
 guint torn_off : 1;



 guint tearoff_active : 1;

 guint scroll_fast : 1;

 guint upper_arrow_visible : 1;
 guint lower_arrow_visible : 1;
 guint upper_arrow_prelight : 1;
 guint lower_arrow_prelight : 1;
};

struct _GtkMenuClass
{
 GtkMenuShellClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_menu_get_type (void) __attribute__((__const__));
GtkWidget* gtk_menu_new (void);


void gtk_menu_popup (GtkMenu *menu,
       GtkWidget *parent_menu_shell,
       GtkWidget *parent_menu_item,
       GtkMenuPositionFunc func,
       gpointer data,
       guint button,
       guint32 activate_time);




void gtk_menu_reposition (GtkMenu *menu);

void gtk_menu_popdown (GtkMenu *menu);




GtkWidget* gtk_menu_get_active (GtkMenu *menu);
void gtk_menu_set_active (GtkMenu *menu,
       guint index_);




void gtk_menu_set_accel_group (GtkMenu *menu,
       GtkAccelGroup *accel_group);
GtkAccelGroup* gtk_menu_get_accel_group (GtkMenu *menu);
void gtk_menu_set_accel_path (GtkMenu *menu,
       const gchar *accel_path);
const gchar* gtk_menu_get_accel_path (GtkMenu *menu);





void gtk_menu_attach_to_widget (GtkMenu *menu,
       GtkWidget *attach_widget,
       GtkMenuDetachFunc detacher);
void gtk_menu_detach (GtkMenu *menu);





GtkWidget* gtk_menu_get_attach_widget (GtkMenu *menu);

void gtk_menu_set_tearoff_state (GtkMenu *menu,
       gboolean torn_off);
gboolean gtk_menu_get_tearoff_state (GtkMenu *menu);




void gtk_menu_set_title (GtkMenu *menu,
       const gchar *title);
const gchar *gtk_menu_get_title (GtkMenu *menu);

void gtk_menu_reorder_child (GtkMenu *menu,
                                          GtkWidget *child,
                                          gint position);

void gtk_menu_set_screen (GtkMenu *menu,
       GdkScreen *screen);

void gtk_menu_attach (GtkMenu *menu,
                                          GtkWidget *child,
                                          guint left_attach,
                                          guint right_attach,
                                          guint top_attach,
                                          guint bottom_attach);

void gtk_menu_set_monitor (GtkMenu *menu,
                                          gint monitor_num);
gint gtk_menu_get_monitor (GtkMenu *menu);
GList* gtk_menu_get_for_attach_widget (GtkWidget *widget);







void gtk_menu_set_reserve_toggle_size (GtkMenu *menu,
                                         gboolean reserve_toggle_size);
gboolean gtk_menu_get_reserve_toggle_size (GtkMenu *menu);


}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklabel.h" 2


extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklabel.h"
typedef struct _GtkLabel GtkLabel;
typedef struct _GtkLabelClass GtkLabelClass;

typedef struct _GtkLabelSelectionInfo GtkLabelSelectionInfo;

struct _GtkLabel
{
 GtkMisc misc;


 gchar *label;
 guint jtype : 2;
 guint wrap : 1;
 guint use_underline : 1;
 guint use_markup : 1;
 guint ellipsize : 3;
 guint single_line_mode : 1;
 guint have_transform : 1;
 guint in_click : 1;
 guint wrap_mode : 3;
 guint pattern_set : 1;
 guint track_links : 1;

 guint mnemonic_keyval;

 gchar *text;
 PangoAttrList *attrs;
 PangoAttrList *effective_attrs;

 PangoLayout *layout;

 GtkWidget *mnemonic_widget;
 GtkWindow *mnemonic_window;

 GtkLabelSelectionInfo *select_info;
};

struct _GtkLabelClass
{
 GtkMiscClass parent_class;

 void (* move_cursor) (GtkLabel *label,
      GtkMovementStep step,
      gint count,
      gboolean extend_selection);
 void (* copy_clipboard) (GtkLabel *label);


 void (* populate_popup) (GtkLabel *label,
                            GtkMenu *menu);

 gboolean (*activate_link) (GtkLabel *label,
                            const gchar *uri);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
};

GType gtk_label_get_type (void) __attribute__((__const__));
GtkWidget* gtk_label_new (const gchar *str);
GtkWidget* gtk_label_new_with_mnemonic (const gchar *str);
void gtk_label_set_text (GtkLabel *label,
        const gchar *str);
const gchar * gtk_label_get_text (GtkLabel *label);
void gtk_label_set_attributes (GtkLabel *label,
        PangoAttrList *attrs);
PangoAttrList *gtk_label_get_attributes (GtkLabel *label);
void gtk_label_set_label (GtkLabel *label,
        const gchar *str);
const gchar * gtk_label_get_label (GtkLabel *label);
void gtk_label_set_markup (GtkLabel *label,
        const gchar *str);
void gtk_label_set_use_markup (GtkLabel *label,
        gboolean setting);
gboolean gtk_label_get_use_markup (GtkLabel *label);
void gtk_label_set_use_underline (GtkLabel *label,
        gboolean setting);
gboolean gtk_label_get_use_underline (GtkLabel *label);

void gtk_label_set_markup_with_mnemonic (GtkLabel *label,
        const gchar *str);
guint gtk_label_get_mnemonic_keyval (GtkLabel *label);
void gtk_label_set_mnemonic_widget (GtkLabel *label,
        GtkWidget *widget);
GtkWidget *gtk_label_get_mnemonic_widget (GtkLabel *label);
void gtk_label_set_text_with_mnemonic (GtkLabel *label,
        const gchar *str);
void gtk_label_set_justify (GtkLabel *label,
        GtkJustification jtype);
GtkJustification gtk_label_get_justify (GtkLabel *label);
void gtk_label_set_ellipsize (GtkLabel *label,
        PangoEllipsizeMode mode);
PangoEllipsizeMode gtk_label_get_ellipsize (GtkLabel *label);
void gtk_label_set_width_chars (GtkLabel *label,
        gint n_chars);
gint gtk_label_get_width_chars (GtkLabel *label);
void gtk_label_set_max_width_chars (GtkLabel *label,
          gint n_chars);
gint gtk_label_get_max_width_chars (GtkLabel *label);
void gtk_label_set_pattern (GtkLabel *label,
        const gchar *pattern);
void gtk_label_set_line_wrap (GtkLabel *label,
        gboolean wrap);
gboolean gtk_label_get_line_wrap (GtkLabel *label);
void gtk_label_set_line_wrap_mode (GtkLabel *label,
        PangoWrapMode wrap_mode);
PangoWrapMode gtk_label_get_line_wrap_mode (GtkLabel *label);
void gtk_label_set_selectable (GtkLabel *label,
        gboolean setting);
gboolean gtk_label_get_selectable (GtkLabel *label);
void gtk_label_set_angle (GtkLabel *label,
        gdouble angle);
gdouble gtk_label_get_angle (GtkLabel *label);
void gtk_label_select_region (GtkLabel *label,
        gint start_offset,
        gint end_offset);
gboolean gtk_label_get_selection_bounds (GtkLabel *label,
                                                  gint *start,
                                                  gint *end);

PangoLayout *gtk_label_get_layout (GtkLabel *label);
void gtk_label_get_layout_offsets (GtkLabel *label,
                                          gint *x,
                                          gint *y);

void gtk_label_set_single_line_mode (GtkLabel *label,
                                             gboolean single_line_mode);
gboolean gtk_label_get_single_line_mode (GtkLabel *label);

const gchar *gtk_label_get_current_uri (GtkLabel *label);
void gtk_label_set_track_visited_links (GtkLabel *label,
                                                gboolean track_links);
gboolean gtk_label_get_track_visited_links (GtkLabel *label);




void gtk_label_get (GtkLabel *label,
                                   gchar **str);





guint gtk_label_parse_uline (GtkLabel *label,
    const gchar *string);





void _gtk_label_mnemonics_visible_apply_recursively (GtkWidget *widget,
                                                    gboolean mnemonics_visible);

}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccellabel.h" 2


extern "C" {
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccellabel.h"
typedef struct _GtkAccelLabel GtkAccelLabel;
typedef struct _GtkAccelLabelClass GtkAccelLabelClass;







struct _GtkAccelLabel
{
 GtkLabel label;

 guint gtk_reserved;
 guint accel_padding;
 GtkWidget *accel_widget;
 GClosure *accel_closure;
 GtkAccelGroup *accel_group;
 gchar *accel_string;
 guint16 accel_string_width;
};

struct _GtkAccelLabelClass
{
 GtkLabelClass parent_class;

 gchar *signal_quote1;
 gchar *signal_quote2;
 gchar *mod_name_shift;
 gchar *mod_name_control;
 gchar *mod_name_alt;
 gchar *mod_separator;
 gchar *accel_seperator;
 guint latin1_to_char : 1;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};





GType gtk_accel_label_get_type (void) __attribute__((__const__));
GtkWidget* gtk_accel_label_new (const gchar *string);
GtkWidget* gtk_accel_label_get_accel_widget (GtkAccelLabel *accel_label);
guint gtk_accel_label_get_accel_width (GtkAccelLabel *accel_label);
void gtk_accel_label_set_accel_widget (GtkAccelLabel *accel_label,
          GtkWidget *accel_widget);
void gtk_accel_label_set_accel_closure (GtkAccelLabel *accel_label,
          GClosure *accel_closure);
gboolean gtk_accel_label_refetch (GtkAccelLabel *accel_label);


gchar * _gtk_accel_label_class_get_accelerator_label (GtkAccelLabelClass *klass,
       guint accelerator_key,
       GdkModifierType accelerator_mods);

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelmap.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelmap.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelmap.h"
typedef struct _GtkAccelMap GtkAccelMap;
typedef struct _GtkAccelMapClass GtkAccelMapClass;


typedef void (*GtkAccelMapForeach) (gpointer data,
      const gchar *accel_path,
      guint accel_key,
      GdkModifierType accel_mods,
      gboolean changed);
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccelmap.h"
void gtk_accel_map_add_entry (const gchar *accel_path,
     guint accel_key,
     GdkModifierType accel_mods);
gboolean gtk_accel_map_lookup_entry (const gchar *accel_path,
     GtkAccelKey *key);
gboolean gtk_accel_map_change_entry (const gchar *accel_path,
     guint accel_key,
     GdkModifierType accel_mods,
     gboolean replace);
void gtk_accel_map_load (const gchar *file_name);
void gtk_accel_map_save (const gchar *file_name);
void gtk_accel_map_foreach (gpointer data,
     GtkAccelMapForeach foreach_func);
void gtk_accel_map_load_fd (gint fd);
void gtk_accel_map_load_scanner (GScanner *scanner);
void gtk_accel_map_save_fd (gint fd);

void gtk_accel_map_lock_path (const gchar *accel_path);
void gtk_accel_map_unlock_path (const gchar *accel_path);


void gtk_accel_map_add_filter (const gchar *filter_pattern);
void gtk_accel_map_foreach_unfiltered (gpointer data,
      GtkAccelMapForeach foreach_func);


GType gtk_accel_map_get_type (void) __attribute__((__const__));
GtkAccelMap *gtk_accel_map_get (void);



void _gtk_accel_map_init (void);

void _gtk_accel_map_add_group (const gchar *accel_path,
       GtkAccelGroup *accel_group);
void _gtk_accel_map_remove_group (const gchar *accel_path,
       GtkAccelGroup *accel_group);
gboolean _gtk_accel_path_is_valid (const gchar *accel_path);


}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccessible.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccessible.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaccessible.h"
typedef struct _GtkAccessible GtkAccessible;
typedef struct _GtkAccessibleClass GtkAccessibleClass;




struct _GtkAccessible
{
 AtkObject parent;





 GtkWidget *widget;
};

struct _GtkAccessibleClass
{
 AtkObjectClass parent_class;

 void (*connect_widget_destroyed) (GtkAccessible *accessible);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_accessible_get_type (void) __attribute__((__const__));

void gtk_accessible_set_widget (GtkAccessible *accessible,
                                                       GtkWidget *widget);
GtkWidget* gtk_accessible_get_widget (GtkAccessible *accessible);
void gtk_accessible_connect_widget_destroyed (GtkAccessible *accessible);

}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaction.h" 1
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaction.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaction.h"
typedef struct _GtkAction GtkAction;
typedef struct _GtkActionClass GtkActionClass;
typedef struct _GtkActionPrivate GtkActionPrivate;

struct _GtkAction
{
 GObject object;



 GtkActionPrivate *private_data;
};

struct _GtkActionClass
{
 GObjectClass parent_class;


 void (* activate) (GtkAction *action);

 GType menu_item_type;
 GType toolbar_item_type;


 GtkWidget *(* create_menu_item) (GtkAction *action);
 GtkWidget *(* create_tool_item) (GtkAction *action);
 void (* connect_proxy) (GtkAction *action,
        GtkWidget *proxy);
 void (* disconnect_proxy) (GtkAction *action,
        GtkWidget *proxy);

 GtkWidget *(* create_menu) (GtkAction *action);


 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_action_get_type (void) __attribute__((__const__));
GtkAction *gtk_action_new (const gchar *name,
     const gchar *label,
     const gchar *tooltip,
     const gchar *stock_id);
const gchar* gtk_action_get_name (GtkAction *action);
gboolean gtk_action_is_sensitive (GtkAction *action);
gboolean gtk_action_get_sensitive (GtkAction *action);
void gtk_action_set_sensitive (GtkAction *action,
     gboolean sensitive);
gboolean gtk_action_is_visible (GtkAction *action);
gboolean gtk_action_get_visible (GtkAction *action);
void gtk_action_set_visible (GtkAction *action,
     gboolean visible);
void gtk_action_activate (GtkAction *action);
GtkWidget * gtk_action_create_icon (GtkAction *action,
     GtkIconSize icon_size);
GtkWidget * gtk_action_create_menu_item (GtkAction *action);
GtkWidget * gtk_action_create_tool_item (GtkAction *action);
GtkWidget * gtk_action_create_menu (GtkAction *action);
GSList * gtk_action_get_proxies (GtkAction *action);
void gtk_action_connect_accelerator (GtkAction *action);
void gtk_action_disconnect_accelerator (GtkAction *action);
const gchar *gtk_action_get_accel_path (GtkAction *action);
GClosure *gtk_action_get_accel_closure (GtkAction *action);


GtkAction *gtk_widget_get_action (GtkWidget *widget);
void gtk_action_connect_proxy (GtkAction *action,
     GtkWidget *proxy);
void gtk_action_disconnect_proxy (GtkAction *action,
     GtkWidget *proxy);
void gtk_action_block_activate_from (GtkAction *action,
     GtkWidget *proxy);
void gtk_action_unblock_activate_from (GtkAction *action,
     GtkWidget *proxy);

void gtk_action_block_activate (GtkAction *action);
void gtk_action_unblock_activate (GtkAction *action);


void _gtk_action_add_to_proxy_list (GtkAction *action,
     GtkWidget *proxy);
void _gtk_action_remove_from_proxy_list(GtkAction *action,
     GtkWidget *proxy);


void _gtk_action_emit_activate (GtkAction *action);


void gtk_action_set_accel_path (GtkAction *action,
     const gchar *accel_path);
void gtk_action_set_accel_group (GtkAction *action,
     GtkAccelGroup *accel_group);
void _gtk_action_sync_menu_visible (GtkAction *action,
     GtkWidget *proxy,
     gboolean empty);

void gtk_action_set_label (GtkAction *action,
                                                        const gchar *label);
const gchar * gtk_action_get_label (GtkAction *action);
void gtk_action_set_short_label (GtkAction *action,
                                                        const gchar *short_label);
const gchar * gtk_action_get_short_label (GtkAction *action);
void gtk_action_set_tooltip (GtkAction *action,
                                                        const gchar *tooltip);
const gchar * gtk_action_get_tooltip (GtkAction *action);
void gtk_action_set_stock_id (GtkAction *action,
                                                        const gchar *stock_id);
const gchar * gtk_action_get_stock_id (GtkAction *action);
void gtk_action_set_gicon (GtkAction *action,
                                                        GIcon *icon);
GIcon *gtk_action_get_gicon (GtkAction *action);
void gtk_action_set_icon_name (GtkAction *action,
                                                        const gchar *icon_name);
const gchar * gtk_action_get_icon_name (GtkAction *action);
void gtk_action_set_visible_horizontal (GtkAction *action,
                                                        gboolean visible_horizontal);
gboolean gtk_action_get_visible_horizontal (GtkAction *action);
void gtk_action_set_visible_vertical (GtkAction *action,
                                                        gboolean visible_vertical);
gboolean gtk_action_get_visible_vertical (GtkAction *action);
void gtk_action_set_is_important (GtkAction *action,
                                                        gboolean is_important);
gboolean gtk_action_get_is_important (GtkAction *action);
void gtk_action_set_always_show_image (GtkAction *action,
                                                        gboolean always_show);
gboolean gtk_action_get_always_show_image (GtkAction *action);


}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkactiongroup.h" 1
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkactiongroup.h"
extern "C" {
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkactiongroup.h"
typedef struct _GtkActionGroup GtkActionGroup;
typedef struct _GtkActionGroupPrivate GtkActionGroupPrivate;
typedef struct _GtkActionGroupClass GtkActionGroupClass;
typedef struct _GtkActionEntry GtkActionEntry;
typedef struct _GtkToggleActionEntry GtkToggleActionEntry;
typedef struct _GtkRadioActionEntry GtkRadioActionEntry;

struct _GtkActionGroup
{
 GObject parent;



 GtkActionGroupPrivate *private_data;
};

struct _GtkActionGroupClass
{
 GObjectClass parent_class;

 GtkAction *(* get_action) (GtkActionGroup *action_group,
                            const gchar *action_name);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

struct _GtkActionEntry
{
 const gchar *name;
 const gchar *stock_id;
 const gchar *label;
 const gchar *accelerator;
 const gchar *tooltip;
 GCallback callback;
};

struct _GtkToggleActionEntry
{
 const gchar *name;
 const gchar *stock_id;
 const gchar *label;
 const gchar *accelerator;
 const gchar *tooltip;
 GCallback callback;
 gboolean is_active;
};

struct _GtkRadioActionEntry
{
 const gchar *name;
 const gchar *stock_id;
 const gchar *label;
 const gchar *accelerator;
 const gchar *tooltip;
 gint value;
};

GType gtk_action_group_get_type (void) __attribute__((__const__));
GtkActionGroup *gtk_action_group_new (const gchar *name);
const gchar *gtk_action_group_get_name (GtkActionGroup *action_group);
gboolean gtk_action_group_get_sensitive (GtkActionGroup *action_group);
void gtk_action_group_set_sensitive (GtkActionGroup *action_group,
        gboolean sensitive);
gboolean gtk_action_group_get_visible (GtkActionGroup *action_group);
void gtk_action_group_set_visible (GtkActionGroup *action_group,
        gboolean visible);
GtkAction *gtk_action_group_get_action (GtkActionGroup *action_group,
        const gchar *action_name);
GList *gtk_action_group_list_actions (GtkActionGroup *action_group);
void gtk_action_group_add_action (GtkActionGroup *action_group,
        GtkAction *action);
void gtk_action_group_add_action_with_accel (GtkActionGroup *action_group,
        GtkAction *action,
        const gchar *accelerator);
void gtk_action_group_remove_action (GtkActionGroup *action_group,
        GtkAction *action);
void gtk_action_group_add_actions (GtkActionGroup *action_group,
        const GtkActionEntry *entries,
        guint n_entries,
        gpointer user_data);
void gtk_action_group_add_toggle_actions (GtkActionGroup *action_group,
        const GtkToggleActionEntry *entries,
        guint n_entries,
        gpointer user_data);
void gtk_action_group_add_radio_actions (GtkActionGroup *action_group,
        const GtkRadioActionEntry *entries,
        guint n_entries,
        gint value,
        GCallback on_change,
        gpointer user_data);
void gtk_action_group_add_actions_full (GtkActionGroup *action_group,
        const GtkActionEntry *entries,
        guint n_entries,
        gpointer user_data,
        GDestroyNotify destroy);
void gtk_action_group_add_toggle_actions_full (GtkActionGroup *action_group,
        const GtkToggleActionEntry *entries,
        guint n_entries,
        gpointer user_data,
        GDestroyNotify destroy);
void gtk_action_group_add_radio_actions_full (GtkActionGroup *action_group,
        const GtkRadioActionEntry *entries,
        guint n_entries,
        gint value,
        GCallback on_change,
        gpointer user_data,
        GDestroyNotify destroy);
void gtk_action_group_set_translate_func (GtkActionGroup *action_group,
        GtkTranslateFunc func,
        gpointer data,
        GDestroyNotify notify);
void gtk_action_group_set_translation_domain (GtkActionGroup *action_group,
        const gchar *domain);
const gchar *gtk_action_group_translate_string (GtkActionGroup *action_group,
                                                    const gchar *string);


void _gtk_action_group_emit_connect_proxy (GtkActionGroup *action_group,
                                             GtkAction *action,
                                             GtkWidget *proxy);
void _gtk_action_group_emit_disconnect_proxy (GtkActionGroup *action_group,
                                             GtkAction *action,
                                             GtkWidget *proxy);
void _gtk_action_group_emit_pre_activate (GtkActionGroup *action_group,
                                             GtkAction *action);
void _gtk_action_group_emit_post_activate (GtkActionGroup *action_group,
                                             GtkAction *action);

}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkactivatable.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkactivatable.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkactivatable.h"
typedef struct _GtkActivatable GtkActivatable;
typedef struct _GtkActivatableIface GtkActivatableIface;
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkactivatable.h"
struct _GtkActivatableIface
{
 GTypeInterface g_iface;


 void (* update) (GtkActivatable *activatable,
                        GtkAction *action,
                        const gchar *property_name);
 void (* sync_action_properties) (GtkActivatable *activatable,
                        GtkAction *action);
};


GType gtk_activatable_get_type (void) __attribute__((__const__));

void gtk_activatable_sync_action_properties (GtkActivatable *activatable,
            GtkAction *action);

void gtk_activatable_set_related_action (GtkActivatable *activatable,
            GtkAction *action);
GtkAction *gtk_activatable_get_related_action (GtkActivatable *activatable);

void gtk_activatable_set_use_action_appearance (GtkActivatable *activatable,
            gboolean use_appearance);
gboolean gtk_activatable_get_use_action_appearance (GtkActivatable *activatable);


void gtk_activatable_do_set_related_action (GtkActivatable *activatable,
            GtkAction *action);

}
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkalignment.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkalignment.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkalignment.h"
typedef struct _GtkAlignment GtkAlignment;
typedef struct _GtkAlignmentClass GtkAlignmentClass;
typedef struct _GtkAlignmentPrivate GtkAlignmentPrivate;

struct _GtkAlignment
{
 GtkBin bin;

 gfloat xalign;
 gfloat yalign;
 gfloat xscale;
 gfloat yscale;
};

struct _GtkAlignmentClass
{
 GtkBinClass parent_class;
};


GType gtk_alignment_get_type (void) __attribute__((__const__));
GtkWidget* gtk_alignment_new (gfloat xalign,
        gfloat yalign,
        gfloat xscale,
        gfloat yscale);
void gtk_alignment_set (GtkAlignment *alignment,
        gfloat xalign,
        gfloat yalign,
        gfloat xscale,
        gfloat yscale);

void gtk_alignment_set_padding (GtkAlignment *alignment,
         guint padding_top,
         guint padding_bottom,
         guint padding_left,
         guint padding_right);

void gtk_alignment_get_padding (GtkAlignment *alignment,
         guint *padding_top,
         guint *padding_bottom,
         guint *padding_left,
         guint *padding_right);

}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkarrow.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkarrow.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkarrow.h"
typedef struct _GtkArrow GtkArrow;
typedef struct _GtkArrowClass GtkArrowClass;

struct _GtkArrow
{
 GtkMisc misc;

 gint16 arrow_type;
 gint16 shadow_type;
};

struct _GtkArrowClass
{
 GtkMiscClass parent_class;
};


GType gtk_arrow_get_type (void) __attribute__((__const__));
GtkWidget* gtk_arrow_new (GtkArrowType arrow_type,
    GtkShadowType shadow_type);
void gtk_arrow_set (GtkArrow *arrow,
    GtkArrowType arrow_type,
    GtkShadowType shadow_type);


}
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaspectframe.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaspectframe.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkframe.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkframe.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkframe.h"
typedef struct _GtkFrame GtkFrame;
typedef struct _GtkFrameClass GtkFrameClass;

struct _GtkFrame
{
 GtkBin bin;

 GtkWidget *label_widget;
 gint16 shadow_type;
 gfloat label_xalign;
 gfloat label_yalign;

 GtkAllocation child_allocation;
};

struct _GtkFrameClass
{
 GtkBinClass parent_class;

 void (*compute_child_allocation) (GtkFrame *frame, GtkAllocation *allocation);
};


GType gtk_frame_get_type (void) __attribute__((__const__));
GtkWidget* gtk_frame_new (const gchar *label);

void gtk_frame_set_label (GtkFrame *frame,
       const gchar *label);
const gchar *gtk_frame_get_label (GtkFrame *frame);

void gtk_frame_set_label_widget (GtkFrame *frame,
          GtkWidget *label_widget);
GtkWidget *gtk_frame_get_label_widget (GtkFrame *frame);
void gtk_frame_set_label_align (GtkFrame *frame,
          gfloat xalign,
          gfloat yalign);
void gtk_frame_get_label_align (GtkFrame *frame,
          gfloat *xalign,
          gfloat *yalign);
void gtk_frame_set_shadow_type (GtkFrame *frame,
          GtkShadowType type);
GtkShadowType gtk_frame_get_shadow_type (GtkFrame *frame);


}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaspectframe.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkaspectframe.h"
typedef struct _GtkAspectFrame GtkAspectFrame;
typedef struct _GtkAspectFrameClass GtkAspectFrameClass;

struct _GtkAspectFrame
{
 GtkFrame frame;

 gfloat xalign;
 gfloat yalign;
 gfloat ratio;
 gboolean obey_child;

 GtkAllocation center_allocation;
};

struct _GtkAspectFrameClass
{
 GtkFrameClass parent_class;
};


GType gtk_aspect_frame_get_type (void) __attribute__((__const__));
GtkWidget* gtk_aspect_frame_new (const gchar *label,
    gfloat xalign,
    gfloat yalign,
    gfloat ratio,
    gboolean obey_child);
void gtk_aspect_frame_set (GtkAspectFrame *aspect_frame,
    gfloat xalign,
    gfloat yalign,
    gfloat ratio,
    gboolean obey_child);


}
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkassistant.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkassistant.h"
extern "C" {
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkassistant.h"
typedef enum
{
 GTK_ASSISTANT_PAGE_CONTENT,
 GTK_ASSISTANT_PAGE_INTRO,
 GTK_ASSISTANT_PAGE_CONFIRM,
 GTK_ASSISTANT_PAGE_SUMMARY,
 GTK_ASSISTANT_PAGE_PROGRESS
} GtkAssistantPageType;

typedef struct _GtkAssistant GtkAssistant;
typedef struct _GtkAssistantPrivate GtkAssistantPrivate;
typedef struct _GtkAssistantClass GtkAssistantClass;

struct _GtkAssistant
{
 GtkWindow parent;

 GtkWidget *cancel;
 GtkWidget *forward;
 GtkWidget *back;
 GtkWidget *apply;
 GtkWidget *close;
 GtkWidget *last;


 GtkAssistantPrivate *priv;
};

struct _GtkAssistantClass
{
 GtkWindowClass parent_class;

 void (* prepare) (GtkAssistant *assistant, GtkWidget *page);
 void (* apply) (GtkAssistant *assistant);
 void (* close) (GtkAssistant *assistant);
 void (* cancel) (GtkAssistant *assistant);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
};
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkassistant.h"
typedef gint (*GtkAssistantPageFunc) (gint current_page, gpointer data);

GType gtk_assistant_get_type (void) __attribute__((__const__));
GtkWidget *gtk_assistant_new (void);
gint gtk_assistant_get_current_page (GtkAssistant *assistant);
void gtk_assistant_set_current_page (GtkAssistant *assistant,
         gint page_num);
gint gtk_assistant_get_n_pages (GtkAssistant *assistant);
GtkWidget *gtk_assistant_get_nth_page (GtkAssistant *assistant,
         gint page_num);
gint gtk_assistant_prepend_page (GtkAssistant *assistant,
         GtkWidget *page);
gint gtk_assistant_append_page (GtkAssistant *assistant,
         GtkWidget *page);
gint gtk_assistant_insert_page (GtkAssistant *assistant,
         GtkWidget *page,
         gint position);
void gtk_assistant_set_forward_page_func (GtkAssistant *assistant,
         GtkAssistantPageFunc page_func,
         gpointer data,
         GDestroyNotify destroy);
void gtk_assistant_set_page_type (GtkAssistant *assistant,
         GtkWidget *page,
         GtkAssistantPageType type);
GtkAssistantPageType gtk_assistant_get_page_type (GtkAssistant *assistant,
         GtkWidget *page);
void gtk_assistant_set_page_title (GtkAssistant *assistant,
         GtkWidget *page,
         const gchar *title);
const gchar * gtk_assistant_get_page_title (GtkAssistant *assistant,
         GtkWidget *page);
void gtk_assistant_set_page_header_image (GtkAssistant *assistant,
         GtkWidget *page,
         GdkPixbuf *pixbuf);
GdkPixbuf *gtk_assistant_get_page_header_image (GtkAssistant *assistant,
         GtkWidget *page);
void gtk_assistant_set_page_side_image (GtkAssistant *assistant,
         GtkWidget *page,
         GdkPixbuf *pixbuf);
GdkPixbuf *gtk_assistant_get_page_side_image (GtkAssistant *assistant,
         GtkWidget *page);
void gtk_assistant_set_page_complete (GtkAssistant *assistant,
         GtkWidget *page,
         gboolean complete);
gboolean gtk_assistant_get_page_complete (GtkAssistant *assistant,
         GtkWidget *page);
void gtk_assistant_add_action_widget (GtkAssistant *assistant,
         GtkWidget *child);
void gtk_assistant_remove_action_widget (GtkAssistant *assistant,
         GtkWidget *child);

void gtk_assistant_update_buttons_state (GtkAssistant *assistant);
void gtk_assistant_commit (GtkAssistant *assistant);

}
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbbox.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbbox.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbox.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbox.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbox.h"
typedef struct _GtkBox GtkBox;
typedef struct _GtkBoxClass GtkBoxClass;

struct _GtkBox
{
 GtkContainer container;


 GList *children;
 gint16 spacing;
 guint homogeneous : 1;
};

struct _GtkBoxClass
{
 GtkContainerClass parent_class;
};
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbox.h"
typedef struct _GtkBoxChild GtkBoxChild;
struct _GtkBoxChild
{
 GtkWidget *widget;
 guint16 padding;
 guint expand : 1;
 guint fill : 1;
 guint pack : 1;
 guint is_secondary : 1;
};


GType gtk_box_get_type (void) __attribute__((__const__));
GtkWidget* _gtk_box_new (GtkOrientation orientation,
                                        gboolean homogeneous,
                                        gint spacing);

void gtk_box_pack_start (GtkBox *box,
                                        GtkWidget *child,
                                        gboolean expand,
                                        gboolean fill,
                                        guint padding);
void gtk_box_pack_end (GtkBox *box,
                                        GtkWidget *child,
                                        gboolean expand,
                                        gboolean fill,
                                        guint padding);


void gtk_box_pack_start_defaults (GtkBox *box,
                                        GtkWidget *widget);
void gtk_box_pack_end_defaults (GtkBox *box,
                                        GtkWidget *widget);


void gtk_box_set_homogeneous (GtkBox *box,
                                        gboolean homogeneous);
gboolean gtk_box_get_homogeneous (GtkBox *box);
void gtk_box_set_spacing (GtkBox *box,
                                        gint spacing);
gint gtk_box_get_spacing (GtkBox *box);

void gtk_box_reorder_child (GtkBox *box,
                                        GtkWidget *child,
                                        gint position);

void gtk_box_query_child_packing (GtkBox *box,
                                        GtkWidget *child,
                                        gboolean *expand,
                                        gboolean *fill,
                                        guint *padding,
                                        GtkPackType *pack_type);
void gtk_box_set_child_packing (GtkBox *box,
                                        GtkWidget *child,
                                        gboolean expand,
                                        gboolean fill,
                                        guint padding,
                                        GtkPackType pack_type);


void _gtk_box_set_old_defaults (GtkBox *box);
gboolean _gtk_box_get_spacing_set (GtkBox *box);
void _gtk_box_set_spacing_set (GtkBox *box,
                                        gboolean spacing_set);

}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbbox.h" 2


extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbbox.h"
typedef struct _GtkButtonBox GtkButtonBox;
typedef struct _GtkButtonBoxClass GtkButtonBoxClass;

struct _GtkButtonBox
{
 GtkBox box;
 gint child_min_width;
 gint child_min_height;
 gint child_ipad_x;
 gint child_ipad_y;
 GtkButtonBoxStyle layout_style;
};

struct _GtkButtonBoxClass
{
 GtkBoxClass parent_class;
};


GType gtk_button_box_get_type (void) __attribute__((__const__));

GtkButtonBoxStyle gtk_button_box_get_layout (GtkButtonBox *widget);
void gtk_button_box_set_layout (GtkButtonBox *widget,
           GtkButtonBoxStyle layout_style);
gboolean gtk_button_box_get_child_secondary (GtkButtonBox *widget,
           GtkWidget *child);
void gtk_button_box_set_child_secondary (GtkButtonBox *widget,
           GtkWidget *child,
           gboolean is_secondary);





void gtk_button_box_set_child_size (GtkButtonBox *widget,
    gint min_width,
    gint min_height);
void gtk_button_box_set_child_ipadding (GtkButtonBox *widget,
    gint ipad_x,
    gint ipad_y);
void gtk_button_box_get_child_size (GtkButtonBox *widget,
    gint *min_width,
    gint *min_height);
void gtk_button_box_get_child_ipadding (GtkButtonBox *widget,
    gint *ipad_x,
    gint *ipad_y);



void _gtk_button_box_child_requisition (GtkWidget *widget,
    int *nvis_children,
    int *nvis_secondaries,
    int *width,
    int *height);
}
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbindings.h" 1
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbindings.h"
extern "C" {





typedef struct _GtkBindingSet GtkBindingSet;
typedef struct _GtkBindingEntry GtkBindingEntry;
typedef struct _GtkBindingSignal GtkBindingSignal;
typedef struct _GtkBindingArg GtkBindingArg;

struct _GtkBindingSet
{
 gchar *set_name;
 gint priority;
 GSList *widget_path_pspecs;
 GSList *widget_class_pspecs;
 GSList *class_branch_pspecs;
 GtkBindingEntry *entries;
 GtkBindingEntry *current;
 guint parsed : 1;
};

struct _GtkBindingEntry
{


 guint keyval;
 GdkModifierType modifiers;

 GtkBindingSet *binding_set;
 guint destroyed : 1;
 guint in_emission : 1;
 guint marks_unbound : 1;
 GtkBindingEntry *set_next;
 GtkBindingEntry *hash_next;
 GtkBindingSignal *signals;
};

struct _GtkBindingArg
{
 GType arg_type;
 union {
   glong long_data;
   gdouble double_data;
   gchar *string_data;
 } d;
};

struct _GtkBindingSignal
{
 GtkBindingSignal *next;
 gchar *signal_name;
 guint n_args;
 GtkBindingArg *args;
};



GtkBindingSet* gtk_binding_set_new (const gchar *set_name);
GtkBindingSet* gtk_binding_set_by_class(gpointer object_class);
GtkBindingSet* gtk_binding_set_find (const gchar *set_name);
gboolean gtk_bindings_activate (GtkObject *object,
     guint keyval,
     GdkModifierType modifiers);
gboolean gtk_bindings_activate_event (GtkObject *object,
     GdkEventKey *event);
gboolean gtk_binding_set_activate (GtkBindingSet *binding_set,
     guint keyval,
     GdkModifierType modifiers,
     GtkObject *object);



void gtk_binding_entry_clear (GtkBindingSet *binding_set,
     guint keyval,
     GdkModifierType modifiers);
guint gtk_binding_parse_binding (GScanner *scanner);


void gtk_binding_entry_skip (GtkBindingSet *binding_set,
                                        guint keyval,
                                        GdkModifierType modifiers);
void gtk_binding_entry_add_signal (GtkBindingSet *binding_set,
                                        guint keyval,
                                        GdkModifierType modifiers,
                                        const gchar *signal_name,
                                        guint n_args,
                                        ...);
void gtk_binding_entry_add_signall (GtkBindingSet *binding_set,
     guint keyval,
     GdkModifierType modifiers,
     const gchar *signal_name,
     GSList *binding_args);
void gtk_binding_entry_remove (GtkBindingSet *binding_set,
     guint keyval,
     GdkModifierType modifiers);

void gtk_binding_set_add_path (GtkBindingSet *binding_set,
     GtkPathType path_type,
     const gchar *path_pattern,
     GtkPathPriorityType priority);




guint _gtk_binding_parse_binding (GScanner *scanner);
void _gtk_binding_reset_parsed (void);
void _gtk_binding_entry_add_signall (GtkBindingSet *binding_set,
     guint keyval,
     GdkModifierType modifiers,
     const gchar *signal_name,
     GSList *binding_args);

}
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbuildable.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbuildable.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbuilder.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbuilder.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbuilder.h"
typedef struct _GtkBuilder GtkBuilder;
typedef struct _GtkBuilderClass GtkBuilderClass;
typedef struct _GtkBuilderPrivate GtkBuilderPrivate;

typedef enum
{
 GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION,
 GTK_BUILDER_ERROR_UNHANDLED_TAG,
 GTK_BUILDER_ERROR_MISSING_ATTRIBUTE,
 GTK_BUILDER_ERROR_INVALID_ATTRIBUTE,
 GTK_BUILDER_ERROR_INVALID_TAG,
 GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE,
 GTK_BUILDER_ERROR_INVALID_VALUE,
 GTK_BUILDER_ERROR_VERSION_MISMATCH,
 GTK_BUILDER_ERROR_DUPLICATE_ID
} GtkBuilderError;

GQuark gtk_builder_error_quark (void);

struct _GtkBuilder
{
 GObject parent_instance;

 GtkBuilderPrivate *priv;
};

struct _GtkBuilderClass
{
 GObjectClass parent_class;

 GType (* get_type_from_name) (GtkBuilder *builder,
                               const char *type_name);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
 void (*_gtk_reserved6) (void);
 void (*_gtk_reserved7) (void);
 void (*_gtk_reserved8) (void);
};

typedef void (*GtkBuilderConnectFunc) (GtkBuilder *builder,
          GObject *object,
          const gchar *signal_name,
          const gchar *handler_name,
          GObject *connect_object,
          GConnectFlags flags,
          gpointer user_data);

GType gtk_builder_get_type (void) __attribute__((__const__));
GtkBuilder* gtk_builder_new (void);

guint gtk_builder_add_from_file (GtkBuilder *builder,
                                                 const gchar *filename,
                                                 GError **error);
guint gtk_builder_add_from_string (GtkBuilder *builder,
                                                 const gchar *buffer,
                                                 gsize length,
                                                 GError **error);
guint gtk_builder_add_objects_from_file (GtkBuilder *builder,
                                                 const gchar *filename,
                                                 gchar **object_ids,
                                                 GError **error);
guint gtk_builder_add_objects_from_string (GtkBuilder *builder,
                                                 const gchar *buffer,
                                                 gsize length,
                                                 gchar **object_ids,
                                                 GError **error);
GObject* gtk_builder_get_object (GtkBuilder *builder,
                                                 const gchar *name);
GSList* gtk_builder_get_objects (GtkBuilder *builder);
void gtk_builder_connect_signals (GtkBuilder *builder,
       gpointer user_data);
void gtk_builder_connect_signals_full (GtkBuilder *builder,
                                                 GtkBuilderConnectFunc func,
       gpointer user_data);
void gtk_builder_set_translation_domain (GtkBuilder *builder,
                                                 const gchar *domain);
const gchar* gtk_builder_get_translation_domain (GtkBuilder *builder);
GType gtk_builder_get_type_from_name (GtkBuilder *builder,
                                                 const char *type_name);

gboolean gtk_builder_value_from_string (GtkBuilder *builder,
       GParamSpec *pspec,
                                                 const gchar *string,
                                                 GValue *value,
       GError **error);
gboolean gtk_builder_value_from_string_type (GtkBuilder *builder,
       GType type,
                                                 const gchar *string,
                                                 GValue *value,
       GError **error);




}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbuildable.h" 2


extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbuildable.h"
typedef struct _GtkBuildable GtkBuildable;
typedef struct _GtkBuildableIface GtkBuildableIface;
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbuildable.h"
struct _GtkBuildableIface
{
 GTypeInterface g_iface;


 void (* set_name) (GtkBuildable *buildable,
                                           const gchar *name);
 const gchar * (* get_name) (GtkBuildable *buildable);
 void (* add_child) (GtkBuildable *buildable,
        GtkBuilder *builder,
        GObject *child,
        const gchar *type);
 void (* set_buildable_property) (GtkBuildable *buildable,
        GtkBuilder *builder,
        const gchar *name,
        const GValue *value);
 GObject * (* construct_child) (GtkBuildable *buildable,
        GtkBuilder *builder,
        const gchar *name);
 gboolean (* custom_tag_start) (GtkBuildable *buildable,
        GtkBuilder *builder,
        GObject *child,
        const gchar *tagname,
        GMarkupParser *parser,
        gpointer *data);
 void (* custom_tag_end) (GtkBuildable *buildable,
        GtkBuilder *builder,
        GObject *child,
        const gchar *tagname,
        gpointer *data);
 void (* custom_finished) (GtkBuildable *buildable,
        GtkBuilder *builder,
        GObject *child,
        const gchar *tagname,
        gpointer data);
 void (* parser_finished) (GtkBuildable *buildable,
        GtkBuilder *builder);

 GObject * (* get_internal_child) (GtkBuildable *buildable,
        GtkBuilder *builder,
        const gchar *childname);
};


GType gtk_buildable_get_type (void) __attribute__((__const__));

void gtk_buildable_set_name (GtkBuildable *buildable,
     const gchar *name);
const gchar * gtk_buildable_get_name (GtkBuildable *buildable);
void gtk_buildable_add_child (GtkBuildable *buildable,
     GtkBuilder *builder,
     GObject *child,
     const gchar *type);
void gtk_buildable_set_buildable_property (GtkBuildable *buildable,
     GtkBuilder *builder,
     const gchar *name,
     const GValue *value);
GObject * gtk_buildable_construct_child (GtkBuildable *buildable,
     GtkBuilder *builder,
     const gchar *name);
gboolean gtk_buildable_custom_tag_start (GtkBuildable *buildable,
     GtkBuilder *builder,
     GObject *child,
     const gchar *tagname,
     GMarkupParser *parser,
     gpointer *data);
void gtk_buildable_custom_tag_end (GtkBuildable *buildable,
     GtkBuilder *builder,
     GObject *child,
     const gchar *tagname,
     gpointer *data);
void gtk_buildable_custom_finished (GtkBuildable *buildable,
     GtkBuilder *builder,
     GObject *child,
     const gchar *tagname,
     gpointer data);
void gtk_buildable_parser_finished (GtkBuildable *buildable,
     GtkBuilder *builder);
GObject * gtk_buildable_get_internal_child (GtkBuildable *buildable,
     GtkBuilder *builder,
     const gchar *childname);

}
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbutton.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbutton.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimage.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimage.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimage.h"
typedef struct _GtkImage GtkImage;
typedef struct _GtkImageClass GtkImageClass;

typedef struct _GtkImagePixmapData GtkImagePixmapData;
typedef struct _GtkImageImageData GtkImageImageData;
typedef struct _GtkImagePixbufData GtkImagePixbufData;
typedef struct _GtkImageStockData GtkImageStockData;
typedef struct _GtkImageIconSetData GtkImageIconSetData;
typedef struct _GtkImageAnimationData GtkImageAnimationData;
typedef struct _GtkImageIconNameData GtkImageIconNameData;
typedef struct _GtkImageGIconData GtkImageGIconData;

struct _GtkImagePixmapData
{
 GdkPixmap *pixmap;
};

struct _GtkImageImageData
{
 GdkImage *image;
};

struct _GtkImagePixbufData
{
 GdkPixbuf *pixbuf;
};

struct _GtkImageStockData
{
 gchar *stock_id;
};

struct _GtkImageIconSetData
{
 GtkIconSet *icon_set;
};

struct _GtkImageAnimationData
{
 GdkPixbufAnimation *anim;
 GdkPixbufAnimationIter *iter;
 guint frame_timeout;
};

struct _GtkImageIconNameData
{
 gchar *icon_name;
 GdkPixbuf *pixbuf;
 guint theme_change_id;
};

struct _GtkImageGIconData
{
 GIcon *icon;
 GdkPixbuf *pixbuf;
 guint theme_change_id;
};
# 129 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimage.h"
typedef enum
{
 GTK_IMAGE_EMPTY,
 GTK_IMAGE_PIXMAP,
 GTK_IMAGE_IMAGE,
 GTK_IMAGE_PIXBUF,
 GTK_IMAGE_STOCK,
 GTK_IMAGE_ICON_SET,
 GTK_IMAGE_ANIMATION,
 GTK_IMAGE_ICON_NAME,
 GTK_IMAGE_GICON
} GtkImageType;







struct _GtkImage
{
 GtkMisc misc;

 GtkImageType storage_type;

 union
 {
   GtkImagePixmapData pixmap;
   GtkImageImageData image;
   GtkImagePixbufData pixbuf;
   GtkImageStockData stock;
   GtkImageIconSetData icon_set;
   GtkImageAnimationData anim;
   GtkImageIconNameData name;
   GtkImageGIconData gicon;
 } data;


 GdkBitmap *mask;


 GtkIconSize icon_size;
};

struct _GtkImageClass
{
 GtkMiscClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};







GType gtk_image_get_type (void) __attribute__((__const__));

GtkWidget* gtk_image_new (void);
GtkWidget* gtk_image_new_from_pixmap (GdkPixmap *pixmap,
                                        GdkBitmap *mask);
GtkWidget* gtk_image_new_from_image (GdkImage *image,
                                        GdkBitmap *mask);
GtkWidget* gtk_image_new_from_file (const gchar *filename);
GtkWidget* gtk_image_new_from_pixbuf (GdkPixbuf *pixbuf);
GtkWidget* gtk_image_new_from_stock (const gchar *stock_id,
                                        GtkIconSize size);
GtkWidget* gtk_image_new_from_icon_set (GtkIconSet *icon_set,
                                        GtkIconSize size);
GtkWidget* gtk_image_new_from_animation (GdkPixbufAnimation *animation);
GtkWidget* gtk_image_new_from_icon_name (const gchar *icon_name,
     GtkIconSize size);
GtkWidget* gtk_image_new_from_gicon (GIcon *icon,
     GtkIconSize size);

void gtk_image_clear (GtkImage *image);
void gtk_image_set_from_pixmap (GtkImage *image,
                                  GdkPixmap *pixmap,
                                  GdkBitmap *mask);
void gtk_image_set_from_image (GtkImage *image,
                                  GdkImage *gdk_image,
                                  GdkBitmap *mask);
void gtk_image_set_from_file (GtkImage *image,
                                  const gchar *filename);
void gtk_image_set_from_pixbuf (GtkImage *image,
                                  GdkPixbuf *pixbuf);
void gtk_image_set_from_stock (GtkImage *image,
                                  const gchar *stock_id,
                                  GtkIconSize size);
void gtk_image_set_from_icon_set (GtkImage *image,
                                  GtkIconSet *icon_set,
                                  GtkIconSize size);
void gtk_image_set_from_animation (GtkImage *image,
                                  GdkPixbufAnimation *animation);
void gtk_image_set_from_icon_name (GtkImage *image,
      const gchar *icon_name,
      GtkIconSize size);
void gtk_image_set_from_gicon (GtkImage *image,
      GIcon *icon,
      GtkIconSize size);
void gtk_image_set_pixel_size (GtkImage *image,
      gint pixel_size);

GtkImageType gtk_image_get_storage_type (GtkImage *image);

void gtk_image_get_pixmap (GtkImage *image,
                                  GdkPixmap **pixmap,
                                  GdkBitmap **mask);
void gtk_image_get_image (GtkImage *image,
                                  GdkImage **gdk_image,
                                  GdkBitmap **mask);
GdkPixbuf* gtk_image_get_pixbuf (GtkImage *image);
void gtk_image_get_stock (GtkImage *image,
                                  gchar **stock_id,
                                  GtkIconSize *size);
void gtk_image_get_icon_set (GtkImage *image,
                                  GtkIconSet **icon_set,
                                  GtkIconSize *size);
GdkPixbufAnimation* gtk_image_get_animation (GtkImage *image);
void gtk_image_get_icon_name (GtkImage *image,
       const gchar **icon_name,
       GtkIconSize *size);
void gtk_image_get_gicon (GtkImage *image,
       GIcon **gicon,
       GtkIconSize *size);
gint gtk_image_get_pixel_size (GtkImage *image);




void gtk_image_set (GtkImage *image,
         GdkImage *val,
         GdkBitmap *mask);
void gtk_image_get (GtkImage *image,
         GdkImage **val,
         GdkBitmap **mask);


}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbutton.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkbutton.h"
typedef struct _GtkButton GtkButton;
typedef struct _GtkButtonClass GtkButtonClass;

struct _GtkButton
{
 GtkBin bin;

 GdkWindow *event_window;

 gchar *label_text;

 guint activate_timeout;

 guint constructed : 1;
 guint in_button : 1;
 guint button_down : 1;
 guint relief : 2;
 guint use_underline : 1;
 guint use_stock : 1;
 guint depressed : 1;
 guint depress_on_activate : 1;
 guint focus_on_click : 1;
};

struct _GtkButtonClass
{
 GtkBinClass parent_class;

 void (* pressed) (GtkButton *button);
 void (* released) (GtkButton *button);
 void (* clicked) (GtkButton *button);
 void (* enter) (GtkButton *button);
 void (* leave) (GtkButton *button);
 void (* activate) (GtkButton *button);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_button_get_type (void) __attribute__((__const__));
GtkWidget* gtk_button_new (void);
GtkWidget* gtk_button_new_with_label (const gchar *label);
GtkWidget* gtk_button_new_from_stock (const gchar *stock_id);
GtkWidget* gtk_button_new_with_mnemonic (const gchar *label);

void gtk_button_pressed (GtkButton *button);
void gtk_button_released (GtkButton *button);

void gtk_button_clicked (GtkButton *button);

void gtk_button_enter (GtkButton *button);
void gtk_button_leave (GtkButton *button);


void gtk_button_set_relief (GtkButton *button,
          GtkReliefStyle newstyle);
GtkReliefStyle gtk_button_get_relief (GtkButton *button);
void gtk_button_set_label (GtkButton *button,
          const gchar *label);
const gchar * gtk_button_get_label (GtkButton *button);
void gtk_button_set_use_underline (GtkButton *button,
          gboolean use_underline);
gboolean gtk_button_get_use_underline (GtkButton *button);
void gtk_button_set_use_stock (GtkButton *button,
          gboolean use_stock);
gboolean gtk_button_get_use_stock (GtkButton *button);
void gtk_button_set_focus_on_click (GtkButton *button,
          gboolean focus_on_click);
gboolean gtk_button_get_focus_on_click (GtkButton *button);
void gtk_button_set_alignment (GtkButton *button,
          gfloat xalign,
          gfloat yalign);
void gtk_button_get_alignment (GtkButton *button,
          gfloat *xalign,
          gfloat *yalign);
void gtk_button_set_image (GtkButton *button,
                 GtkWidget *image);
GtkWidget* gtk_button_get_image (GtkButton *button);
void gtk_button_set_image_position (GtkButton *button,
          GtkPositionType position);
GtkPositionType gtk_button_get_image_position (GtkButton *button);

GdkWindow* gtk_button_get_event_window (GtkButton *button);

void _gtk_button_set_depressed (GtkButton *button,
        gboolean depressed);
void _gtk_button_paint (GtkButton *button,
        const GdkRectangle *area,
        GtkStateType state_type,
        GtkShadowType shadow_type,
        const gchar *main_detail,
        const gchar *default_detail);

}
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcalendar.h" 1
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcalendar.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksignal.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksignal.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmarshal.h" 1







extern "C" {


extern void gtk_marshal_BOOLEAN__VOID (GClosure *closure,
                                      GValue *return_value,
                                      guint n_param_values,
                                      const GValue *param_values,
                                      gpointer invocation_hint,
                                      gpointer marshal_data);



extern void gtk_marshal_BOOLEAN__POINTER (GClosure *closure,
                                         GValue *return_value,
                                         guint n_param_values,
                                         const GValue *param_values,
                                         gpointer invocation_hint,
                                         gpointer marshal_data);



extern void gtk_marshal_BOOLEAN__POINTER_POINTER_INT_INT (GClosure *closure,
                                                         GValue *return_value,
                                                         guint n_param_values,
                                                         const GValue *param_values,
                                                         gpointer invocation_hint,
                                                         gpointer marshal_data);



extern void gtk_marshal_BOOLEAN__POINTER_INT_INT (GClosure *closure,
                                                 GValue *return_value,
                                                 guint n_param_values,
                                                 const GValue *param_values,
                                                 gpointer invocation_hint,
                                                 gpointer marshal_data);



extern void gtk_marshal_BOOLEAN__POINTER_INT_INT_UINT (GClosure *closure,
                                                      GValue *return_value,
                                                      guint n_param_values,
                                                      const GValue *param_values,
                                                      gpointer invocation_hint,
                                                      gpointer marshal_data);



extern void gtk_marshal_BOOLEAN__POINTER_STRING_STRING_POINTER (GClosure *closure,
                                                               GValue *return_value,
                                                               guint n_param_values,
                                                               const GValue *param_values,
                                                               gpointer invocation_hint,
                                                               gpointer marshal_data);



extern void gtk_marshal_ENUM__ENUM (GClosure *closure,
                                   GValue *return_value,
                                   guint n_param_values,
                                   const GValue *param_values,
                                   gpointer invocation_hint,
                                   gpointer marshal_data);


extern void gtk_marshal_INT__POINTER (GClosure *closure,
                                     GValue *return_value,
                                     guint n_param_values,
                                     const GValue *param_values,
                                     gpointer invocation_hint,
                                     gpointer marshal_data);


extern void gtk_marshal_INT__POINTER_CHAR_CHAR (GClosure *closure,
                                               GValue *return_value,
                                               guint n_param_values,
                                               const GValue *param_values,
                                               gpointer invocation_hint,
                                               gpointer marshal_data);
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmarshal.h"
extern void gtk_marshal_VOID__ENUM_FLOAT (GClosure *closure,
                                         GValue *return_value,
                                         guint n_param_values,
                                         const GValue *param_values,
                                         gpointer invocation_hint,
                                         gpointer marshal_data);



extern void gtk_marshal_VOID__ENUM_FLOAT_BOOLEAN (GClosure *closure,
                                                 GValue *return_value,
                                                 guint n_param_values,
                                                 const GValue *param_values,
                                                 gpointer invocation_hint,
                                                 gpointer marshal_data);







extern void gtk_marshal_VOID__INT_INT (GClosure *closure,
                                      GValue *return_value,
                                      guint n_param_values,
                                      const GValue *param_values,
                                      gpointer invocation_hint,
                                      gpointer marshal_data);



extern void gtk_marshal_VOID__INT_INT_POINTER (GClosure *closure,
                                              GValue *return_value,
                                              guint n_param_values,
                                              const GValue *param_values,
                                              gpointer invocation_hint,
                                              gpointer marshal_data);
# 153 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmarshal.h"
extern void gtk_marshal_VOID__POINTER_INT (GClosure *closure,
                                          GValue *return_value,
                                          guint n_param_values,
                                          const GValue *param_values,
                                          gpointer invocation_hint,
                                          gpointer marshal_data);



extern void gtk_marshal_VOID__POINTER_POINTER (GClosure *closure,
                                              GValue *return_value,
                                              guint n_param_values,
                                              const GValue *param_values,
                                              gpointer invocation_hint,
                                              gpointer marshal_data);



extern void gtk_marshal_VOID__POINTER_POINTER_POINTER (GClosure *closure,
                                                      GValue *return_value,
                                                      guint n_param_values,
                                                      const GValue *param_values,
                                                      gpointer invocation_hint,
                                                      gpointer marshal_data);



extern void gtk_marshal_VOID__POINTER_STRING_STRING (GClosure *closure,
                                                    GValue *return_value,
                                                    guint n_param_values,
                                                    const GValue *param_values,
                                                    gpointer invocation_hint,
                                                    gpointer marshal_data);



extern void gtk_marshal_VOID__POINTER_UINT (GClosure *closure,
                                           GValue *return_value,
                                           guint n_param_values,
                                           const GValue *param_values,
                                           gpointer invocation_hint,
                                           gpointer marshal_data);



extern void gtk_marshal_VOID__POINTER_UINT_ENUM (GClosure *closure,
                                                GValue *return_value,
                                                guint n_param_values,
                                                const GValue *param_values,
                                                gpointer invocation_hint,
                                                gpointer marshal_data);



extern void gtk_marshal_VOID__POINTER_POINTER_UINT_UINT (GClosure *closure,
                                                        GValue *return_value,
                                                        guint n_param_values,
                                                        const GValue *param_values,
                                                        gpointer invocation_hint,
                                                        gpointer marshal_data);



extern void gtk_marshal_VOID__POINTER_INT_INT_POINTER_UINT_UINT (GClosure *closure,
                                                                GValue *return_value,
                                                                guint n_param_values,
                                                                const GValue *param_values,
                                                                gpointer invocation_hint,
                                                                gpointer marshal_data);



extern void gtk_marshal_VOID__POINTER_UINT_UINT (GClosure *closure,
                                                GValue *return_value,
                                                guint n_param_values,
                                                const GValue *param_values,
                                                gpointer invocation_hint,
                                                gpointer marshal_data);
# 240 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmarshal.h"
extern void gtk_marshal_VOID__STRING_INT_POINTER (GClosure *closure,
                                                 GValue *return_value,
                                                 guint n_param_values,
                                                 const GValue *param_values,
                                                 gpointer invocation_hint,
                                                 gpointer marshal_data);







extern void gtk_marshal_VOID__UINT_POINTER_UINT_ENUM_ENUM_POINTER (GClosure *closure,
                                                                  GValue *return_value,
                                                                  guint n_param_values,
                                                                  const GValue *param_values,
                                                                  gpointer invocation_hint,
                                                                  gpointer marshal_data);



extern void gtk_marshal_VOID__UINT_POINTER_UINT_UINT_ENUM (GClosure *closure,
                                                          GValue *return_value,
                                                          guint n_param_values,
                                                          const GValue *param_values,
                                                          gpointer invocation_hint,
                                                          gpointer marshal_data);



extern void gtk_marshal_VOID__UINT_STRING (GClosure *closure,
                                          GValue *return_value,
                                          guint n_param_values,
                                          const GValue *param_values,
                                          gpointer invocation_hint,
                                          gpointer marshal_data);


}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksignal.h" 2

extern "C" {
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksignal.h"
guint gtk_signal_newv (const gchar *name,
      GtkSignalRunType signal_flags,
      GType object_type,
      guint function_offset,
      GSignalCMarshaller marshaller,
      GType return_val,
      guint n_args,
      GType *args);
guint gtk_signal_new (const gchar *name,
      GtkSignalRunType signal_flags,
      GType object_type,
      guint function_offset,
      GSignalCMarshaller marshaller,
      GType return_val,
      guint n_args,
      ...);
void gtk_signal_emit_stop_by_name (GtkObject *object,
      const gchar *name);
void gtk_signal_connect_object_while_alive (GtkObject *object,
      const gchar *name,
      GCallback func,
      GtkObject *alive_object);
void gtk_signal_connect_while_alive (GtkObject *object,
      const gchar *name,
      GCallback func,
      gpointer func_data,
      GtkObject *alive_object);
gulong gtk_signal_connect_full (GtkObject *object,
      const gchar *name,
      GCallback func,
      GtkCallbackMarshal unsupported,
      gpointer data,
      GDestroyNotify destroy_func,
      gint object_signal,
      gint after);
void gtk_signal_emitv (GtkObject *object,
      guint signal_id,
      GtkArg *args);
void gtk_signal_emit (GtkObject *object,
      guint signal_id,
      ...);
void gtk_signal_emit_by_name (GtkObject *object,
      const gchar *name,
      ...);
void gtk_signal_emitv_by_name (GtkObject *object,
      const gchar *name,
      GtkArg *args);
void gtk_signal_compat_matched (GtkObject *object,
      GCallback func,
      gpointer data,
      GSignalMatchType match,
      guint action);

}
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcalendar.h" 2


extern "C" {
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcalendar.h"
typedef struct _GtkCalendar GtkCalendar;
typedef struct _GtkCalendarClass GtkCalendarClass;

typedef struct _GtkCalendarPrivate GtkCalendarPrivate;
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcalendar.h"
typedef enum
{
 GTK_CALENDAR_SHOW_HEADING = 1 << 0,
 GTK_CALENDAR_SHOW_DAY_NAMES = 1 << 1,
 GTK_CALENDAR_NO_MONTH_CHANGE = 1 << 2,
 GTK_CALENDAR_SHOW_WEEK_NUMBERS = 1 << 3,
 GTK_CALENDAR_WEEK_START_MONDAY = 1 << 4,
 GTK_CALENDAR_SHOW_DETAILS = 1 << 5
} GtkCalendarDisplayOptions;
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcalendar.h"
typedef gchar* (*GtkCalendarDetailFunc) (GtkCalendar *calendar,
                                        guint year,
                                        guint month,
                                        guint day,
                                        gpointer user_data);

struct _GtkCalendar
{
 GtkWidget widget;

 GtkStyle *header_style;
 GtkStyle *label_style;

 gint month;
 gint year;
 gint selected_day;

 gint day_month[6][7];
 gint day[6][7];

 gint num_marked_dates;
 gint marked_date[31];
 GtkCalendarDisplayOptions display_flags;
 GdkColor marked_date_color[31];

 GdkGC *gc;
 GdkGC *xor_gc;

 gint focus_row;
 gint focus_col;

 gint highlight_row;
 gint highlight_col;

 GtkCalendarPrivate *priv;
 gchar grow_space [32];


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

struct _GtkCalendarClass
{
 GtkWidgetClass parent_class;


 void (* month_changed) (GtkCalendar *calendar);
 void (* day_selected) (GtkCalendar *calendar);
 void (* day_selected_double_click) (GtkCalendar *calendar);
 void (* prev_month) (GtkCalendar *calendar);
 void (* next_month) (GtkCalendar *calendar);
 void (* prev_year) (GtkCalendar *calendar);
 void (* next_year) (GtkCalendar *calendar);

};


GType gtk_calendar_get_type (void) __attribute__((__const__));
GtkWidget* gtk_calendar_new (void);

gboolean gtk_calendar_select_month (GtkCalendar *calendar,
     guint month,
     guint year);
void gtk_calendar_select_day (GtkCalendar *calendar,
     guint day);

gboolean gtk_calendar_mark_day (GtkCalendar *calendar,
     guint day);
gboolean gtk_calendar_unmark_day (GtkCalendar *calendar,
     guint day);
void gtk_calendar_clear_marks (GtkCalendar *calendar);


void gtk_calendar_set_display_options (GtkCalendar *calendar,
         GtkCalendarDisplayOptions flags);
GtkCalendarDisplayOptions
          gtk_calendar_get_display_options (GtkCalendar *calendar);

void gtk_calendar_display_options (GtkCalendar *calendar,
     GtkCalendarDisplayOptions flags);


void gtk_calendar_get_date (GtkCalendar *calendar,
     guint *year,
     guint *month,
     guint *day);

void gtk_calendar_set_detail_func (GtkCalendar *calendar,
                                        GtkCalendarDetailFunc func,
                                        gpointer data,
                                        GDestroyNotify destroy);

void gtk_calendar_set_detail_width_chars (GtkCalendar *calendar,
                                               gint chars);
void gtk_calendar_set_detail_height_rows (GtkCalendar *calendar,
                                               gint rows);

gint gtk_calendar_get_detail_width_chars (GtkCalendar *calendar);
gint gtk_calendar_get_detail_height_rows (GtkCalendar *calendar);


void gtk_calendar_freeze (GtkCalendar *calendar);
void gtk_calendar_thaw (GtkCalendar *calendar);


}
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcelleditable.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcelleditable.h"
extern "C" {







typedef struct _GtkCellEditable GtkCellEditable;
typedef struct _GtkCellEditableIface GtkCellEditableIface;

struct _GtkCellEditableIface
{
 GTypeInterface g_iface;


 void (* editing_done) (GtkCellEditable *cell_editable);
 void (* remove_widget) (GtkCellEditable *cell_editable);


 void (* start_editing) (GtkCellEditable *cell_editable,
    GdkEvent *event);
};


GType gtk_cell_editable_get_type (void) __attribute__((__const__));

void gtk_cell_editable_start_editing (GtkCellEditable *cell_editable,
          GdkEvent *event);
void gtk_cell_editable_editing_done (GtkCellEditable *cell_editable);
void gtk_cell_editable_remove_widget (GtkCellEditable *cell_editable);


}
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcelllayout.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcelllayout.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderer.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderer.h"
extern "C" {

typedef enum
{
 GTK_CELL_RENDERER_SELECTED = 1 << 0,
 GTK_CELL_RENDERER_PRELIT = 1 << 1,
 GTK_CELL_RENDERER_INSENSITIVE = 1 << 2,

 GTK_CELL_RENDERER_SORTED = 1 << 3,
 GTK_CELL_RENDERER_FOCUSED = 1 << 4
} GtkCellRendererState;

typedef enum
{
 GTK_CELL_RENDERER_MODE_INERT,
 GTK_CELL_RENDERER_MODE_ACTIVATABLE,
 GTK_CELL_RENDERER_MODE_EDITABLE
} GtkCellRendererMode;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderer.h"
typedef struct _GtkCellRenderer GtkCellRenderer;
typedef struct _GtkCellRendererClass GtkCellRendererClass;

struct _GtkCellRenderer
{
 GtkObject parent;

 gfloat xalign;
 gfloat yalign;

 gint width;
 gint height;

 guint16 xpad;
 guint16 ypad;

 guint mode : 2;
 guint visible : 1;
 guint is_expander : 1;
 guint is_expanded : 1;
 guint cell_background_set : 1;
 guint sensitive : 1;
 guint editing : 1;
};

struct _GtkCellRendererClass
{
 GtkObjectClass parent_class;


 void (* get_size) (GtkCellRenderer *cell,
         GtkWidget *widget,
         GdkRectangle *cell_area,
         gint *x_offset,
         gint *y_offset,
         gint *width,
         gint *height);
 void (* render) (GtkCellRenderer *cell,
         GdkDrawable *window,
         GtkWidget *widget,
         GdkRectangle *background_area,
         GdkRectangle *cell_area,
         GdkRectangle *expose_area,
         GtkCellRendererState flags);
 gboolean (* activate) (GtkCellRenderer *cell,
         GdkEvent *event,
         GtkWidget *widget,
         const gchar *path,
         GdkRectangle *background_area,
         GdkRectangle *cell_area,
         GtkCellRendererState flags);
 GtkCellEditable *(* start_editing) (GtkCellRenderer *cell,
         GdkEvent *event,
         GtkWidget *widget,
         const gchar *path,
         GdkRectangle *background_area,
         GdkRectangle *cell_area,
         GtkCellRendererState flags);


 void (* editing_canceled) (GtkCellRenderer *cell);
 void (* editing_started) (GtkCellRenderer *cell,
       GtkCellEditable *editable,
       const gchar *path);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
};

GType gtk_cell_renderer_get_type (void) __attribute__((__const__));

void gtk_cell_renderer_get_size (GtkCellRenderer *cell,
        GtkWidget *widget,
        const GdkRectangle *cell_area,
        gint *x_offset,
        gint *y_offset,
        gint *width,
        gint *height);
void gtk_cell_renderer_render (GtkCellRenderer *cell,
        GdkWindow *window,
        GtkWidget *widget,
        const GdkRectangle *background_area,
        const GdkRectangle *cell_area,
        const GdkRectangle *expose_area,
        GtkCellRendererState flags);
gboolean gtk_cell_renderer_activate (GtkCellRenderer *cell,
        GdkEvent *event,
        GtkWidget *widget,
        const gchar *path,
        const GdkRectangle *background_area,
        const GdkRectangle *cell_area,
        GtkCellRendererState flags);
GtkCellEditable *gtk_cell_renderer_start_editing (GtkCellRenderer *cell,
        GdkEvent *event,
        GtkWidget *widget,
        const gchar *path,
        const GdkRectangle *background_area,
        const GdkRectangle *cell_area,
        GtkCellRendererState flags);

void gtk_cell_renderer_set_fixed_size (GtkCellRenderer *cell,
        gint width,
        gint height);
void gtk_cell_renderer_get_fixed_size (GtkCellRenderer *cell,
        gint *width,
        gint *height);

void gtk_cell_renderer_set_alignment (GtkCellRenderer *cell,
                                                  gfloat xalign,
                                                  gfloat yalign);
void gtk_cell_renderer_get_alignment (GtkCellRenderer *cell,
                                                  gfloat *xalign,
                                                  gfloat *yalign);

void gtk_cell_renderer_set_padding (GtkCellRenderer *cell,
                                                  gint xpad,
                                                  gint ypad);
void gtk_cell_renderer_get_padding (GtkCellRenderer *cell,
                                                  gint *xpad,
                                                  gint *ypad);

void gtk_cell_renderer_set_visible (GtkCellRenderer *cell,
                                                  gboolean visible);
gboolean gtk_cell_renderer_get_visible (GtkCellRenderer *cell);

void gtk_cell_renderer_set_sensitive (GtkCellRenderer *cell,
                                                  gboolean sensitive);
gboolean gtk_cell_renderer_get_sensitive (GtkCellRenderer *cell);



void gtk_cell_renderer_editing_canceled (GtkCellRenderer *cell);

void gtk_cell_renderer_stop_editing (GtkCellRenderer *cell,
            gboolean canceled);


}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcelllayout.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeviewcolumn.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeviewcolumn.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodel.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodel.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodel.h"
typedef struct _GtkTreeIter GtkTreeIter;
typedef struct _GtkTreePath GtkTreePath;
typedef struct _GtkTreeRowReference GtkTreeRowReference;
typedef struct _GtkTreeModel GtkTreeModel;
typedef struct _GtkTreeModelIface GtkTreeModelIface;
typedef gboolean (* GtkTreeModelForeachFunc) (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data);


typedef enum
{
 GTK_TREE_MODEL_ITERS_PERSIST = 1 << 0,
 GTK_TREE_MODEL_LIST_ONLY = 1 << 1
} GtkTreeModelFlags;

struct _GtkTreeIter
{
 gint stamp;
 gpointer user_data;
 gpointer user_data2;
 gpointer user_data3;
};

struct _GtkTreeModelIface
{
 GTypeInterface g_iface;


 void (* row_changed) (GtkTreeModel *tree_model,
      GtkTreePath *path,
      GtkTreeIter *iter);
 void (* row_inserted) (GtkTreeModel *tree_model,
      GtkTreePath *path,
      GtkTreeIter *iter);
 void (* row_has_child_toggled) (GtkTreeModel *tree_model,
      GtkTreePath *path,
      GtkTreeIter *iter);
 void (* row_deleted) (GtkTreeModel *tree_model,
      GtkTreePath *path);
 void (* rows_reordered) (GtkTreeModel *tree_model,
      GtkTreePath *path,
      GtkTreeIter *iter,
      gint *new_order);


 GtkTreeModelFlags (* get_flags) (GtkTreeModel *tree_model);

 gint (* get_n_columns) (GtkTreeModel *tree_model);
 GType (* get_column_type) (GtkTreeModel *tree_model,
       gint index_);
 gboolean (* get_iter) (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       GtkTreePath *path);
 GtkTreePath *(* get_path) (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
 void (* get_value) (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       gint column,
       GValue *value);
 gboolean (* iter_next) (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
 gboolean (* iter_children) (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       GtkTreeIter *parent);
 gboolean (* iter_has_child) (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
 gint (* iter_n_children) (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
 gboolean (* iter_nth_child) (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       GtkTreeIter *parent,
       gint n);
 gboolean (* iter_parent) (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       GtkTreeIter *child);
 void (* ref_node) (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
 void (* unref_node) (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
};



GtkTreePath *gtk_tree_path_new (void);
GtkTreePath *gtk_tree_path_new_from_string (const gchar *path);
GtkTreePath *gtk_tree_path_new_from_indices (gint first_index,
         ...);
gchar *gtk_tree_path_to_string (GtkTreePath *path);
GtkTreePath *gtk_tree_path_new_first (void);
void gtk_tree_path_append_index (GtkTreePath *path,
         gint index_);
void gtk_tree_path_prepend_index (GtkTreePath *path,
         gint index_);
gint gtk_tree_path_get_depth (GtkTreePath *path);
gint *gtk_tree_path_get_indices (GtkTreePath *path);
gint *gtk_tree_path_get_indices_with_depth (GtkTreePath *path,
                                                  gint *depth);
void gtk_tree_path_free (GtkTreePath *path);
GtkTreePath *gtk_tree_path_copy (const GtkTreePath *path);
GType gtk_tree_path_get_type (void) __attribute__((__const__));
gint gtk_tree_path_compare (const GtkTreePath *a,
         const GtkTreePath *b);
void gtk_tree_path_next (GtkTreePath *path);
gboolean gtk_tree_path_prev (GtkTreePath *path);
gboolean gtk_tree_path_up (GtkTreePath *path);
void gtk_tree_path_down (GtkTreePath *path);

gboolean gtk_tree_path_is_ancestor (GtkTreePath *path,
                                            GtkTreePath *descendant);
gboolean gtk_tree_path_is_descendant (GtkTreePath *path,
                                            GtkTreePath *ancestor);
# 163 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodel.h"
GType gtk_tree_row_reference_get_type (void) __attribute__((__const__));
GtkTreeRowReference *gtk_tree_row_reference_new (GtkTreeModel *model,
            GtkTreePath *path);
GtkTreeRowReference *gtk_tree_row_reference_new_proxy (GObject *proxy,
            GtkTreeModel *model,
            GtkTreePath *path);
GtkTreePath *gtk_tree_row_reference_get_path (GtkTreeRowReference *reference);
GtkTreeModel *gtk_tree_row_reference_get_model (GtkTreeRowReference *reference);
gboolean gtk_tree_row_reference_valid (GtkTreeRowReference *reference);
GtkTreeRowReference *gtk_tree_row_reference_copy (GtkTreeRowReference *reference);
void gtk_tree_row_reference_free (GtkTreeRowReference *reference);


void gtk_tree_row_reference_inserted (GObject *proxy,
            GtkTreePath *path);
void gtk_tree_row_reference_deleted (GObject *proxy,
            GtkTreePath *path);
void gtk_tree_row_reference_reordered (GObject *proxy,
            GtkTreePath *path,
            GtkTreeIter *iter,
            gint *new_order);


GtkTreeIter * gtk_tree_iter_copy (GtkTreeIter *iter);
void gtk_tree_iter_free (GtkTreeIter *iter);
GType gtk_tree_iter_get_type (void) __attribute__((__const__));

GType gtk_tree_model_get_type (void) __attribute__((__const__));
GtkTreeModelFlags gtk_tree_model_get_flags (GtkTreeModel *tree_model);
gint gtk_tree_model_get_n_columns (GtkTreeModel *tree_model);
GType gtk_tree_model_get_column_type (GtkTreeModel *tree_model,
       gint index_);



gboolean gtk_tree_model_get_iter (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       GtkTreePath *path);
gboolean gtk_tree_model_get_iter_from_string (GtkTreeModel *tree_model,
            GtkTreeIter *iter,
            const gchar *path_string);
gchar * gtk_tree_model_get_string_from_iter (GtkTreeModel *tree_model,
                                                      GtkTreeIter *iter);
gboolean gtk_tree_model_get_iter_first (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
GtkTreePath * gtk_tree_model_get_path (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
void gtk_tree_model_get_value (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       gint column,
       GValue *value);
gboolean gtk_tree_model_iter_next (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
gboolean gtk_tree_model_iter_children (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       GtkTreeIter *parent);
gboolean gtk_tree_model_iter_has_child (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
gint gtk_tree_model_iter_n_children (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
gboolean gtk_tree_model_iter_nth_child (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       GtkTreeIter *parent,
       gint n);
gboolean gtk_tree_model_iter_parent (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       GtkTreeIter *child);
void gtk_tree_model_ref_node (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
void gtk_tree_model_unref_node (GtkTreeModel *tree_model,
       GtkTreeIter *iter);
void gtk_tree_model_get (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       ...);
void gtk_tree_model_get_valist (GtkTreeModel *tree_model,
       GtkTreeIter *iter,
       va_list var_args);


void gtk_tree_model_foreach (GtkTreeModel *model,
       GtkTreeModelForeachFunc func,
       gpointer user_data);







void gtk_tree_model_row_changed (GtkTreeModel *tree_model,
       GtkTreePath *path,
       GtkTreeIter *iter);
void gtk_tree_model_row_inserted (GtkTreeModel *tree_model,
       GtkTreePath *path,
       GtkTreeIter *iter);
void gtk_tree_model_row_has_child_toggled (GtkTreeModel *tree_model,
       GtkTreePath *path,
       GtkTreeIter *iter);
void gtk_tree_model_row_deleted (GtkTreeModel *tree_model,
       GtkTreePath *path);
void gtk_tree_model_rows_reordered (GtkTreeModel *tree_model,
       GtkTreePath *path,
       GtkTreeIter *iter,
       gint *new_order);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeviewcolumn.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreesortable.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreesortable.h"
extern "C" {







enum {
 GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID = -1,
 GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID = -2
};

typedef struct _GtkTreeSortable GtkTreeSortable;
typedef struct _GtkTreeSortableIface GtkTreeSortableIface;

typedef gint (* GtkTreeIterCompareFunc) (GtkTreeModel *model,
     GtkTreeIter *a,
     GtkTreeIter *b,
     gpointer user_data);


struct _GtkTreeSortableIface
{
 GTypeInterface g_iface;


 void (* sort_column_changed) (GtkTreeSortable *sortable);


 gboolean (* get_sort_column_id) (GtkTreeSortable *sortable,
         gint *sort_column_id,
         GtkSortType *order);
 void (* set_sort_column_id) (GtkTreeSortable *sortable,
         gint sort_column_id,
         GtkSortType order);
 void (* set_sort_func) (GtkTreeSortable *sortable,
         gint sort_column_id,
         GtkTreeIterCompareFunc func,
         gpointer data,
         GDestroyNotify destroy);
 void (* set_default_sort_func) (GtkTreeSortable *sortable,
         GtkTreeIterCompareFunc func,
         gpointer data,
         GDestroyNotify destroy);
 gboolean (* has_default_sort_func) (GtkTreeSortable *sortable);
};


GType gtk_tree_sortable_get_type (void) __attribute__((__const__));

void gtk_tree_sortable_sort_column_changed (GtkTreeSortable *sortable);
gboolean gtk_tree_sortable_get_sort_column_id (GtkTreeSortable *sortable,
       gint *sort_column_id,
       GtkSortType *order);
void gtk_tree_sortable_set_sort_column_id (GtkTreeSortable *sortable,
       gint sort_column_id,
       GtkSortType order);
void gtk_tree_sortable_set_sort_func (GtkTreeSortable *sortable,
       gint sort_column_id,
       GtkTreeIterCompareFunc sort_func,
       gpointer user_data,
       GDestroyNotify destroy);
void gtk_tree_sortable_set_default_sort_func (GtkTreeSortable *sortable,
       GtkTreeIterCompareFunc sort_func,
       gpointer user_data,
       GDestroyNotify destroy);
gboolean gtk_tree_sortable_has_default_sort_func (GtkTreeSortable *sortable);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeviewcolumn.h" 2





extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeviewcolumn.h"
typedef enum
{
 GTK_TREE_VIEW_COLUMN_GROW_ONLY,
 GTK_TREE_VIEW_COLUMN_AUTOSIZE,
 GTK_TREE_VIEW_COLUMN_FIXED
} GtkTreeViewColumnSizing;

typedef struct _GtkTreeViewColumn GtkTreeViewColumn;
typedef struct _GtkTreeViewColumnClass GtkTreeViewColumnClass;

typedef void (* GtkTreeCellDataFunc) (GtkTreeViewColumn *tree_column,
         GtkCellRenderer *cell,
         GtkTreeModel *tree_model,
         GtkTreeIter *iter,
         gpointer data);


struct _GtkTreeViewColumn
{
 GtkObject parent;

 GtkWidget *tree_view;
 GtkWidget *button;
 GtkWidget *child;
 GtkWidget *arrow;
 GtkWidget *alignment;
 GdkWindow *window;
 GtkCellEditable *editable_widget;
 gfloat xalign;
 guint property_changed_signal;
 gint spacing;



 GtkTreeViewColumnSizing column_type;
 gint requested_width;
 gint button_request;
 gint resized_width;
 gint width;
 gint fixed_width;
 gint min_width;
 gint max_width;


 gint drag_x;
 gint drag_y;

 gchar *title;
 GList *cell_list;


 guint sort_clicked_signal;
 guint sort_column_changed_signal;
 gint sort_column_id;
 GtkSortType sort_order;


 guint visible : 1;
 guint resizable : 1;
 guint clickable : 1;
 guint dirty : 1;
 guint show_sort_indicator : 1;
 guint maybe_reordered : 1;
 guint reorderable : 1;
 guint use_resized_width : 1;
 guint expand : 1;
};

struct _GtkTreeViewColumnClass
{
 GtkObjectClass parent_class;

 void (*clicked) (GtkTreeViewColumn *tree_column);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_tree_view_column_get_type (void) __attribute__((__const__));
GtkTreeViewColumn *gtk_tree_view_column_new (void);
GtkTreeViewColumn *gtk_tree_view_column_new_with_attributes (const gchar *title,
         GtkCellRenderer *cell,
         ...) __attribute__((__sentinel__));
void gtk_tree_view_column_pack_start (GtkTreeViewColumn *tree_column,
         GtkCellRenderer *cell,
         gboolean expand);
void gtk_tree_view_column_pack_end (GtkTreeViewColumn *tree_column,
         GtkCellRenderer *cell,
         gboolean expand);
void gtk_tree_view_column_clear (GtkTreeViewColumn *tree_column);

GList *gtk_tree_view_column_get_cell_renderers (GtkTreeViewColumn *tree_column);

void gtk_tree_view_column_add_attribute (GtkTreeViewColumn *tree_column,
         GtkCellRenderer *cell_renderer,
         const gchar *attribute,
         gint column);
void gtk_tree_view_column_set_attributes (GtkTreeViewColumn *tree_column,
         GtkCellRenderer *cell_renderer,
         ...) __attribute__((__sentinel__));
void gtk_tree_view_column_set_cell_data_func (GtkTreeViewColumn *tree_column,
         GtkCellRenderer *cell_renderer,
         GtkTreeCellDataFunc func,
         gpointer func_data,
         GDestroyNotify destroy);
void gtk_tree_view_column_clear_attributes (GtkTreeViewColumn *tree_column,
         GtkCellRenderer *cell_renderer);
void gtk_tree_view_column_set_spacing (GtkTreeViewColumn *tree_column,
         gint spacing);
gint gtk_tree_view_column_get_spacing (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_visible (GtkTreeViewColumn *tree_column,
         gboolean visible);
gboolean gtk_tree_view_column_get_visible (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_resizable (GtkTreeViewColumn *tree_column,
         gboolean resizable);
gboolean gtk_tree_view_column_get_resizable (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_sizing (GtkTreeViewColumn *tree_column,
         GtkTreeViewColumnSizing type);
GtkTreeViewColumnSizing gtk_tree_view_column_get_sizing (GtkTreeViewColumn *tree_column);
gint gtk_tree_view_column_get_width (GtkTreeViewColumn *tree_column);
gint gtk_tree_view_column_get_fixed_width (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_fixed_width (GtkTreeViewColumn *tree_column,
         gint fixed_width);
void gtk_tree_view_column_set_min_width (GtkTreeViewColumn *tree_column,
         gint min_width);
gint gtk_tree_view_column_get_min_width (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_max_width (GtkTreeViewColumn *tree_column,
         gint max_width);
gint gtk_tree_view_column_get_max_width (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_clicked (GtkTreeViewColumn *tree_column);





void gtk_tree_view_column_set_title (GtkTreeViewColumn *tree_column,
         const gchar *title);
const gchar * gtk_tree_view_column_get_title (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_expand (GtkTreeViewColumn *tree_column,
         gboolean expand);
gboolean gtk_tree_view_column_get_expand (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_clickable (GtkTreeViewColumn *tree_column,
         gboolean clickable);
gboolean gtk_tree_view_column_get_clickable (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_widget (GtkTreeViewColumn *tree_column,
         GtkWidget *widget);
GtkWidget *gtk_tree_view_column_get_widget (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_alignment (GtkTreeViewColumn *tree_column,
         gfloat xalign);
gfloat gtk_tree_view_column_get_alignment (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_reorderable (GtkTreeViewColumn *tree_column,
         gboolean reorderable);
gboolean gtk_tree_view_column_get_reorderable (GtkTreeViewColumn *tree_column);






void gtk_tree_view_column_set_sort_column_id (GtkTreeViewColumn *tree_column,
         gint sort_column_id);
gint gtk_tree_view_column_get_sort_column_id (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_sort_indicator (GtkTreeViewColumn *tree_column,
         gboolean setting);
gboolean gtk_tree_view_column_get_sort_indicator (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_set_sort_order (GtkTreeViewColumn *tree_column,
         GtkSortType order);
GtkSortType gtk_tree_view_column_get_sort_order (GtkTreeViewColumn *tree_column);




void gtk_tree_view_column_cell_set_cell_data (GtkTreeViewColumn *tree_column,
         GtkTreeModel *tree_model,
         GtkTreeIter *iter,
         gboolean is_expander,
         gboolean is_expanded);
void gtk_tree_view_column_cell_get_size (GtkTreeViewColumn *tree_column,
         const GdkRectangle *cell_area,
         gint *x_offset,
         gint *y_offset,
         gint *width,
         gint *height);
gboolean gtk_tree_view_column_cell_is_visible (GtkTreeViewColumn *tree_column);
void gtk_tree_view_column_focus_cell (GtkTreeViewColumn *tree_column,
         GtkCellRenderer *cell);
gboolean gtk_tree_view_column_cell_get_position (GtkTreeViewColumn *tree_column,
                              GtkCellRenderer *cell_renderer,
                              gint *start_pos,
                              gint *width);
void gtk_tree_view_column_queue_resize (GtkTreeViewColumn *tree_column);
GtkWidget *gtk_tree_view_column_get_tree_view (GtkTreeViewColumn *tree_column);


}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcelllayout.h" 2



extern "C" {






typedef struct _GtkCellLayout GtkCellLayout;
typedef struct _GtkCellLayoutIface GtkCellLayoutIface;


typedef void (* GtkCellLayoutDataFunc) (GtkCellLayout *cell_layout,
                                       GtkCellRenderer *cell,
                                       GtkTreeModel *tree_model,
                                       GtkTreeIter *iter,
                                       gpointer data);

struct _GtkCellLayoutIface
{
 GTypeInterface g_iface;


 void (* pack_start) (GtkCellLayout *cell_layout,
                              GtkCellRenderer *cell,
                              gboolean expand);
 void (* pack_end) (GtkCellLayout *cell_layout,
                              GtkCellRenderer *cell,
                              gboolean expand);
 void (* clear) (GtkCellLayout *cell_layout);
 void (* add_attribute) (GtkCellLayout *cell_layout,
                              GtkCellRenderer *cell,
                              const gchar *attribute,
                              gint column);
 void (* set_cell_data_func) (GtkCellLayout *cell_layout,
                              GtkCellRenderer *cell,
                              GtkCellLayoutDataFunc func,
                              gpointer func_data,
                              GDestroyNotify destroy);
 void (* clear_attributes) (GtkCellLayout *cell_layout,
                              GtkCellRenderer *cell);
 void (* reorder) (GtkCellLayout *cell_layout,
                              GtkCellRenderer *cell,
                              gint position);
 GList* (* get_cells) (GtkCellLayout *cell_layout);
};

GType gtk_cell_layout_get_type (void) __attribute__((__const__));
void gtk_cell_layout_pack_start (GtkCellLayout *cell_layout,
                                         GtkCellRenderer *cell,
                                         gboolean expand);
void gtk_cell_layout_pack_end (GtkCellLayout *cell_layout,
                                         GtkCellRenderer *cell,
                                         gboolean expand);
GList *gtk_cell_layout_get_cells (GtkCellLayout *cell_layout);
void gtk_cell_layout_clear (GtkCellLayout *cell_layout);
void gtk_cell_layout_set_attributes (GtkCellLayout *cell_layout,
                                         GtkCellRenderer *cell,
                                         ...) __attribute__((__sentinel__));
void gtk_cell_layout_add_attribute (GtkCellLayout *cell_layout,
                                         GtkCellRenderer *cell,
                                         const gchar *attribute,
                                         gint column);
void gtk_cell_layout_set_cell_data_func (GtkCellLayout *cell_layout,
                                         GtkCellRenderer *cell,
                                         GtkCellLayoutDataFunc func,
                                         gpointer func_data,
                                         GDestroyNotify destroy);
void gtk_cell_layout_clear_attributes (GtkCellLayout *cell_layout,
                                         GtkCellRenderer *cell);
void gtk_cell_layout_reorder (GtkCellLayout *cell_layout,
                                         GtkCellRenderer *cell,
                                         gint position);
gboolean _gtk_cell_layout_buildable_custom_tag_start (GtkBuildable *buildable,
           GtkBuilder *builder,
           GObject *child,
           const gchar *tagname,
           GMarkupParser *parser,
           gpointer *data);
void _gtk_cell_layout_buildable_custom_tag_end (GtkBuildable *buildable,
           GtkBuilder *builder,
           GObject *child,
           const gchar *tagname,
           gpointer *data);
void _gtk_cell_layout_buildable_add_child (GtkBuildable *buildable,
           GtkBuilder *builder,
           GObject *child,
           const gchar *type);

}
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendereraccel.h" 1
# 27 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendereraccel.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderertext.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderertext.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderertext.h"
typedef struct _GtkCellRendererText GtkCellRendererText;
typedef struct _GtkCellRendererTextClass GtkCellRendererTextClass;

struct _GtkCellRendererText
{
 GtkCellRenderer parent;


 gchar *text;
 PangoFontDescription *font;
 gdouble font_scale;
 PangoColor foreground;
 PangoColor background;

 PangoAttrList *extra_attrs;

 PangoUnderline underline_style;

 gint rise;
 gint fixed_height_rows;

 guint strikethrough : 1;

 guint editable : 1;

 guint scale_set : 1;

 guint foreground_set : 1;
 guint background_set : 1;

 guint underline_set : 1;

 guint rise_set : 1;

 guint strikethrough_set : 1;

 guint editable_set : 1;
 guint calc_fixed_height : 1;
};

struct _GtkCellRendererTextClass
{
 GtkCellRendererClass parent_class;

 void (* edited) (GtkCellRendererText *cell_renderer_text,
    const gchar *path,
    const gchar *new_text);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_cell_renderer_text_get_type (void) __attribute__((__const__));
GtkCellRenderer *gtk_cell_renderer_text_new (void);

void gtk_cell_renderer_text_set_fixed_height_from_font (GtkCellRendererText *renderer,
           gint number_of_rows);


}
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendereraccel.h" 2

extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendereraccel.h"
typedef struct _GtkCellRendererAccel GtkCellRendererAccel;
typedef struct _GtkCellRendererAccelClass GtkCellRendererAccelClass;


typedef enum
{
 GTK_CELL_RENDERER_ACCEL_MODE_GTK,
 GTK_CELL_RENDERER_ACCEL_MODE_OTHER
} GtkCellRendererAccelMode;


struct _GtkCellRendererAccel
{
 GtkCellRendererText parent;


 guint accel_key;
 GdkModifierType accel_mods;
 guint keycode;
 GtkCellRendererAccelMode accel_mode;

 GtkWidget *edit_widget;
 GtkWidget *grab_widget;
 GtkWidget *sizing_label;
};

struct _GtkCellRendererAccelClass
{
 GtkCellRendererTextClass parent_class;

 void (* accel_edited) (GtkCellRendererAccel *accel,
     const gchar *path_string,
    guint accel_key,
    GdkModifierType accel_mods,
    guint hardware_keycode);

 void (* accel_cleared) (GtkCellRendererAccel *accel,
    const gchar *path_string);


 void (*_gtk_reserved0) (void);
 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_cell_renderer_accel_get_type (void) __attribute__((__const__));
GtkCellRenderer *gtk_cell_renderer_accel_new (void);


}
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderercombo.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderercombo.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderercombo.h"
typedef struct _GtkCellRendererCombo GtkCellRendererCombo;
typedef struct _GtkCellRendererComboClass GtkCellRendererComboClass;

struct _GtkCellRendererCombo
{
 GtkCellRendererText parent;

 GtkTreeModel *model;
 gint text_column;
 gboolean has_entry;


 guint focus_out_id;
};

struct _GtkCellRendererComboClass
{
 GtkCellRendererTextClass parent;
};

GType gtk_cell_renderer_combo_get_type (void) __attribute__((__const__));
GtkCellRenderer *gtk_cell_renderer_combo_new (void);

}
# 59 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h"
typedef struct _GtkCellRendererPixbuf GtkCellRendererPixbuf;
typedef struct _GtkCellRendererPixbufClass GtkCellRendererPixbufClass;

struct _GtkCellRendererPixbuf
{
 GtkCellRenderer parent;


 GdkPixbuf *pixbuf;
 GdkPixbuf *pixbuf_expander_open;
 GdkPixbuf *pixbuf_expander_closed;
};

struct _GtkCellRendererPixbufClass
{
 GtkCellRendererClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_cell_renderer_pixbuf_get_type (void) __attribute__((__const__));
GtkCellRenderer *gtk_cell_renderer_pixbuf_new (void);


}
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererprogress.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererprogress.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererprogress.h"
typedef struct _GtkCellRendererProgress GtkCellRendererProgress;
typedef struct _GtkCellRendererProgressClass GtkCellRendererProgressClass;
typedef struct _GtkCellRendererProgressPrivate GtkCellRendererProgressPrivate;

struct _GtkCellRendererProgress
{
 GtkCellRenderer parent_instance;


 GtkCellRendererProgressPrivate *priv;
};

struct _GtkCellRendererProgressClass
{
 GtkCellRendererClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_cell_renderer_progress_get_type (void) __attribute__((__const__));
GtkCellRenderer* gtk_cell_renderer_progress_new (void);

}
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererspin.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererspin.h"
extern "C" {
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererspin.h"
typedef struct _GtkCellRendererSpin GtkCellRendererSpin;
typedef struct _GtkCellRendererSpinClass GtkCellRendererSpinClass;
typedef struct _GtkCellRendererSpinPrivate GtkCellRendererSpinPrivate;

struct _GtkCellRendererSpin
{
 GtkCellRendererText parent;
};

struct _GtkCellRendererSpinClass
{
 GtkCellRendererTextClass parent;
};

GType gtk_cell_renderer_spin_get_type (void);
GtkCellRenderer *gtk_cell_renderer_spin_new (void);

}
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererspinner.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererspinner.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrendererspinner.h"
typedef struct _GtkCellRendererSpinner GtkCellRendererSpinner;
typedef struct _GtkCellRendererSpinnerClass GtkCellRendererSpinnerClass;
typedef struct _GtkCellRendererSpinnerPrivate GtkCellRendererSpinnerPrivate;

struct _GtkCellRendererSpinner
{
 GtkCellRenderer parent;
 GtkCellRendererSpinnerPrivate *priv;
};

struct _GtkCellRendererSpinnerClass
{
 GtkCellRendererClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_cell_renderer_spinner_get_type (void) __attribute__((__const__));
GtkCellRenderer *gtk_cell_renderer_spinner_new (void);

}
# 63 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderertoggle.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderertoggle.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellrenderertoggle.h"
typedef struct _GtkCellRendererToggle GtkCellRendererToggle;
typedef struct _GtkCellRendererToggleClass GtkCellRendererToggleClass;

struct _GtkCellRendererToggle
{
 GtkCellRenderer parent;


 guint active : 1;
 guint activatable : 1;
 guint radio : 1;
};

struct _GtkCellRendererToggleClass
{
 GtkCellRendererClass parent_class;

 void (* toggled) (GtkCellRendererToggle *cell_renderer_toggle,
     const gchar *path);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_cell_renderer_toggle_get_type (void) __attribute__((__const__));
GtkCellRenderer *gtk_cell_renderer_toggle_new (void);

gboolean gtk_cell_renderer_toggle_get_radio (GtkCellRendererToggle *toggle);
void gtk_cell_renderer_toggle_set_radio (GtkCellRendererToggle *toggle,
                                                         gboolean radio);

gboolean gtk_cell_renderer_toggle_get_active (GtkCellRendererToggle *toggle);
void gtk_cell_renderer_toggle_set_active (GtkCellRendererToggle *toggle,
                                                         gboolean setting);

gboolean gtk_cell_renderer_toggle_get_activatable (GtkCellRendererToggle *toggle);
void gtk_cell_renderer_toggle_set_activatable (GtkCellRendererToggle *toggle,
                                                         gboolean setting);


}
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellview.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellview.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcellview.h"
typedef struct _GtkCellView GtkCellView;
typedef struct _GtkCellViewClass GtkCellViewClass;
typedef struct _GtkCellViewPrivate GtkCellViewPrivate;

struct _GtkCellView
{
 GtkWidget parent_instance;


 GtkCellViewPrivate *priv;
};

struct _GtkCellViewClass
{
 GtkWidgetClass parent_class;
};

GType gtk_cell_view_get_type (void) __attribute__((__const__));
GtkWidget *gtk_cell_view_new (void);
GtkWidget *gtk_cell_view_new_with_text (const gchar *text);
GtkWidget *gtk_cell_view_new_with_markup (const gchar *markup);
GtkWidget *gtk_cell_view_new_with_pixbuf (GdkPixbuf *pixbuf);

void gtk_cell_view_set_model (GtkCellView *cell_view,
                                                        GtkTreeModel *model);
GtkTreeModel *gtk_cell_view_get_model (GtkCellView *cell_view);
void gtk_cell_view_set_displayed_row (GtkCellView *cell_view,
                                                        GtkTreePath *path);
GtkTreePath *gtk_cell_view_get_displayed_row (GtkCellView *cell_view);
gboolean gtk_cell_view_get_size_of_row (GtkCellView *cell_view,
                                                        GtkTreePath *path,
                                                        GtkRequisition *requisition);

void gtk_cell_view_set_background_color (GtkCellView *cell_view,
                                                        const GdkColor *color);

GList *gtk_cell_view_get_cell_renderers (GtkCellView *cell_view);


}
# 66 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcheckbutton.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcheckbutton.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktogglebutton.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktogglebutton.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktogglebutton.h"
typedef struct _GtkToggleButton GtkToggleButton;
typedef struct _GtkToggleButtonClass GtkToggleButtonClass;

struct _GtkToggleButton
{
 GtkButton button;

 guint active : 1;
 guint draw_indicator : 1;
 guint inconsistent : 1;
};

struct _GtkToggleButtonClass
{
 GtkButtonClass parent_class;

 void (* toggled) (GtkToggleButton *toggle_button);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_toggle_button_get_type (void) __attribute__((__const__));

GtkWidget* gtk_toggle_button_new (void);
GtkWidget* gtk_toggle_button_new_with_label (const gchar *label);
GtkWidget* gtk_toggle_button_new_with_mnemonic (const gchar *label);
void gtk_toggle_button_set_mode (GtkToggleButton *toggle_button,
                                               gboolean draw_indicator);
gboolean gtk_toggle_button_get_mode (GtkToggleButton *toggle_button);
void gtk_toggle_button_set_active (GtkToggleButton *toggle_button,
                                               gboolean is_active);
gboolean gtk_toggle_button_get_active (GtkToggleButton *toggle_button);
void gtk_toggle_button_toggled (GtkToggleButton *toggle_button);
void gtk_toggle_button_set_inconsistent (GtkToggleButton *toggle_button,
                                               gboolean setting);
gboolean gtk_toggle_button_get_inconsistent (GtkToggleButton *toggle_button);






}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcheckbutton.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcheckbutton.h"
typedef struct _GtkCheckButton GtkCheckButton;
typedef struct _GtkCheckButtonClass GtkCheckButtonClass;

struct _GtkCheckButton
{
 GtkToggleButton toggle_button;
};

struct _GtkCheckButtonClass
{
 GtkToggleButtonClass parent_class;

 void (* draw_indicator) (GtkCheckButton *check_button,
     GdkRectangle *area);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_check_button_get_type (void) __attribute__((__const__));
GtkWidget* gtk_check_button_new (void);
GtkWidget* gtk_check_button_new_with_label (const gchar *label);
GtkWidget* gtk_check_button_new_with_mnemonic (const gchar *label);

void _gtk_check_button_get_props (GtkCheckButton *check_button,
     gint *indicator_size,
     gint *indicator_spacing);

}
# 67 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcheckmenuitem.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcheckmenuitem.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenuitem.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenuitem.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkitem.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkitem.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkitem.h"
typedef struct _GtkItem GtkItem;
typedef struct _GtkItemClass GtkItemClass;

struct _GtkItem
{
 GtkBin bin;
};

struct _GtkItemClass
{
 GtkBinClass parent_class;

 void (* select) (GtkItem *item);
 void (* deselect) (GtkItem *item);
 void (* toggle) (GtkItem *item);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_item_get_type (void) __attribute__((__const__));

void gtk_item_select (GtkItem *item);
void gtk_item_deselect (GtkItem *item);
void gtk_item_toggle (GtkItem *item);


}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenuitem.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenuitem.h"
typedef struct _GtkMenuItem GtkMenuItem;
typedef struct _GtkMenuItemClass GtkMenuItemClass;

struct _GtkMenuItem
{
 GtkItem item;

 GtkWidget *submenu;
 GdkWindow *event_window;

 guint16 toggle_size;
 guint16 accelerator_width;
 gchar *accel_path;

 guint show_submenu_indicator : 1;
 guint submenu_placement : 1;
 guint submenu_direction : 1;
 guint right_justify: 1;
 guint timer_from_keypress : 1;
 guint from_menubar : 1;
 guint timer;
};

struct _GtkMenuItemClass
{
 GtkItemClass parent_class;







 guint hide_on_activate : 1;

 void (* activate) (GtkMenuItem *menu_item);
 void (* activate_item) (GtkMenuItem *menu_item);
 void (* toggle_size_request) (GtkMenuItem *menu_item,
    gint *requisition);
 void (* toggle_size_allocate) (GtkMenuItem *menu_item,
    gint allocation);
 void (* set_label) (GtkMenuItem *menu_item,
    const gchar *label);
 const gchar *(* get_label) (GtkMenuItem *menu_item);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
};


GType gtk_menu_item_get_type (void) __attribute__((__const__));
GtkWidget* gtk_menu_item_new (void);
GtkWidget* gtk_menu_item_new_with_label (const gchar *label);
GtkWidget* gtk_menu_item_new_with_mnemonic (const gchar *label);
void gtk_menu_item_set_submenu (GtkMenuItem *menu_item,
           GtkWidget *submenu);
GtkWidget* gtk_menu_item_get_submenu (GtkMenuItem *menu_item);
void gtk_menu_item_select (GtkMenuItem *menu_item);
void gtk_menu_item_deselect (GtkMenuItem *menu_item);
void gtk_menu_item_activate (GtkMenuItem *menu_item);
void gtk_menu_item_toggle_size_request (GtkMenuItem *menu_item,
           gint *requisition);
void gtk_menu_item_toggle_size_allocate (GtkMenuItem *menu_item,
           gint allocation);
void gtk_menu_item_set_right_justified (GtkMenuItem *menu_item,
           gboolean right_justified);
gboolean gtk_menu_item_get_right_justified (GtkMenuItem *menu_item);
void gtk_menu_item_set_accel_path (GtkMenuItem *menu_item,
           const gchar *accel_path);
const gchar* gtk_menu_item_get_accel_path (GtkMenuItem *menu_item);

void gtk_menu_item_set_label (GtkMenuItem *menu_item,
            const gchar *label);
const gchar *gtk_menu_item_get_label (GtkMenuItem *menu_item);

void gtk_menu_item_set_use_underline (GtkMenuItem *menu_item,
            gboolean setting);
gboolean gtk_menu_item_get_use_underline (GtkMenuItem *menu_item);


void _gtk_menu_item_refresh_accel_path (GtkMenuItem *menu_item,
           const gchar *prefix,
           GtkAccelGroup *accel_group,
           gboolean group_changed);
gboolean _gtk_menu_item_is_selectable (GtkWidget *menu_item);
void _gtk_menu_item_popup_submenu (GtkWidget *menu_item,
                                              gboolean with_delay);
void _gtk_menu_item_popdown_submenu (GtkWidget *menu_item);


void gtk_menu_item_remove_submenu (GtkMenuItem *menu_item);



}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcheckmenuitem.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcheckmenuitem.h"
typedef struct _GtkCheckMenuItem GtkCheckMenuItem;
typedef struct _GtkCheckMenuItemClass GtkCheckMenuItemClass;

struct _GtkCheckMenuItem
{
 GtkMenuItem menu_item;

 guint active : 1;
 guint always_show_toggle : 1;
 guint inconsistent : 1;
 guint draw_as_radio : 1;
};

struct _GtkCheckMenuItemClass
{
 GtkMenuItemClass parent_class;

 void (* toggled) (GtkCheckMenuItem *check_menu_item);
 void (* draw_indicator) (GtkCheckMenuItem *check_menu_item,
     GdkRectangle *area);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_check_menu_item_get_type (void) __attribute__((__const__));

GtkWidget* gtk_check_menu_item_new (void);
GtkWidget* gtk_check_menu_item_new_with_label (const gchar *label);
GtkWidget* gtk_check_menu_item_new_with_mnemonic (const gchar *label);
void gtk_check_menu_item_set_active (GtkCheckMenuItem *check_menu_item,
       gboolean is_active);
gboolean gtk_check_menu_item_get_active (GtkCheckMenuItem *check_menu_item);
void gtk_check_menu_item_toggled (GtkCheckMenuItem *check_menu_item);
void gtk_check_menu_item_set_inconsistent (GtkCheckMenuItem *check_menu_item,
       gboolean setting);
gboolean gtk_check_menu_item_get_inconsistent (GtkCheckMenuItem *check_menu_item);
void gtk_check_menu_item_set_draw_as_radio (GtkCheckMenuItem *check_menu_item,
       gboolean draw_as_radio);
gboolean gtk_check_menu_item_get_draw_as_radio (GtkCheckMenuItem *check_menu_item);



void gtk_check_menu_item_set_show_toggle (GtkCheckMenuItem *menu_item,
     gboolean always);



}
# 68 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkclipboard.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkclipboard.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkselection.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkselection.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextiter.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextiter.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktexttag.h" 1
# 65 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktexttag.h"
extern "C" {

typedef struct _GtkTextIter GtkTextIter;
typedef struct _GtkTextTagTable GtkTextTagTable;

typedef struct _GtkTextAttributes GtkTextAttributes;
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktexttag.h"
typedef struct _GtkTextTag GtkTextTag;
typedef struct _GtkTextTagClass GtkTextTagClass;

struct _GtkTextTag
{
 GObject parent_instance;

 GtkTextTagTable *table;

 char *name;



 int priority;
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktexttag.h"
 GtkTextAttributes *values;




 guint bg_color_set : 1;
 guint bg_stipple_set : 1;
 guint fg_color_set : 1;
 guint scale_set : 1;
 guint fg_stipple_set : 1;
 guint justification_set : 1;
 guint left_margin_set : 1;
 guint indent_set : 1;
 guint rise_set : 1;
 guint strikethrough_set : 1;
 guint right_margin_set : 1;
 guint pixels_above_lines_set : 1;
 guint pixels_below_lines_set : 1;
 guint pixels_inside_wrap_set : 1;
 guint tabs_set : 1;
 guint underline_set : 1;
 guint wrap_mode_set : 1;
 guint bg_full_height_set : 1;
 guint invisible_set : 1;
 guint editable_set : 1;
 guint language_set : 1;
 guint pg_bg_color_set : 1;


 guint accumulative_margin : 1;

 guint pad1 : 1;
};

struct _GtkTextTagClass
{
 GObjectClass parent_class;

 gboolean (* event) (GtkTextTag *tag,
                     GObject *event_object,
                     GdkEvent *event,
                     const GtkTextIter *iter);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_text_tag_get_type (void) __attribute__((__const__));
GtkTextTag *gtk_text_tag_new (const gchar *name);
gint gtk_text_tag_get_priority (GtkTextTag *tag);
void gtk_text_tag_set_priority (GtkTextTag *tag,
                                       gint priority);
gboolean gtk_text_tag_event (GtkTextTag *tag,
                                       GObject *event_object,
                                       GdkEvent *event,
                                       const GtkTextIter *iter);





typedef struct _GtkTextAppearance GtkTextAppearance;

struct _GtkTextAppearance
{

 GdkColor bg_color;
 GdkColor fg_color;
 GdkBitmap *bg_stipple;
 GdkBitmap *fg_stipple;


 gint rise;





 gpointer padding1;


 guint underline : 4;
 guint strikethrough : 1;






 guint draw_bg : 1;





 guint inside_selection : 1;
 guint is_text : 1;


 guint pad1 : 1;
 guint pad2 : 1;
 guint pad3 : 1;
 guint pad4 : 1;
};

struct _GtkTextAttributes
{

 guint refcount;


 GtkTextAppearance appearance;

 GtkJustification justification;
 GtkTextDirection direction;


 PangoFontDescription *font;

 gdouble font_scale;

 gint left_margin;

 gint indent;

 gint right_margin;

 gint pixels_above_lines;

 gint pixels_below_lines;

 gint pixels_inside_wrap;

 PangoTabArray *tabs;

 GtkWrapMode wrap_mode;




 PangoLanguage *language;


 GdkColor *pg_bg_color;



 guint invisible : 1;




 guint bg_full_height : 1;


 guint editable : 1;


 guint realized : 1;


 guint pad1 : 1;
 guint pad2 : 1;
 guint pad3 : 1;
 guint pad4 : 1;
};

GtkTextAttributes* gtk_text_attributes_new (void);
GtkTextAttributes* gtk_text_attributes_copy (GtkTextAttributes *src);
void gtk_text_attributes_copy_values (GtkTextAttributes *src,
                                                   GtkTextAttributes *dest);
void gtk_text_attributes_unref (GtkTextAttributes *values);
GtkTextAttributes *gtk_text_attributes_ref (GtkTextAttributes *values);

GType gtk_text_attributes_get_type (void) __attribute__((__const__));


}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextiter.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextchild.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextchild.h"
extern "C" {







typedef struct _GtkTextChildAnchor GtkTextChildAnchor;
typedef struct _GtkTextChildAnchorClass GtkTextChildAnchorClass;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextchild.h"
struct _GtkTextChildAnchor
{
 GObject parent_instance;

 gpointer segment;
};

struct _GtkTextChildAnchorClass
{
 GObjectClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_text_child_anchor_get_type (void) __attribute__((__const__));

GtkTextChildAnchor* gtk_text_child_anchor_new (void);

GList* gtk_text_child_anchor_get_widgets (GtkTextChildAnchor *anchor);
gboolean gtk_text_child_anchor_get_deleted (GtkTextChildAnchor *anchor);

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextiter.h" 2

extern "C" {

typedef enum {
 GTK_TEXT_SEARCH_VISIBLE_ONLY = 1 << 0,
 GTK_TEXT_SEARCH_TEXT_ONLY = 1 << 1

} GtkTextSearchFlags;







typedef struct _GtkTextBuffer GtkTextBuffer;



struct _GtkTextIter {





 gpointer dummy1;
 gpointer dummy2;
 gint dummy3;
 gint dummy4;
 gint dummy5;
 gint dummy6;
 gint dummy7;
 gint dummy8;
 gpointer dummy9;
 gpointer dummy10;
 gint dummy11;
 gint dummy12;

 gint dummy13;
 gpointer dummy14;
};




GtkTextBuffer *gtk_text_iter_get_buffer (const GtkTextIter *iter);





GtkTextIter *gtk_text_iter_copy (const GtkTextIter *iter);
void gtk_text_iter_free (GtkTextIter *iter);

GType gtk_text_iter_get_type (void) __attribute__((__const__));





gint gtk_text_iter_get_offset (const GtkTextIter *iter);
gint gtk_text_iter_get_line (const GtkTextIter *iter);
gint gtk_text_iter_get_line_offset (const GtkTextIter *iter);
gint gtk_text_iter_get_line_index (const GtkTextIter *iter);

gint gtk_text_iter_get_visible_line_offset (const GtkTextIter *iter);
gint gtk_text_iter_get_visible_line_index (const GtkTextIter *iter);





gunichar gtk_text_iter_get_char (const GtkTextIter *iter);




gchar *gtk_text_iter_get_slice (const GtkTextIter *start,
                                         const GtkTextIter *end);


gchar *gtk_text_iter_get_text (const GtkTextIter *start,
                                         const GtkTextIter *end);

gchar *gtk_text_iter_get_visible_slice (const GtkTextIter *start,
                                         const GtkTextIter *end);
gchar *gtk_text_iter_get_visible_text (const GtkTextIter *start,
                                         const GtkTextIter *end);

GdkPixbuf* gtk_text_iter_get_pixbuf (const GtkTextIter *iter);
GSList * gtk_text_iter_get_marks (const GtkTextIter *iter);

GtkTextChildAnchor* gtk_text_iter_get_child_anchor (const GtkTextIter *iter);




GSList *gtk_text_iter_get_toggled_tags (const GtkTextIter *iter,
                                         gboolean toggled_on);

gboolean gtk_text_iter_begins_tag (const GtkTextIter *iter,
                                         GtkTextTag *tag);

gboolean gtk_text_iter_ends_tag (const GtkTextIter *iter,
                                         GtkTextTag *tag);

gboolean gtk_text_iter_toggles_tag (const GtkTextIter *iter,
                                         GtkTextTag *tag);

gboolean gtk_text_iter_has_tag (const GtkTextIter *iter,
                                         GtkTextTag *tag);
GSList *gtk_text_iter_get_tags (const GtkTextIter *iter);

gboolean gtk_text_iter_editable (const GtkTextIter *iter,
                                         gboolean default_setting);
gboolean gtk_text_iter_can_insert (const GtkTextIter *iter,
                                         gboolean default_editability);

gboolean gtk_text_iter_starts_word (const GtkTextIter *iter);
gboolean gtk_text_iter_ends_word (const GtkTextIter *iter);
gboolean gtk_text_iter_inside_word (const GtkTextIter *iter);
gboolean gtk_text_iter_starts_sentence (const GtkTextIter *iter);
gboolean gtk_text_iter_ends_sentence (const GtkTextIter *iter);
gboolean gtk_text_iter_inside_sentence (const GtkTextIter *iter);
gboolean gtk_text_iter_starts_line (const GtkTextIter *iter);
gboolean gtk_text_iter_ends_line (const GtkTextIter *iter);
gboolean gtk_text_iter_is_cursor_position (const GtkTextIter *iter);

gint gtk_text_iter_get_chars_in_line (const GtkTextIter *iter);
gint gtk_text_iter_get_bytes_in_line (const GtkTextIter *iter);

gboolean gtk_text_iter_get_attributes (const GtkTextIter *iter,
         GtkTextAttributes *values);
PangoLanguage* gtk_text_iter_get_language (const GtkTextIter *iter);
gboolean gtk_text_iter_is_end (const GtkTextIter *iter);
gboolean gtk_text_iter_is_start (const GtkTextIter *iter);





gboolean gtk_text_iter_forward_char (GtkTextIter *iter);
gboolean gtk_text_iter_backward_char (GtkTextIter *iter);
gboolean gtk_text_iter_forward_chars (GtkTextIter *iter,
                                            gint count);
gboolean gtk_text_iter_backward_chars (GtkTextIter *iter,
                                            gint count);
gboolean gtk_text_iter_forward_line (GtkTextIter *iter);
gboolean gtk_text_iter_backward_line (GtkTextIter *iter);
gboolean gtk_text_iter_forward_lines (GtkTextIter *iter,
                                            gint count);
gboolean gtk_text_iter_backward_lines (GtkTextIter *iter,
                                            gint count);
gboolean gtk_text_iter_forward_word_end (GtkTextIter *iter);
gboolean gtk_text_iter_backward_word_start (GtkTextIter *iter);
gboolean gtk_text_iter_forward_word_ends (GtkTextIter *iter,
                                            gint count);
gboolean gtk_text_iter_backward_word_starts (GtkTextIter *iter,
                                            gint count);

gboolean gtk_text_iter_forward_visible_line (GtkTextIter *iter);
gboolean gtk_text_iter_backward_visible_line (GtkTextIter *iter);
gboolean gtk_text_iter_forward_visible_lines (GtkTextIter *iter,
                                              gint count);
gboolean gtk_text_iter_backward_visible_lines (GtkTextIter *iter,
                                              gint count);

gboolean gtk_text_iter_forward_visible_word_end (GtkTextIter *iter);
gboolean gtk_text_iter_backward_visible_word_start (GtkTextIter *iter);
gboolean gtk_text_iter_forward_visible_word_ends (GtkTextIter *iter,
                                            gint count);
gboolean gtk_text_iter_backward_visible_word_starts (GtkTextIter *iter,
                                            gint count);

gboolean gtk_text_iter_forward_sentence_end (GtkTextIter *iter);
gboolean gtk_text_iter_backward_sentence_start (GtkTextIter *iter);
gboolean gtk_text_iter_forward_sentence_ends (GtkTextIter *iter,
                                                gint count);
gboolean gtk_text_iter_backward_sentence_starts (GtkTextIter *iter,
                                                gint count);





gboolean gtk_text_iter_forward_cursor_position (GtkTextIter *iter);
gboolean gtk_text_iter_backward_cursor_position (GtkTextIter *iter);
gboolean gtk_text_iter_forward_cursor_positions (GtkTextIter *iter,
                                                 gint count);
gboolean gtk_text_iter_backward_cursor_positions (GtkTextIter *iter,
                                                 gint count);

gboolean gtk_text_iter_forward_visible_cursor_position (GtkTextIter *iter);
gboolean gtk_text_iter_backward_visible_cursor_position (GtkTextIter *iter);
gboolean gtk_text_iter_forward_visible_cursor_positions (GtkTextIter *iter,
                                                         gint count);
gboolean gtk_text_iter_backward_visible_cursor_positions (GtkTextIter *iter,
                                                         gint count);


void gtk_text_iter_set_offset (GtkTextIter *iter,
                                          gint char_offset);
void gtk_text_iter_set_line (GtkTextIter *iter,
                                          gint line_number);
void gtk_text_iter_set_line_offset (GtkTextIter *iter,
                                          gint char_on_line);
void gtk_text_iter_set_line_index (GtkTextIter *iter,
                                          gint byte_on_line);
void gtk_text_iter_forward_to_end (GtkTextIter *iter);
gboolean gtk_text_iter_forward_to_line_end (GtkTextIter *iter);

void gtk_text_iter_set_visible_line_offset (GtkTextIter *iter,
                                               gint char_on_line);
void gtk_text_iter_set_visible_line_index (GtkTextIter *iter,
                                               gint byte_on_line);





gboolean gtk_text_iter_forward_to_tag_toggle (GtkTextIter *iter,
                                             GtkTextTag *tag);

gboolean gtk_text_iter_backward_to_tag_toggle (GtkTextIter *iter,
                                              GtkTextTag *tag);

typedef gboolean (* GtkTextCharPredicate) (gunichar ch, gpointer user_data);

gboolean gtk_text_iter_forward_find_char (GtkTextIter *iter,
                                          GtkTextCharPredicate pred,
                                          gpointer user_data,
                                          const GtkTextIter *limit);
gboolean gtk_text_iter_backward_find_char (GtkTextIter *iter,
                                          GtkTextCharPredicate pred,
                                          gpointer user_data,
                                          const GtkTextIter *limit);

gboolean gtk_text_iter_forward_search (const GtkTextIter *iter,
                                       const gchar *str,
                                       GtkTextSearchFlags flags,
                                       GtkTextIter *match_start,
                                       GtkTextIter *match_end,
                                       const GtkTextIter *limit);

gboolean gtk_text_iter_backward_search (const GtkTextIter *iter,
                                       const gchar *str,
                                       GtkTextSearchFlags flags,
                                       GtkTextIter *match_start,
                                       GtkTextIter *match_end,
                                       const GtkTextIter *limit);





gboolean gtk_text_iter_equal (const GtkTextIter *lhs,
                                       const GtkTextIter *rhs);
gint gtk_text_iter_compare (const GtkTextIter *lhs,
                                       const GtkTextIter *rhs);
gboolean gtk_text_iter_in_range (const GtkTextIter *iter,
                                       const GtkTextIter *start,
                                       const GtkTextIter *end);


void gtk_text_iter_order (GtkTextIter *first,
                                       GtkTextIter *second);

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkselection.h" 2


extern "C" {

typedef struct _GtkTargetList GtkTargetList;
typedef struct _GtkTargetEntry GtkTargetEntry;
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkselection.h"
struct _GtkSelectionData
{
 GdkAtom selection;
 GdkAtom target;
 GdkAtom type;
 gint format;
 guchar *data;
 gint length;
 GdkDisplay *display;
};

struct _GtkTargetEntry {
 gchar *target;
 guint flags;
 guint info;
};





typedef struct _GtkTargetPair GtkTargetPair;


struct _GtkTargetList {
 GList *list;
 guint ref_count;
};

struct _GtkTargetPair {
 GdkAtom target;
 guint flags;
 guint info;
};

GtkTargetList *gtk_target_list_new (const GtkTargetEntry *targets,
      guint ntargets);
GtkTargetList *gtk_target_list_ref (GtkTargetList *list);
void gtk_target_list_unref (GtkTargetList *list);
void gtk_target_list_add (GtkTargetList *list,
        GdkAtom target,
      guint flags,
      guint info);
void gtk_target_list_add_text_targets (GtkTargetList *list,
                                                     guint info);
void gtk_target_list_add_rich_text_targets (GtkTargetList *list,
                                                     guint info,
                                                     gboolean deserializable,
                                                     GtkTextBuffer *buffer);
void gtk_target_list_add_image_targets (GtkTargetList *list,
                                                     guint info,
                                                     gboolean writable);
void gtk_target_list_add_uri_targets (GtkTargetList *list,
                                                     guint info);
void gtk_target_list_add_table (GtkTargetList *list,
      const GtkTargetEntry *targets,
      guint ntargets);
void gtk_target_list_remove (GtkTargetList *list,
      GdkAtom target);
gboolean gtk_target_list_find (GtkTargetList *list,
      GdkAtom target,
      guint *info);

GtkTargetEntry * gtk_target_table_new_from_list (GtkTargetList *list,
                                                gint *n_targets);
void gtk_target_table_free (GtkTargetEntry *targets,
                                                gint n_targets);



gboolean gtk_selection_owner_set (GtkWidget *widget,
          GdkAtom selection,
          guint32 time_);
gboolean gtk_selection_owner_set_for_display (GdkDisplay *display,
          GtkWidget *widget,
          GdkAtom selection,
          guint32 time_);

void gtk_selection_add_target (GtkWidget *widget,
         GdkAtom selection,
         GdkAtom target,
         guint info);
void gtk_selection_add_targets (GtkWidget *widget,
         GdkAtom selection,
         const GtkTargetEntry *targets,
         guint ntargets);
void gtk_selection_clear_targets (GtkWidget *widget,
         GdkAtom selection);
gboolean gtk_selection_convert (GtkWidget *widget,
         GdkAtom selection,
         GdkAtom target,
         guint32 time_);

GdkAtom gtk_selection_data_get_selection (GtkSelectionData *selection_data);
GdkAtom gtk_selection_data_get_target (GtkSelectionData *selection_data);
GdkAtom gtk_selection_data_get_data_type (GtkSelectionData *selection_data);
gint gtk_selection_data_get_format (GtkSelectionData *selection_data);
const guchar *gtk_selection_data_get_data (GtkSelectionData *selection_data);
gint gtk_selection_data_get_length (GtkSelectionData *selection_data);
GdkDisplay *gtk_selection_data_get_display (GtkSelectionData *selection_data);

void gtk_selection_data_set (GtkSelectionData *selection_data,
         GdkAtom type,
         gint format,
         const guchar *data,
         gint length);
gboolean gtk_selection_data_set_text (GtkSelectionData *selection_data,
         const gchar *str,
         gint len);
guchar * gtk_selection_data_get_text (GtkSelectionData *selection_data);
gboolean gtk_selection_data_set_pixbuf (GtkSelectionData *selection_data,
             GdkPixbuf *pixbuf);
GdkPixbuf *gtk_selection_data_get_pixbuf (GtkSelectionData *selection_data);
gboolean gtk_selection_data_set_uris (GtkSelectionData *selection_data,
         gchar **uris);
gchar **gtk_selection_data_get_uris (GtkSelectionData *selection_data);

gboolean gtk_selection_data_get_targets (GtkSelectionData *selection_data,
       GdkAtom **targets,
       gint *n_atoms);
gboolean gtk_selection_data_targets_include_text (GtkSelectionData *selection_data);
gboolean gtk_selection_data_targets_include_rich_text (GtkSelectionData *selection_data,
                                                      GtkTextBuffer *buffer);
gboolean gtk_selection_data_targets_include_image (GtkSelectionData *selection_data,
        gboolean writable);
gboolean gtk_selection_data_targets_include_uri (GtkSelectionData *selection_data);
gboolean gtk_targets_include_text (GdkAtom *targets,
       gint n_targets);
gboolean gtk_targets_include_rich_text (GdkAtom *targets,
       gint n_targets,
                                                 GtkTextBuffer *buffer);
gboolean gtk_targets_include_image (GdkAtom *targets,
       gint n_targets,
       gboolean writable);
gboolean gtk_targets_include_uri (GdkAtom *targets,
       gint n_targets);



void gtk_selection_remove_all (GtkWidget *widget);



gboolean gtk_selection_clear (GtkWidget *widget,
       GdkEventSelection *event);

gboolean _gtk_selection_request (GtkWidget *widget,
       GdkEventSelection *event);
gboolean _gtk_selection_incr_event (GdkWindow *window,
       GdkEventProperty *event);
gboolean _gtk_selection_notify (GtkWidget *widget,
       GdkEventSelection *event);
gboolean _gtk_selection_property_notify (GtkWidget *widget,
       GdkEventProperty *event);

GType gtk_selection_data_get_type (void) __attribute__((__const__));
GtkSelectionData *gtk_selection_data_copy (GtkSelectionData *data);
void gtk_selection_data_free (GtkSelectionData *data);

GType gtk_target_list_get_type (void) __attribute__((__const__));

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkclipboard.h" 2

extern "C" {





typedef void (* GtkClipboardReceivedFunc) (GtkClipboard *clipboard,
               GtkSelectionData *selection_data,
               gpointer data);
typedef void (* GtkClipboardTextReceivedFunc) (GtkClipboard *clipboard,
               const gchar *text,
               gpointer data);
typedef void (* GtkClipboardRichTextReceivedFunc) (GtkClipboard *clipboard,
                                                  GdkAtom format,
               const guint8 *text,
                                                  gsize length,
               gpointer data);
typedef void (* GtkClipboardImageReceivedFunc) (GtkClipboard *clipboard,
        GdkPixbuf *pixbuf,
        gpointer data);
typedef void (* GtkClipboardURIReceivedFunc) (GtkClipboard *clipboard,
        gchar **uris,
        gpointer data);
typedef void (* GtkClipboardTargetsReceivedFunc) (GtkClipboard *clipboard,
               GdkAtom *atoms,
        gint n_atoms,
               gpointer data);





typedef void (* GtkClipboardGetFunc) (GtkClipboard *clipboard,
           GtkSelectionData *selection_data,
           guint info,
           gpointer user_data_or_owner);
typedef void (* GtkClipboardClearFunc) (GtkClipboard *clipboard,
           gpointer user_data_or_owner);

GType gtk_clipboard_get_type (void) __attribute__((__const__));

GtkClipboard *gtk_clipboard_get_for_display (GdkDisplay *display,
         GdkAtom selection);

GtkClipboard *gtk_clipboard_get (GdkAtom selection);


GdkDisplay *gtk_clipboard_get_display (GtkClipboard *clipboard);


gboolean gtk_clipboard_set_with_data (GtkClipboard *clipboard,
          const GtkTargetEntry *targets,
          guint n_targets,
          GtkClipboardGetFunc get_func,
          GtkClipboardClearFunc clear_func,
          gpointer user_data);
gboolean gtk_clipboard_set_with_owner (GtkClipboard *clipboard,
          const GtkTargetEntry *targets,
          guint n_targets,
          GtkClipboardGetFunc get_func,
          GtkClipboardClearFunc clear_func,
          GObject *owner);
GObject *gtk_clipboard_get_owner (GtkClipboard *clipboard);
void gtk_clipboard_clear (GtkClipboard *clipboard);
void gtk_clipboard_set_text (GtkClipboard *clipboard,
          const gchar *text,
          gint len);
void gtk_clipboard_set_image (GtkClipboard *clipboard,
          GdkPixbuf *pixbuf);

void gtk_clipboard_request_contents (GtkClipboard *clipboard,
                                     GdkAtom target,
                                     GtkClipboardReceivedFunc callback,
                                     gpointer user_data);
void gtk_clipboard_request_text (GtkClipboard *clipboard,
                                     GtkClipboardTextReceivedFunc callback,
                                     gpointer user_data);
void gtk_clipboard_request_rich_text (GtkClipboard *clipboard,
                                     GtkTextBuffer *buffer,
                                     GtkClipboardRichTextReceivedFunc callback,
                                     gpointer user_data);
void gtk_clipboard_request_image (GtkClipboard *clipboard,
                                     GtkClipboardImageReceivedFunc callback,
                                     gpointer user_data);
void gtk_clipboard_request_uris (GtkClipboard *clipboard,
                                     GtkClipboardURIReceivedFunc callback,
                                     gpointer user_data);
void gtk_clipboard_request_targets (GtkClipboard *clipboard,
                                     GtkClipboardTargetsReceivedFunc callback,
                                     gpointer user_data);

GtkSelectionData *gtk_clipboard_wait_for_contents (GtkClipboard *clipboard,
                                                   GdkAtom target);
gchar * gtk_clipboard_wait_for_text (GtkClipboard *clipboard);
guint8 * gtk_clipboard_wait_for_rich_text (GtkClipboard *clipboard,
                                                   GtkTextBuffer *buffer,
                                                   GdkAtom *format,
                                                   gsize *length);
GdkPixbuf * gtk_clipboard_wait_for_image (GtkClipboard *clipboard);
gchar ** gtk_clipboard_wait_for_uris (GtkClipboard *clipboard);
gboolean gtk_clipboard_wait_for_targets (GtkClipboard *clipboard,
                                                   GdkAtom **targets,
                                                   gint *n_targets);

gboolean gtk_clipboard_wait_is_text_available (GtkClipboard *clipboard);
gboolean gtk_clipboard_wait_is_rich_text_available (GtkClipboard *clipboard,
                                                   GtkTextBuffer *buffer);
gboolean gtk_clipboard_wait_is_image_available (GtkClipboard *clipboard);
gboolean gtk_clipboard_wait_is_uris_available (GtkClipboard *clipboard);
gboolean gtk_clipboard_wait_is_target_available (GtkClipboard *clipboard,
                                                   GdkAtom target);


void gtk_clipboard_set_can_store (GtkClipboard *clipboard,
     const GtkTargetEntry *targets,
     gint n_targets);

void gtk_clipboard_store (GtkClipboard *clipboard);


void _gtk_clipboard_handle_event (GdkEventOwnerChange *event);

void _gtk_clipboard_store_all (void);

}
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorbutton.h" 1
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorbutton.h"
extern "C" {
# 58 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorbutton.h"
typedef struct _GtkColorButton GtkColorButton;
typedef struct _GtkColorButtonClass GtkColorButtonClass;
typedef struct _GtkColorButtonPrivate GtkColorButtonPrivate;

struct _GtkColorButton {
 GtkButton button;



 GtkColorButtonPrivate *priv;
};

struct _GtkColorButtonClass {
 GtkButtonClass parent_class;

 void (* color_set) (GtkColorButton *cp);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_color_button_get_type (void) __attribute__((__const__));
GtkWidget *gtk_color_button_new (void);
GtkWidget *gtk_color_button_new_with_color (const GdkColor *color);
void gtk_color_button_set_color (GtkColorButton *color_button,
        const GdkColor *color);
void gtk_color_button_set_alpha (GtkColorButton *color_button,
        guint16 alpha);
void gtk_color_button_get_color (GtkColorButton *color_button,
        GdkColor *color);
guint16 gtk_color_button_get_alpha (GtkColorButton *color_button);
void gtk_color_button_set_use_alpha (GtkColorButton *color_button,
        gboolean use_alpha);
gboolean gtk_color_button_get_use_alpha (GtkColorButton *color_button);
void gtk_color_button_set_title (GtkColorButton *color_button,
        const gchar *title);
const gchar *gtk_color_button_get_title (GtkColorButton *color_button);


}
# 70 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorsel.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorsel.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvbox.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvbox.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvbox.h"
typedef struct _GtkVBox GtkVBox;
typedef struct _GtkVBoxClass GtkVBoxClass;

struct _GtkVBox
{
 GtkBox box;
};

struct _GtkVBoxClass
{
 GtkBoxClass parent_class;
};


GType gtk_vbox_get_type (void) __attribute__((__const__));
GtkWidget * gtk_vbox_new (gboolean homogeneous,
                              gint spacing);

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorsel.h" 2

extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorsel.h"
typedef struct _GtkColorSelection GtkColorSelection;
typedef struct _GtkColorSelectionClass GtkColorSelectionClass;


typedef void (* GtkColorSelectionChangePaletteFunc) (const GdkColor *colors,
                                                    gint n_colors);
typedef void (* GtkColorSelectionChangePaletteWithScreenFunc) (GdkScreen *screen,
             const GdkColor *colors,
             gint n_colors);

struct _GtkColorSelection
{
 GtkVBox parent_instance;


 gpointer private_data;
};

struct _GtkColorSelectionClass
{
 GtkVBoxClass parent_class;

 void (*color_changed) (GtkColorSelection *color_selection);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};




GType gtk_color_selection_get_type (void) __attribute__((__const__));
GtkWidget *gtk_color_selection_new (void);
gboolean gtk_color_selection_get_has_opacity_control (GtkColorSelection *colorsel);
void gtk_color_selection_set_has_opacity_control (GtkColorSelection *colorsel,
      gboolean has_opacity);
gboolean gtk_color_selection_get_has_palette (GtkColorSelection *colorsel);
void gtk_color_selection_set_has_palette (GtkColorSelection *colorsel,
      gboolean has_palette);


void gtk_color_selection_set_current_color (GtkColorSelection *colorsel,
       const GdkColor *color);
void gtk_color_selection_set_current_alpha (GtkColorSelection *colorsel,
       guint16 alpha);
void gtk_color_selection_get_current_color (GtkColorSelection *colorsel,
       GdkColor *color);
guint16 gtk_color_selection_get_current_alpha (GtkColorSelection *colorsel);
void gtk_color_selection_set_previous_color (GtkColorSelection *colorsel,
       const GdkColor *color);
void gtk_color_selection_set_previous_alpha (GtkColorSelection *colorsel,
       guint16 alpha);
void gtk_color_selection_get_previous_color (GtkColorSelection *colorsel,
       GdkColor *color);
guint16 gtk_color_selection_get_previous_alpha (GtkColorSelection *colorsel);

gboolean gtk_color_selection_is_adjusting (GtkColorSelection *colorsel);

gboolean gtk_color_selection_palette_from_string (const gchar *str,
                                                 GdkColor **colors,
                                                 gint *n_colors);
gchar* gtk_color_selection_palette_to_string (const GdkColor *colors,
                                                 gint n_colors);



GtkColorSelectionChangePaletteFunc gtk_color_selection_set_change_palette_hook (GtkColorSelectionChangePaletteFunc func);



GtkColorSelectionChangePaletteWithScreenFunc gtk_color_selection_set_change_palette_with_screen_hook (GtkColorSelectionChangePaletteWithScreenFunc func);



void gtk_color_selection_set_color (GtkColorSelection *colorsel,
        gdouble *color);
void gtk_color_selection_get_color (GtkColorSelection *colorsel,
        gdouble *color);
void gtk_color_selection_set_update_policy (GtkColorSelection *colorsel,
        GtkUpdateType policy);


}
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorseldialog.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorseldialog.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcolorseldialog.h"
typedef struct _GtkColorSelectionDialog GtkColorSelectionDialog;
typedef struct _GtkColorSelectionDialogClass GtkColorSelectionDialogClass;


struct _GtkColorSelectionDialog
{
 GtkDialog parent_instance;

 GtkWidget *colorsel;
 GtkWidget *ok_button;
 GtkWidget *cancel_button;
 GtkWidget *help_button;
};

struct _GtkColorSelectionDialogClass
{
 GtkDialogClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};



GType gtk_color_selection_dialog_get_type (void) __attribute__((__const__));
GtkWidget* gtk_color_selection_dialog_new (const gchar *title);
GtkWidget* gtk_color_selection_dialog_get_color_selection (GtkColorSelectionDialog *colorsel);


}
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcombobox.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcombobox.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeview.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeview.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdnd.h" 1
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdnd.h"
extern "C" {

typedef enum {
 GTK_DEST_DEFAULT_MOTION = 1 << 0,
 GTK_DEST_DEFAULT_HIGHLIGHT = 1 << 1,
 GTK_DEST_DEFAULT_DROP = 1 << 2,
 GTK_DEST_DEFAULT_ALL = 0x07
} GtkDestDefaults;



typedef enum {
 GTK_TARGET_SAME_APP = 1 << 0,
 GTK_TARGET_SAME_WIDGET = 1 << 1,
 GTK_TARGET_OTHER_APP = 1 << 2,
 GTK_TARGET_OTHER_WIDGET = 1 << 3
} GtkTargetFlags;



void gtk_drag_get_data (GtkWidget *widget,
  GdkDragContext *context,
  GdkAtom target,
  guint32 time_);
void gtk_drag_finish (GdkDragContext *context,
  gboolean success,
  gboolean del,
  guint32 time_);

GtkWidget *gtk_drag_get_source_widget (GdkDragContext *context);

void gtk_drag_highlight (GtkWidget *widget);
void gtk_drag_unhighlight (GtkWidget *widget);

void gtk_drag_dest_set (GtkWidget *widget,
    GtkDestDefaults flags,
             const GtkTargetEntry *targets,
    gint n_targets,
    GdkDragAction actions);

void gtk_drag_dest_set_proxy (GtkWidget *widget,
        GdkWindow *proxy_window,
        GdkDragProtocol protocol,
        gboolean use_coordinates);

void gtk_drag_dest_unset (GtkWidget *widget);

GdkAtom gtk_drag_dest_find_target (GtkWidget *widget,
                                             GdkDragContext *context,
                                             GtkTargetList *target_list);
GtkTargetList* gtk_drag_dest_get_target_list (GtkWidget *widget);
void gtk_drag_dest_set_target_list (GtkWidget *widget,
                                             GtkTargetList *target_list);
void gtk_drag_dest_add_text_targets (GtkWidget *widget);
void gtk_drag_dest_add_image_targets (GtkWidget *widget);
void gtk_drag_dest_add_uri_targets (GtkWidget *widget);

void gtk_drag_dest_set_track_motion (GtkWidget *widget,
     gboolean track_motion);
gboolean gtk_drag_dest_get_track_motion (GtkWidget *widget);



void gtk_drag_source_set (GtkWidget *widget,
     GdkModifierType start_button_mask,
     const GtkTargetEntry *targets,
     gint n_targets,
     GdkDragAction actions);

void gtk_drag_source_unset (GtkWidget *widget);

GtkTargetList* gtk_drag_source_get_target_list (GtkWidget *widget);
void gtk_drag_source_set_target_list (GtkWidget *widget,
                                               GtkTargetList *target_list);
void gtk_drag_source_add_text_targets (GtkWidget *widget);
void gtk_drag_source_add_image_targets (GtkWidget *widget);
void gtk_drag_source_add_uri_targets (GtkWidget *widget);

void gtk_drag_source_set_icon (GtkWidget *widget,
         GdkColormap *colormap,
         GdkPixmap *pixmap,
         GdkBitmap *mask);
void gtk_drag_source_set_icon_pixbuf (GtkWidget *widget,
         GdkPixbuf *pixbuf);
void gtk_drag_source_set_icon_stock (GtkWidget *widget,
         const gchar *stock_id);
void gtk_drag_source_set_icon_name (GtkWidget *widget,
         const gchar *icon_name);





GdkDragContext *gtk_drag_begin (GtkWidget *widget,
   GtkTargetList *targets,
   GdkDragAction actions,
   gint button,
   GdkEvent *event);



void gtk_drag_set_icon_widget (GdkDragContext *context,
         GtkWidget *widget,
         gint hot_x,
         gint hot_y);
void gtk_drag_set_icon_pixmap (GdkDragContext *context,
         GdkColormap *colormap,
         GdkPixmap *pixmap,
         GdkBitmap *mask,
         gint hot_x,
         gint hot_y);
void gtk_drag_set_icon_pixbuf (GdkDragContext *context,
         GdkPixbuf *pixbuf,
         gint hot_x,
         gint hot_y);
void gtk_drag_set_icon_stock (GdkDragContext *context,
         const gchar *stock_id,
         gint hot_x,
         gint hot_y);
void gtk_drag_set_icon_name (GdkDragContext *context,
         const gchar *icon_name,
         gint hot_x,
         gint hot_y);

void gtk_drag_set_icon_default (GdkDragContext *context);

gboolean gtk_drag_check_threshold (GtkWidget *widget,
      gint start_x,
      gint start_y,
      gint current_x,
      gint current_y);


void _gtk_drag_source_handle_event (GtkWidget *widget,
       GdkEvent *event);
void _gtk_drag_dest_handle_event (GtkWidget *toplevel,
     GdkEvent *event);


void gtk_drag_set_default_icon (GdkColormap *colormap,
   GdkPixmap *pixmap,
   GdkBitmap *mask,
          gint hot_x,
          gint hot_y);


}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeview.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentry.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentry.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkeditable.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkeditable.h"
extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkeditable.h"
typedef struct _GtkEditable GtkEditable;
typedef struct _GtkEditableClass GtkEditableClass;

struct _GtkEditableClass
{
 GTypeInterface base_iface;


 void (* insert_text) (GtkEditable *editable,
        const gchar *text,
        gint length,
        gint *position);
 void (* delete_text) (GtkEditable *editable,
        gint start_pos,
        gint end_pos);
 void (* changed) (GtkEditable *editable);


 void (* do_insert_text) (GtkEditable *editable,
        const gchar *text,
        gint length,
        gint *position);
 void (* do_delete_text) (GtkEditable *editable,
        gint start_pos,
        gint end_pos);

 gchar* (* get_chars) (GtkEditable *editable,
        gint start_pos,
        gint end_pos);
 void (* set_selection_bounds) (GtkEditable *editable,
        gint start_pos,
        gint end_pos);
 gboolean (* get_selection_bounds) (GtkEditable *editable,
        gint *start_pos,
        gint *end_pos);
 void (* set_position) (GtkEditable *editable,
        gint position);
 gint (* get_position) (GtkEditable *editable);
};

GType gtk_editable_get_type (void) __attribute__((__const__));
void gtk_editable_select_region (GtkEditable *editable,
        gint start_pos,
        gint end_pos);
gboolean gtk_editable_get_selection_bounds (GtkEditable *editable,
        gint *start_pos,
        gint *end_pos);
void gtk_editable_insert_text (GtkEditable *editable,
        const gchar *new_text,
        gint new_text_length,
        gint *position);
void gtk_editable_delete_text (GtkEditable *editable,
        gint start_pos,
        gint end_pos);
gchar* gtk_editable_get_chars (GtkEditable *editable,
        gint start_pos,
        gint end_pos);
void gtk_editable_cut_clipboard (GtkEditable *editable);
void gtk_editable_copy_clipboard (GtkEditable *editable);
void gtk_editable_paste_clipboard (GtkEditable *editable);
void gtk_editable_delete_selection (GtkEditable *editable);
void gtk_editable_set_position (GtkEditable *editable,
        gint position);
gint gtk_editable_get_position (GtkEditable *editable);
void gtk_editable_set_editable (GtkEditable *editable,
        gboolean is_editable);
gboolean gtk_editable_get_editable (GtkEditable *editable);

}
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentry.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimcontext.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimcontext.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimcontext.h"
typedef struct _GtkIMContext GtkIMContext;
typedef struct _GtkIMContextClass GtkIMContextClass;

struct _GtkIMContext
{
 GObject parent_instance;
};

struct _GtkIMContextClass
{




 GtkObjectClass parent_class;



 void (*preedit_start) (GtkIMContext *context);
 void (*preedit_end) (GtkIMContext *context);
 void (*preedit_changed) (GtkIMContext *context);
 void (*commit) (GtkIMContext *context, const gchar *str);
 gboolean (*retrieve_surrounding) (GtkIMContext *context);
 gboolean (*delete_surrounding) (GtkIMContext *context,
       gint offset,
       gint n_chars);


 void (*set_client_window) (GtkIMContext *context,
      GdkWindow *window);
 void (*get_preedit_string) (GtkIMContext *context,
      gchar **str,
      PangoAttrList **attrs,
      gint *cursor_pos);
 gboolean (*filter_keypress) (GtkIMContext *context,
             GdkEventKey *event);
 void (*focus_in) (GtkIMContext *context);
 void (*focus_out) (GtkIMContext *context);
 void (*reset) (GtkIMContext *context);
 void (*set_cursor_location) (GtkIMContext *context,
      GdkRectangle *area);
 void (*set_use_preedit) (GtkIMContext *context,
      gboolean use_preedit);
 void (*set_surrounding) (GtkIMContext *context,
      const gchar *text,
      gint len,
      gint cursor_index);
 gboolean (*get_surrounding) (GtkIMContext *context,
      gchar **text,
      gint *cursor_index);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
 void (*_gtk_reserved6) (void);
};

GType gtk_im_context_get_type (void) __attribute__((__const__));

void gtk_im_context_set_client_window (GtkIMContext *context,
         GdkWindow *window);
void gtk_im_context_get_preedit_string (GtkIMContext *context,
         gchar **str,
         PangoAttrList **attrs,
         gint *cursor_pos);
gboolean gtk_im_context_filter_keypress (GtkIMContext *context,
         GdkEventKey *event);
void gtk_im_context_focus_in (GtkIMContext *context);
void gtk_im_context_focus_out (GtkIMContext *context);
void gtk_im_context_reset (GtkIMContext *context);
void gtk_im_context_set_cursor_location (GtkIMContext *context,
         const GdkRectangle *area);
void gtk_im_context_set_use_preedit (GtkIMContext *context,
         gboolean use_preedit);
void gtk_im_context_set_surrounding (GtkIMContext *context,
         const gchar *text,
         gint len,
         gint cursor_index);
gboolean gtk_im_context_get_surrounding (GtkIMContext *context,
         gchar **text,
         gint *cursor_index);
gboolean gtk_im_context_delete_surrounding (GtkIMContext *context,
         gint offset,
         gint n_chars);

}
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentry.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentrybuffer.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentrybuffer.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentrybuffer.h"
typedef struct _GtkEntryBuffer GtkEntryBuffer;
typedef struct _GtkEntryBufferClass GtkEntryBufferClass;
typedef struct _GtkEntryBufferPrivate GtkEntryBufferPrivate;

struct _GtkEntryBuffer
{
 GObject parent_instance;


 GtkEntryBufferPrivate *priv;
};

struct _GtkEntryBufferClass
{
 GObjectClass parent_class;



 void (*inserted_text) (GtkEntryBuffer *buffer,
                                         guint position,
                                         const gchar *chars,
                                         guint n_chars);

 void (*deleted_text) (GtkEntryBuffer *buffer,
                                         guint position,
                                         guint n_chars);



 const gchar* (*get_text) (GtkEntryBuffer *buffer,
                                         gsize *n_bytes);

 guint (*get_length) (GtkEntryBuffer *buffer);

 guint (*insert_text) (GtkEntryBuffer *buffer,
                                         guint position,
                                         const gchar *chars,
                                         guint n_chars);

 guint (*delete_text) (GtkEntryBuffer *buffer,
                                         guint position,
                                         guint n_chars);


 void (*_gtk_reserved0) (void);
 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
};

GType gtk_entry_buffer_get_type (void) __attribute__((__const__));

GtkEntryBuffer* gtk_entry_buffer_new (const gchar *initial_chars,
                                                                  gint n_initial_chars);

gsize gtk_entry_buffer_get_bytes (GtkEntryBuffer *buffer);

guint gtk_entry_buffer_get_length (GtkEntryBuffer *buffer);

const gchar* gtk_entry_buffer_get_text (GtkEntryBuffer *buffer);

void gtk_entry_buffer_set_text (GtkEntryBuffer *buffer,
                                                                  const gchar *chars,
                                                                  gint n_chars);

void gtk_entry_buffer_set_max_length (GtkEntryBuffer *buffer,
                                                                  gint max_length);

gint gtk_entry_buffer_get_max_length (GtkEntryBuffer *buffer);

guint gtk_entry_buffer_insert_text (GtkEntryBuffer *buffer,
                                                                  guint position,
                                                                  const gchar *chars,
                                                                  gint n_chars);

guint gtk_entry_buffer_delete_text (GtkEntryBuffer *buffer,
                                                                  guint position,
                                                                  gint n_chars);

void gtk_entry_buffer_emit_inserted_text (GtkEntryBuffer *buffer,
                                                                  guint position,
                                                                  const gchar *chars,
                                                                  guint n_chars);

void gtk_entry_buffer_emit_deleted_text (GtkEntryBuffer *buffer,
                                                                  guint position,
                                                                  guint n_chars);

}
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentry.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentrycompletion.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentrycompletion.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkliststore.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkliststore.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkliststore.h"
typedef struct _GtkListStore GtkListStore;
typedef struct _GtkListStoreClass GtkListStoreClass;

struct _GtkListStore
{
 GObject parent;


 gint stamp;
 gpointer seq;
 gpointer _gtk_reserved1;
 GList *sort_list;
 gint n_columns;
 gint sort_column_id;
 GtkSortType order;
 GType *column_headers;
 gint length;
 GtkTreeIterCompareFunc default_sort_func;
 gpointer default_sort_data;
 GDestroyNotify default_sort_destroy;
 guint columns_dirty : 1;
};

struct _GtkListStoreClass
{
 GObjectClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_list_store_get_type (void) __attribute__((__const__));
GtkListStore *gtk_list_store_new (gint n_columns,
           ...);
GtkListStore *gtk_list_store_newv (gint n_columns,
           GType *types);
void gtk_list_store_set_column_types (GtkListStore *list_store,
           gint n_columns,
           GType *types);



void gtk_list_store_set_value (GtkListStore *list_store,
           GtkTreeIter *iter,
           gint column,
           GValue *value);
void gtk_list_store_set (GtkListStore *list_store,
           GtkTreeIter *iter,
           ...);
void gtk_list_store_set_valuesv (GtkListStore *list_store,
           GtkTreeIter *iter,
           gint *columns,
           GValue *values,
           gint n_values);
void gtk_list_store_set_valist (GtkListStore *list_store,
           GtkTreeIter *iter,
           va_list var_args);
gboolean gtk_list_store_remove (GtkListStore *list_store,
           GtkTreeIter *iter);
void gtk_list_store_insert (GtkListStore *list_store,
           GtkTreeIter *iter,
           gint position);
void gtk_list_store_insert_before (GtkListStore *list_store,
           GtkTreeIter *iter,
           GtkTreeIter *sibling);
void gtk_list_store_insert_after (GtkListStore *list_store,
           GtkTreeIter *iter,
           GtkTreeIter *sibling);
void gtk_list_store_insert_with_values (GtkListStore *list_store,
       GtkTreeIter *iter,
       gint position,
       ...);
void gtk_list_store_insert_with_valuesv (GtkListStore *list_store,
       GtkTreeIter *iter,
       gint position,
       gint *columns,
       GValue *values,
       gint n_values);
void gtk_list_store_prepend (GtkListStore *list_store,
           GtkTreeIter *iter);
void gtk_list_store_append (GtkListStore *list_store,
           GtkTreeIter *iter);
void gtk_list_store_clear (GtkListStore *list_store);
gboolean gtk_list_store_iter_is_valid (GtkListStore *list_store,
                                              GtkTreeIter *iter);
void gtk_list_store_reorder (GtkListStore *store,
                                              gint *new_order);
void gtk_list_store_swap (GtkListStore *store,
                                              GtkTreeIter *a,
                                              GtkTreeIter *b);
void gtk_list_store_move_after (GtkListStore *store,
                                              GtkTreeIter *iter,
                                              GtkTreeIter *position);
void gtk_list_store_move_before (GtkListStore *store,
                                              GtkTreeIter *iter,
                                              GtkTreeIter *position);


}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentrycompletion.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodelfilter.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodelfilter.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodelfilter.h"
typedef gboolean (* GtkTreeModelFilterVisibleFunc) (GtkTreeModel *model,
                                                   GtkTreeIter *iter,
                                                   gpointer data);
typedef void (* GtkTreeModelFilterModifyFunc) (GtkTreeModel *model,
                                              GtkTreeIter *iter,
                                              GValue *value,
                                              gint column,
                                              gpointer data);

typedef struct _GtkTreeModelFilter GtkTreeModelFilter;
typedef struct _GtkTreeModelFilterClass GtkTreeModelFilterClass;
typedef struct _GtkTreeModelFilterPrivate GtkTreeModelFilterPrivate;

struct _GtkTreeModelFilter
{
 GObject parent;


 GtkTreeModelFilterPrivate *priv;
};

struct _GtkTreeModelFilterClass
{
 GObjectClass parent_class;


 void (*_gtk_reserved0) (void);
 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
};


GType gtk_tree_model_filter_get_type (void) __attribute__((__const__));
GtkTreeModel *gtk_tree_model_filter_new (GtkTreeModel *child_model,
                                                               GtkTreePath *root);
void gtk_tree_model_filter_set_visible_func (GtkTreeModelFilter *filter,
                                                               GtkTreeModelFilterVisibleFunc func,
                                                               gpointer data,
                                                               GDestroyNotify destroy);
void gtk_tree_model_filter_set_modify_func (GtkTreeModelFilter *filter,
                                                               gint n_columns,
                                                               GType *types,
                                                               GtkTreeModelFilterModifyFunc func,
                                                               gpointer data,
                                                               GDestroyNotify destroy);
void gtk_tree_model_filter_set_visible_column (GtkTreeModelFilter *filter,
                                                               gint column);

GtkTreeModel *gtk_tree_model_filter_get_model (GtkTreeModelFilter *filter);


gboolean gtk_tree_model_filter_convert_child_iter_to_iter (GtkTreeModelFilter *filter,
                                                               GtkTreeIter *filter_iter,
                                                               GtkTreeIter *child_iter);
void gtk_tree_model_filter_convert_iter_to_child_iter (GtkTreeModelFilter *filter,
                                                               GtkTreeIter *child_iter,
                                                               GtkTreeIter *filter_iter);
GtkTreePath *gtk_tree_model_filter_convert_child_path_to_path (GtkTreeModelFilter *filter,
                                                               GtkTreePath *child_path);
GtkTreePath *gtk_tree_model_filter_convert_path_to_child_path (GtkTreeModelFilter *filter,
                                                               GtkTreePath *filter_path);


void gtk_tree_model_filter_refilter (GtkTreeModelFilter *filter);
void gtk_tree_model_filter_clear_cache (GtkTreeModelFilter *filter);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentrycompletion.h" 2

extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentrycompletion.h"
typedef struct _GtkEntryCompletion GtkEntryCompletion;
typedef struct _GtkEntryCompletionClass GtkEntryCompletionClass;
typedef struct _GtkEntryCompletionPrivate GtkEntryCompletionPrivate;

typedef gboolean (* GtkEntryCompletionMatchFunc) (GtkEntryCompletion *completion,
                                                 const gchar *key,
                                                 GtkTreeIter *iter,
                                                 gpointer user_data);


struct _GtkEntryCompletion
{
 GObject parent_instance;


 GtkEntryCompletionPrivate *priv;
};

struct _GtkEntryCompletionClass
{
 GObjectClass parent_class;

 gboolean (* match_selected) (GtkEntryCompletion *completion,
                                GtkTreeModel *model,
                                GtkTreeIter *iter);
 void (* action_activated) (GtkEntryCompletion *completion,
                                gint index_);
 gboolean (* insert_prefix) (GtkEntryCompletion *completion,
    const gchar *prefix);
 gboolean (* cursor_on_match) (GtkEntryCompletion *completion,
    GtkTreeModel *model,
    GtkTreeIter *iter);


 void (*_gtk_reserved0) (void);
 void (*_gtk_reserved1) (void);
};


GType gtk_entry_completion_get_type (void) __attribute__((__const__));
GtkEntryCompletion *gtk_entry_completion_new (void);

GtkWidget *gtk_entry_completion_get_entry (GtkEntryCompletion *completion);

void gtk_entry_completion_set_model (GtkEntryCompletion *completion,
                                                                GtkTreeModel *model);
GtkTreeModel *gtk_entry_completion_get_model (GtkEntryCompletion *completion);

void gtk_entry_completion_set_match_func (GtkEntryCompletion *completion,
                                                                GtkEntryCompletionMatchFunc func,
                                                                gpointer func_data,
                                                                GDestroyNotify func_notify);
void gtk_entry_completion_set_minimum_key_length (GtkEntryCompletion *completion,
                                                                gint length);
gint gtk_entry_completion_get_minimum_key_length (GtkEntryCompletion *completion);
void gtk_entry_completion_complete (GtkEntryCompletion *completion);
void gtk_entry_completion_insert_prefix (GtkEntryCompletion *completion);

void gtk_entry_completion_insert_action_text (GtkEntryCompletion *completion,
                                                                gint index_,
                                                                const gchar *text);
void gtk_entry_completion_insert_action_markup (GtkEntryCompletion *completion,
                                                                gint index_,
                                                                const gchar *markup);
void gtk_entry_completion_delete_action (GtkEntryCompletion *completion,
                                                                gint index_);

void gtk_entry_completion_set_inline_completion (GtkEntryCompletion *completion,
                                                                gboolean inline_completion);
gboolean gtk_entry_completion_get_inline_completion (GtkEntryCompletion *completion);
void gtk_entry_completion_set_inline_selection (GtkEntryCompletion *completion,
                                                                gboolean inline_selection);
gboolean gtk_entry_completion_get_inline_selection (GtkEntryCompletion *completion);
void gtk_entry_completion_set_popup_completion (GtkEntryCompletion *completion,
                                                                gboolean popup_completion);
gboolean gtk_entry_completion_get_popup_completion (GtkEntryCompletion *completion);
void gtk_entry_completion_set_popup_set_width (GtkEntryCompletion *completion,
                                                                gboolean popup_set_width);
gboolean gtk_entry_completion_get_popup_set_width (GtkEntryCompletion *completion);
void gtk_entry_completion_set_popup_single_match (GtkEntryCompletion *completion,
                                                                gboolean popup_single_match);
gboolean gtk_entry_completion_get_popup_single_match (GtkEntryCompletion *completion);

const gchar *gtk_entry_completion_get_completion_prefix (GtkEntryCompletion *completion);

void gtk_entry_completion_set_text_column (GtkEntryCompletion *completion,
                                                                gint column);
gint gtk_entry_completion_get_text_column (GtkEntryCompletion *completion);

}
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentry.h" 2




extern "C" {
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkentry.h"
typedef enum
{
 GTK_ENTRY_ICON_PRIMARY,
 GTK_ENTRY_ICON_SECONDARY
} GtkEntryIconPosition;

typedef struct _GtkEntry GtkEntry;
typedef struct _GtkEntryClass GtkEntryClass;

struct _GtkEntry
{
 GtkWidget widget;

 gchar *text;

 guint editable : 1;
 guint visible : 1;
 guint overwrite_mode : 1;
 guint in_drag : 1;


 guint16 text_length;
 guint16 text_max_length;


 GdkWindow *text_area;
 GtkIMContext *im_context;
 GtkWidget *popup_menu;

 gint current_pos;
 gint selection_bound;

 PangoLayout *cached_layout;

 guint cache_includes_preedit : 1;
 guint need_im_reset : 1;
 guint has_frame : 1;
 guint activates_default : 1;
 guint cursor_visible : 1;
 guint in_click : 1;
 guint is_cell_renderer : 1;
 guint editing_canceled : 1;
 guint mouse_cursor_obscured : 1;
 guint select_words : 1;
 guint select_lines : 1;
 guint resolved_dir : 4;
 guint truncate_multiline : 1;

 guint button;
 guint blink_timeout;
 guint recompute_idle;
 gint scroll_offset;
 gint ascent;
 gint descent;

 guint16 x_text_size;
 guint16 x_n_bytes;

 guint16 preedit_length;
 guint16 preedit_cursor;

 gint dnd_position;

 gint drag_start_x;
 gint drag_start_y;

 gunichar invisible_char;

 gint width_chars;
};

struct _GtkEntryClass
{
 GtkWidgetClass parent_class;


 void (* populate_popup) (GtkEntry *entry,
                            GtkMenu *menu);



 void (* activate) (GtkEntry *entry);
 void (* move_cursor) (GtkEntry *entry,
         GtkMovementStep step,
         gint count,
         gboolean extend_selection);
 void (* insert_at_cursor) (GtkEntry *entry,
         const gchar *str);
 void (* delete_from_cursor) (GtkEntry *entry,
         GtkDeleteType type,
         gint count);
 void (* backspace) (GtkEntry *entry);
 void (* cut_clipboard) (GtkEntry *entry);
 void (* copy_clipboard) (GtkEntry *entry);
 void (* paste_clipboard) (GtkEntry *entry);
 void (* toggle_overwrite) (GtkEntry *entry);


 void (* get_text_area_size) (GtkEntry *entry,
         gint *x,
         gint *y,
         gint *width,
         gint *height);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
};

GType gtk_entry_get_type (void) __attribute__((__const__));
GtkWidget* gtk_entry_new (void);
GtkWidget* gtk_entry_new_with_buffer (GtkEntryBuffer *buffer);

GtkEntryBuffer* gtk_entry_get_buffer (GtkEntry *entry);
void gtk_entry_set_buffer (GtkEntry *entry,
                                                GtkEntryBuffer *buffer);

GdkWindow *gtk_entry_get_text_window (GtkEntry *entry);

void gtk_entry_set_visibility (GtkEntry *entry,
      gboolean visible);
gboolean gtk_entry_get_visibility (GtkEntry *entry);

void gtk_entry_set_invisible_char (GtkEntry *entry,
                                                gunichar ch);
gunichar gtk_entry_get_invisible_char (GtkEntry *entry);
void gtk_entry_unset_invisible_char (GtkEntry *entry);

void gtk_entry_set_has_frame (GtkEntry *entry,
                                                gboolean setting);
gboolean gtk_entry_get_has_frame (GtkEntry *entry);

void gtk_entry_set_inner_border (GtkEntry *entry,
                                                     const GtkBorder *border);
const GtkBorder* gtk_entry_get_inner_border (GtkEntry *entry);

void gtk_entry_set_overwrite_mode (GtkEntry *entry,
                                                gboolean overwrite);
gboolean gtk_entry_get_overwrite_mode (GtkEntry *entry);


void gtk_entry_set_max_length (GtkEntry *entry,
      gint max);
gint gtk_entry_get_max_length (GtkEntry *entry);
guint16 gtk_entry_get_text_length (GtkEntry *entry);

void gtk_entry_set_activates_default (GtkEntry *entry,
                                                gboolean setting);
gboolean gtk_entry_get_activates_default (GtkEntry *entry);

void gtk_entry_set_width_chars (GtkEntry *entry,
                                                gint n_chars);
gint gtk_entry_get_width_chars (GtkEntry *entry);



void gtk_entry_set_text (GtkEntry *entry,
                                                const gchar *text);

const gchar* gtk_entry_get_text (GtkEntry *entry);

PangoLayout* gtk_entry_get_layout (GtkEntry *entry);
void gtk_entry_get_layout_offsets (GtkEntry *entry,
                                                gint *x,
                                                gint *y);
void gtk_entry_set_alignment (GtkEntry *entry,
                                                gfloat xalign);
gfloat gtk_entry_get_alignment (GtkEntry *entry);

void gtk_entry_set_completion (GtkEntry *entry,
                                             GtkEntryCompletion *completion);
GtkEntryCompletion *gtk_entry_get_completion (GtkEntry *entry);

gint gtk_entry_layout_index_to_text_index (GtkEntry *entry,
                                                gint layout_index);
gint gtk_entry_text_index_to_layout_index (GtkEntry *entry,
                                                gint text_index);



void gtk_entry_set_cursor_hadjustment (GtkEntry *entry,
                                                GtkAdjustment *adjustment);
GtkAdjustment* gtk_entry_get_cursor_hadjustment (GtkEntry *entry);



void gtk_entry_set_progress_fraction (GtkEntry *entry,
                                                 gdouble fraction);
gdouble gtk_entry_get_progress_fraction (GtkEntry *entry);

void gtk_entry_set_progress_pulse_step (GtkEntry *entry,
                                                 gdouble fraction);
gdouble gtk_entry_get_progress_pulse_step (GtkEntry *entry);

void gtk_entry_progress_pulse (GtkEntry *entry);



void gtk_entry_set_icon_from_pixbuf (GtkEntry *entry,
        GtkEntryIconPosition icon_pos,
        GdkPixbuf *pixbuf);
void gtk_entry_set_icon_from_stock (GtkEntry *entry,
        GtkEntryIconPosition icon_pos,
        const gchar *stock_id);
void gtk_entry_set_icon_from_icon_name (GtkEntry *entry,
        GtkEntryIconPosition icon_pos,
        const gchar *icon_name);
void gtk_entry_set_icon_from_gicon (GtkEntry *entry,
        GtkEntryIconPosition icon_pos,
        GIcon *icon);
GtkImageType gtk_entry_get_icon_storage_type (GtkEntry *entry,
        GtkEntryIconPosition icon_pos);
GdkPixbuf* gtk_entry_get_icon_pixbuf (GtkEntry *entry,
        GtkEntryIconPosition icon_pos);
const gchar* gtk_entry_get_icon_stock (GtkEntry *entry,
        GtkEntryIconPosition icon_pos);
const gchar* gtk_entry_get_icon_name (GtkEntry *entry,
        GtkEntryIconPosition icon_pos);
GIcon* gtk_entry_get_icon_gicon (GtkEntry *entry,
        GtkEntryIconPosition icon_pos);
void gtk_entry_set_icon_activatable (GtkEntry *entry,
        GtkEntryIconPosition icon_pos,
        gboolean activatable);
gboolean gtk_entry_get_icon_activatable (GtkEntry *entry,
        GtkEntryIconPosition icon_pos);
void gtk_entry_set_icon_sensitive (GtkEntry *entry,
        GtkEntryIconPosition icon_pos,
        gboolean sensitive);
gboolean gtk_entry_get_icon_sensitive (GtkEntry *entry,
        GtkEntryIconPosition icon_pos);
gint gtk_entry_get_icon_at_pos (GtkEntry *entry,
        gint x,
        gint y);
void gtk_entry_set_icon_tooltip_text (GtkEntry *entry,
        GtkEntryIconPosition icon_pos,
        const gchar *tooltip);
gchar * gtk_entry_get_icon_tooltip_text (GtkEntry *entry,
                                                         GtkEntryIconPosition icon_pos);
void gtk_entry_set_icon_tooltip_markup (GtkEntry *entry,
        GtkEntryIconPosition icon_pos,
        const gchar *tooltip);
gchar * gtk_entry_get_icon_tooltip_markup (GtkEntry *entry,
                                                         GtkEntryIconPosition icon_pos);
void gtk_entry_set_icon_drag_source (GtkEntry *entry,
        GtkEntryIconPosition icon_pos,
        GtkTargetList *target_list,
        GdkDragAction actions);
gint gtk_entry_get_current_icon_drag_source (GtkEntry *entry);

GdkWindow * gtk_entry_get_icon_window (GtkEntry *entry,
                                                         GtkEntryIconPosition icon_pos);

gboolean gtk_entry_im_context_filter_keypress (GtkEntry *entry,
                                                         GdkEventKey *event);
void gtk_entry_reset_im_context (GtkEntry *entry);






GtkWidget* gtk_entry_new_with_max_length (gint max);
void gtk_entry_append_text (GtkEntry *entry,
      const gchar *text);
void gtk_entry_prepend_text (GtkEntry *entry,
      const gchar *text);
void gtk_entry_set_position (GtkEntry *entry,
      gint position);
void gtk_entry_select_region (GtkEntry *entry,
      gint start,
      gint end);
void gtk_entry_set_editable (GtkEntry *entry,
      gboolean editable);


}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeview.h" 2

extern "C" {


typedef enum
{

 GTK_TREE_VIEW_DROP_BEFORE,
 GTK_TREE_VIEW_DROP_AFTER,



 GTK_TREE_VIEW_DROP_INTO_OR_BEFORE,
 GTK_TREE_VIEW_DROP_INTO_OR_AFTER
} GtkTreeViewDropPosition;
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeview.h"
typedef struct _GtkTreeView GtkTreeView;
typedef struct _GtkTreeViewClass GtkTreeViewClass;
typedef struct _GtkTreeViewPrivate GtkTreeViewPrivate;
typedef struct _GtkTreeSelection GtkTreeSelection;
typedef struct _GtkTreeSelectionClass GtkTreeSelectionClass;

struct _GtkTreeView
{
 GtkContainer parent;

 GtkTreeViewPrivate *priv;
};

struct _GtkTreeViewClass
{
 GtkContainerClass parent_class;

 void (* set_scroll_adjustments) (GtkTreeView *tree_view,
              GtkAdjustment *hadjustment,
              GtkAdjustment *vadjustment);
 void (* row_activated) (GtkTreeView *tree_view,
              GtkTreePath *path,
       GtkTreeViewColumn *column);
 gboolean (* test_expand_row) (GtkTreeView *tree_view,
              GtkTreeIter *iter,
              GtkTreePath *path);
 gboolean (* test_collapse_row) (GtkTreeView *tree_view,
              GtkTreeIter *iter,
              GtkTreePath *path);
 void (* row_expanded) (GtkTreeView *tree_view,
              GtkTreeIter *iter,
              GtkTreePath *path);
 void (* row_collapsed) (GtkTreeView *tree_view,
              GtkTreeIter *iter,
              GtkTreePath *path);
 void (* columns_changed) (GtkTreeView *tree_view);
 void (* cursor_changed) (GtkTreeView *tree_view);


 gboolean (* move_cursor) (GtkTreeView *tree_view,
              GtkMovementStep step,
              gint count);
 gboolean (* select_all) (GtkTreeView *tree_view);
 gboolean (* unselect_all) (GtkTreeView *tree_view);
 gboolean (* select_cursor_row) (GtkTreeView *tree_view,
       gboolean start_editing);
 gboolean (* toggle_cursor_row) (GtkTreeView *tree_view);
 gboolean (* expand_collapse_cursor_row) (GtkTreeView *tree_view,
       gboolean logical,
       gboolean expand,
       gboolean open_all);
 gboolean (* select_cursor_parent) (GtkTreeView *tree_view);
 gboolean (* start_interactive_search) (GtkTreeView *tree_view);


 void (*_gtk_reserved0) (void);
 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


typedef gboolean (* GtkTreeViewColumnDropFunc) (GtkTreeView *tree_view,
     GtkTreeViewColumn *column,
     GtkTreeViewColumn *prev_column,
     GtkTreeViewColumn *next_column,
     gpointer data);
typedef void (* GtkTreeViewMappingFunc) (GtkTreeView *tree_view,
     GtkTreePath *path,
     gpointer user_data);
typedef gboolean (*GtkTreeViewSearchEqualFunc) (GtkTreeModel *model,
     gint column,
     const gchar *key,
     GtkTreeIter *iter,
     gpointer search_data);
typedef gboolean (*GtkTreeViewRowSeparatorFunc) (GtkTreeModel *model,
      GtkTreeIter *iter,
      gpointer data);
typedef void (*GtkTreeViewSearchPositionFunc) (GtkTreeView *tree_view,
        GtkWidget *search_dialog,
        gpointer user_data);



GType gtk_tree_view_get_type (void) __attribute__((__const__));
GtkWidget *gtk_tree_view_new (void);
GtkWidget *gtk_tree_view_new_with_model (GtkTreeModel *model);


GtkTreeModel *gtk_tree_view_get_model (GtkTreeView *tree_view);
void gtk_tree_view_set_model (GtkTreeView *tree_view,
           GtkTreeModel *model);
GtkTreeSelection *gtk_tree_view_get_selection (GtkTreeView *tree_view);
GtkAdjustment *gtk_tree_view_get_hadjustment (GtkTreeView *tree_view);
void gtk_tree_view_set_hadjustment (GtkTreeView *tree_view,
           GtkAdjustment *adjustment);
GtkAdjustment *gtk_tree_view_get_vadjustment (GtkTreeView *tree_view);
void gtk_tree_view_set_vadjustment (GtkTreeView *tree_view,
           GtkAdjustment *adjustment);
gboolean gtk_tree_view_get_headers_visible (GtkTreeView *tree_view);
void gtk_tree_view_set_headers_visible (GtkTreeView *tree_view,
           gboolean headers_visible);
void gtk_tree_view_columns_autosize (GtkTreeView *tree_view);
gboolean gtk_tree_view_get_headers_clickable (GtkTreeView *tree_view);
void gtk_tree_view_set_headers_clickable (GtkTreeView *tree_view,
           gboolean setting);
void gtk_tree_view_set_rules_hint (GtkTreeView *tree_view,
           gboolean setting);
gboolean gtk_tree_view_get_rules_hint (GtkTreeView *tree_view);


gint gtk_tree_view_append_column (GtkTreeView *tree_view,
           GtkTreeViewColumn *column);
gint gtk_tree_view_remove_column (GtkTreeView *tree_view,
           GtkTreeViewColumn *column);
gint gtk_tree_view_insert_column (GtkTreeView *tree_view,
           GtkTreeViewColumn *column,
           gint position);
gint gtk_tree_view_insert_column_with_attributes (GtkTreeView *tree_view,
           gint position,
           const gchar *title,
           GtkCellRenderer *cell,
           ...) __attribute__((__sentinel__));
gint gtk_tree_view_insert_column_with_data_func (GtkTreeView *tree_view,
           gint position,
           const gchar *title,
           GtkCellRenderer *cell,
                                                                   GtkTreeCellDataFunc func,
                                                                   gpointer data,
                                                                   GDestroyNotify dnotify);
GtkTreeViewColumn *gtk_tree_view_get_column (GtkTreeView *tree_view,
           gint n);
GList *gtk_tree_view_get_columns (GtkTreeView *tree_view);
void gtk_tree_view_move_column_after (GtkTreeView *tree_view,
           GtkTreeViewColumn *column,
           GtkTreeViewColumn *base_column);
void gtk_tree_view_set_expander_column (GtkTreeView *tree_view,
           GtkTreeViewColumn *column);
GtkTreeViewColumn *gtk_tree_view_get_expander_column (GtkTreeView *tree_view);
void gtk_tree_view_set_column_drag_function (GtkTreeView *tree_view,
           GtkTreeViewColumnDropFunc func,
           gpointer user_data,
           GDestroyNotify destroy);


void gtk_tree_view_scroll_to_point (GtkTreeView *tree_view,
           gint tree_x,
           gint tree_y);
void gtk_tree_view_scroll_to_cell (GtkTreeView *tree_view,
           GtkTreePath *path,
           GtkTreeViewColumn *column,
           gboolean use_align,
           gfloat row_align,
           gfloat col_align);
void gtk_tree_view_row_activated (GtkTreeView *tree_view,
           GtkTreePath *path,
           GtkTreeViewColumn *column);
void gtk_tree_view_expand_all (GtkTreeView *tree_view);
void gtk_tree_view_collapse_all (GtkTreeView *tree_view);
void gtk_tree_view_expand_to_path (GtkTreeView *tree_view,
           GtkTreePath *path);
gboolean gtk_tree_view_expand_row (GtkTreeView *tree_view,
           GtkTreePath *path,
           gboolean open_all);
gboolean gtk_tree_view_collapse_row (GtkTreeView *tree_view,
           GtkTreePath *path);
void gtk_tree_view_map_expanded_rows (GtkTreeView *tree_view,
           GtkTreeViewMappingFunc func,
           gpointer data);
gboolean gtk_tree_view_row_expanded (GtkTreeView *tree_view,
           GtkTreePath *path);
void gtk_tree_view_set_reorderable (GtkTreeView *tree_view,
           gboolean reorderable);
gboolean gtk_tree_view_get_reorderable (GtkTreeView *tree_view);
void gtk_tree_view_set_cursor (GtkTreeView *tree_view,
           GtkTreePath *path,
           GtkTreeViewColumn *focus_column,
           gboolean start_editing);
void gtk_tree_view_set_cursor_on_cell (GtkTreeView *tree_view,
           GtkTreePath *path,
           GtkTreeViewColumn *focus_column,
           GtkCellRenderer *focus_cell,
           gboolean start_editing);
void gtk_tree_view_get_cursor (GtkTreeView *tree_view,
           GtkTreePath **path,
           GtkTreeViewColumn **focus_column);



GdkWindow *gtk_tree_view_get_bin_window (GtkTreeView *tree_view);
gboolean gtk_tree_view_get_path_at_pos (GtkTreeView *tree_view,
           gint x,
           gint y,
           GtkTreePath **path,
           GtkTreeViewColumn **column,
           gint *cell_x,
           gint *cell_y);
void gtk_tree_view_get_cell_area (GtkTreeView *tree_view,
           GtkTreePath *path,
           GtkTreeViewColumn *column,
           GdkRectangle *rect);
void gtk_tree_view_get_background_area (GtkTreeView *tree_view,
           GtkTreePath *path,
           GtkTreeViewColumn *column,
           GdkRectangle *rect);
void gtk_tree_view_get_visible_rect (GtkTreeView *tree_view,
           GdkRectangle *visible_rect);


void gtk_tree_view_widget_to_tree_coords (GtkTreeView *tree_view,
           gint wx,
           gint wy,
           gint *tx,
           gint *ty);
void gtk_tree_view_tree_to_widget_coords (GtkTreeView *tree_view,
           gint tx,
           gint ty,
           gint *wx,
           gint *wy);

gboolean gtk_tree_view_get_visible_range (GtkTreeView *tree_view,
           GtkTreePath **start_path,
           GtkTreePath **end_path);


void gtk_tree_view_enable_model_drag_source (GtkTreeView *tree_view,
           GdkModifierType start_button_mask,
           const GtkTargetEntry *targets,
           gint n_targets,
           GdkDragAction actions);
void gtk_tree_view_enable_model_drag_dest (GtkTreeView *tree_view,
           const GtkTargetEntry *targets,
           gint n_targets,
           GdkDragAction actions);
void gtk_tree_view_unset_rows_drag_source (GtkTreeView *tree_view);
void gtk_tree_view_unset_rows_drag_dest (GtkTreeView *tree_view);



void gtk_tree_view_set_drag_dest_row (GtkTreeView *tree_view,
           GtkTreePath *path,
           GtkTreeViewDropPosition pos);
void gtk_tree_view_get_drag_dest_row (GtkTreeView *tree_view,
           GtkTreePath **path,
           GtkTreeViewDropPosition *pos);
gboolean gtk_tree_view_get_dest_row_at_pos (GtkTreeView *tree_view,
           gint drag_x,
           gint drag_y,
           GtkTreePath **path,
           GtkTreeViewDropPosition *pos);
GdkPixmap *gtk_tree_view_create_row_drag_icon (GtkTreeView *tree_view,
           GtkTreePath *path);


void gtk_tree_view_set_enable_search (GtkTreeView *tree_view,
       gboolean enable_search);
gboolean gtk_tree_view_get_enable_search (GtkTreeView *tree_view);
gint gtk_tree_view_get_search_column (GtkTreeView *tree_view);
void gtk_tree_view_set_search_column (GtkTreeView *tree_view,
       gint column);
GtkTreeViewSearchEqualFunc gtk_tree_view_get_search_equal_func (GtkTreeView *tree_view);
void gtk_tree_view_set_search_equal_func (GtkTreeView *tree_view,
       GtkTreeViewSearchEqualFunc search_equal_func,
       gpointer search_user_data,
       GDestroyNotify search_destroy);

GtkEntry *gtk_tree_view_get_search_entry (GtkTreeView *tree_view);
void gtk_tree_view_set_search_entry (GtkTreeView *tree_view,
             GtkEntry *entry);
GtkTreeViewSearchPositionFunc gtk_tree_view_get_search_position_func (GtkTreeView *tree_view);
void gtk_tree_view_set_search_position_func (GtkTreeView *tree_view,
             GtkTreeViewSearchPositionFunc func,
             gpointer data,
             GDestroyNotify destroy);


void gtk_tree_view_convert_widget_to_tree_coords (GtkTreeView *tree_view,
      gint wx,
      gint wy,
      gint *tx,
      gint *ty);
void gtk_tree_view_convert_tree_to_widget_coords (GtkTreeView *tree_view,
      gint tx,
      gint ty,
      gint *wx,
      gint *wy);
void gtk_tree_view_convert_widget_to_bin_window_coords (GtkTreeView *tree_view,
      gint wx,
      gint wy,
      gint *bx,
      gint *by);
void gtk_tree_view_convert_bin_window_to_widget_coords (GtkTreeView *tree_view,
      gint bx,
      gint by,
      gint *wx,
      gint *wy);
void gtk_tree_view_convert_tree_to_bin_window_coords (GtkTreeView *tree_view,
      gint tx,
      gint ty,
      gint *bx,
      gint *by);
void gtk_tree_view_convert_bin_window_to_tree_coords (GtkTreeView *tree_view,
      gint bx,
      gint by,
      gint *tx,
      gint *ty);



typedef void (* GtkTreeDestroyCountFunc) (GtkTreeView *tree_view,
       GtkTreePath *path,
       gint children,
       gpointer user_data);
void gtk_tree_view_set_destroy_count_func (GtkTreeView *tree_view,
       GtkTreeDestroyCountFunc func,
       gpointer data,
       GDestroyNotify destroy);

void gtk_tree_view_set_fixed_height_mode (GtkTreeView *tree_view,
          gboolean enable);
gboolean gtk_tree_view_get_fixed_height_mode (GtkTreeView *tree_view);
void gtk_tree_view_set_hover_selection (GtkTreeView *tree_view,
          gboolean hover);
gboolean gtk_tree_view_get_hover_selection (GtkTreeView *tree_view);
void gtk_tree_view_set_hover_expand (GtkTreeView *tree_view,
          gboolean expand);
gboolean gtk_tree_view_get_hover_expand (GtkTreeView *tree_view);
void gtk_tree_view_set_rubber_banding (GtkTreeView *tree_view,
          gboolean enable);
gboolean gtk_tree_view_get_rubber_banding (GtkTreeView *tree_view);

gboolean gtk_tree_view_is_rubber_banding_active (GtkTreeView *tree_view);

GtkTreeViewRowSeparatorFunc gtk_tree_view_get_row_separator_func (GtkTreeView *tree_view);
void gtk_tree_view_set_row_separator_func (GtkTreeView *tree_view,
         GtkTreeViewRowSeparatorFunc func,
         gpointer data,
         GDestroyNotify destroy);

GtkTreeViewGridLines gtk_tree_view_get_grid_lines (GtkTreeView *tree_view);
void gtk_tree_view_set_grid_lines (GtkTreeView *tree_view,
         GtkTreeViewGridLines grid_lines);
gboolean gtk_tree_view_get_enable_tree_lines (GtkTreeView *tree_view);
void gtk_tree_view_set_enable_tree_lines (GtkTreeView *tree_view,
         gboolean enabled);
void gtk_tree_view_set_show_expanders (GtkTreeView *tree_view,
         gboolean enabled);
gboolean gtk_tree_view_get_show_expanders (GtkTreeView *tree_view);
void gtk_tree_view_set_level_indentation (GtkTreeView *tree_view,
         gint indentation);
gint gtk_tree_view_get_level_indentation (GtkTreeView *tree_view);


void gtk_tree_view_set_tooltip_row (GtkTreeView *tree_view,
     GtkTooltip *tooltip,
     GtkTreePath *path);
void gtk_tree_view_set_tooltip_cell (GtkTreeView *tree_view,
     GtkTooltip *tooltip,
     GtkTreePath *path,
     GtkTreeViewColumn *column,
     GtkCellRenderer *cell);
gboolean gtk_tree_view_get_tooltip_context(GtkTreeView *tree_view,
     gint *x,
     gint *y,
     gboolean keyboard_tip,
     GtkTreeModel **model,
     GtkTreePath **path,
     GtkTreeIter *iter);
void gtk_tree_view_set_tooltip_column (GtkTreeView *tree_view,
            gint column);
gint gtk_tree_view_get_tooltip_column (GtkTreeView *tree_view);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcombobox.h" 2

extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcombobox.h"
typedef struct _GtkComboBox GtkComboBox;
typedef struct _GtkComboBoxClass GtkComboBoxClass;
typedef struct _GtkComboBoxPrivate GtkComboBoxPrivate;

struct _GtkComboBox
{
 GtkBin parent_instance;


 GtkComboBoxPrivate *priv;
};

struct _GtkComboBoxClass
{
 GtkBinClass parent_class;


 void (* changed) (GtkComboBox *combo_box);


 gchar * (* get_active_text) (GtkComboBox *combo_box);


 void (*_gtk_reserved0) (void);
 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
};



GType gtk_combo_box_get_type (void) __attribute__((__const__));
GtkWidget *gtk_combo_box_new (void);
GtkWidget *gtk_combo_box_new_with_entry (void);
GtkWidget *gtk_combo_box_new_with_model (GtkTreeModel *model);
GtkWidget *gtk_combo_box_new_with_model_and_entry (GtkTreeModel *model);


gint gtk_combo_box_get_wrap_width (GtkComboBox *combo_box);
void gtk_combo_box_set_wrap_width (GtkComboBox *combo_box,
                                                   gint width);
gint gtk_combo_box_get_row_span_column (GtkComboBox *combo_box);
void gtk_combo_box_set_row_span_column (GtkComboBox *combo_box,
                                                   gint row_span);
gint gtk_combo_box_get_column_span_column (GtkComboBox *combo_box);
void gtk_combo_box_set_column_span_column (GtkComboBox *combo_box,
                                                   gint column_span);

gboolean gtk_combo_box_get_add_tearoffs (GtkComboBox *combo_box);
void gtk_combo_box_set_add_tearoffs (GtkComboBox *combo_box,
         gboolean add_tearoffs);

const gchar * gtk_combo_box_get_title (GtkComboBox *combo_box);
void gtk_combo_box_set_title (GtkComboBox *combo_box,
                const gchar *title);

gboolean gtk_combo_box_get_focus_on_click (GtkComboBox *combo);
void gtk_combo_box_set_focus_on_click (GtkComboBox *combo,
         gboolean focus_on_click);


gint gtk_combo_box_get_active (GtkComboBox *combo_box);
void gtk_combo_box_set_active (GtkComboBox *combo_box,
                                             gint index_);
gboolean gtk_combo_box_get_active_iter (GtkComboBox *combo_box,
                                             GtkTreeIter *iter);
void gtk_combo_box_set_active_iter (GtkComboBox *combo_box,
                                             GtkTreeIter *iter);


void gtk_combo_box_set_model (GtkComboBox *combo_box,
                                             GtkTreeModel *model);
GtkTreeModel *gtk_combo_box_get_model (GtkComboBox *combo_box);

GtkTreeViewRowSeparatorFunc gtk_combo_box_get_row_separator_func (GtkComboBox *combo_box);
void gtk_combo_box_set_row_separator_func (GtkComboBox *combo_box,
         GtkTreeViewRowSeparatorFunc func,
         gpointer data,
         GDestroyNotify destroy);

void gtk_combo_box_set_button_sensitivity (GtkComboBox *combo_box,
       GtkSensitivityType sensitivity);
GtkSensitivityType gtk_combo_box_get_button_sensitivity (GtkComboBox *combo_box);

gboolean gtk_combo_box_get_has_entry (GtkComboBox *combo_box);
void gtk_combo_box_set_entry_text_column (GtkComboBox *combo_box,
       gint text_column);
gint gtk_combo_box_get_entry_text_column (GtkComboBox *combo_box);




GtkWidget *gtk_combo_box_new_text (void);
void gtk_combo_box_append_text (GtkComboBox *combo_box,
                                             const gchar *text);
void gtk_combo_box_insert_text (GtkComboBox *combo_box,
                                             gint position,
                                             const gchar *text);
void gtk_combo_box_prepend_text (GtkComboBox *combo_box,
                                             const gchar *text);
void gtk_combo_box_remove_text (GtkComboBox *combo_box,
                                             gint position);
gchar *gtk_combo_box_get_active_text (GtkComboBox *combo_box);




void gtk_combo_box_popup (GtkComboBox *combo_box);
void gtk_combo_box_popdown (GtkComboBox *combo_box);
AtkObject* gtk_combo_box_get_popup_accessible (GtkComboBox *combo_box);


}
# 73 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcomboboxentry.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcomboboxentry.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcomboboxentry.h"
typedef struct _GtkComboBoxEntry GtkComboBoxEntry;
typedef struct _GtkComboBoxEntryClass GtkComboBoxEntryClass;
typedef struct _GtkComboBoxEntryPrivate GtkComboBoxEntryPrivate;

struct _GtkComboBoxEntry
{
 GtkComboBox parent_instance;


 GtkComboBoxEntryPrivate *priv;
};

struct _GtkComboBoxEntryClass
{
 GtkComboBoxClass parent_class;


 void (*_gtk_reserved0) (void);
 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
};


GType gtk_combo_box_entry_get_type (void) __attribute__((__const__));
GtkWidget *gtk_combo_box_entry_new (void);
GtkWidget *gtk_combo_box_entry_new_with_model (GtkTreeModel *model,
                                                gint text_column);

void gtk_combo_box_entry_set_text_column (GtkComboBoxEntry *entry_box,
                                                gint text_column);
gint gtk_combo_box_entry_get_text_column (GtkComboBoxEntry *entry_box);


GtkWidget *gtk_combo_box_entry_new_text (void);



}
# 74 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcomboboxtext.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcomboboxtext.h"
extern "C" {
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcomboboxtext.h"
typedef struct _GtkComboBoxText GtkComboBoxText;
typedef struct _GtkComboBoxTextPrivate GtkComboBoxTextPrivate;
typedef struct _GtkComboBoxTextClass GtkComboBoxTextClass;

struct _GtkComboBoxText
{

 GtkComboBox parent_instance;

 GtkComboBoxTextPrivate *priv;
};

struct _GtkComboBoxTextClass
{
 GtkComboBoxClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_combo_box_text_get_type (void) __attribute__((__const__));
GtkWidget* gtk_combo_box_text_new (void);
GtkWidget* gtk_combo_box_text_new_with_entry (void);
void gtk_combo_box_text_append_text (GtkComboBoxText *combo_box,
                                                 const gchar *text);
void gtk_combo_box_text_insert_text (GtkComboBoxText *combo_box,
                                                 gint position,
                                                 const gchar *text);
void gtk_combo_box_text_prepend_text (GtkComboBoxText *combo_box,
                                                 const gchar *text);
void gtk_combo_box_text_remove (GtkComboBoxText *combo_box,
                                                 gint position);
gchar *gtk_combo_box_text_get_active_text (GtkComboBoxText *combo_box);


}
# 75 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2




# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdrawingarea.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdrawingarea.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkdrawingarea.h"
typedef struct _GtkDrawingArea GtkDrawingArea;
typedef struct _GtkDrawingAreaClass GtkDrawingAreaClass;

struct _GtkDrawingArea
{
 GtkWidget widget;

 gpointer draw_data;
};

struct _GtkDrawingAreaClass
{
 GtkWidgetClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_drawing_area_get_type (void) __attribute__((__const__));
GtkWidget* gtk_drawing_area_new (void);


void gtk_drawing_area_size (GtkDrawingArea *darea,
    gint width,
    gint height);



}
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2





# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkeventbox.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkeventbox.h"
extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkeventbox.h"
typedef struct _GtkEventBox GtkEventBox;
typedef struct _GtkEventBoxClass GtkEventBoxClass;

struct _GtkEventBox
{
 GtkBin bin;
};

struct _GtkEventBoxClass
{
 GtkBinClass parent_class;
};

GType gtk_event_box_get_type (void) __attribute__((__const__));
GtkWidget* gtk_event_box_new (void);
gboolean gtk_event_box_get_visible_window (GtkEventBox *event_box);
void gtk_event_box_set_visible_window (GtkEventBox *event_box,
         gboolean visible_window);
gboolean gtk_event_box_get_above_child (GtkEventBox *event_box);
void gtk_event_box_set_above_child (GtkEventBox *event_box,
         gboolean above_child);

}
# 86 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkexpander.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkexpander.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkexpander.h"
typedef struct _GtkExpander GtkExpander;
typedef struct _GtkExpanderClass GtkExpanderClass;
typedef struct _GtkExpanderPrivate GtkExpanderPrivate;

struct _GtkExpander
{
 GtkBin bin;

 GtkExpanderPrivate *priv;
};

struct _GtkExpanderClass
{
 GtkBinClass parent_class;




 void (* activate) (GtkExpander *expander);
};

GType gtk_expander_get_type (void) __attribute__((__const__));

GtkWidget *gtk_expander_new (const gchar *label);
GtkWidget *gtk_expander_new_with_mnemonic (const gchar *label);

void gtk_expander_set_expanded (GtkExpander *expander,
           gboolean expanded);
gboolean gtk_expander_get_expanded (GtkExpander *expander);


void gtk_expander_set_spacing (GtkExpander *expander,
           gint spacing);
gint gtk_expander_get_spacing (GtkExpander *expander);

void gtk_expander_set_label (GtkExpander *expander,
           const gchar *label);
const gchar * gtk_expander_get_label (GtkExpander *expander);

void gtk_expander_set_use_underline (GtkExpander *expander,
           gboolean use_underline);
gboolean gtk_expander_get_use_underline (GtkExpander *expander);

void gtk_expander_set_use_markup (GtkExpander *expander,
           gboolean use_markup);
gboolean gtk_expander_get_use_markup (GtkExpander *expander);

void gtk_expander_set_label_widget (GtkExpander *expander,
           GtkWidget *label_widget);
GtkWidget *gtk_expander_get_label_widget (GtkExpander *expander);
void gtk_expander_set_label_fill (GtkExpander *expander,
           gboolean label_fill);
gboolean gtk_expander_get_label_fill (GtkExpander *expander);

}
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfixed.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfixed.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfixed.h"
typedef struct _GtkFixed GtkFixed;
typedef struct _GtkFixedClass GtkFixedClass;
typedef struct _GtkFixedChild GtkFixedChild;

struct _GtkFixed
{
 GtkContainer container;

 GList *children;
};

struct _GtkFixedClass
{
 GtkContainerClass parent_class;
};

struct _GtkFixedChild
{
 GtkWidget *widget;
 gint x;
 gint y;
};


GType gtk_fixed_get_type (void) __attribute__((__const__));
GtkWidget* gtk_fixed_new (void);
void gtk_fixed_put (GtkFixed *fixed,
                                       GtkWidget *widget,
                                       gint x,
                                       gint y);
void gtk_fixed_move (GtkFixed *fixed,
                                       GtkWidget *widget,
                                       gint x,
                                       gint y);

void gtk_fixed_set_has_window (GtkFixed *fixed,
    gboolean has_window);
gboolean gtk_fixed_get_has_window (GtkFixed *fixed);


}
# 88 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooser.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooser.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilefilter.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilefilter.h"
extern "C" {





typedef struct _GtkFileFilter GtkFileFilter;
typedef struct _GtkFileFilterInfo GtkFileFilterInfo;

typedef enum {
 GTK_FILE_FILTER_FILENAME = 1 << 0,
 GTK_FILE_FILTER_URI = 1 << 1,
 GTK_FILE_FILTER_DISPLAY_NAME = 1 << 2,
 GTK_FILE_FILTER_MIME_TYPE = 1 << 3
} GtkFileFilterFlags;

typedef gboolean (*GtkFileFilterFunc) (const GtkFileFilterInfo *filter_info,
          gpointer data);

struct _GtkFileFilterInfo
{
 GtkFileFilterFlags contains;

 const gchar *filename;
 const gchar *uri;
 const gchar *display_name;
 const gchar *mime_type;
};

GType gtk_file_filter_get_type (void) __attribute__((__const__));

GtkFileFilter * gtk_file_filter_new (void);
void gtk_file_filter_set_name (GtkFileFilter *filter,
     const gchar *name);
const gchar * gtk_file_filter_get_name (GtkFileFilter *filter);

void gtk_file_filter_add_mime_type (GtkFileFilter *filter,
     const gchar *mime_type);
void gtk_file_filter_add_pattern (GtkFileFilter *filter,
     const gchar *pattern);
void gtk_file_filter_add_pixbuf_formats (GtkFileFilter *filter);
void gtk_file_filter_add_custom (GtkFileFilter *filter,
     GtkFileFilterFlags needed,
     GtkFileFilterFunc func,
     gpointer data,
     GDestroyNotify notify);

GtkFileFilterFlags gtk_file_filter_get_needed (GtkFileFilter *filter);
gboolean gtk_file_filter_filter (GtkFileFilter *filter,
           const GtkFileFilterInfo *filter_info);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooser.h" 2


extern "C" {





typedef struct _GtkFileChooser GtkFileChooser;
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooser.h"
typedef enum
{
 GTK_FILE_CHOOSER_ACTION_OPEN,
 GTK_FILE_CHOOSER_ACTION_SAVE,
 GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
 GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER
} GtkFileChooserAction;
# 81 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooser.h"
typedef enum
{
 GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM,
 GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME,
 GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN
} GtkFileChooserConfirmation;

GType gtk_file_chooser_get_type (void) __attribute__((__const__));
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooser.h"
typedef enum {
 GTK_FILE_CHOOSER_ERROR_NONEXISTENT,
 GTK_FILE_CHOOSER_ERROR_BAD_FILENAME,
 GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS,
 GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME
} GtkFileChooserError;

GQuark gtk_file_chooser_error_quark (void);



void gtk_file_chooser_set_action (GtkFileChooser *chooser,
         GtkFileChooserAction action);
GtkFileChooserAction gtk_file_chooser_get_action (GtkFileChooser *chooser);
void gtk_file_chooser_set_local_only (GtkFileChooser *chooser,
         gboolean local_only);
gboolean gtk_file_chooser_get_local_only (GtkFileChooser *chooser);
void gtk_file_chooser_set_select_multiple (GtkFileChooser *chooser,
         gboolean select_multiple);
gboolean gtk_file_chooser_get_select_multiple (GtkFileChooser *chooser);
void gtk_file_chooser_set_show_hidden (GtkFileChooser *chooser,
         gboolean show_hidden);
gboolean gtk_file_chooser_get_show_hidden (GtkFileChooser *chooser);

void gtk_file_chooser_set_do_overwrite_confirmation (GtkFileChooser *chooser,
            gboolean do_overwrite_confirmation);
gboolean gtk_file_chooser_get_do_overwrite_confirmation (GtkFileChooser *chooser);

void gtk_file_chooser_set_create_folders (GtkFileChooser *chooser,
        gboolean create_folders);
gboolean gtk_file_chooser_get_create_folders (GtkFileChooser *chooser);



void gtk_file_chooser_set_current_name (GtkFileChooser *chooser,
          const gchar *name);
# 163 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooser.h"
gchar * gtk_file_chooser_get_filename (GtkFileChooser *chooser);
gboolean gtk_file_chooser_set_filename (GtkFileChooser *chooser,
          const char *filename);
gboolean gtk_file_chooser_select_filename (GtkFileChooser *chooser,
          const char *filename);
void gtk_file_chooser_unselect_filename (GtkFileChooser *chooser,
          const char *filename);
void gtk_file_chooser_select_all (GtkFileChooser *chooser);
void gtk_file_chooser_unselect_all (GtkFileChooser *chooser);
GSList * gtk_file_chooser_get_filenames (GtkFileChooser *chooser);
gboolean gtk_file_chooser_set_current_folder (GtkFileChooser *chooser,
          const gchar *filename);
gchar * gtk_file_chooser_get_current_folder (GtkFileChooser *chooser);




gchar * gtk_file_chooser_get_uri (GtkFileChooser *chooser);
gboolean gtk_file_chooser_set_uri (GtkFileChooser *chooser,
       const char *uri);
gboolean gtk_file_chooser_select_uri (GtkFileChooser *chooser,
       const char *uri);
void gtk_file_chooser_unselect_uri (GtkFileChooser *chooser,
       const char *uri);
GSList * gtk_file_chooser_get_uris (GtkFileChooser *chooser);
gboolean gtk_file_chooser_set_current_folder_uri (GtkFileChooser *chooser,
       const gchar *uri);
gchar * gtk_file_chooser_get_current_folder_uri (GtkFileChooser *chooser);


GFile * gtk_file_chooser_get_file (GtkFileChooser *chooser);
gboolean gtk_file_chooser_set_file (GtkFileChooser *chooser,
                                                  GFile *file,
                                                  GError **error);
gboolean gtk_file_chooser_select_file (GtkFileChooser *chooser,
                                                  GFile *file,
                                                  GError **error);
void gtk_file_chooser_unselect_file (GtkFileChooser *chooser,
                                                  GFile *file);
GSList * gtk_file_chooser_get_files (GtkFileChooser *chooser);
gboolean gtk_file_chooser_set_current_folder_file (GtkFileChooser *chooser,
                                                  GFile *file,
                                                  GError **error);
GFile * gtk_file_chooser_get_current_folder_file (GtkFileChooser *chooser);



void gtk_file_chooser_set_preview_widget (GtkFileChooser *chooser,
            GtkWidget *preview_widget);
GtkWidget *gtk_file_chooser_get_preview_widget (GtkFileChooser *chooser);
void gtk_file_chooser_set_preview_widget_active (GtkFileChooser *chooser,
            gboolean active);
gboolean gtk_file_chooser_get_preview_widget_active (GtkFileChooser *chooser);
void gtk_file_chooser_set_use_preview_label (GtkFileChooser *chooser,
            gboolean use_label);
gboolean gtk_file_chooser_get_use_preview_label (GtkFileChooser *chooser);

char *gtk_file_chooser_get_preview_filename (GtkFileChooser *chooser);
char *gtk_file_chooser_get_preview_uri (GtkFileChooser *chooser);
GFile *gtk_file_chooser_get_preview_file (GtkFileChooser *chooser);



void gtk_file_chooser_set_extra_widget (GtkFileChooser *chooser,
          GtkWidget *extra_widget);
GtkWidget *gtk_file_chooser_get_extra_widget (GtkFileChooser *chooser);



void gtk_file_chooser_add_filter (GtkFileChooser *chooser,
    GtkFileFilter *filter);
void gtk_file_chooser_remove_filter (GtkFileChooser *chooser,
    GtkFileFilter *filter);
GSList *gtk_file_chooser_list_filters (GtkFileChooser *chooser);



void gtk_file_chooser_set_filter (GtkFileChooser *chooser,
       GtkFileFilter *filter);
GtkFileFilter *gtk_file_chooser_get_filter (GtkFileChooser *chooser);



gboolean gtk_file_chooser_add_shortcut_folder (GtkFileChooser *chooser,
       const char *folder,
       GError **error);
gboolean gtk_file_chooser_remove_shortcut_folder (GtkFileChooser *chooser,
       const char *folder,
       GError **error);
GSList *gtk_file_chooser_list_shortcut_folders (GtkFileChooser *chooser);

gboolean gtk_file_chooser_add_shortcut_folder_uri (GtkFileChooser *chooser,
           const char *uri,
           GError **error);
gboolean gtk_file_chooser_remove_shortcut_folder_uri (GtkFileChooser *chooser,
           const char *uri,
           GError **error);
GSList *gtk_file_chooser_list_shortcut_folder_uris (GtkFileChooser *chooser);

}
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserbutton.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserbutton.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhbox.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhbox.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhbox.h"
typedef struct _GtkHBox GtkHBox;
typedef struct _GtkHBoxClass GtkHBoxClass;

struct _GtkHBox
{
 GtkBox box;
};

struct _GtkHBoxClass
{
 GtkBoxClass parent_class;
};


GType gtk_hbox_get_type (void) __attribute__((__const__));
GtkWidget * gtk_hbox_new (gboolean homogeneous,
                              gint spacing);

}
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserbutton.h" 2


extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserbutton.h"
typedef struct _GtkFileChooserButton GtkFileChooserButton;
typedef struct _GtkFileChooserButtonPrivate GtkFileChooserButtonPrivate;
typedef struct _GtkFileChooserButtonClass GtkFileChooserButtonClass;

struct _GtkFileChooserButton
{

 GtkHBox parent;

 GtkFileChooserButtonPrivate *priv;
};

struct _GtkFileChooserButtonClass
{

 GtkHBoxClass parent_class;

 void (* file_set) (GtkFileChooserButton *fc);

 void (*__gtk_reserved1);
 void (*__gtk_reserved2);
 void (*__gtk_reserved3);
 void (*__gtk_reserved4);
 void (*__gtk_reserved5);
 void (*__gtk_reserved6);
 void (*__gtk_reserved7);
};


GType gtk_file_chooser_button_get_type (void) __attribute__((__const__));
GtkWidget * gtk_file_chooser_button_new (const gchar *title,
       GtkFileChooserAction action);


GtkWidget * gtk_file_chooser_button_new_with_backend (const gchar *title,
       GtkFileChooserAction action,
       const gchar *backend);


GtkWidget * gtk_file_chooser_button_new_with_dialog (GtkWidget *dialog);
const gchar * gtk_file_chooser_button_get_title (GtkFileChooserButton *button);
void gtk_file_chooser_button_set_title (GtkFileChooserButton *button,
       const gchar *title);
gint gtk_file_chooser_button_get_width_chars (GtkFileChooserButton *button);
void gtk_file_chooser_button_set_width_chars (GtkFileChooserButton *button,
       gint n_chars);
gboolean gtk_file_chooser_button_get_focus_on_click (GtkFileChooserButton *button);
void gtk_file_chooser_button_set_focus_on_click (GtkFileChooserButton *button,
                                                                 gboolean focus_on_click);

}
# 90 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserdialog.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserdialog.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserdialog.h"
typedef struct _GtkFileChooserDialog GtkFileChooserDialog;
typedef struct _GtkFileChooserDialogPrivate GtkFileChooserDialogPrivate;
typedef struct _GtkFileChooserDialogClass GtkFileChooserDialogClass;

struct _GtkFileChooserDialog
{
 GtkDialog parent_instance;

 GtkFileChooserDialogPrivate *priv;
};

struct _GtkFileChooserDialogClass
{
 GtkDialogClass parent_class;
};

GType gtk_file_chooser_dialog_get_type (void) __attribute__((__const__));
GtkWidget *gtk_file_chooser_dialog_new (const gchar *title,
          GtkWindow *parent,
          GtkFileChooserAction action,
          const gchar *first_button_text,
          ...) __attribute__((__sentinel__));


GtkWidget *gtk_file_chooser_dialog_new_with_backend (const gchar *title,
          GtkWindow *parent,
          GtkFileChooserAction action,
          const gchar *backend,
          const gchar *first_button_text,
          ...) __attribute__((__sentinel__));


}
# 91 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserwidget.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserwidget.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilechooserwidget.h"
typedef struct _GtkFileChooserWidget GtkFileChooserWidget;
typedef struct _GtkFileChooserWidgetPrivate GtkFileChooserWidgetPrivate;
typedef struct _GtkFileChooserWidgetClass GtkFileChooserWidgetClass;

struct _GtkFileChooserWidget
{
 GtkVBox parent_instance;

 GtkFileChooserWidgetPrivate *priv;
};

struct _GtkFileChooserWidgetClass
{
 GtkVBoxClass parent_class;
};

GType gtk_file_chooser_widget_get_type (void) __attribute__((__const__));
GtkWidget *gtk_file_chooser_widget_new (GtkFileChooserAction action);



GtkWidget *gtk_file_chooser_widget_new_with_backend (GtkFileChooserAction action,
          const gchar *backend);


}
# 92 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfontbutton.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfontbutton.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfontbutton.h"
typedef struct _GtkFontButton GtkFontButton;
typedef struct _GtkFontButtonClass GtkFontButtonClass;
typedef struct _GtkFontButtonPrivate GtkFontButtonPrivate;

struct _GtkFontButton {
 GtkButton button;


 GtkFontButtonPrivate *priv;
};

struct _GtkFontButtonClass {
 GtkButtonClass parent_class;


 void (* font_set) (GtkFontButton *gfp);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_font_button_get_type (void) __attribute__((__const__));
GtkWidget *gtk_font_button_new (void);
GtkWidget *gtk_font_button_new_with_font (const gchar *fontname);

const gchar * gtk_font_button_get_title (GtkFontButton *font_button);
void gtk_font_button_set_title (GtkFontButton *font_button,
                                                     const gchar *title);
gboolean gtk_font_button_get_use_font (GtkFontButton *font_button);
void gtk_font_button_set_use_font (GtkFontButton *font_button,
                                                     gboolean use_font);
gboolean gtk_font_button_get_use_size (GtkFontButton *font_button);
void gtk_font_button_set_use_size (GtkFontButton *font_button,
                                                     gboolean use_size);
const gchar * gtk_font_button_get_font_name (GtkFontButton *font_button);
gboolean gtk_font_button_set_font_name (GtkFontButton *font_button,
                                                     const gchar *fontname);
gboolean gtk_font_button_get_show_style (GtkFontButton *font_button);
void gtk_font_button_set_show_style (GtkFontButton *font_button,
                                                     gboolean show_style);
gboolean gtk_font_button_get_show_size (GtkFontButton *font_button);
void gtk_font_button_set_show_size (GtkFontButton *font_button,
                                                     gboolean show_size);

}
# 94 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfontsel.h" 1
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfontsel.h"
extern "C" {
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfontsel.h"
typedef struct _GtkFontSelection GtkFontSelection;
typedef struct _GtkFontSelectionClass GtkFontSelectionClass;

typedef struct _GtkFontSelectionDialog GtkFontSelectionDialog;
typedef struct _GtkFontSelectionDialogClass GtkFontSelectionDialogClass;

struct _GtkFontSelection
{
 GtkVBox parent_instance;

 GtkWidget *font_entry;
 GtkWidget *family_list;
 GtkWidget *font_style_entry;
 GtkWidget *face_list;
 GtkWidget *size_entry;
 GtkWidget *size_list;
 GtkWidget *pixels_button;
 GtkWidget *points_button;
 GtkWidget *filter_button;
 GtkWidget *preview_entry;

 PangoFontFamily *family;
 PangoFontFace *face;

 gint size;

 GdkFont *font;


};

struct _GtkFontSelectionClass
{
 GtkVBoxClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

struct _GtkFontSelectionDialog
{
 GtkDialog parent_instance;


 GtkWidget *fontsel;

 GtkWidget *main_vbox;
 GtkWidget *action_area;


 GtkWidget *ok_button;
 GtkWidget *apply_button;
 GtkWidget *cancel_button;






 gint dialog_width;
 gboolean auto_resize;
};

struct _GtkFontSelectionDialogClass
{
 GtkDialogClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfontsel.h"
GType gtk_font_selection_get_type (void) __attribute__((__const__));
GtkWidget * gtk_font_selection_new (void);
GtkWidget * gtk_font_selection_get_family_list (GtkFontSelection *fontsel);
GtkWidget * gtk_font_selection_get_face_list (GtkFontSelection *fontsel);
GtkWidget * gtk_font_selection_get_size_entry (GtkFontSelection *fontsel);
GtkWidget * gtk_font_selection_get_size_list (GtkFontSelection *fontsel);
GtkWidget * gtk_font_selection_get_preview_entry (GtkFontSelection *fontsel);
PangoFontFamily *
            gtk_font_selection_get_family (GtkFontSelection *fontsel);
PangoFontFace *
            gtk_font_selection_get_face (GtkFontSelection *fontsel);
gint gtk_font_selection_get_size (GtkFontSelection *fontsel);
gchar* gtk_font_selection_get_font_name (GtkFontSelection *fontsel);


GdkFont* gtk_font_selection_get_font (GtkFontSelection *fontsel);


gboolean gtk_font_selection_set_font_name (GtkFontSelection *fontsel,
                                                  const gchar *fontname);
const gchar* gtk_font_selection_get_preview_text (GtkFontSelection *fontsel);
void gtk_font_selection_set_preview_text (GtkFontSelection *fontsel,
                                                  const gchar *text);







GType gtk_font_selection_dialog_get_type (void) __attribute__((__const__));
GtkWidget *gtk_font_selection_dialog_new (const gchar *title);

GtkWidget *gtk_font_selection_dialog_get_ok_button (GtkFontSelectionDialog *fsd);

GtkWidget *gtk_font_selection_dialog_get_apply_button (GtkFontSelectionDialog *fsd);

GtkWidget *gtk_font_selection_dialog_get_cancel_button (GtkFontSelectionDialog *fsd);
GtkWidget *gtk_font_selection_dialog_get_font_selection (GtkFontSelectionDialog *fsd);






gchar* gtk_font_selection_dialog_get_font_name (GtkFontSelectionDialog *fsd);





GdkFont* gtk_font_selection_dialog_get_font (GtkFontSelectionDialog *fsd);






gboolean gtk_font_selection_dialog_set_font_name (GtkFontSelectionDialog *fsd,
                                                       const gchar *fontname);



const gchar*
         gtk_font_selection_dialog_get_preview_text (GtkFontSelectionDialog *fsd);



void gtk_font_selection_dialog_set_preview_text (GtkFontSelectionDialog *fsd,
                                                       const gchar *text);


}
# 95 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkgc.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkgc.h"
extern "C" {

GdkGC* gtk_gc_get (gint depth,
        GdkColormap *colormap,
        GdkGCValues *values,
        GdkGCValuesMask values_mask);
void gtk_gc_release (GdkGC *gc);


}
# 97 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhandlebox.h" 1
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhandlebox.h"
extern "C" {
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhandlebox.h"
typedef struct _GtkHandleBox GtkHandleBox;
typedef struct _GtkHandleBoxClass GtkHandleBoxClass;

struct _GtkHandleBox
{
 GtkBin bin;

 GdkWindow *bin_window;
 GdkWindow *float_window;
 GtkShadowType shadow_type;
 guint handle_position : 2;
 guint float_window_mapped : 1;
 guint child_detached : 1;
 guint in_drag : 1;
 guint shrink_on_detach : 1;

 signed int snap_edge : 3;



 gint deskoff_x;
 gint deskoff_y;

 GtkAllocation attach_allocation;
 GtkAllocation float_allocation;
};

struct _GtkHandleBoxClass
{
 GtkBinClass parent_class;

 void (*child_attached) (GtkHandleBox *handle_box,
    GtkWidget *child);
 void (*child_detached) (GtkHandleBox *handle_box,
    GtkWidget *child);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_handle_box_get_type (void) __attribute__((__const__));
GtkWidget* gtk_handle_box_new (void);
void gtk_handle_box_set_shadow_type (GtkHandleBox *handle_box,
                                                  GtkShadowType type);
GtkShadowType gtk_handle_box_get_shadow_type (GtkHandleBox *handle_box);
void gtk_handle_box_set_handle_position (GtkHandleBox *handle_box,
               GtkPositionType position);
GtkPositionType gtk_handle_box_get_handle_position(GtkHandleBox *handle_box);
void gtk_handle_box_set_snap_edge (GtkHandleBox *handle_box,
        GtkPositionType edge);
GtkPositionType gtk_handle_box_get_snap_edge (GtkHandleBox *handle_box);
gboolean gtk_handle_box_get_child_detached (GtkHandleBox *handle_box);

}
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhbbox.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhbbox.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhbbox.h"
typedef struct _GtkHButtonBox GtkHButtonBox;
typedef struct _GtkHButtonBoxClass GtkHButtonBoxClass;

struct _GtkHButtonBox
{
 GtkButtonBox button_box;
};

struct _GtkHButtonBoxClass
{
 GtkButtonBoxClass parent_class;
};


GType gtk_hbutton_box_get_type (void) __attribute__((__const__));
GtkWidget* gtk_hbutton_box_new (void);




gint gtk_hbutton_box_get_spacing_default (void);
GtkButtonBoxStyle gtk_hbutton_box_get_layout_default (void);

void gtk_hbutton_box_set_spacing_default (gint spacing);
void gtk_hbutton_box_set_layout_default (GtkButtonBoxStyle layout);



GtkButtonBoxStyle _gtk_hbutton_box_get_layout_default (void);

}
# 99 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhpaned.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhpaned.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpaned.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpaned.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpaned.h"
typedef struct _GtkPaned GtkPaned;
typedef struct _GtkPanedClass GtkPanedClass;
typedef struct _GtkPanedPrivate GtkPanedPrivate;

struct _GtkPaned
{
 GtkContainer container;

 GtkWidget *child1;
 GtkWidget *child2;

 GdkWindow *handle;
 GdkGC *xor_gc;
 GdkCursorType cursor_type;


 GdkRectangle handle_pos;

 gint child1_size;
 gint last_allocation;
 gint min_position;
 gint max_position;

 guint position_set : 1;
 guint in_drag : 1;
 guint child1_shrink : 1;
 guint child1_resize : 1;
 guint child2_shrink : 1;
 guint child2_resize : 1;
 guint orientation : 1;
 guint in_recursion : 1;
 guint handle_prelit : 1;

 GtkWidget *last_child1_focus;
 GtkWidget *last_child2_focus;
 GtkPanedPrivate *priv;

 gint drag_pos;
 gint original_position;
};

struct _GtkPanedClass
{
 GtkContainerClass parent_class;

 gboolean (* cycle_child_focus) (GtkPaned *paned,
       gboolean reverse);
 gboolean (* toggle_handle_focus) (GtkPaned *paned);
 gboolean (* move_handle) (GtkPaned *paned,
       GtkScrollType scroll);
 gboolean (* cycle_handle_focus) (GtkPaned *paned,
       gboolean reverse);
 gboolean (* accept_position) (GtkPaned *paned);
 gboolean (* cancel_position) (GtkPaned *paned);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_paned_get_type (void) __attribute__((__const__));
void gtk_paned_add1 (GtkPaned *paned,
                                   GtkWidget *child);
void gtk_paned_add2 (GtkPaned *paned,
                                   GtkWidget *child);
void gtk_paned_pack1 (GtkPaned *paned,
                                   GtkWidget *child,
                                   gboolean resize,
                                   gboolean shrink);
void gtk_paned_pack2 (GtkPaned *paned,
                                   GtkWidget *child,
                                   gboolean resize,
                                   gboolean shrink);

gint gtk_paned_get_position (GtkPaned *paned);
void gtk_paned_set_position (GtkPaned *paned,
                                   gint position);

GtkWidget * gtk_paned_get_child1 (GtkPaned *paned);
GtkWidget * gtk_paned_get_child2 (GtkPaned *paned);

GdkWindow * gtk_paned_get_handle_window (GtkPaned *paned);



void gtk_paned_compute_position (GtkPaned *paned,
                                   gint allocation,
                                   gint child1_req,
                                   gint child2_req);




}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhpaned.h" 2

extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhpaned.h"
typedef struct _GtkHPaned GtkHPaned;
typedef struct _GtkHPanedClass GtkHPanedClass;

struct _GtkHPaned
{
 GtkPaned paned;
};

struct _GtkHPanedClass
{
 GtkPanedClass parent_class;
};


GType gtk_hpaned_get_type (void) __attribute__((__const__));
GtkWidget * gtk_hpaned_new (void);

}
# 101 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhruler.h" 1
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhruler.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkruler.h" 1
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkruler.h"
extern "C" {
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkruler.h"
typedef struct _GtkRuler GtkRuler;
typedef struct _GtkRulerClass GtkRulerClass;
typedef struct _GtkRulerMetric GtkRulerMetric;




struct _GtkRuler
{
 GtkWidget widget;

 GdkPixmap *backing_store;
 GdkGC *non_gr_exp_gc;
 GtkRulerMetric *metric;
 gint xsrc;
 gint ysrc;
 gint slider_size;


 gdouble lower;

 gdouble upper;

 gdouble position;

 gdouble max_size;
};

struct _GtkRulerClass
{
 GtkWidgetClass parent_class;

 void (* draw_ticks) (GtkRuler *ruler);
 void (* draw_pos) (GtkRuler *ruler);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

struct _GtkRulerMetric
{
 gchar *metric_name;
 gchar *abbrev;


 gdouble pixels_per_unit;
 gdouble ruler_scale[10];
 gint subdivide[5];
};


GType gtk_ruler_get_type (void) __attribute__((__const__));
void gtk_ruler_set_metric (GtkRuler *ruler,
                                     GtkMetricType metric);
GtkMetricType gtk_ruler_get_metric (GtkRuler *ruler);
void gtk_ruler_set_range (GtkRuler *ruler,
                                     gdouble lower,
                                     gdouble upper,
                                     gdouble position,
                                     gdouble max_size);
void gtk_ruler_get_range (GtkRuler *ruler,
                                     gdouble *lower,
                                     gdouble *upper,
                                     gdouble *position,
                                     gdouble *max_size);

void gtk_ruler_draw_ticks (GtkRuler *ruler);
void gtk_ruler_draw_pos (GtkRuler *ruler);

}
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhruler.h" 2


extern "C" {
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhruler.h"
typedef struct _GtkHRuler GtkHRuler;
typedef struct _GtkHRulerClass GtkHRulerClass;

struct _GtkHRuler
{
 GtkRuler ruler;
};

struct _GtkHRulerClass
{
 GtkRulerClass parent_class;
};


GType gtk_hruler_get_type (void) __attribute__((__const__));
GtkWidget* gtk_hruler_new (void);


}
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhscale.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhscale.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscale.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscale.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrange.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrange.h"
extern "C" {
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrange.h"
typedef struct _GtkRangeLayout GtkRangeLayout;
typedef struct _GtkRangeStepTimer GtkRangeStepTimer;

typedef struct _GtkRange GtkRange;
typedef struct _GtkRangeClass GtkRangeClass;

struct _GtkRange
{
 GtkWidget widget;

 GtkAdjustment *adjustment;
 GtkUpdateType update_policy;
 guint inverted : 1;



 guint flippable : 1;





 guint has_stepper_a : 1;
 guint has_stepper_b : 1;
 guint has_stepper_c : 1;
 guint has_stepper_d : 1;

 guint need_recalc : 1;

 guint slider_size_fixed : 1;

 gint min_slider_size;

 GtkOrientation orientation;


 GdkRectangle range_rect;

 gint slider_start;
 gint slider_end;


 gint round_digits;


 guint trough_click_forward : 1;
 guint update_pending : 1;
 GtkRangeLayout *layout;
 GtkRangeStepTimer *timer;
 gint slide_initial_slider_position;
 gint slide_initial_coordinate;
 guint update_timeout_id;
 GdkWindow *event_window;
};

struct _GtkRangeClass
{
 GtkWidgetClass parent_class;


 gchar *slider_detail;
 gchar *stepper_detail;

 void (* value_changed) (GtkRange *range);
 void (* adjust_bounds) (GtkRange *range,
                            gdouble new_value);


 void (* move_slider) (GtkRange *range,
                            GtkScrollType scroll);


 void (* get_range_border) (GtkRange *range,
                            GtkBorder *border_);

 gboolean (* change_value) (GtkRange *range,
                            GtkScrollType scroll,
                            gdouble new_value);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
};


GType gtk_range_get_type (void) __attribute__((__const__));


void gtk_range_set_update_policy (GtkRange *range,
                                                           GtkUpdateType policy);
GtkUpdateType gtk_range_get_update_policy (GtkRange *range);


void gtk_range_set_adjustment (GtkRange *range,
                                                           GtkAdjustment *adjustment);
GtkAdjustment* gtk_range_get_adjustment (GtkRange *range);

void gtk_range_set_inverted (GtkRange *range,
                                                           gboolean setting);
gboolean gtk_range_get_inverted (GtkRange *range);

void gtk_range_set_flippable (GtkRange *range,
                                                           gboolean flippable);
gboolean gtk_range_get_flippable (GtkRange *range);

void gtk_range_set_slider_size_fixed (GtkRange *range,
                                                           gboolean size_fixed);
gboolean gtk_range_get_slider_size_fixed (GtkRange *range);

void gtk_range_set_min_slider_size (GtkRange *range,
                                                           gboolean min_size);
gint gtk_range_get_min_slider_size (GtkRange *range);

void gtk_range_get_range_rect (GtkRange *range,
                                                           GdkRectangle *range_rect);
void gtk_range_get_slider_range (GtkRange *range,
                                                           gint *slider_start,
                                                           gint *slider_end);

void gtk_range_set_lower_stepper_sensitivity (GtkRange *range,
                                                           GtkSensitivityType sensitivity);
GtkSensitivityType gtk_range_get_lower_stepper_sensitivity (GtkRange *range);
void gtk_range_set_upper_stepper_sensitivity (GtkRange *range,
                                                           GtkSensitivityType sensitivity);
GtkSensitivityType gtk_range_get_upper_stepper_sensitivity (GtkRange *range);

void gtk_range_set_increments (GtkRange *range,
                                                           gdouble step,
                                                           gdouble page);
void gtk_range_set_range (GtkRange *range,
                                                           gdouble min,
                                                           gdouble max);
void gtk_range_set_value (GtkRange *range,
                                                           gdouble value);
gdouble gtk_range_get_value (GtkRange *range);

void gtk_range_set_show_fill_level (GtkRange *range,
                                                           gboolean show_fill_level);
gboolean gtk_range_get_show_fill_level (GtkRange *range);
void gtk_range_set_restrict_to_fill_level (GtkRange *range,
                                                           gboolean restrict_to_fill_level);
gboolean gtk_range_get_restrict_to_fill_level (GtkRange *range);
void gtk_range_set_fill_level (GtkRange *range,
                                                           gdouble fill_level);
gdouble gtk_range_get_fill_level (GtkRange *range);
void gtk_range_set_round_digits (GtkRange *range,
                                                           gint round_digits);
gint gtk_range_get_round_digits (GtkRange *range);



gdouble _gtk_range_get_wheel_delta (GtkRange *range,
                                                           GdkScrollDirection direction);

void _gtk_range_set_stop_values (GtkRange *range,
                                                           gdouble *values,
                                                           gint n_values);
gint _gtk_range_get_stop_positions (GtkRange *range,
                                                           gint **values);


}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscale.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscale.h"
typedef struct _GtkScale GtkScale;
typedef struct _GtkScaleClass GtkScaleClass;

struct _GtkScale
{
 GtkRange range;

 gint digits;
 guint draw_value : 1;
 guint value_pos : 2;
};

struct _GtkScaleClass
{
 GtkRangeClass parent_class;

 gchar* (* format_value) (GtkScale *scale,
                          gdouble value);

 void (* draw_value) (GtkScale *scale);

 void (* get_layout_offsets) (GtkScale *scale,
                              gint *x,
                              gint *y);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
};

GType gtk_scale_get_type (void) __attribute__((__const__));
void gtk_scale_set_digits (GtkScale *scale,
                                               gint digits);
gint gtk_scale_get_digits (GtkScale *scale);
void gtk_scale_set_draw_value (GtkScale *scale,
                                               gboolean draw_value);
gboolean gtk_scale_get_draw_value (GtkScale *scale);
void gtk_scale_set_value_pos (GtkScale *scale,
                                               GtkPositionType pos);
GtkPositionType gtk_scale_get_value_pos (GtkScale *scale);

PangoLayout * gtk_scale_get_layout (GtkScale *scale);
void gtk_scale_get_layout_offsets (GtkScale *scale,
                                               gint *x,
                                               gint *y);

void gtk_scale_add_mark (GtkScale *scale,
                                               gdouble value,
                                               GtkPositionType position,
                                               const gchar *markup);
void gtk_scale_clear_marks (GtkScale *scale);


void _gtk_scale_clear_layout (GtkScale *scale);
void _gtk_scale_get_value_size (GtkScale *scale,
                                               gint *width,
                                               gint *height);
gchar * _gtk_scale_format_value (GtkScale *scale,
                                               gdouble value);

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhscale.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhscale.h"
typedef struct _GtkHScale GtkHScale;
typedef struct _GtkHScaleClass GtkHScaleClass;

struct _GtkHScale
{
 GtkScale scale;
};

struct _GtkHScaleClass
{
 GtkScaleClass parent_class;
};


GType gtk_hscale_get_type (void) __attribute__((__const__));
GtkWidget* gtk_hscale_new (GtkAdjustment *adjustment);
GtkWidget* gtk_hscale_new_with_range (gdouble min,
                                     gdouble max,
                                     gdouble step);


}
# 103 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhscrollbar.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhscrollbar.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscrollbar.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscrollbar.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscrollbar.h"
typedef struct _GtkScrollbar GtkScrollbar;
typedef struct _GtkScrollbarClass GtkScrollbarClass;

struct _GtkScrollbar
{
 GtkRange range;
};

struct _GtkScrollbarClass
{
 GtkRangeClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_scrollbar_get_type (void) __attribute__((__const__));

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhscrollbar.h" 2


extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhscrollbar.h"
typedef struct _GtkHScrollbar GtkHScrollbar;
typedef struct _GtkHScrollbarClass GtkHScrollbarClass;

struct _GtkHScrollbar
{
 GtkScrollbar scrollbar;
};

struct _GtkHScrollbarClass
{
 GtkScrollbarClass parent_class;
};


GType gtk_hscrollbar_get_type (void) __attribute__((__const__));
GtkWidget* gtk_hscrollbar_new (GtkAdjustment *adjustment);


}
# 104 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhseparator.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhseparator.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkseparator.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkseparator.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkseparator.h"
typedef struct _GtkSeparator GtkSeparator;
typedef struct _GtkSeparatorClass GtkSeparatorClass;

struct _GtkSeparator
{
 GtkWidget widget;
};

struct _GtkSeparatorClass
{
 GtkWidgetClass parent_class;
};


GType gtk_separator_get_type (void) __attribute__((__const__));

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhseparator.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhseparator.h"
typedef struct _GtkHSeparator GtkHSeparator;
typedef struct _GtkHSeparatorClass GtkHSeparatorClass;

struct _GtkHSeparator
{
 GtkSeparator separator;
};

struct _GtkHSeparatorClass
{
 GtkSeparatorClass parent_class;
};


GType gtk_hseparator_get_type (void) __attribute__((__const__));
GtkWidget* gtk_hseparator_new (void);


}
# 105 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhsv.h" 1
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhsv.h"
extern "C" {
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkhsv.h"
typedef struct _GtkHSV GtkHSV;
typedef struct _GtkHSVClass GtkHSVClass;

struct _GtkHSV
{
 GtkWidget parent_instance;


 gpointer priv;
};

struct _GtkHSVClass
{
 GtkWidgetClass parent_class;


 void (* changed) (GtkHSV *hsv);


 void (* move) (GtkHSV *hsv,
                   GtkDirectionType type);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_hsv_get_type (void) __attribute__((__const__));
GtkWidget* gtk_hsv_new (void);
void gtk_hsv_set_color (GtkHSV *hsv,
    double h,
    double s,
    double v);
void gtk_hsv_get_color (GtkHSV *hsv,
    gdouble *h,
    gdouble *s,
    gdouble *v);
void gtk_hsv_set_metrics (GtkHSV *hsv,
    gint size,
    gint ring_width);
void gtk_hsv_get_metrics (GtkHSV *hsv,
    gint *size,
    gint *ring_width);
gboolean gtk_hsv_is_adjusting (GtkHSV *hsv);


void gtk_hsv_to_rgb (gdouble h,
    gdouble s,
    gdouble v,
    gdouble *r,
    gdouble *g,
    gdouble *b);
void gtk_rgb_to_hsv (gdouble r,
    gdouble g,
    gdouble b,
    gdouble *h,
    gdouble *s,
    gdouble *v);

}
# 106 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkiconfactory.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkiconfactory.h"
extern "C" {

typedef struct _GtkIconFactoryClass GtkIconFactoryClass;
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkiconfactory.h"
struct _GtkIconFactory
{
 GObject parent_instance;

 GHashTable *icons;
};

struct _GtkIconFactoryClass
{
 GObjectClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};







GType gtk_icon_factory_get_type (void) __attribute__((__const__));
GtkIconFactory* gtk_icon_factory_new (void);
void gtk_icon_factory_add (GtkIconFactory *factory,
                                          const gchar *stock_id,
                                          GtkIconSet *icon_set);
GtkIconSet* gtk_icon_factory_lookup (GtkIconFactory *factory,
                                          const gchar *stock_id);



void gtk_icon_factory_add_default (GtkIconFactory *factory);
void gtk_icon_factory_remove_default (GtkIconFactory *factory);
GtkIconSet* gtk_icon_factory_lookup_default (const gchar *stock_id);
# 100 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkiconfactory.h"
gboolean gtk_icon_size_lookup (GtkIconSize size,
        gint *width,
        gint *height);

gboolean gtk_icon_size_lookup_for_settings (GtkSettings *settings,
        GtkIconSize size,
        gint *width,
        gint *height);

GtkIconSize gtk_icon_size_register (const gchar *name,
                                                   gint width,
                                                   gint height);
void gtk_icon_size_register_alias (const gchar *alias,
                                                   GtkIconSize target);
GtkIconSize gtk_icon_size_from_name (const gchar *name);
const gchar * gtk_icon_size_get_name (GtkIconSize size);



GType gtk_icon_set_get_type (void) __attribute__((__const__));
GtkIconSet* gtk_icon_set_new (void);
GtkIconSet* gtk_icon_set_new_from_pixbuf (GdkPixbuf *pixbuf);

GtkIconSet* gtk_icon_set_ref (GtkIconSet *icon_set);
void gtk_icon_set_unref (GtkIconSet *icon_set);
GtkIconSet* gtk_icon_set_copy (GtkIconSet *icon_set);




GdkPixbuf* gtk_icon_set_render_icon (GtkIconSet *icon_set,
                                         GtkStyle *style,
                                         GtkTextDirection direction,
                                         GtkStateType state,
                                         GtkIconSize size,
                                         GtkWidget *widget,
                                         const char *detail);


void gtk_icon_set_add_source (GtkIconSet *icon_set,
                                         const GtkIconSource *source);

void gtk_icon_set_get_sizes (GtkIconSet *icon_set,
                                         GtkIconSize **sizes,
                                         gint *n_sizes);

GType gtk_icon_source_get_type (void) __attribute__((__const__));
GtkIconSource* gtk_icon_source_new (void);
GtkIconSource* gtk_icon_source_copy (const GtkIconSource *source);
void gtk_icon_source_free (GtkIconSource *source);

void gtk_icon_source_set_filename (GtkIconSource *source,
                                                        const gchar *filename);
void gtk_icon_source_set_icon_name (GtkIconSource *source,
                                                        const gchar *icon_name);
void gtk_icon_source_set_pixbuf (GtkIconSource *source,
                                                        GdkPixbuf *pixbuf);

const gchar* gtk_icon_source_get_filename (const GtkIconSource *source);
const gchar* gtk_icon_source_get_icon_name (const GtkIconSource *source);
GdkPixbuf* gtk_icon_source_get_pixbuf (const GtkIconSource *source);

void gtk_icon_source_set_direction_wildcarded (GtkIconSource *source,
                                                          gboolean setting);
void gtk_icon_source_set_state_wildcarded (GtkIconSource *source,
                                                          gboolean setting);
void gtk_icon_source_set_size_wildcarded (GtkIconSource *source,
                                                          gboolean setting);
gboolean gtk_icon_source_get_size_wildcarded (const GtkIconSource *source);
gboolean gtk_icon_source_get_state_wildcarded (const GtkIconSource *source);
gboolean gtk_icon_source_get_direction_wildcarded (const GtkIconSource *source);
void gtk_icon_source_set_direction (GtkIconSource *source,
                                                          GtkTextDirection direction);
void gtk_icon_source_set_state (GtkIconSource *source,
                                                          GtkStateType state);
void gtk_icon_source_set_size (GtkIconSource *source,
                                                          GtkIconSize size);
GtkTextDirection gtk_icon_source_get_direction (const GtkIconSource *source);
GtkStateType gtk_icon_source_get_state (const GtkIconSource *source);
GtkIconSize gtk_icon_source_get_size (const GtkIconSource *source);



void _gtk_icon_set_invalidate_caches (void);
GList* _gtk_icon_factory_list_ids (void);
void _gtk_icon_factory_ensure_default_icons (void);

}
# 107 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkicontheme.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkicontheme.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkicontheme.h"
typedef struct _GtkIconInfo GtkIconInfo;
typedef struct _GtkIconTheme GtkIconTheme;
typedef struct _GtkIconThemeClass GtkIconThemeClass;
typedef struct _GtkIconThemePrivate GtkIconThemePrivate;

struct _GtkIconTheme
{

 GObject parent_instance;

 GtkIconThemePrivate *priv;
};

struct _GtkIconThemeClass
{
 GObjectClass parent_class;

 void (* changed) (GtkIconTheme *icon_theme);
};
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkicontheme.h"
typedef enum
{
 GTK_ICON_LOOKUP_NO_SVG = 1 << 0,
 GTK_ICON_LOOKUP_FORCE_SVG = 1 << 1,
 GTK_ICON_LOOKUP_USE_BUILTIN = 1 << 2,
 GTK_ICON_LOOKUP_GENERIC_FALLBACK = 1 << 3,
 GTK_ICON_LOOKUP_FORCE_SIZE = 1 << 4
} GtkIconLookupFlags;
# 98 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkicontheme.h"
typedef enum {
 GTK_ICON_THEME_NOT_FOUND,
 GTK_ICON_THEME_FAILED
} GtkIconThemeError;

GQuark gtk_icon_theme_error_quark (void);
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkicontheme.h"
GType gtk_icon_theme_get_type (void) __attribute__((__const__));

GtkIconTheme *gtk_icon_theme_new (void);
GtkIconTheme *gtk_icon_theme_get_default (void);
GtkIconTheme *gtk_icon_theme_get_for_screen (GdkScreen *screen);
void gtk_icon_theme_set_screen (GtkIconTheme *icon_theme,
         GdkScreen *screen);

void gtk_icon_theme_set_search_path (GtkIconTheme *icon_theme,
         const gchar *path[],
         gint n_elements);
void gtk_icon_theme_get_search_path (GtkIconTheme *icon_theme,
         gchar **path[],
         gint *n_elements);
void gtk_icon_theme_append_search_path (GtkIconTheme *icon_theme,
         const gchar *path);
void gtk_icon_theme_prepend_search_path (GtkIconTheme *icon_theme,
         const gchar *path);

void gtk_icon_theme_set_custom_theme (GtkIconTheme *icon_theme,
         const gchar *theme_name);

gboolean gtk_icon_theme_has_icon (GtkIconTheme *icon_theme,
         const gchar *icon_name);
gint *gtk_icon_theme_get_icon_sizes (GtkIconTheme *icon_theme,
         const gchar *icon_name);
GtkIconInfo * gtk_icon_theme_lookup_icon (GtkIconTheme *icon_theme,
         const gchar *icon_name,
         gint size,
         GtkIconLookupFlags flags);
GtkIconInfo * gtk_icon_theme_choose_icon (GtkIconTheme *icon_theme,
         const gchar *icon_names[],
         gint size,
         GtkIconLookupFlags flags);
GdkPixbuf * gtk_icon_theme_load_icon (GtkIconTheme *icon_theme,
         const gchar *icon_name,
         gint size,
         GtkIconLookupFlags flags,
         GError **error);

GtkIconInfo * gtk_icon_theme_lookup_by_gicon (GtkIconTheme *icon_theme,
                                                   GIcon *icon,
                                                   gint size,
                                                   GtkIconLookupFlags flags);

GList * gtk_icon_theme_list_icons (GtkIconTheme *icon_theme,
         const gchar *context);
GList * gtk_icon_theme_list_contexts (GtkIconTheme *icon_theme);
char * gtk_icon_theme_get_example_icon_name (GtkIconTheme *icon_theme);

gboolean gtk_icon_theme_rescan_if_needed (GtkIconTheme *icon_theme);

void gtk_icon_theme_add_builtin_icon (const gchar *icon_name,
                gint size,
                GdkPixbuf *pixbuf);

GType gtk_icon_info_get_type (void) __attribute__((__const__));
GtkIconInfo * gtk_icon_info_copy (GtkIconInfo *icon_info);
void gtk_icon_info_free (GtkIconInfo *icon_info);

GtkIconInfo * gtk_icon_info_new_for_pixbuf (GtkIconTheme *icon_theme,
                                                       GdkPixbuf *pixbuf);

gint gtk_icon_info_get_base_size (GtkIconInfo *icon_info);
const gchar * gtk_icon_info_get_filename (GtkIconInfo *icon_info);
GdkPixbuf * gtk_icon_info_get_builtin_pixbuf (GtkIconInfo *icon_info);
GdkPixbuf * gtk_icon_info_load_icon (GtkIconInfo *icon_info,
      GError **error);
void gtk_icon_info_set_raw_coordinates (GtkIconInfo *icon_info,
       gboolean raw_coordinates);

gboolean gtk_icon_info_get_embedded_rect (GtkIconInfo *icon_info,
            GdkRectangle *rectangle);
gboolean gtk_icon_info_get_attach_points (GtkIconInfo *icon_info,
            GdkPoint **points,
            gint *n_points);
const gchar * gtk_icon_info_get_display_name (GtkIconInfo *icon_info);


void _gtk_icon_theme_check_reload (GdkDisplay *display);
void _gtk_icon_theme_ensure_builtin_cache (void);

}
# 108 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkiconview.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkiconview.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktooltip.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktooltip.h"
extern "C" {





GType gtk_tooltip_get_type (void);

void gtk_tooltip_set_markup (GtkTooltip *tooltip,
                                         const gchar *markup);
void gtk_tooltip_set_text (GtkTooltip *tooltip,
                                         const gchar *text);
void gtk_tooltip_set_icon (GtkTooltip *tooltip,
                                         GdkPixbuf *pixbuf);
void gtk_tooltip_set_icon_from_stock (GtkTooltip *tooltip,
                                         const gchar *stock_id,
                                         GtkIconSize size);
void gtk_tooltip_set_icon_from_icon_name (GtkTooltip *tooltip,
             const gchar *icon_name,
             GtkIconSize size);
void gtk_tooltip_set_icon_from_gicon (GtkTooltip *tooltip,
      GIcon *gicon,
      GtkIconSize size);
void gtk_tooltip_set_custom (GtkTooltip *tooltip,
                                         GtkWidget *custom_widget);

void gtk_tooltip_set_tip_area (GtkTooltip *tooltip,
                                         const GdkRectangle *rect);

void gtk_tooltip_trigger_tooltip_query (GdkDisplay *display);


void _gtk_tooltip_focus_in (GtkWidget *widget);
void _gtk_tooltip_focus_out (GtkWidget *widget);
void _gtk_tooltip_toggle_keyboard_mode (GtkWidget *widget);
void _gtk_tooltip_handle_event (GdkEvent *event);
void _gtk_tooltip_hide (GtkWidget *widget);

GtkWidget * _gtk_widget_find_at_coords (GdkWindow *window,
                                         gint window_x,
                                         gint window_y,
                                         gint *widget_x,
                                         gint *widget_y);

}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkiconview.h" 2

extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkiconview.h"
typedef struct _GtkIconView GtkIconView;
typedef struct _GtkIconViewClass GtkIconViewClass;
typedef struct _GtkIconViewPrivate GtkIconViewPrivate;

typedef void (* GtkIconViewForeachFunc) (GtkIconView *icon_view,
         GtkTreePath *path,
         gpointer data);

typedef enum
{
 GTK_ICON_VIEW_NO_DROP,
 GTK_ICON_VIEW_DROP_INTO,
 GTK_ICON_VIEW_DROP_LEFT,
 GTK_ICON_VIEW_DROP_RIGHT,
 GTK_ICON_VIEW_DROP_ABOVE,
 GTK_ICON_VIEW_DROP_BELOW
} GtkIconViewDropPosition;

struct _GtkIconView
{
 GtkContainer parent;

 GtkIconViewPrivate *priv;
};

struct _GtkIconViewClass
{
 GtkContainerClass parent_class;

 void (* set_scroll_adjustments) (GtkIconView *icon_view,
         GtkAdjustment *hadjustment,
         GtkAdjustment *vadjustment);

 void (* item_activated) (GtkIconView *icon_view,
         GtkTreePath *path);
 void (* selection_changed) (GtkIconView *icon_view);


 void (* select_all) (GtkIconView *icon_view);
 void (* unselect_all) (GtkIconView *icon_view);
 void (* select_cursor_item) (GtkIconView *icon_view);
 void (* toggle_cursor_item) (GtkIconView *icon_view);
 gboolean (* move_cursor) (GtkIconView *icon_view,
         GtkMovementStep step,
         gint count);
 gboolean (* activate_cursor_item) (GtkIconView *icon_view);
};

GType gtk_icon_view_get_type (void) __attribute__((__const__));
GtkWidget * gtk_icon_view_new (void);
GtkWidget * gtk_icon_view_new_with_model (GtkTreeModel *model);

void gtk_icon_view_set_model (GtkIconView *icon_view,
             GtkTreeModel *model);
GtkTreeModel * gtk_icon_view_get_model (GtkIconView *icon_view);
void gtk_icon_view_set_text_column (GtkIconView *icon_view,
              gint column);
gint gtk_icon_view_get_text_column (GtkIconView *icon_view);
void gtk_icon_view_set_markup_column (GtkIconView *icon_view,
            gint column);
gint gtk_icon_view_get_markup_column (GtkIconView *icon_view);
void gtk_icon_view_set_pixbuf_column (GtkIconView *icon_view,
            gint column);
gint gtk_icon_view_get_pixbuf_column (GtkIconView *icon_view);

void gtk_icon_view_set_orientation (GtkIconView *icon_view,
                      GtkOrientation orientation);
GtkOrientation gtk_icon_view_get_orientation (GtkIconView *icon_view);
void gtk_icon_view_set_item_orientation (GtkIconView *icon_view,
                         GtkOrientation orientation);
GtkOrientation gtk_icon_view_get_item_orientation (GtkIconView *icon_view);
void gtk_icon_view_set_columns (GtkIconView *icon_view,
             gint columns);
gint gtk_icon_view_get_columns (GtkIconView *icon_view);
void gtk_icon_view_set_item_width (GtkIconView *icon_view,
            gint item_width);
gint gtk_icon_view_get_item_width (GtkIconView *icon_view);
void gtk_icon_view_set_spacing (GtkIconView *icon_view,
             gint spacing);
gint gtk_icon_view_get_spacing (GtkIconView *icon_view);
void gtk_icon_view_set_row_spacing (GtkIconView *icon_view,
            gint row_spacing);
gint gtk_icon_view_get_row_spacing (GtkIconView *icon_view);
void gtk_icon_view_set_column_spacing (GtkIconView *icon_view,
            gint column_spacing);
gint gtk_icon_view_get_column_spacing (GtkIconView *icon_view);
void gtk_icon_view_set_margin (GtkIconView *icon_view,
            gint margin);
gint gtk_icon_view_get_margin (GtkIconView *icon_view);
void gtk_icon_view_set_item_padding (GtkIconView *icon_view,
            gint item_padding);
gint gtk_icon_view_get_item_padding (GtkIconView *icon_view);


GtkTreePath * gtk_icon_view_get_path_at_pos (GtkIconView *icon_view,
     gint x,
     gint y);
gboolean gtk_icon_view_get_item_at_pos (GtkIconView *icon_view,
     gint x,
     gint y,
     GtkTreePath **path,
     GtkCellRenderer **cell);
gboolean gtk_icon_view_get_visible_range (GtkIconView *icon_view,
     GtkTreePath **start_path,
     GtkTreePath **end_path);

void gtk_icon_view_selected_foreach (GtkIconView *icon_view,
      GtkIconViewForeachFunc func,
      gpointer data);
void gtk_icon_view_set_selection_mode (GtkIconView *icon_view,
      GtkSelectionMode mode);
GtkSelectionMode gtk_icon_view_get_selection_mode (GtkIconView *icon_view);
void gtk_icon_view_select_path (GtkIconView *icon_view,
        GtkTreePath *path);
void gtk_icon_view_unselect_path (GtkIconView *icon_view,
        GtkTreePath *path);
gboolean gtk_icon_view_path_is_selected (GtkIconView *icon_view,
        GtkTreePath *path);
gint gtk_icon_view_get_item_row (GtkIconView *icon_view,
                                                  GtkTreePath *path);
gint gtk_icon_view_get_item_column (GtkIconView *icon_view,
                                                  GtkTreePath *path);
GList *gtk_icon_view_get_selected_items (GtkIconView *icon_view);
void gtk_icon_view_select_all (GtkIconView *icon_view);
void gtk_icon_view_unselect_all (GtkIconView *icon_view);
void gtk_icon_view_item_activated (GtkIconView *icon_view,
        GtkTreePath *path);
void gtk_icon_view_set_cursor (GtkIconView *icon_view,
        GtkTreePath *path,
        GtkCellRenderer *cell,
        gboolean start_editing);
gboolean gtk_icon_view_get_cursor (GtkIconView *icon_view,
        GtkTreePath **path,
        GtkCellRenderer **cell);
void gtk_icon_view_scroll_to_path (GtkIconView *icon_view,
                                                  GtkTreePath *path,
        gboolean use_align,
        gfloat row_align,
                                                  gfloat col_align);


void gtk_icon_view_enable_model_drag_source (GtkIconView *icon_view,
             GdkModifierType start_button_mask,
             const GtkTargetEntry *targets,
             gint n_targets,
             GdkDragAction actions);
void gtk_icon_view_enable_model_drag_dest (GtkIconView *icon_view,
             const GtkTargetEntry *targets,
             gint n_targets,
             GdkDragAction actions);
void gtk_icon_view_unset_model_drag_source (GtkIconView *icon_view);
void gtk_icon_view_unset_model_drag_dest (GtkIconView *icon_view);
void gtk_icon_view_set_reorderable (GtkIconView *icon_view,
             gboolean reorderable);
gboolean gtk_icon_view_get_reorderable (GtkIconView *icon_view);



void gtk_icon_view_set_drag_dest_item (GtkIconView *icon_view,
             GtkTreePath *path,
             GtkIconViewDropPosition pos);
void gtk_icon_view_get_drag_dest_item (GtkIconView *icon_view,
             GtkTreePath **path,
             GtkIconViewDropPosition *pos);
gboolean gtk_icon_view_get_dest_item_at_pos (GtkIconView *icon_view,
             gint drag_x,
             gint drag_y,
             GtkTreePath **path,
             GtkIconViewDropPosition *pos);
GdkPixmap *gtk_icon_view_create_drag_icon (GtkIconView *icon_view,
             GtkTreePath *path);

void gtk_icon_view_convert_widget_to_bin_window_coords (GtkIconView *icon_view,
                                                              gint wx,
                                                              gint wy,
                                                              gint *bx,
                                                              gint *by);


void gtk_icon_view_set_tooltip_item (GtkIconView *icon_view,
                                                              GtkTooltip *tooltip,
                                                              GtkTreePath *path);
void gtk_icon_view_set_tooltip_cell (GtkIconView *icon_view,
                                                              GtkTooltip *tooltip,
                                                              GtkTreePath *path,
                                                              GtkCellRenderer *cell);
gboolean gtk_icon_view_get_tooltip_context (GtkIconView *icon_view,
                                                              gint *x,
                                                              gint *y,
                                                              gboolean keyboard_tip,
                                                              GtkTreeModel **model,
                                                              GtkTreePath **path,
                                                              GtkTreeIter *iter);
void gtk_icon_view_set_tooltip_column (GtkIconView *icon_view,
                                                              gint column);
gint gtk_icon_view_get_tooltip_column (GtkIconView *icon_view);


}
# 109 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimagemenuitem.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimagemenuitem.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimagemenuitem.h"
typedef struct _GtkImageMenuItem GtkImageMenuItem;
typedef struct _GtkImageMenuItemClass GtkImageMenuItemClass;

struct _GtkImageMenuItem
{
 GtkMenuItem menu_item;


 GtkWidget *image;

};

struct _GtkImageMenuItemClass
{
 GtkMenuItemClass parent_class;
};


GType gtk_image_menu_item_get_type (void) __attribute__((__const__));
GtkWidget* gtk_image_menu_item_new (void);
GtkWidget* gtk_image_menu_item_new_with_label (const gchar *label);
GtkWidget* gtk_image_menu_item_new_with_mnemonic (const gchar *label);
GtkWidget* gtk_image_menu_item_new_from_stock (const gchar *stock_id,
                                                 GtkAccelGroup *accel_group);
void gtk_image_menu_item_set_always_show_image (GtkImageMenuItem *image_menu_item,
                                                     gboolean always_show);
gboolean gtk_image_menu_item_get_always_show_image (GtkImageMenuItem *image_menu_item);
void gtk_image_menu_item_set_image (GtkImageMenuItem *image_menu_item,
                                                 GtkWidget *image);
GtkWidget* gtk_image_menu_item_get_image (GtkImageMenuItem *image_menu_item);
void gtk_image_menu_item_set_use_stock (GtkImageMenuItem *image_menu_item,
       gboolean use_stock);
gboolean gtk_image_menu_item_get_use_stock (GtkImageMenuItem *image_menu_item);
void gtk_image_menu_item_set_accel_group (GtkImageMenuItem *image_menu_item,
       GtkAccelGroup *accel_group);

}
# 111 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimcontextsimple.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimcontextsimple.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimcontextsimple.h"
typedef struct _GtkIMContextSimple GtkIMContextSimple;
typedef struct _GtkIMContextSimpleClass GtkIMContextSimpleClass;



struct _GtkIMContextSimple
{
 GtkIMContext object;

 GSList *tables;

 guint compose_buffer[7 + 1];
 gunichar tentative_match;
 gint tentative_match_len;

 guint in_hex_sequence : 1;
 guint modifiers_dropped : 1;
};

struct _GtkIMContextSimpleClass
{
 GtkIMContextClass parent_class;
};

GType gtk_im_context_simple_get_type (void) __attribute__((__const__));
GtkIMContext *gtk_im_context_simple_new (void);

void gtk_im_context_simple_add_table (GtkIMContextSimple *context_simple,
           guint16 *data,
           gint max_seq_len,
           gint n_seqs);


}
# 113 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimmulticontext.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimmulticontext.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkimmulticontext.h"
typedef struct _GtkIMMulticontext GtkIMMulticontext;
typedef struct _GtkIMMulticontextClass GtkIMMulticontextClass;
typedef struct _GtkIMMulticontextPrivate GtkIMMulticontextPrivate;

struct _GtkIMMulticontext
{
 GtkIMContext object;

 GtkIMContext *slave;

 GtkIMMulticontextPrivate *priv;

 gchar *context_id;
};

struct _GtkIMMulticontextClass
{
 GtkIMContextClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_im_multicontext_get_type (void) __attribute__((__const__));
GtkIMContext *gtk_im_multicontext_new (void);

void gtk_im_multicontext_append_menuitems (GtkIMMulticontext *context,
         GtkMenuShell *menushell);
const char * gtk_im_multicontext_get_context_id (GtkIMMulticontext *context);

void gtk_im_multicontext_set_context_id (GtkIMMulticontext *context,
                                                   const char *context_id);

}
# 114 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkinfobar.h" 1
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkinfobar.h"
extern "C" {
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkinfobar.h"
typedef struct _GtkInfoBarPrivate GtkInfoBarPrivate;
typedef struct _GtkInfoBarClass GtkInfoBarClass;
typedef struct _GtkInfoBar GtkInfoBar;


struct _GtkInfoBar
{
 GtkHBox parent;


 GtkInfoBarPrivate *priv;
};


struct _GtkInfoBarClass
{
 GtkHBoxClass parent_class;


 void (* response) (GtkInfoBar *info_bar, gint response_id);


 void (* close) (GtkInfoBar *info_bar);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
 void (*_gtk_reserved6) (void);
};

GType gtk_info_bar_get_type (void) __attribute__((__const__));
GtkWidget *gtk_info_bar_new (void);

GtkWidget *gtk_info_bar_new_with_buttons (const gchar *first_button_text,
                                                   ...);

GtkWidget *gtk_info_bar_get_action_area (GtkInfoBar *info_bar);
GtkWidget *gtk_info_bar_get_content_area (GtkInfoBar *info_bar);
void gtk_info_bar_add_action_widget (GtkInfoBar *info_bar,
                                                   GtkWidget *child,
                                                   gint response_id);
GtkWidget *gtk_info_bar_add_button (GtkInfoBar *info_bar,
                                                   const gchar *button_text,
                                                   gint response_id);
void gtk_info_bar_add_buttons (GtkInfoBar *info_bar,
                                                   const gchar *first_button_text,
                                                   ...);
void gtk_info_bar_set_response_sensitive (GtkInfoBar *info_bar,
                                                   gint response_id,
                                                   gboolean setting);
void gtk_info_bar_set_default_response (GtkInfoBar *info_bar,
                                                   gint response_id);


void gtk_info_bar_response (GtkInfoBar *info_bar,
                                                   gint response_id);

void gtk_info_bar_set_message_type (GtkInfoBar *info_bar,
                                                   GtkMessageType message_type);
GtkMessageType gtk_info_bar_get_message_type (GtkInfoBar *info_bar);

}
# 115 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkinvisible.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkinvisible.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkinvisible.h"
typedef struct _GtkInvisible GtkInvisible;
typedef struct _GtkInvisibleClass GtkInvisibleClass;

struct _GtkInvisible
{
 GtkWidget widget;

 gboolean has_user_ref_count;
 GdkScreen *screen;
};

struct _GtkInvisibleClass
{
 GtkWidgetClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_invisible_get_type (void) __attribute__((__const__));

GtkWidget* gtk_invisible_new (void);
GtkWidget* gtk_invisible_new_for_screen (GdkScreen *screen);
void gtk_invisible_set_screen (GtkInvisible *invisible,
     GdkScreen *screen);
GdkScreen* gtk_invisible_get_screen (GtkInvisible *invisible);

}
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklayout.h" 1
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklayout.h"
extern "C" {
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklayout.h"
typedef struct _GtkLayout GtkLayout;
typedef struct _GtkLayoutClass GtkLayoutClass;

struct _GtkLayout
{
 GtkContainer container;

 GList *children;

 guint width;
 guint height;

 GtkAdjustment *hadjustment;
 GtkAdjustment *vadjustment;


 GdkWindow *bin_window;


 GdkVisibilityState visibility;
 gint scroll_x;
 gint scroll_y;

 guint freeze_count;
};

struct _GtkLayoutClass
{
 GtkContainerClass parent_class;

 void (*set_scroll_adjustments) (GtkLayout *layout,
        GtkAdjustment *hadjustment,
        GtkAdjustment *vadjustment);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_layout_get_type (void) __attribute__((__const__));
GtkWidget* gtk_layout_new (GtkAdjustment *hadjustment,
              GtkAdjustment *vadjustment);
GdkWindow* gtk_layout_get_bin_window (GtkLayout *layout);
void gtk_layout_put (GtkLayout *layout,
                            GtkWidget *child_widget,
                            gint x,
                            gint y);

void gtk_layout_move (GtkLayout *layout,
                            GtkWidget *child_widget,
                            gint x,
                            gint y);

void gtk_layout_set_size (GtkLayout *layout,
                     guint width,
                     guint height);
void gtk_layout_get_size (GtkLayout *layout,
       guint *width,
       guint *height);

GtkAdjustment* gtk_layout_get_hadjustment (GtkLayout *layout);
GtkAdjustment* gtk_layout_get_vadjustment (GtkLayout *layout);
void gtk_layout_set_hadjustment (GtkLayout *layout,
       GtkAdjustment *adjustment);
void gtk_layout_set_vadjustment (GtkLayout *layout,
       GtkAdjustment *adjustment);
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklayout.h"
void gtk_layout_freeze (GtkLayout *layout);
void gtk_layout_thaw (GtkLayout *layout);


}
# 119 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklinkbutton.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklinkbutton.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklinkbutton.h"
typedef struct _GtkLinkButton GtkLinkButton;
typedef struct _GtkLinkButtonClass GtkLinkButtonClass;
typedef struct _GtkLinkButtonPrivate GtkLinkButtonPrivate;

typedef void (*GtkLinkButtonUriFunc) (GtkLinkButton *button,
         const gchar *link_,
         gpointer user_data);

struct _GtkLinkButton
{
 GtkButton parent_instance;

 GtkLinkButtonPrivate *priv;
};

struct _GtkLinkButtonClass
{
 GtkButtonClass parent_class;

 void (*_gtk_padding1) (void);
 void (*_gtk_padding2) (void);
 void (*_gtk_padding3) (void);
 void (*_gtk_padding4) (void);
};

GType gtk_link_button_get_type (void) __attribute__((__const__));

GtkWidget * gtk_link_button_new (const gchar *uri);
GtkWidget * gtk_link_button_new_with_label (const gchar *uri,
              const gchar *label);

const gchar * gtk_link_button_get_uri (GtkLinkButton *link_button);
void gtk_link_button_set_uri (GtkLinkButton *link_button,
              const gchar *uri);


GtkLinkButtonUriFunc gtk_link_button_set_uri_hook (GtkLinkButtonUriFunc func,
       gpointer data,
       GDestroyNotify destroy);


gboolean gtk_link_button_get_visited (GtkLinkButton *link_button);
void gtk_link_button_set_visited (GtkLinkButton *link_button,
                                                        gboolean visited);


}
# 120 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmain.h" 1
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmain.h"
extern "C" {
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmain.h"
typedef gint (*GtkKeySnoopFunc) (GtkWidget *grab_widget,
         GdkEventKey *event,
         gpointer func_data);
# 78 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmain.h"
extern const guint gtk_major_version;
extern const guint gtk_minor_version;
extern const guint gtk_micro_version;
extern const guint gtk_binary_age;
extern const guint gtk_interface_age;
const gchar* gtk_check_version (guint required_major,
          guint required_minor,
          guint required_micro);





gboolean gtk_parse_args (int *argc,
      char ***argv);

void gtk_init (int *argc,
                                  char ***argv);

gboolean gtk_init_check (int *argc,
                                  char ***argv);

gboolean gtk_init_with_args (int *argc,
      char ***argv,
      const char *parameter_string,
      GOptionEntry *entries,
      const char *translation_domain,
      GError **error);

GOptionGroup *gtk_get_option_group (gboolean open_default_display);
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmain.h"
void gtk_exit (gint error_code);
gchar * gtk_set_locale (void);


void gtk_disable_setlocale (void);
PangoLanguage *gtk_get_default_language (void);
gboolean gtk_events_pending (void);





void gtk_main_do_event (GdkEvent *event);

void gtk_main (void);
guint gtk_main_level (void);
void gtk_main_quit (void);
gboolean gtk_main_iteration (void);

gboolean gtk_main_iteration_do (gboolean blocking);

gboolean gtk_true (void) __attribute__((__const__));
gboolean gtk_false (void) __attribute__((__const__));

void gtk_grab_add (GtkWidget *widget);
GtkWidget* gtk_grab_get_current (void);
void gtk_grab_remove (GtkWidget *widget);


void gtk_init_add (GtkFunction function,
       gpointer data);
void gtk_quit_add_destroy (guint main_level,
       GtkObject *object);
guint gtk_quit_add (guint main_level,
       GtkFunction function,
       gpointer data);
guint gtk_quit_add_full (guint main_level,
       GtkFunction function,
       GtkCallbackMarshal marshal,
       gpointer data,
       GDestroyNotify destroy);
void gtk_quit_remove (guint quit_handler_id);
void gtk_quit_remove_by_data (gpointer data);
guint gtk_timeout_add (guint32 interval,
       GtkFunction function,
       gpointer data);
guint gtk_timeout_add_full (guint32 interval,
       GtkFunction function,
       GtkCallbackMarshal marshal,
       gpointer data,
       GDestroyNotify destroy);
void gtk_timeout_remove (guint timeout_handler_id);

guint gtk_idle_add (GtkFunction function,
       gpointer data);
guint gtk_idle_add_priority (gint priority,
       GtkFunction function,
       gpointer data);
guint gtk_idle_add_full (gint priority,
       GtkFunction function,
       GtkCallbackMarshal marshal,
       gpointer data,
       GDestroyNotify destroy);
void gtk_idle_remove (guint idle_handler_id);
void gtk_idle_remove_by_data (gpointer data);
guint gtk_input_add_full (gint source,
       GdkInputCondition condition,
       GdkInputFunction function,
       GtkCallbackMarshal marshal,
       gpointer data,
       GDestroyNotify destroy);
void gtk_input_remove (guint input_handler_id);


guint gtk_key_snooper_install (GtkKeySnoopFunc snooper,
       gpointer func_data);
void gtk_key_snooper_remove (guint snooper_handler_id);

GdkEvent* gtk_get_current_event (void);
guint32 gtk_get_current_event_time (void);
gboolean gtk_get_current_event_state (GdkModifierType *state);

GtkWidget* gtk_get_event_widget (GdkEvent *event);




void gtk_propagate_event (GtkWidget *widget,
       GdkEvent *event);

gboolean _gtk_boolean_handled_accumulator (GSignalInvocationHint *ihint,
                                  GValue *return_accu,
                                  const GValue *handler_return,
                                  gpointer dummy);

gchar *_gtk_get_lc_ctype (void);

gboolean _gtk_module_has_mixed_deps (GModule *module);


}
# 122 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenubar.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenubar.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenubar.h"
typedef struct _GtkMenuBar GtkMenuBar;
typedef struct _GtkMenuBarClass GtkMenuBarClass;

struct _GtkMenuBar
{
 GtkMenuShell menu_shell;
};

struct _GtkMenuBarClass
{
 GtkMenuShellClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_menu_bar_get_type (void) __attribute__((__const__));
GtkWidget* gtk_menu_bar_new (void);

GtkPackDirection gtk_menu_bar_get_pack_direction (GtkMenuBar *menubar);
void gtk_menu_bar_set_pack_direction (GtkMenuBar *menubar,
       GtkPackDirection pack_dir);
GtkPackDirection gtk_menu_bar_get_child_pack_direction (GtkMenuBar *menubar);
void gtk_menu_bar_set_child_pack_direction (GtkMenuBar *menubar,
      GtkPackDirection child_pack_dir);
# 85 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenubar.h"
void _gtk_menu_bar_cycle_focus (GtkMenuBar *menubar,
   GtkDirectionType dir);


}
# 124 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenutoolbutton.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenutoolbutton.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbutton.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbutton.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolitem.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolitem.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktooltips.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktooltips.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktooltips.h"
typedef struct _GtkTooltips GtkTooltips;
typedef struct _GtkTooltipsClass GtkTooltipsClass;
typedef struct _GtkTooltipsData GtkTooltipsData;

struct _GtkTooltipsData
{
 GtkTooltips *tooltips;
 GtkWidget *widget;
 gchar *tip_text;
 gchar *tip_private;
};

struct _GtkTooltips
{
 GtkObject parent_instance;


 GtkWidget *tip_window;
 GtkWidget *tip_label;
 GtkTooltipsData *active_tips_data;
 GList *tips_data_list;

 guint delay : 30;
 guint enabled : 1;
 guint have_grab : 1;
 guint use_sticky_delay : 1;
 gint timer_tag;
 GTimeVal last_popdown;
};

struct _GtkTooltipsClass
{
 GtkObjectClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_tooltips_get_type (void) __attribute__((__const__));
GtkTooltips* gtk_tooltips_new (void);

void gtk_tooltips_enable (GtkTooltips *tooltips);
void gtk_tooltips_disable (GtkTooltips *tooltips);
void gtk_tooltips_set_delay (GtkTooltips *tooltips,
        guint delay);
void gtk_tooltips_set_tip (GtkTooltips *tooltips,
        GtkWidget *widget,
        const gchar *tip_text,
        const gchar *tip_private);
GtkTooltipsData* gtk_tooltips_data_get (GtkWidget *widget);
void gtk_tooltips_force_window (GtkTooltips *tooltips);

gboolean gtk_tooltips_get_info_from_tip_window (GtkWindow *tip_window,
                                                       GtkTooltips **tooltips,
                                                       GtkWidget **current_widget);

}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolitem.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksizegroup.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksizegroup.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksizegroup.h"
typedef struct _GtkSizeGroup GtkSizeGroup;
typedef struct _GtkSizeGroupClass GtkSizeGroupClass;

struct _GtkSizeGroup
{
 GObject parent_instance;


 GSList *widgets;

 guint8 mode;

 guint have_width : 1;
 guint have_height : 1;
 guint ignore_hidden : 1;

 GtkRequisition requisition;
};

struct _GtkSizeGroupClass
{
 GObjectClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};
# 80 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksizegroup.h"
typedef enum {
 GTK_SIZE_GROUP_NONE,
 GTK_SIZE_GROUP_HORIZONTAL,
 GTK_SIZE_GROUP_VERTICAL,
 GTK_SIZE_GROUP_BOTH
} GtkSizeGroupMode;

GType gtk_size_group_get_type (void) __attribute__((__const__));

GtkSizeGroup * gtk_size_group_new (GtkSizeGroupMode mode);
void gtk_size_group_set_mode (GtkSizeGroup *size_group,
           GtkSizeGroupMode mode);
GtkSizeGroupMode gtk_size_group_get_mode (GtkSizeGroup *size_group);
void gtk_size_group_set_ignore_hidden (GtkSizeGroup *size_group,
        gboolean ignore_hidden);
gboolean gtk_size_group_get_ignore_hidden (GtkSizeGroup *size_group);
void gtk_size_group_add_widget (GtkSizeGroup *size_group,
           GtkWidget *widget);
void gtk_size_group_remove_widget (GtkSizeGroup *size_group,
           GtkWidget *widget);
GSList * gtk_size_group_get_widgets (GtkSizeGroup *size_group);


void _gtk_size_group_get_child_requisition (GtkWidget *widget,
        GtkRequisition *requisition);
void _gtk_size_group_compute_requisition (GtkWidget *widget,
        GtkRequisition *requisition);
void _gtk_size_group_queue_resize (GtkWidget *widget);

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolitem.h" 2

extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolitem.h"
typedef struct _GtkToolItem GtkToolItem;
typedef struct _GtkToolItemClass GtkToolItemClass;
typedef struct _GtkToolItemPrivate GtkToolItemPrivate;

struct _GtkToolItem
{
 GtkBin parent;


 GtkToolItemPrivate *priv;
};

struct _GtkToolItemClass
{
 GtkBinClass parent_class;


 gboolean (* create_menu_proxy) (GtkToolItem *tool_item);
 void (* toolbar_reconfigured) (GtkToolItem *tool_item);

 gboolean (* set_tooltip) (GtkToolItem *tool_item,
          GtkTooltips *tooltips,
          const gchar *tip_text,
          const gchar *tip_private);





 void (* _gtk_reserved1) (void);
 void (* _gtk_reserved2) (void);
 void (* _gtk_reserved3) (void);
 void (* _gtk_reserved4) (void);
};

GType gtk_tool_item_get_type (void) __attribute__((__const__));
GtkToolItem *gtk_tool_item_new (void);

void gtk_tool_item_set_homogeneous (GtkToolItem *tool_item,
      gboolean homogeneous);
gboolean gtk_tool_item_get_homogeneous (GtkToolItem *tool_item);

void gtk_tool_item_set_expand (GtkToolItem *tool_item,
      gboolean expand);
gboolean gtk_tool_item_get_expand (GtkToolItem *tool_item);


void gtk_tool_item_set_tooltip (GtkToolItem *tool_item,
      GtkTooltips *tooltips,
      const gchar *tip_text,
      const gchar *tip_private);

void gtk_tool_item_set_tooltip_text (GtkToolItem *tool_item,
      const gchar *text);
void gtk_tool_item_set_tooltip_markup (GtkToolItem *tool_item,
      const gchar *markup);

void gtk_tool_item_set_use_drag_window (GtkToolItem *tool_item,
      gboolean use_drag_window);
gboolean gtk_tool_item_get_use_drag_window (GtkToolItem *tool_item);

void gtk_tool_item_set_visible_horizontal (GtkToolItem *tool_item,
      gboolean visible_horizontal);
gboolean gtk_tool_item_get_visible_horizontal (GtkToolItem *tool_item);

void gtk_tool_item_set_visible_vertical (GtkToolItem *tool_item,
      gboolean visible_vertical);
gboolean gtk_tool_item_get_visible_vertical (GtkToolItem *tool_item);

gboolean gtk_tool_item_get_is_important (GtkToolItem *tool_item);
void gtk_tool_item_set_is_important (GtkToolItem *tool_item,
      gboolean is_important);

PangoEllipsizeMode gtk_tool_item_get_ellipsize_mode (GtkToolItem *tool_item);
GtkIconSize gtk_tool_item_get_icon_size (GtkToolItem *tool_item);
GtkOrientation gtk_tool_item_get_orientation (GtkToolItem *tool_item);
GtkToolbarStyle gtk_tool_item_get_toolbar_style (GtkToolItem *tool_item);
GtkReliefStyle gtk_tool_item_get_relief_style (GtkToolItem *tool_item);
gfloat gtk_tool_item_get_text_alignment (GtkToolItem *tool_item);
GtkOrientation gtk_tool_item_get_text_orientation (GtkToolItem *tool_item);
GtkSizeGroup * gtk_tool_item_get_text_size_group (GtkToolItem *tool_item);

GtkWidget * gtk_tool_item_retrieve_proxy_menu_item (GtkToolItem *tool_item);
GtkWidget * gtk_tool_item_get_proxy_menu_item (GtkToolItem *tool_item,
      const gchar *menu_item_id);
void gtk_tool_item_set_proxy_menu_item (GtkToolItem *tool_item,
      const gchar *menu_item_id,
      GtkWidget *menu_item);
void gtk_tool_item_rebuild_menu (GtkToolItem *tool_item);

void gtk_tool_item_toolbar_reconfigured (GtkToolItem *tool_item);



gboolean _gtk_tool_item_create_menu_proxy (GtkToolItem *tool_item);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbutton.h" 2

extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbutton.h"
typedef struct _GtkToolButton GtkToolButton;
typedef struct _GtkToolButtonClass GtkToolButtonClass;
typedef struct _GtkToolButtonPrivate GtkToolButtonPrivate;

struct _GtkToolButton
{
 GtkToolItem parent;


 GtkToolButtonPrivate *priv;
};

struct _GtkToolButtonClass
{
 GtkToolItemClass parent_class;

 GType button_type;


 void (* clicked) (GtkToolButton *tool_item);


 void (* _gtk_reserved1) (void);
 void (* _gtk_reserved2) (void);
 void (* _gtk_reserved3) (void);
 void (* _gtk_reserved4) (void);
};

GType gtk_tool_button_get_type (void) __attribute__((__const__));
GtkToolItem *gtk_tool_button_new (GtkWidget *icon_widget,
         const gchar *label);
GtkToolItem *gtk_tool_button_new_from_stock (const gchar *stock_id);

void gtk_tool_button_set_label (GtkToolButton *button,
       const gchar *label);
const gchar * gtk_tool_button_get_label (GtkToolButton *button);
void gtk_tool_button_set_use_underline (GtkToolButton *button,
       gboolean use_underline);
gboolean gtk_tool_button_get_use_underline (GtkToolButton *button);
void gtk_tool_button_set_stock_id (GtkToolButton *button,
       const gchar *stock_id);
const gchar * gtk_tool_button_get_stock_id (GtkToolButton *button);
void gtk_tool_button_set_icon_name (GtkToolButton *button,
       const gchar *icon_name);
const gchar * gtk_tool_button_get_icon_name (GtkToolButton *button);
void gtk_tool_button_set_icon_widget (GtkToolButton *button,
       GtkWidget *icon_widget);
GtkWidget * gtk_tool_button_get_icon_widget (GtkToolButton *button);
void gtk_tool_button_set_label_widget (GtkToolButton *button,
       GtkWidget *label_widget);
GtkWidget * gtk_tool_button_get_label_widget (GtkToolButton *button);



GtkWidget *_gtk_tool_button_get_button (GtkToolButton *button);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenutoolbutton.h" 2

extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmenutoolbutton.h"
typedef struct _GtkMenuToolButtonClass GtkMenuToolButtonClass;
typedef struct _GtkMenuToolButton GtkMenuToolButton;
typedef struct _GtkMenuToolButtonPrivate GtkMenuToolButtonPrivate;

struct _GtkMenuToolButton
{
 GtkToolButton parent;


 GtkMenuToolButtonPrivate *priv;
};

struct _GtkMenuToolButtonClass
{
 GtkToolButtonClass parent_class;

 void (*show_menu) (GtkMenuToolButton *button);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_menu_tool_button_get_type (void) __attribute__((__const__));
GtkToolItem *gtk_menu_tool_button_new (GtkWidget *icon_widget,
                                                  const gchar *label);
GtkToolItem *gtk_menu_tool_button_new_from_stock (const gchar *stock_id);

void gtk_menu_tool_button_set_menu (GtkMenuToolButton *button,
                                                  GtkWidget *menu);
GtkWidget *gtk_menu_tool_button_get_menu (GtkMenuToolButton *button);


void gtk_menu_tool_button_set_arrow_tooltip (GtkMenuToolButton *button,
                                                     GtkTooltips *tooltips,
                                                     const gchar *tip_text,
                                                     const gchar *tip_private);


void gtk_menu_tool_button_set_arrow_tooltip_text (GtkMenuToolButton *button,
           const gchar *text);
void gtk_menu_tool_button_set_arrow_tooltip_markup (GtkMenuToolButton *button,
           const gchar *markup);

}
# 127 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmessagedialog.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmessagedialog.h"
extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmessagedialog.h"
typedef struct _GtkMessageDialog GtkMessageDialog;
typedef struct _GtkMessageDialogClass GtkMessageDialogClass;

struct _GtkMessageDialog
{


 GtkDialog parent_instance;

 GtkWidget *image;
 GtkWidget *label;
};

struct _GtkMessageDialogClass
{
 GtkDialogClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};
# 89 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmessagedialog.h"
typedef enum
{
 GTK_BUTTONS_NONE,
 GTK_BUTTONS_OK,
 GTK_BUTTONS_CLOSE,
 GTK_BUTTONS_CANCEL,
 GTK_BUTTONS_YES_NO,
 GTK_BUTTONS_OK_CANCEL
} GtkButtonsType;

GType gtk_message_dialog_get_type (void) __attribute__((__const__));

GtkWidget* gtk_message_dialog_new (GtkWindow *parent,
                                       GtkDialogFlags flags,
                                       GtkMessageType type,
                                       GtkButtonsType buttons,
                                       const gchar *message_format,
                                       ...) __attribute__((__format__ (__printf__, 5, 6)));

GtkWidget* gtk_message_dialog_new_with_markup (GtkWindow *parent,
                                                GtkDialogFlags flags,
                                                GtkMessageType type,
                                                GtkButtonsType buttons,
                                                const gchar *message_format,
                                                ...) __attribute__((__format__ (__printf__, 5, 6)));

void gtk_message_dialog_set_image (GtkMessageDialog *dialog,
        GtkWidget *image);

GtkWidget * gtk_message_dialog_get_image (GtkMessageDialog *dialog);

void gtk_message_dialog_set_markup (GtkMessageDialog *message_dialog,
                                          const gchar *str);

void gtk_message_dialog_format_secondary_text (GtkMessageDialog *message_dialog,
                                                    const gchar *message_format,
                                                    ...) __attribute__((__format__ (__printf__, 2, 3)));

void gtk_message_dialog_format_secondary_markup (GtkMessageDialog *message_dialog,
                                                      const gchar *message_format,
                                                      ...) __attribute__((__format__ (__printf__, 2, 3)));

GtkWidget *gtk_message_dialog_get_message_area (GtkMessageDialog *message_dialog);

}
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmodules.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmodules.h"
extern "C" {




gchar * _gtk_find_module (const gchar *name,
           const gchar *type);
gchar **_gtk_get_module_path (const gchar *type);

void _gtk_modules_init (gint *argc,
          gchar ***argv,
          const gchar *gtk_modules_args);
void _gtk_modules_settings_changed (GtkSettings *settings,
          const gchar *modules);

typedef void (*GtkModuleInitFunc) (gint *argc,
          gchar ***argv);
typedef void (*GtkModuleDisplayInitFunc) (GdkDisplay *display);


}
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmountoperation.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmountoperation.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkmountoperation.h"
typedef struct _GtkMountOperation GtkMountOperation;
typedef struct _GtkMountOperationClass GtkMountOperationClass;
typedef struct _GtkMountOperationPrivate GtkMountOperationPrivate;






struct _GtkMountOperation
{
 GMountOperation parent_instance;

 GtkMountOperationPrivate *priv;
};

struct _GtkMountOperationClass
{
 GMountOperationClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_mount_operation_get_type (void);
GMountOperation *gtk_mount_operation_new (GtkWindow *parent);
gboolean gtk_mount_operation_is_showing (GtkMountOperation *op);
void gtk_mount_operation_set_parent (GtkMountOperation *op,
                                                GtkWindow *parent);
GtkWindow * gtk_mount_operation_get_parent (GtkMountOperation *op);
void gtk_mount_operation_set_screen (GtkMountOperation *op,
                                                GdkScreen *screen);
GdkScreen *gtk_mount_operation_get_screen (GtkMountOperation *op);

}
# 131 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtknotebook.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtknotebook.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtknotebook.h"
typedef enum
{
 GTK_NOTEBOOK_TAB_FIRST,
 GTK_NOTEBOOK_TAB_LAST
} GtkNotebookTab;

typedef struct _GtkNotebook GtkNotebook;
typedef struct _GtkNotebookClass GtkNotebookClass;

typedef struct _GtkNotebookPage GtkNotebookPage;


struct _GtkNotebook
{
 GtkContainer container;


 GtkNotebookPage *cur_page;



 GList *children;
 GList *first_tab;
 GList *focus_tab;

 GtkWidget *menu;
 GdkWindow *event_window;

 guint32 timer;

 guint16 tab_hborder;
 guint16 tab_vborder;

 guint show_tabs : 1;
 guint homogeneous : 1;
 guint show_border : 1;
 guint tab_pos : 2;
 guint scrollable : 1;
 guint in_child : 3;
 guint click_child : 3;
 guint button : 2;
 guint need_timer : 1;
 guint child_has_focus : 1;
 guint have_visible_child : 1;
 guint focus_out : 1;

 guint has_before_previous : 1;
 guint has_before_next : 1;
 guint has_after_previous : 1;
 guint has_after_next : 1;
};

struct _GtkNotebookClass
{
 GtkContainerClass parent_class;

 void (* switch_page) (GtkNotebook *notebook,

                             GtkNotebookPage *page,



        guint page_num);


 gboolean (* select_page) (GtkNotebook *notebook,
                               gboolean move_focus);
 gboolean (* focus_tab) (GtkNotebook *notebook,
                               GtkNotebookTab type);
 gboolean (* change_current_page) (GtkNotebook *notebook,
                               gint offset);
 void (* move_focus_out) (GtkNotebook *notebook,
   GtkDirectionType direction);
 gboolean (* reorder_tab) (GtkNotebook *notebook,
   GtkDirectionType direction,
   gboolean move_to_last);


 gint (* insert_page) (GtkNotebook *notebook,
          GtkWidget *child,
   GtkWidget *tab_label,
   GtkWidget *menu_label,
   gint position);

 GtkNotebook * (* create_window) (GtkNotebook *notebook,
                                  GtkWidget *page,
                                  gint x,
                                  gint y);

 void (*_gtk_reserved1) (void);
};

typedef GtkNotebook* (*GtkNotebookWindowCreationFunc) (GtkNotebook *source,
                                                      GtkWidget *page,
                                                      gint x,
                                                      gint y,
                                                      gpointer data);





GType gtk_notebook_get_type (void) __attribute__((__const__));
GtkWidget * gtk_notebook_new (void);
gint gtk_notebook_append_page (GtkNotebook *notebook,
        GtkWidget *child,
        GtkWidget *tab_label);
gint gtk_notebook_append_page_menu (GtkNotebook *notebook,
        GtkWidget *child,
        GtkWidget *tab_label,
        GtkWidget *menu_label);
gint gtk_notebook_prepend_page (GtkNotebook *notebook,
        GtkWidget *child,
        GtkWidget *tab_label);
gint gtk_notebook_prepend_page_menu (GtkNotebook *notebook,
        GtkWidget *child,
        GtkWidget *tab_label,
        GtkWidget *menu_label);
gint gtk_notebook_insert_page (GtkNotebook *notebook,
        GtkWidget *child,
        GtkWidget *tab_label,
        gint position);
gint gtk_notebook_insert_page_menu (GtkNotebook *notebook,
        GtkWidget *child,
        GtkWidget *tab_label,
        GtkWidget *menu_label,
        gint position);
void gtk_notebook_remove_page (GtkNotebook *notebook,
        gint page_num);






void gtk_notebook_set_window_creation_hook (GtkNotebookWindowCreationFunc func,
        gpointer data,
                                           GDestroyNotify destroy);
void gtk_notebook_set_group_id (GtkNotebook *notebook,
        gint group_id);
gint gtk_notebook_get_group_id (GtkNotebook *notebook);

void gtk_notebook_set_group (GtkNotebook *notebook,
        gpointer group);
gpointer gtk_notebook_get_group (GtkNotebook *notebook);


void gtk_notebook_set_group_name (GtkNotebook *notebook,
                                           const gchar *group_name);
const gchar *gtk_notebook_get_group_name (GtkNotebook *notebook);






gint gtk_notebook_get_current_page (GtkNotebook *notebook);
GtkWidget* gtk_notebook_get_nth_page (GtkNotebook *notebook,
      gint page_num);
gint gtk_notebook_get_n_pages (GtkNotebook *notebook);
gint gtk_notebook_page_num (GtkNotebook *notebook,
      GtkWidget *child);
void gtk_notebook_set_current_page (GtkNotebook *notebook,
      gint page_num);
void gtk_notebook_next_page (GtkNotebook *notebook);
void gtk_notebook_prev_page (GtkNotebook *notebook);





void gtk_notebook_set_show_border (GtkNotebook *notebook,
        gboolean show_border);
gboolean gtk_notebook_get_show_border (GtkNotebook *notebook);
void gtk_notebook_set_show_tabs (GtkNotebook *notebook,
        gboolean show_tabs);
gboolean gtk_notebook_get_show_tabs (GtkNotebook *notebook);
void gtk_notebook_set_tab_pos (GtkNotebook *notebook,
               GtkPositionType pos);
GtkPositionType gtk_notebook_get_tab_pos (GtkNotebook *notebook);


void gtk_notebook_set_homogeneous_tabs (GtkNotebook *notebook,
        gboolean homogeneous);
void gtk_notebook_set_tab_border (GtkNotebook *notebook,
        guint border_width);
void gtk_notebook_set_tab_hborder (GtkNotebook *notebook,
        guint tab_hborder);
void gtk_notebook_set_tab_vborder (GtkNotebook *notebook,
        guint tab_vborder);


void gtk_notebook_set_scrollable (GtkNotebook *notebook,
        gboolean scrollable);
gboolean gtk_notebook_get_scrollable (GtkNotebook *notebook);
guint16 gtk_notebook_get_tab_hborder (GtkNotebook *notebook);
guint16 gtk_notebook_get_tab_vborder (GtkNotebook *notebook);





void gtk_notebook_popup_enable (GtkNotebook *notebook);
void gtk_notebook_popup_disable (GtkNotebook *notebook);





GtkWidget * gtk_notebook_get_tab_label (GtkNotebook *notebook,
       GtkWidget *child);
void gtk_notebook_set_tab_label (GtkNotebook *notebook,
       GtkWidget *child,
       GtkWidget *tab_label);
void gtk_notebook_set_tab_label_text (GtkNotebook *notebook,
       GtkWidget *child,
       const gchar *tab_text);
const gchar *gtk_notebook_get_tab_label_text (GtkNotebook *notebook,
                                             GtkWidget *child);
GtkWidget * gtk_notebook_get_menu_label (GtkNotebook *notebook,
       GtkWidget *child);
void gtk_notebook_set_menu_label (GtkNotebook *notebook,
       GtkWidget *child,
       GtkWidget *menu_label);
void gtk_notebook_set_menu_label_text (GtkNotebook *notebook,
       GtkWidget *child,
       const gchar *menu_text);
const gchar *gtk_notebook_get_menu_label_text (GtkNotebook *notebook,
                                              GtkWidget *child);

void gtk_notebook_query_tab_label_packing (GtkNotebook *notebook,
       GtkWidget *child,
       gboolean *expand,
       gboolean *fill,
       GtkPackType *pack_type);
void gtk_notebook_set_tab_label_packing (GtkNotebook *notebook,
       GtkWidget *child,
       gboolean expand,
       gboolean fill,
       GtkPackType pack_type);

void gtk_notebook_reorder_child (GtkNotebook *notebook,
       GtkWidget *child,
       gint position);
gboolean gtk_notebook_get_tab_reorderable (GtkNotebook *notebook,
       GtkWidget *child);
void gtk_notebook_set_tab_reorderable (GtkNotebook *notebook,
       GtkWidget *child,
       gboolean reorderable);
gboolean gtk_notebook_get_tab_detachable (GtkNotebook *notebook,
       GtkWidget *child);
void gtk_notebook_set_tab_detachable (GtkNotebook *notebook,
       GtkWidget *child,
       gboolean detachable);

GtkWidget* gtk_notebook_get_action_widget (GtkNotebook *notebook,
                                          GtkPackType pack_type);
void gtk_notebook_set_action_widget (GtkNotebook *notebook,
                                          GtkWidget *widget,
                                          GtkPackType pack_type);






}
# 132 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkoffscreenwindow.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkoffscreenwindow.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkoffscreenwindow.h"
typedef struct _GtkOffscreenWindow GtkOffscreenWindow;
typedef struct _GtkOffscreenWindowClass GtkOffscreenWindowClass;

struct _GtkOffscreenWindow
{
 GtkWindow parent_object;
};

struct _GtkOffscreenWindowClass
{
 GtkWindowClass parent_class;
};

GType gtk_offscreen_window_get_type (void) __attribute__((__const__));

GtkWidget *gtk_offscreen_window_new (void);
GdkPixmap *gtk_offscreen_window_get_pixmap (GtkOffscreenWindow *offscreen);
GdkPixbuf *gtk_offscreen_window_get_pixbuf (GtkOffscreenWindow *offscreen);

}
# 134 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkorientable.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkorientable.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkorientable.h"
typedef struct _GtkOrientable GtkOrientable;
typedef struct _GtkOrientableIface GtkOrientableIface;

struct _GtkOrientableIface
{
 GTypeInterface base_iface;
};


GType gtk_orientable_get_type (void) __attribute__((__const__));

void gtk_orientable_set_orientation (GtkOrientable *orientable,
                                              GtkOrientation orientation);
GtkOrientation gtk_orientable_get_orientation (GtkOrientable *orientable);

}
# 135 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpagesetup.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpagesetup.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpapersize.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpapersize.h"
extern "C" {

typedef struct _GtkPaperSize GtkPaperSize;
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpapersize.h"
GType gtk_paper_size_get_type (void) __attribute__((__const__));

GtkPaperSize *gtk_paper_size_new (const gchar *name);
GtkPaperSize *gtk_paper_size_new_from_ppd (const gchar *ppd_name,
       const gchar *ppd_display_name,
       gdouble width,
       gdouble height);
GtkPaperSize *gtk_paper_size_new_custom (const gchar *name,
       const gchar *display_name,
       gdouble width,
       gdouble height,
       GtkUnit unit);
GtkPaperSize *gtk_paper_size_copy (GtkPaperSize *other);
void gtk_paper_size_free (GtkPaperSize *size);
gboolean gtk_paper_size_is_equal (GtkPaperSize *size1,
       GtkPaperSize *size2);

GList *gtk_paper_size_get_paper_sizes (gboolean include_custom);


const gchar *gtk_paper_size_get_name (GtkPaperSize *size);
const gchar *gtk_paper_size_get_display_name (GtkPaperSize *size);
const gchar *gtk_paper_size_get_ppd_name (GtkPaperSize *size);

gdouble gtk_paper_size_get_width (GtkPaperSize *size, GtkUnit unit);
gdouble gtk_paper_size_get_height (GtkPaperSize *size, GtkUnit unit);
gboolean gtk_paper_size_is_custom (GtkPaperSize *size);


void gtk_paper_size_set_size (GtkPaperSize *size,
                                                 gdouble width,
                                                 gdouble height,
                                                 GtkUnit unit);

gdouble gtk_paper_size_get_default_top_margin (GtkPaperSize *size,
       GtkUnit unit);
gdouble gtk_paper_size_get_default_bottom_margin (GtkPaperSize *size,
       GtkUnit unit);
gdouble gtk_paper_size_get_default_left_margin (GtkPaperSize *size,
       GtkUnit unit);
gdouble gtk_paper_size_get_default_right_margin (GtkPaperSize *size,
       GtkUnit unit);

const gchar *gtk_paper_size_get_default (void);

GtkPaperSize *gtk_paper_size_new_from_key_file (GKeyFile *key_file,
            const gchar *group_name,
            GError **error);
void gtk_paper_size_to_key_file (GtkPaperSize *size,
            GKeyFile *key_file,
            const gchar *group_name);

}
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpagesetup.h" 2


extern "C" {

typedef struct _GtkPageSetup GtkPageSetup;





GType gtk_page_setup_get_type (void) __attribute__((__const__));
GtkPageSetup * gtk_page_setup_new (void);
GtkPageSetup * gtk_page_setup_copy (GtkPageSetup *other);
GtkPageOrientation gtk_page_setup_get_orientation (GtkPageSetup *setup);
void gtk_page_setup_set_orientation (GtkPageSetup *setup,
          GtkPageOrientation orientation);
GtkPaperSize * gtk_page_setup_get_paper_size (GtkPageSetup *setup);
void gtk_page_setup_set_paper_size (GtkPageSetup *setup,
          GtkPaperSize *size);
gdouble gtk_page_setup_get_top_margin (GtkPageSetup *setup,
          GtkUnit unit);
void gtk_page_setup_set_top_margin (GtkPageSetup *setup,
          gdouble margin,
          GtkUnit unit);
gdouble gtk_page_setup_get_bottom_margin (GtkPageSetup *setup,
          GtkUnit unit);
void gtk_page_setup_set_bottom_margin (GtkPageSetup *setup,
          gdouble margin,
          GtkUnit unit);
gdouble gtk_page_setup_get_left_margin (GtkPageSetup *setup,
          GtkUnit unit);
void gtk_page_setup_set_left_margin (GtkPageSetup *setup,
          gdouble margin,
          GtkUnit unit);
gdouble gtk_page_setup_get_right_margin (GtkPageSetup *setup,
          GtkUnit unit);
void gtk_page_setup_set_right_margin (GtkPageSetup *setup,
          gdouble margin,
          GtkUnit unit);

void gtk_page_setup_set_paper_size_and_default_margins (GtkPageSetup *setup,
      GtkPaperSize *size);


gdouble gtk_page_setup_get_paper_width (GtkPageSetup *setup,
          GtkUnit unit);
gdouble gtk_page_setup_get_paper_height (GtkPageSetup *setup,
          GtkUnit unit);



gdouble gtk_page_setup_get_page_width (GtkPageSetup *setup,
          GtkUnit unit);
gdouble gtk_page_setup_get_page_height (GtkPageSetup *setup,
          GtkUnit unit);


GtkPageSetup *gtk_page_setup_new_from_file (const gchar *file_name,
          GError **error);
gboolean gtk_page_setup_load_file (GtkPageSetup *setup,
          const char *file_name,
          GError **error);
gboolean gtk_page_setup_to_file (GtkPageSetup *setup,
          const char *file_name,
          GError **error);
GtkPageSetup *gtk_page_setup_new_from_key_file (GKeyFile *key_file,
          const gchar *group_name,
          GError **error);
gboolean gtk_page_setup_load_key_file (GtkPageSetup *setup,
                        GKeyFile *key_file,
                        const gchar *group_name,
                        GError **error);
void gtk_page_setup_to_key_file (GtkPageSetup *setup,
          GKeyFile *key_file,
          const gchar *group_name);

}
# 136 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkplug.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkplug.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksocket.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksocket.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksocket.h"
typedef struct _GtkSocket GtkSocket;
typedef struct _GtkSocketClass GtkSocketClass;

struct _GtkSocket
{
 GtkContainer container;

 guint16 request_width;
 guint16 request_height;
 guint16 current_width;
 guint16 current_height;

 GdkWindow *plug_window;
 GtkWidget *plug_widget;

 gshort xembed_version;
 guint same_app : 1;
 guint focus_in : 1;
 guint have_size : 1;
 guint need_map : 1;
 guint is_mapped : 1;
 guint active : 1;

 GtkAccelGroup *accel_group;
 GtkWidget *toplevel;
};

struct _GtkSocketClass
{
 GtkContainerClass parent_class;

 void (*plug_added) (GtkSocket *socket_);
 gboolean (*plug_removed) (GtkSocket *socket_);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_socket_get_type (void) __attribute__((__const__));
GtkWidget* gtk_socket_new (void);

void gtk_socket_add_id (GtkSocket *socket_,
      GdkNativeWindow window_id);
GdkNativeWindow gtk_socket_get_id (GtkSocket *socket_);
GdkWindow* gtk_socket_get_plug_window (GtkSocket *socket_);


void gtk_socket_steal (GtkSocket *socket_,
       GdkNativeWindow wid);


}
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkplug.h" 2



extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkplug.h"
typedef struct _GtkPlug GtkPlug;
typedef struct _GtkPlugClass GtkPlugClass;


struct _GtkPlug
{
 GtkWindow window;

 GdkWindow *socket_window;
 GtkWidget *modality_window;
 GtkWindowGroup *modality_group;
 GHashTable *grabbed_keys;

 guint same_app : 1;
};

struct _GtkPlugClass
{
 GtkWindowClass parent_class;

 void (*embedded) (GtkPlug *plug);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_plug_get_type (void) __attribute__((__const__));


void gtk_plug_construct (GtkPlug *plug,
         GdkNativeWindow socket_id);
GtkWidget* gtk_plug_new (GdkNativeWindow socket_id);


void gtk_plug_construct_for_display (GtkPlug *plug,
       GdkDisplay *display,
       GdkNativeWindow socket_id);
GtkWidget* gtk_plug_new_for_display (GdkDisplay *display,
       GdkNativeWindow socket_id);

GdkNativeWindow gtk_plug_get_id (GtkPlug *plug);

gboolean gtk_plug_get_embedded (GtkPlug *plug);

GdkWindow *gtk_plug_get_socket_window (GtkPlug *plug);

void _gtk_plug_add_to_socket (GtkPlug *plug,
      GtkSocket *socket_);
void _gtk_plug_remove_from_socket (GtkPlug *plug,
      GtkSocket *socket_);

}
# 139 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintcontext.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintcontext.h"
extern "C" {

typedef struct _GtkPrintContext GtkPrintContext;





GType gtk_print_context_get_type (void) __attribute__((__const__));



cairo_t *gtk_print_context_get_cairo_context (GtkPrintContext *context);

GtkPageSetup *gtk_print_context_get_page_setup (GtkPrintContext *context);
gdouble gtk_print_context_get_width (GtkPrintContext *context);
gdouble gtk_print_context_get_height (GtkPrintContext *context);
gdouble gtk_print_context_get_dpi_x (GtkPrintContext *context);
gdouble gtk_print_context_get_dpi_y (GtkPrintContext *context);
gboolean gtk_print_context_get_hard_margins (GtkPrintContext *context,
           gdouble *top,
           gdouble *bottom,
           gdouble *left,
           gdouble *right);


PangoFontMap *gtk_print_context_get_pango_fontmap (GtkPrintContext *context);
PangoContext *gtk_print_context_create_pango_context (GtkPrintContext *context);
PangoLayout *gtk_print_context_create_pango_layout (GtkPrintContext *context);


void gtk_print_context_set_cairo_context (GtkPrintContext *context,
           cairo_t *cr,
           double dpi_x,
           double dpi_y);

}
# 140 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintoperation.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintoperation.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintsettings.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintsettings.h"
extern "C" {

typedef struct _GtkPrintSettings GtkPrintSettings;





typedef void (*GtkPrintSettingsFunc) (const gchar *key,
    const gchar *value,
    gpointer user_data);

typedef struct _GtkPageRange GtkPageRange;
struct _GtkPageRange
{
 gint start;
 gint end;
};

GType gtk_print_settings_get_type (void) __attribute__((__const__));
GtkPrintSettings *gtk_print_settings_new (void);

GtkPrintSettings *gtk_print_settings_copy (GtkPrintSettings *other);

GtkPrintSettings *gtk_print_settings_new_from_file (const gchar *file_name,
            GError **error);
gboolean gtk_print_settings_load_file (GtkPrintSettings *settings,
            const gchar *file_name,
            GError **error);
gboolean gtk_print_settings_to_file (GtkPrintSettings *settings,
            const gchar *file_name,
            GError **error);
GtkPrintSettings *gtk_print_settings_new_from_key_file (GKeyFile *key_file,
            const gchar *group_name,
            GError **error);
gboolean gtk_print_settings_load_key_file (GtkPrintSettings *settings,
            GKeyFile *key_file,
            const gchar *group_name,
            GError **error);
void gtk_print_settings_to_key_file (GtkPrintSettings *settings,
            GKeyFile *key_file,
            const gchar *group_name);
gboolean gtk_print_settings_has_key (GtkPrintSettings *settings,
            const gchar *key);
const gchar * gtk_print_settings_get (GtkPrintSettings *settings,
            const gchar *key);
void gtk_print_settings_set (GtkPrintSettings *settings,
            const gchar *key,
            const gchar *value);
void gtk_print_settings_unset (GtkPrintSettings *settings,
            const gchar *key);
void gtk_print_settings_foreach (GtkPrintSettings *settings,
            GtkPrintSettingsFunc func,
            gpointer user_data);
gboolean gtk_print_settings_get_bool (GtkPrintSettings *settings,
            const gchar *key);
void gtk_print_settings_set_bool (GtkPrintSettings *settings,
            const gchar *key,
            gboolean value);
gdouble gtk_print_settings_get_double (GtkPrintSettings *settings,
            const gchar *key);
gdouble gtk_print_settings_get_double_with_default (GtkPrintSettings *settings,
            const gchar *key,
            gdouble def);
void gtk_print_settings_set_double (GtkPrintSettings *settings,
            const gchar *key,
            gdouble value);
gdouble gtk_print_settings_get_length (GtkPrintSettings *settings,
            const gchar *key,
            GtkUnit unit);
void gtk_print_settings_set_length (GtkPrintSettings *settings,
            const gchar *key,
            gdouble value,
            GtkUnit unit);
gint gtk_print_settings_get_int (GtkPrintSettings *settings,
            const gchar *key);
gint gtk_print_settings_get_int_with_default (GtkPrintSettings *settings,
            const gchar *key,
            gint def);
void gtk_print_settings_set_int (GtkPrintSettings *settings,
            const gchar *key,
            gint value);
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintsettings.h"
const gchar *gtk_print_settings_get_printer (GtkPrintSettings *settings);
void gtk_print_settings_set_printer (GtkPrintSettings *settings,
       const gchar *printer);
GtkPageOrientation gtk_print_settings_get_orientation (GtkPrintSettings *settings);
void gtk_print_settings_set_orientation (GtkPrintSettings *settings,
       GtkPageOrientation orientation);
GtkPaperSize * gtk_print_settings_get_paper_size (GtkPrintSettings *settings);
void gtk_print_settings_set_paper_size (GtkPrintSettings *settings,
       GtkPaperSize *paper_size);
gdouble gtk_print_settings_get_paper_width (GtkPrintSettings *settings,
       GtkUnit unit);
void gtk_print_settings_set_paper_width (GtkPrintSettings *settings,
       gdouble width,
       GtkUnit unit);
gdouble gtk_print_settings_get_paper_height (GtkPrintSettings *settings,
       GtkUnit unit);
void gtk_print_settings_set_paper_height (GtkPrintSettings *settings,
       gdouble height,
       GtkUnit unit);
gboolean gtk_print_settings_get_use_color (GtkPrintSettings *settings);
void gtk_print_settings_set_use_color (GtkPrintSettings *settings,
       gboolean use_color);
gboolean gtk_print_settings_get_collate (GtkPrintSettings *settings);
void gtk_print_settings_set_collate (GtkPrintSettings *settings,
       gboolean collate);
gboolean gtk_print_settings_get_reverse (GtkPrintSettings *settings);
void gtk_print_settings_set_reverse (GtkPrintSettings *settings,
       gboolean reverse);
GtkPrintDuplex gtk_print_settings_get_duplex (GtkPrintSettings *settings);
void gtk_print_settings_set_duplex (GtkPrintSettings *settings,
       GtkPrintDuplex duplex);
GtkPrintQuality gtk_print_settings_get_quality (GtkPrintSettings *settings);
void gtk_print_settings_set_quality (GtkPrintSettings *settings,
       GtkPrintQuality quality);
gint gtk_print_settings_get_n_copies (GtkPrintSettings *settings);
void gtk_print_settings_set_n_copies (GtkPrintSettings *settings,
       gint num_copies);
gint gtk_print_settings_get_number_up (GtkPrintSettings *settings);
void gtk_print_settings_set_number_up (GtkPrintSettings *settings,
       gint number_up);
GtkNumberUpLayout gtk_print_settings_get_number_up_layout (GtkPrintSettings *settings);
void gtk_print_settings_set_number_up_layout (GtkPrintSettings *settings,
       GtkNumberUpLayout number_up_layout);
gint gtk_print_settings_get_resolution (GtkPrintSettings *settings);
void gtk_print_settings_set_resolution (GtkPrintSettings *settings,
       gint resolution);
gint gtk_print_settings_get_resolution_x (GtkPrintSettings *settings);
gint gtk_print_settings_get_resolution_y (GtkPrintSettings *settings);
void gtk_print_settings_set_resolution_xy (GtkPrintSettings *settings,
       gint resolution_x,
       gint resolution_y);
gdouble gtk_print_settings_get_printer_lpi (GtkPrintSettings *settings);
void gtk_print_settings_set_printer_lpi (GtkPrintSettings *settings,
       gdouble lpi);
gdouble gtk_print_settings_get_scale (GtkPrintSettings *settings);
void gtk_print_settings_set_scale (GtkPrintSettings *settings,
       gdouble scale);
GtkPrintPages gtk_print_settings_get_print_pages (GtkPrintSettings *settings);
void gtk_print_settings_set_print_pages (GtkPrintSettings *settings,
       GtkPrintPages pages);
GtkPageRange * gtk_print_settings_get_page_ranges (GtkPrintSettings *settings,
       gint *num_ranges);
void gtk_print_settings_set_page_ranges (GtkPrintSettings *settings,
       GtkPageRange *page_ranges,
       gint num_ranges);
GtkPageSet gtk_print_settings_get_page_set (GtkPrintSettings *settings);
void gtk_print_settings_set_page_set (GtkPrintSettings *settings,
       GtkPageSet page_set);
const gchar * gtk_print_settings_get_default_source (GtkPrintSettings *settings);
void gtk_print_settings_set_default_source (GtkPrintSettings *settings,
       const gchar *default_source);
const gchar * gtk_print_settings_get_media_type (GtkPrintSettings *settings);
void gtk_print_settings_set_media_type (GtkPrintSettings *settings,
       const gchar *media_type);
const gchar * gtk_print_settings_get_dither (GtkPrintSettings *settings);
void gtk_print_settings_set_dither (GtkPrintSettings *settings,
       const gchar *dither);
const gchar * gtk_print_settings_get_finishings (GtkPrintSettings *settings);
void gtk_print_settings_set_finishings (GtkPrintSettings *settings,
       const gchar *finishings);
const gchar * gtk_print_settings_get_output_bin (GtkPrintSettings *settings);
void gtk_print_settings_set_output_bin (GtkPrintSettings *settings,
       const gchar *output_bin);

}
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintoperation.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintoperationpreview.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintoperationpreview.h"
extern "C" {






typedef struct _GtkPrintOperationPreview GtkPrintOperationPreview;
typedef struct _GtkPrintOperationPreviewIface GtkPrintOperationPreviewIface;


struct _GtkPrintOperationPreviewIface
{
 GTypeInterface g_iface;


 void (*ready) (GtkPrintOperationPreview *preview,
          GtkPrintContext *context);
 void (*got_page_size) (GtkPrintOperationPreview *preview,
          GtkPrintContext *context,
          GtkPageSetup *page_setup);


 void (*render_page) (GtkPrintOperationPreview *preview,
          gint page_nr);
 gboolean (*is_selected) (GtkPrintOperationPreview *preview,
          gint page_nr);
 void (*end_preview) (GtkPrintOperationPreview *preview);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
 void (*_gtk_reserved6) (void);
 void (*_gtk_reserved7) (void);
};

GType gtk_print_operation_preview_get_type (void) __attribute__((__const__));

void gtk_print_operation_preview_render_page (GtkPrintOperationPreview *preview,
       gint page_nr);
void gtk_print_operation_preview_end_preview (GtkPrintOperationPreview *preview);
gboolean gtk_print_operation_preview_is_selected (GtkPrintOperationPreview *preview,
       gint page_nr);

}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintoperation.h" 2


extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprintoperation.h"
typedef struct _GtkPrintOperationClass GtkPrintOperationClass;
typedef struct _GtkPrintOperationPrivate GtkPrintOperationPrivate;
typedef struct _GtkPrintOperation GtkPrintOperation;

typedef enum {
 GTK_PRINT_STATUS_INITIAL,
 GTK_PRINT_STATUS_PREPARING,
 GTK_PRINT_STATUS_GENERATING_DATA,
 GTK_PRINT_STATUS_SENDING_DATA,
 GTK_PRINT_STATUS_PENDING,
 GTK_PRINT_STATUS_PENDING_ISSUE,
 GTK_PRINT_STATUS_PRINTING,
 GTK_PRINT_STATUS_FINISHED,
 GTK_PRINT_STATUS_FINISHED_ABORTED
} GtkPrintStatus;

typedef enum {
 GTK_PRINT_OPERATION_RESULT_ERROR,
 GTK_PRINT_OPERATION_RESULT_APPLY,
 GTK_PRINT_OPERATION_RESULT_CANCEL,
 GTK_PRINT_OPERATION_RESULT_IN_PROGRESS
} GtkPrintOperationResult;

typedef enum {
 GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG,
 GTK_PRINT_OPERATION_ACTION_PRINT,
 GTK_PRINT_OPERATION_ACTION_PREVIEW,
 GTK_PRINT_OPERATION_ACTION_EXPORT
} GtkPrintOperationAction;


struct _GtkPrintOperation
{
 GObject parent_instance;

 GtkPrintOperationPrivate *priv;
};

struct _GtkPrintOperationClass
{
 GObjectClass parent_class;

 void (*done) (GtkPrintOperation *operation,
     GtkPrintOperationResult result);
 void (*begin_print) (GtkPrintOperation *operation,
     GtkPrintContext *context);
 gboolean (*paginate) (GtkPrintOperation *operation,
     GtkPrintContext *context);
 void (*request_page_setup) (GtkPrintOperation *operation,
     GtkPrintContext *context,
     gint page_nr,
     GtkPageSetup *setup);
 void (*draw_page) (GtkPrintOperation *operation,
     GtkPrintContext *context,
     gint page_nr);
 void (*end_print) (GtkPrintOperation *operation,
     GtkPrintContext *context);
 void (*status_changed) (GtkPrintOperation *operation);

 GtkWidget *(*create_custom_widget) (GtkPrintOperation *operation);
 void (*custom_widget_apply) (GtkPrintOperation *operation,
         GtkWidget *widget);

 gboolean (*preview) (GtkPrintOperation *operation,
        GtkPrintOperationPreview *preview,
        GtkPrintContext *context,
        GtkWindow *parent);

 void (*update_custom_widget) (GtkPrintOperation *operation,
                                   GtkWidget *widget,
                                   GtkPageSetup *setup,
                                   GtkPrintSettings *settings);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
 void (*_gtk_reserved6) (void);
};



typedef enum
{
 GTK_PRINT_ERROR_GENERAL,
 GTK_PRINT_ERROR_INTERNAL_ERROR,
 GTK_PRINT_ERROR_NOMEM,
 GTK_PRINT_ERROR_INVALID_FILE
} GtkPrintError;

GQuark gtk_print_error_quark (void);

GType gtk_print_operation_get_type (void) __attribute__((__const__));
GtkPrintOperation * gtk_print_operation_new (void);
void gtk_print_operation_set_default_page_setup (GtkPrintOperation *op,
           GtkPageSetup *default_page_setup);
GtkPageSetup * gtk_print_operation_get_default_page_setup (GtkPrintOperation *op);
void gtk_print_operation_set_print_settings (GtkPrintOperation *op,
           GtkPrintSettings *print_settings);
GtkPrintSettings * gtk_print_operation_get_print_settings (GtkPrintOperation *op);
void gtk_print_operation_set_job_name (GtkPrintOperation *op,
           const gchar *job_name);
void gtk_print_operation_set_n_pages (GtkPrintOperation *op,
           gint n_pages);
void gtk_print_operation_set_current_page (GtkPrintOperation *op,
           gint current_page);
void gtk_print_operation_set_use_full_page (GtkPrintOperation *op,
           gboolean full_page);
void gtk_print_operation_set_unit (GtkPrintOperation *op,
           GtkUnit unit);
void gtk_print_operation_set_export_filename (GtkPrintOperation *op,
           const gchar *filename);
void gtk_print_operation_set_track_print_status (GtkPrintOperation *op,
           gboolean track_status);
void gtk_print_operation_set_show_progress (GtkPrintOperation *op,
           gboolean show_progress);
void gtk_print_operation_set_allow_async (GtkPrintOperation *op,
           gboolean allow_async);
void gtk_print_operation_set_custom_tab_label (GtkPrintOperation *op,
           const gchar *label);
GtkPrintOperationResult gtk_print_operation_run (GtkPrintOperation *op,
           GtkPrintOperationAction action,
           GtkWindow *parent,
           GError **error);
void gtk_print_operation_get_error (GtkPrintOperation *op,
           GError **error);
GtkPrintStatus gtk_print_operation_get_status (GtkPrintOperation *op);
const gchar * gtk_print_operation_get_status_string (GtkPrintOperation *op);
gboolean gtk_print_operation_is_finished (GtkPrintOperation *op);
void gtk_print_operation_cancel (GtkPrintOperation *op);
void gtk_print_operation_draw_page_finish (GtkPrintOperation *op);
void gtk_print_operation_set_defer_drawing (GtkPrintOperation *op);
void gtk_print_operation_set_support_selection (GtkPrintOperation *op,
                                                                   gboolean support_selection);
gboolean gtk_print_operation_get_support_selection (GtkPrintOperation *op);
void gtk_print_operation_set_has_selection (GtkPrintOperation *op,
                                                                   gboolean has_selection);
gboolean gtk_print_operation_get_has_selection (GtkPrintOperation *op);
void gtk_print_operation_set_embed_page_setup (GtkPrintOperation *op,
            gboolean embed);
gboolean gtk_print_operation_get_embed_page_setup (GtkPrintOperation *op);
gint gtk_print_operation_get_n_pages_to_print (GtkPrintOperation *op);

GtkPageSetup *gtk_print_run_page_setup_dialog (GtkWindow *parent,
           GtkPageSetup *page_setup,
           GtkPrintSettings *settings);

typedef void (* GtkPageSetupDoneFunc) (GtkPageSetup *page_setup,
    gpointer data);

void gtk_print_run_page_setup_dialog_async (GtkWindow *parent,
           GtkPageSetup *page_setup,
           GtkPrintSettings *settings,
                                                                   GtkPageSetupDoneFunc done_cb,
                                                                   gpointer data);

}
# 141 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprogressbar.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprogressbar.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprogress.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprogress.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprogress.h"
typedef struct _GtkProgress GtkProgress;
typedef struct _GtkProgressClass GtkProgressClass;


struct _GtkProgress
{
 GtkWidget widget;

 GtkAdjustment *adjustment;
 GdkPixmap *offscreen_pixmap;
 gchar *format;
 gfloat x_align;
 gfloat y_align;

 guint show_text : 1;
 guint activity_mode : 1;
 guint use_text_format : 1;
};

struct _GtkProgressClass
{
 GtkWidgetClass parent_class;

 void (* paint) (GtkProgress *progress);
 void (* update) (GtkProgress *progress);
 void (* act_mode_enter) (GtkProgress *progress);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};







GType gtk_progress_get_type (void) __attribute__((__const__));
void gtk_progress_set_show_text (GtkProgress *progress,
         gboolean show_text);
void gtk_progress_set_text_alignment (GtkProgress *progress,
         gfloat x_align,
         gfloat y_align);
void gtk_progress_set_format_string (GtkProgress *progress,
         const gchar *format);
void gtk_progress_set_adjustment (GtkProgress *progress,
         GtkAdjustment *adjustment);
void gtk_progress_configure (GtkProgress *progress,
         gdouble value,
         gdouble min,
         gdouble max);
void gtk_progress_set_percentage (GtkProgress *progress,
         gdouble percentage);
void gtk_progress_set_value (GtkProgress *progress,
         gdouble value);
gdouble gtk_progress_get_value (GtkProgress *progress);
void gtk_progress_set_activity_mode (GtkProgress *progress,
         gboolean activity_mode);
gchar* gtk_progress_get_current_text (GtkProgress *progress);
gchar* gtk_progress_get_text_from_value (GtkProgress *progress,
         gdouble value);
gdouble gtk_progress_get_current_percentage (GtkProgress *progress);
gdouble gtk_progress_get_percentage_from_value (GtkProgress *progress,
        gdouble value);



}
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprogressbar.h" 2


extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprogressbar.h"
typedef struct _GtkProgressBar GtkProgressBar;
typedef struct _GtkProgressBarClass GtkProgressBarClass;

typedef enum
{
 GTK_PROGRESS_CONTINUOUS,
 GTK_PROGRESS_DISCRETE
} GtkProgressBarStyle;

typedef enum
{
 GTK_PROGRESS_LEFT_TO_RIGHT,
 GTK_PROGRESS_RIGHT_TO_LEFT,
 GTK_PROGRESS_BOTTOM_TO_TOP,
 GTK_PROGRESS_TOP_TO_BOTTOM
} GtkProgressBarOrientation;

struct _GtkProgressBar
{
 GtkProgress progress;

 GtkProgressBarStyle bar_style;
 GtkProgressBarOrientation orientation;

 guint blocks;
 gint in_block;

 gint activity_pos;
 guint activity_step;
 guint activity_blocks;

 gdouble pulse_fraction;

 guint activity_dir : 1;
 guint ellipsize : 3;
 guint dirty : 1;
};

struct _GtkProgressBarClass
{
 GtkProgressClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_progress_bar_get_type (void) __attribute__((__const__));
GtkWidget* gtk_progress_bar_new (void);
# 128 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkprogressbar.h"
void gtk_progress_bar_pulse (GtkProgressBar *pbar);
void gtk_progress_bar_set_text (GtkProgressBar *pbar,
                                                 const gchar *text);
void gtk_progress_bar_set_fraction (GtkProgressBar *pbar,
                                                 gdouble fraction);

void gtk_progress_bar_set_pulse_step (GtkProgressBar *pbar,
                                                 gdouble fraction);
void gtk_progress_bar_set_orientation (GtkProgressBar *pbar,
       GtkProgressBarOrientation orientation);

const gchar* gtk_progress_bar_get_text (GtkProgressBar *pbar);
gdouble gtk_progress_bar_get_fraction (GtkProgressBar *pbar);
gdouble gtk_progress_bar_get_pulse_step (GtkProgressBar *pbar);

GtkProgressBarOrientation gtk_progress_bar_get_orientation (GtkProgressBar *pbar);
void gtk_progress_bar_set_ellipsize (GtkProgressBar *pbar,
        PangoEllipsizeMode mode);
PangoEllipsizeMode gtk_progress_bar_get_ellipsize (GtkProgressBar *pbar);





GtkWidget* gtk_progress_bar_new_with_adjustment (GtkAdjustment *adjustment);
void gtk_progress_bar_set_bar_style (GtkProgressBar *pbar,
       GtkProgressBarStyle style);
void gtk_progress_bar_set_discrete_blocks (GtkProgressBar *pbar,
       guint blocks);




void gtk_progress_bar_set_activity_step (GtkProgressBar *pbar,
                                                 guint step);
void gtk_progress_bar_set_activity_blocks (GtkProgressBar *pbar,
       guint blocks);
void gtk_progress_bar_update (GtkProgressBar *pbar,
       gdouble percentage);



}
# 144 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradioaction.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradioaction.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoggleaction.h" 1
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoggleaction.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoggleaction.h"
typedef struct _GtkToggleAction GtkToggleAction;
typedef struct _GtkToggleActionPrivate GtkToggleActionPrivate;
typedef struct _GtkToggleActionClass GtkToggleActionClass;

struct _GtkToggleAction
{
 GtkAction parent;



 GtkToggleActionPrivate *private_data;
};

struct _GtkToggleActionClass
{
 GtkActionClass parent_class;

 void (* toggled) (GtkToggleAction *action);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_toggle_action_get_type (void) __attribute__((__const__));
GtkToggleAction *gtk_toggle_action_new (const gchar *name,
                                                     const gchar *label,
                                                     const gchar *tooltip,
                                                     const gchar *stock_id);
void gtk_toggle_action_toggled (GtkToggleAction *action);
void gtk_toggle_action_set_active (GtkToggleAction *action,
                                                     gboolean is_active);
gboolean gtk_toggle_action_get_active (GtkToggleAction *action);
void gtk_toggle_action_set_draw_as_radio (GtkToggleAction *action,
                                                     gboolean draw_as_radio);
gboolean gtk_toggle_action_get_draw_as_radio (GtkToggleAction *action);


}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradioaction.h" 2

extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradioaction.h"
typedef struct _GtkRadioAction GtkRadioAction;
typedef struct _GtkRadioActionPrivate GtkRadioActionPrivate;
typedef struct _GtkRadioActionClass GtkRadioActionClass;

struct _GtkRadioAction
{
 GtkToggleAction parent;



 GtkRadioActionPrivate *private_data;
};

struct _GtkRadioActionClass
{
 GtkToggleActionClass parent_class;

 void (* changed) (GtkRadioAction *action, GtkRadioAction *current);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_radio_action_get_type (void) __attribute__((__const__));
GtkRadioAction *gtk_radio_action_new (const gchar *name,
                                                   const gchar *label,
                                                   const gchar *tooltip,
                                                   const gchar *stock_id,
                                                   gint value);
GSList *gtk_radio_action_get_group (GtkRadioAction *action);
void gtk_radio_action_set_group (GtkRadioAction *action,
                                                   GSList *group);
gint gtk_radio_action_get_current_value (GtkRadioAction *action);
void gtk_radio_action_set_current_value (GtkRadioAction *action,
                                                   gint current_value);

}
# 145 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiobutton.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiobutton.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiobutton.h"
typedef struct _GtkRadioButton GtkRadioButton;
typedef struct _GtkRadioButtonClass GtkRadioButtonClass;

struct _GtkRadioButton
{
 GtkCheckButton check_button;

 GSList *group;
};

struct _GtkRadioButtonClass
{
 GtkCheckButtonClass parent_class;


 void (*group_changed) (GtkRadioButton *radio_button);


 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_radio_button_get_type (void) __attribute__((__const__));

GtkWidget* gtk_radio_button_new (GSList *group);
GtkWidget* gtk_radio_button_new_from_widget (GtkRadioButton *radio_group_member);
GtkWidget* gtk_radio_button_new_with_label (GSList *group,
                                                          const gchar *label);
GtkWidget* gtk_radio_button_new_with_label_from_widget (GtkRadioButton *radio_group_member,
                                                          const gchar *label);
GtkWidget* gtk_radio_button_new_with_mnemonic (GSList *group,
                                                          const gchar *label);
GtkWidget* gtk_radio_button_new_with_mnemonic_from_widget (GtkRadioButton *radio_group_member,
                                                          const gchar *label);
GSList* gtk_radio_button_get_group (GtkRadioButton *radio_button);
void gtk_radio_button_set_group (GtkRadioButton *radio_button,
                                                          GSList *group);





}
# 146 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiomenuitem.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiomenuitem.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiomenuitem.h"
typedef struct _GtkRadioMenuItem GtkRadioMenuItem;
typedef struct _GtkRadioMenuItemClass GtkRadioMenuItemClass;

struct _GtkRadioMenuItem
{
 GtkCheckMenuItem check_menu_item;

 GSList *group;
};

struct _GtkRadioMenuItemClass
{
 GtkCheckMenuItemClass parent_class;


 void (*group_changed) (GtkRadioMenuItem *radio_menu_item);


 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_radio_menu_item_get_type (void) __attribute__((__const__));

GtkWidget* gtk_radio_menu_item_new (GSList *group);
GtkWidget* gtk_radio_menu_item_new_with_label (GSList *group,
            const gchar *label);
GtkWidget* gtk_radio_menu_item_new_with_mnemonic (GSList *group,
            const gchar *label);
GtkWidget* gtk_radio_menu_item_new_from_widget (GtkRadioMenuItem *group);
GtkWidget *gtk_radio_menu_item_new_with_mnemonic_from_widget (GtkRadioMenuItem *group,
            const gchar *label);
GtkWidget *gtk_radio_menu_item_new_with_label_from_widget (GtkRadioMenuItem *group,
            const gchar *label);
GSList* gtk_radio_menu_item_get_group (GtkRadioMenuItem *radio_menu_item);
void gtk_radio_menu_item_set_group (GtkRadioMenuItem *radio_menu_item,
            GSList *group);





}
# 147 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiotoolbutton.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiotoolbutton.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoggletoolbutton.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoggletoolbutton.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoggletoolbutton.h"
typedef struct _GtkToggleToolButton GtkToggleToolButton;
typedef struct _GtkToggleToolButtonClass GtkToggleToolButtonClass;
typedef struct _GtkToggleToolButtonPrivate GtkToggleToolButtonPrivate;

struct _GtkToggleToolButton
{
 GtkToolButton parent;


 GtkToggleToolButtonPrivate *priv;
};

struct _GtkToggleToolButtonClass
{
 GtkToolButtonClass parent_class;


 void (* toggled) (GtkToggleToolButton *button);


 void (* _gtk_reserved1) (void);
 void (* _gtk_reserved2) (void);
 void (* _gtk_reserved3) (void);
 void (* _gtk_reserved4) (void);
};

GType gtk_toggle_tool_button_get_type (void) __attribute__((__const__));
GtkToolItem *gtk_toggle_tool_button_new (void);
GtkToolItem *gtk_toggle_tool_button_new_from_stock (const gchar *stock_id);

void gtk_toggle_tool_button_set_active (GtkToggleToolButton *button,
         gboolean is_active);
gboolean gtk_toggle_tool_button_get_active (GtkToggleToolButton *button);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiotoolbutton.h" 2

extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkradiotoolbutton.h"
typedef struct _GtkRadioToolButton GtkRadioToolButton;
typedef struct _GtkRadioToolButtonClass GtkRadioToolButtonClass;

struct _GtkRadioToolButton
{
 GtkToggleToolButton parent;
};

struct _GtkRadioToolButtonClass
{
 GtkToggleToolButtonClass parent_class;


 void (* _gtk_reserved1) (void);
 void (* _gtk_reserved2) (void);
 void (* _gtk_reserved3) (void);
 void (* _gtk_reserved4) (void);
};

GType gtk_radio_tool_button_get_type (void) __attribute__((__const__));

GtkToolItem *gtk_radio_tool_button_new (GSList *group);
GtkToolItem *gtk_radio_tool_button_new_from_stock (GSList *group,
             const gchar *stock_id);
GtkToolItem *gtk_radio_tool_button_new_from_widget (GtkRadioToolButton *group);
GtkToolItem *gtk_radio_tool_button_new_with_stock_from_widget (GtkRadioToolButton *group,
             const gchar *stock_id);
GSList * gtk_radio_tool_button_get_group (GtkRadioToolButton *button);
void gtk_radio_tool_button_set_group (GtkRadioToolButton *button,
             GSList *group);

}
# 148 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentaction.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentaction.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentmanager.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentmanager.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentmanager.h"
typedef struct _GtkRecentInfo GtkRecentInfo;
typedef struct _GtkRecentData GtkRecentData;
typedef struct _GtkRecentManager GtkRecentManager;
typedef struct _GtkRecentManagerClass GtkRecentManagerClass;
typedef struct _GtkRecentManagerPrivate GtkRecentManagerPrivate;
# 69 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentmanager.h"
struct _GtkRecentData
{
 gchar *display_name;
 gchar *description;

 gchar *mime_type;

 gchar *app_name;
 gchar *app_exec;

 gchar **groups;

 gboolean is_private;
};

struct _GtkRecentManager
{

 GObject parent_instance;

 GtkRecentManagerPrivate *priv;
};

struct _GtkRecentManagerClass
{

 GObjectClass parent_class;

 void (*changed) (GtkRecentManager *manager);


 void (*_gtk_recent1) (void);
 void (*_gtk_recent2) (void);
 void (*_gtk_recent3) (void);
 void (*_gtk_recent4) (void);
};
# 123 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentmanager.h"
typedef enum
{
 GTK_RECENT_MANAGER_ERROR_NOT_FOUND,
 GTK_RECENT_MANAGER_ERROR_INVALID_URI,
 GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING,
 GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED,
 GTK_RECENT_MANAGER_ERROR_READ,
 GTK_RECENT_MANAGER_ERROR_WRITE,
 GTK_RECENT_MANAGER_ERROR_UNKNOWN
} GtkRecentManagerError;


GQuark gtk_recent_manager_error_quark (void);


GType gtk_recent_manager_get_type (void) __attribute__((__const__));

GtkRecentManager *gtk_recent_manager_new (void);
GtkRecentManager *gtk_recent_manager_get_default (void);


GtkRecentManager *gtk_recent_manager_get_for_screen (GdkScreen *screen);
void gtk_recent_manager_set_screen (GtkRecentManager *manager,
          GdkScreen *screen);


gboolean gtk_recent_manager_add_item (GtkRecentManager *manager,
          const gchar *uri);
gboolean gtk_recent_manager_add_full (GtkRecentManager *manager,
          const gchar *uri,
          const GtkRecentData *recent_data);
gboolean gtk_recent_manager_remove_item (GtkRecentManager *manager,
          const gchar *uri,
          GError **error);
GtkRecentInfo * gtk_recent_manager_lookup_item (GtkRecentManager *manager,
          const gchar *uri,
          GError **error);
gboolean gtk_recent_manager_has_item (GtkRecentManager *manager,
          const gchar *uri);
gboolean gtk_recent_manager_move_item (GtkRecentManager *manager,
          const gchar *uri,
          const gchar *new_uri,
          GError **error);
void gtk_recent_manager_set_limit (GtkRecentManager *manager,
          gint limit);
gint gtk_recent_manager_get_limit (GtkRecentManager *manager);
GList * gtk_recent_manager_get_items (GtkRecentManager *manager);
gint gtk_recent_manager_purge_items (GtkRecentManager *manager,
          GError **error);


GType gtk_recent_info_get_type (void) __attribute__((__const__));

GtkRecentInfo * gtk_recent_info_ref (GtkRecentInfo *info);
void gtk_recent_info_unref (GtkRecentInfo *info);

const gchar * gtk_recent_info_get_uri (GtkRecentInfo *info);
const gchar * gtk_recent_info_get_display_name (GtkRecentInfo *info);
const gchar * gtk_recent_info_get_description (GtkRecentInfo *info);
const gchar * gtk_recent_info_get_mime_type (GtkRecentInfo *info);
time_t gtk_recent_info_get_added (GtkRecentInfo *info);
time_t gtk_recent_info_get_modified (GtkRecentInfo *info);
time_t gtk_recent_info_get_visited (GtkRecentInfo *info);
gboolean gtk_recent_info_get_private_hint (GtkRecentInfo *info);
gboolean gtk_recent_info_get_application_info (GtkRecentInfo *info,
          const gchar *app_name,
          const gchar **app_exec,
          guint *count,
          time_t *time_);
gchar ** gtk_recent_info_get_applications (GtkRecentInfo *info,
          gsize *length) __attribute__((__malloc__));
gchar * gtk_recent_info_last_application (GtkRecentInfo *info) __attribute__((__malloc__));
gboolean gtk_recent_info_has_application (GtkRecentInfo *info,
          const gchar *app_name);
gchar ** gtk_recent_info_get_groups (GtkRecentInfo *info,
          gsize *length) __attribute__((__malloc__));
gboolean gtk_recent_info_has_group (GtkRecentInfo *info,
          const gchar *group_name);
GdkPixbuf * gtk_recent_info_get_icon (GtkRecentInfo *info,
          gint size);
gchar * gtk_recent_info_get_short_name (GtkRecentInfo *info) __attribute__((__malloc__));
gchar * gtk_recent_info_get_uri_display (GtkRecentInfo *info) __attribute__((__malloc__));
gint gtk_recent_info_get_age (GtkRecentInfo *info);
gboolean gtk_recent_info_is_local (GtkRecentInfo *info);
gboolean gtk_recent_info_exists (GtkRecentInfo *info);
gboolean gtk_recent_info_match (GtkRecentInfo *info_a,
          GtkRecentInfo *info_b);


void _gtk_recent_manager_sync (void);

}
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentaction.h" 2

extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentaction.h"
typedef struct _GtkRecentAction GtkRecentAction;
typedef struct _GtkRecentActionPrivate GtkRecentActionPrivate;
typedef struct _GtkRecentActionClass GtkRecentActionClass;

struct _GtkRecentAction
{
 GtkAction parent_instance;


 GtkRecentActionPrivate *priv;
};

struct _GtkRecentActionClass
{
 GtkActionClass parent_class;
};

GType gtk_recent_action_get_type (void) __attribute__((__const__));
GtkAction *gtk_recent_action_new (const gchar *name,
                                              const gchar *label,
                                              const gchar *tooltip,
                                              const gchar *stock_id);
GtkAction *gtk_recent_action_new_for_manager (const gchar *name,
                                              const gchar *label,
                                              const gchar *tooltip,
                                              const gchar *stock_id,
                                              GtkRecentManager *manager);
gboolean gtk_recent_action_get_show_numbers (GtkRecentAction *action);
void gtk_recent_action_set_show_numbers (GtkRecentAction *action,
                                              gboolean show_numbers);

}
# 151 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooser.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooser.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentfilter.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentfilter.h"
extern "C" {





typedef struct _GtkRecentFilter GtkRecentFilter;
typedef struct _GtkRecentFilterInfo GtkRecentFilterInfo;

typedef enum {
 GTK_RECENT_FILTER_URI = 1 << 0,
 GTK_RECENT_FILTER_DISPLAY_NAME = 1 << 1,
 GTK_RECENT_FILTER_MIME_TYPE = 1 << 2,
 GTK_RECENT_FILTER_APPLICATION = 1 << 3,
 GTK_RECENT_FILTER_GROUP = 1 << 4,
 GTK_RECENT_FILTER_AGE = 1 << 5
} GtkRecentFilterFlags;

typedef gboolean (*GtkRecentFilterFunc) (const GtkRecentFilterInfo *filter_info,
     gpointer user_data);

struct _GtkRecentFilterInfo
{
 GtkRecentFilterFlags contains;

 const gchar *uri;
 const gchar *display_name;
 const gchar *mime_type;
 const gchar **applications;
 const gchar **groups;

 gint age;
};

GType gtk_recent_filter_get_type (void) __attribute__((__const__));

GtkRecentFilter * gtk_recent_filter_new (void);
void gtk_recent_filter_set_name (GtkRecentFilter *filter,
       const gchar *name);
const gchar * gtk_recent_filter_get_name (GtkRecentFilter *filter);

void gtk_recent_filter_add_mime_type (GtkRecentFilter *filter,
       const gchar *mime_type);
void gtk_recent_filter_add_pattern (GtkRecentFilter *filter,
       const gchar *pattern);
void gtk_recent_filter_add_pixbuf_formats (GtkRecentFilter *filter);
void gtk_recent_filter_add_application (GtkRecentFilter *filter,
       const gchar *application);
void gtk_recent_filter_add_group (GtkRecentFilter *filter,
       const gchar *group);
void gtk_recent_filter_add_age (GtkRecentFilter *filter,
       gint days);
void gtk_recent_filter_add_custom (GtkRecentFilter *filter,
       GtkRecentFilterFlags needed,
       GtkRecentFilterFunc func,
       gpointer data,
       GDestroyNotify data_destroy);

GtkRecentFilterFlags gtk_recent_filter_get_needed (GtkRecentFilter *filter);
gboolean gtk_recent_filter_filter (GtkRecentFilter *filter,
        const GtkRecentFilterInfo *filter_info);

}
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooser.h" 2

extern "C" {
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooser.h"
typedef enum
{
 GTK_RECENT_SORT_NONE = 0,
 GTK_RECENT_SORT_MRU,
 GTK_RECENT_SORT_LRU,
 GTK_RECENT_SORT_CUSTOM
} GtkRecentSortType;

typedef gint (*GtkRecentSortFunc) (GtkRecentInfo *a,
      GtkRecentInfo *b,
      gpointer user_data);


typedef struct _GtkRecentChooser GtkRecentChooser;
typedef struct _GtkRecentChooserIface GtkRecentChooserIface;



typedef enum
{
 GTK_RECENT_CHOOSER_ERROR_NOT_FOUND,
 GTK_RECENT_CHOOSER_ERROR_INVALID_URI
} GtkRecentChooserError;

GQuark gtk_recent_chooser_error_quark (void);


struct _GtkRecentChooserIface
{
 GTypeInterface base_iface;




 gboolean (* set_current_uri) (GtkRecentChooser *chooser,
          const gchar *uri,
          GError **error);
 gchar * (* get_current_uri) (GtkRecentChooser *chooser);
 gboolean (* select_uri) (GtkRecentChooser *chooser,
          const gchar *uri,
          GError **error);
 void (* unselect_uri) (GtkRecentChooser *chooser,
                                           const gchar *uri);
 void (* select_all) (GtkRecentChooser *chooser);
 void (* unselect_all) (GtkRecentChooser *chooser);
 GList * (* get_items) (GtkRecentChooser *chooser);
 GtkRecentManager *(* get_recent_manager) (GtkRecentChooser *chooser);
 void (* add_filter) (GtkRecentChooser *chooser,
          GtkRecentFilter *filter);
 void (* remove_filter) (GtkRecentChooser *chooser,
          GtkRecentFilter *filter);
 GSList * (* list_filters) (GtkRecentChooser *chooser);
 void (* set_sort_func) (GtkRecentChooser *chooser,
          GtkRecentSortFunc sort_func,
          gpointer data,
          GDestroyNotify destroy);




 void (* item_activated) (GtkRecentChooser *chooser);
 void (* selection_changed) (GtkRecentChooser *chooser);
};

GType gtk_recent_chooser_get_type (void) __attribute__((__const__));




void gtk_recent_chooser_set_show_private (GtkRecentChooser *chooser,
        gboolean show_private);
gboolean gtk_recent_chooser_get_show_private (GtkRecentChooser *chooser);
void gtk_recent_chooser_set_show_not_found (GtkRecentChooser *chooser,
        gboolean show_not_found);
gboolean gtk_recent_chooser_get_show_not_found (GtkRecentChooser *chooser);
void gtk_recent_chooser_set_select_multiple (GtkRecentChooser *chooser,
        gboolean select_multiple);
gboolean gtk_recent_chooser_get_select_multiple (GtkRecentChooser *chooser);
void gtk_recent_chooser_set_limit (GtkRecentChooser *chooser,
        gint limit);
gint gtk_recent_chooser_get_limit (GtkRecentChooser *chooser);
void gtk_recent_chooser_set_local_only (GtkRecentChooser *chooser,
        gboolean local_only);
gboolean gtk_recent_chooser_get_local_only (GtkRecentChooser *chooser);
void gtk_recent_chooser_set_show_tips (GtkRecentChooser *chooser,
        gboolean show_tips);
gboolean gtk_recent_chooser_get_show_tips (GtkRecentChooser *chooser);

void gtk_recent_chooser_set_show_numbers (GtkRecentChooser *chooser,
        gboolean show_numbers);
gboolean gtk_recent_chooser_get_show_numbers (GtkRecentChooser *chooser);

void gtk_recent_chooser_set_show_icons (GtkRecentChooser *chooser,
        gboolean show_icons);
gboolean gtk_recent_chooser_get_show_icons (GtkRecentChooser *chooser);
void gtk_recent_chooser_set_sort_type (GtkRecentChooser *chooser,
        GtkRecentSortType sort_type);
GtkRecentSortType gtk_recent_chooser_get_sort_type (GtkRecentChooser *chooser);
void gtk_recent_chooser_set_sort_func (GtkRecentChooser *chooser,
        GtkRecentSortFunc sort_func,
        gpointer sort_data,
        GDestroyNotify data_destroy);




gboolean gtk_recent_chooser_set_current_uri (GtkRecentChooser *chooser,
         const gchar *uri,
         GError **error);
gchar * gtk_recent_chooser_get_current_uri (GtkRecentChooser *chooser);
GtkRecentInfo *gtk_recent_chooser_get_current_item (GtkRecentChooser *chooser);
gboolean gtk_recent_chooser_select_uri (GtkRecentChooser *chooser,
         const gchar *uri,
         GError **error);
void gtk_recent_chooser_unselect_uri (GtkRecentChooser *chooser,
                const gchar *uri);
void gtk_recent_chooser_select_all (GtkRecentChooser *chooser);
void gtk_recent_chooser_unselect_all (GtkRecentChooser *chooser);
GList * gtk_recent_chooser_get_items (GtkRecentChooser *chooser);
gchar ** gtk_recent_chooser_get_uris (GtkRecentChooser *chooser,
         gsize *length);




void gtk_recent_chooser_add_filter (GtkRecentChooser *chooser,
         GtkRecentFilter *filter);
void gtk_recent_chooser_remove_filter (GtkRecentChooser *chooser,
        GtkRecentFilter *filter);
GSList * gtk_recent_chooser_list_filters (GtkRecentChooser *chooser);
void gtk_recent_chooser_set_filter (GtkRecentChooser *chooser,
        GtkRecentFilter *filter);
GtkRecentFilter *gtk_recent_chooser_get_filter (GtkRecentChooser *chooser);


}
# 152 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooserdialog.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooserdialog.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooserdialog.h"
typedef struct _GtkRecentChooserDialog GtkRecentChooserDialog;
typedef struct _GtkRecentChooserDialogClass GtkRecentChooserDialogClass;

typedef struct _GtkRecentChooserDialogPrivate GtkRecentChooserDialogPrivate;


struct _GtkRecentChooserDialog
{

 GtkDialog parent_instance;

 GtkRecentChooserDialogPrivate *priv;
};

struct _GtkRecentChooserDialogClass
{
 GtkDialogClass parent_class;
};


GType gtk_recent_chooser_dialog_get_type (void) __attribute__((__const__));

GtkWidget *gtk_recent_chooser_dialog_new (const gchar *title,
                  GtkWindow *parent,
                  const gchar *first_button_text,
                  ...) __attribute__((__sentinel__));
GtkWidget *gtk_recent_chooser_dialog_new_for_manager (const gchar *title,
           GtkWindow *parent,
           GtkRecentManager *manager,
           const gchar *first_button_text,
           ...) __attribute__((__sentinel__));

}
# 153 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchoosermenu.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchoosermenu.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchoosermenu.h"
typedef struct _GtkRecentChooserMenu GtkRecentChooserMenu;
typedef struct _GtkRecentChooserMenuClass GtkRecentChooserMenuClass;
typedef struct _GtkRecentChooserMenuPrivate GtkRecentChooserMenuPrivate;

struct _GtkRecentChooserMenu
{

 GtkMenu parent_instance;

 GtkRecentChooserMenuPrivate *priv;
};

struct _GtkRecentChooserMenuClass
{
 GtkMenuClass parent_class;


 void (* gtk_recent1) (void);
 void (* gtk_recent2) (void);
 void (* gtk_recent3) (void);
 void (* gtk_recent4) (void);
};

GType gtk_recent_chooser_menu_get_type (void) __attribute__((__const__));

GtkWidget *gtk_recent_chooser_menu_new (void);
GtkWidget *gtk_recent_chooser_menu_new_for_manager (GtkRecentManager *manager);

gboolean gtk_recent_chooser_menu_get_show_numbers (GtkRecentChooserMenu *menu);
void gtk_recent_chooser_menu_set_show_numbers (GtkRecentChooserMenu *menu,
          gboolean show_numbers);

}
# 154 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooserwidget.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooserwidget.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkrecentchooserwidget.h"
typedef struct _GtkRecentChooserWidget GtkRecentChooserWidget;
typedef struct _GtkRecentChooserWidgetClass GtkRecentChooserWidgetClass;

typedef struct _GtkRecentChooserWidgetPrivate GtkRecentChooserWidgetPrivate;

struct _GtkRecentChooserWidget
{

 GtkVBox parent_instance;

 GtkRecentChooserWidgetPrivate *priv;
};

struct _GtkRecentChooserWidgetClass
{
 GtkVBoxClass parent_class;
};

GType gtk_recent_chooser_widget_get_type (void) __attribute__((__const__));
GtkWidget *gtk_recent_chooser_widget_new (void);
GtkWidget *gtk_recent_chooser_widget_new_for_manager (GtkRecentManager *manager);

}
# 155 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkruler.h" 1
# 158 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscalebutton.h" 1
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscalebutton.h"
extern "C" {
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscalebutton.h"
typedef struct _GtkScaleButton GtkScaleButton;
typedef struct _GtkScaleButtonClass GtkScaleButtonClass;
typedef struct _GtkScaleButtonPrivate GtkScaleButtonPrivate;

struct _GtkScaleButton
{
 GtkButton parent;

 GtkWidget *plus_button;
 GtkWidget *minus_button;


 GtkScaleButtonPrivate *priv;
};

struct _GtkScaleButtonClass
{
 GtkButtonClass parent_class;


 void (* value_changed) (GtkScaleButton *button,
                          gdouble value);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_scale_button_get_type (void) __attribute__((__const__));
GtkWidget * gtk_scale_button_new (GtkIconSize size,
                                                   gdouble min,
                                                   gdouble max,
                                                   gdouble step,
                                                   const gchar **icons);
void gtk_scale_button_set_icons (GtkScaleButton *button,
                                                   const gchar **icons);
gdouble gtk_scale_button_get_value (GtkScaleButton *button);
void gtk_scale_button_set_value (GtkScaleButton *button,
                                                   gdouble value);
GtkAdjustment * gtk_scale_button_get_adjustment (GtkScaleButton *button);
void gtk_scale_button_set_adjustment (GtkScaleButton *button,
                                                   GtkAdjustment *adjustment);
GtkWidget * gtk_scale_button_get_plus_button (GtkScaleButton *button);
GtkWidget * gtk_scale_button_get_minus_button (GtkScaleButton *button);
GtkWidget * gtk_scale_button_get_popup (GtkScaleButton *button);



GtkOrientation gtk_scale_button_get_orientation (GtkScaleButton *button);
void gtk_scale_button_set_orientation (GtkScaleButton *button,
                                                   GtkOrientation orientation);



}
# 160 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscrolledwindow.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscrolledwindow.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvscrollbar.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvscrollbar.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvscrollbar.h"
typedef struct _GtkVScrollbar GtkVScrollbar;
typedef struct _GtkVScrollbarClass GtkVScrollbarClass;







struct _GtkVScrollbar
{
 GtkScrollbar scrollbar;
};

struct _GtkVScrollbarClass
{
 GtkScrollbarClass parent_class;
};


GType gtk_vscrollbar_get_type (void) __attribute__((__const__));
GtkWidget* gtk_vscrollbar_new (GtkAdjustment *adjustment);


}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscrolledwindow.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkviewport.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkviewport.h"
extern "C" {
# 50 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkviewport.h"
typedef struct _GtkViewport GtkViewport;
typedef struct _GtkViewportClass GtkViewportClass;

struct _GtkViewport
{
 GtkBin bin;

 GtkShadowType shadow_type;
 GdkWindow *view_window;
 GdkWindow *bin_window;
 GtkAdjustment *hadjustment;
 GtkAdjustment *vadjustment;
};

struct _GtkViewportClass
{
 GtkBinClass parent_class;

 void (*set_scroll_adjustments) (GtkViewport *viewport,
     GtkAdjustment *hadjustment,
     GtkAdjustment *vadjustment);
};


GType gtk_viewport_get_type (void) __attribute__((__const__));
GtkWidget* gtk_viewport_new (GtkAdjustment *hadjustment,
         GtkAdjustment *vadjustment);
GtkAdjustment* gtk_viewport_get_hadjustment (GtkViewport *viewport);
GtkAdjustment* gtk_viewport_get_vadjustment (GtkViewport *viewport);
void gtk_viewport_set_hadjustment (GtkViewport *viewport,
         GtkAdjustment *adjustment);
void gtk_viewport_set_vadjustment (GtkViewport *viewport,
         GtkAdjustment *adjustment);
void gtk_viewport_set_shadow_type (GtkViewport *viewport,
         GtkShadowType type);
GtkShadowType gtk_viewport_get_shadow_type (GtkViewport *viewport);
GdkWindow* gtk_viewport_get_bin_window (GtkViewport *viewport);
GdkWindow* gtk_viewport_get_view_window (GtkViewport *viewport);


}
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscrolledwindow.h" 2


extern "C" {
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscrolledwindow.h"
typedef struct _GtkScrolledWindow GtkScrolledWindow;
typedef struct _GtkScrolledWindowClass GtkScrolledWindowClass;

struct _GtkScrolledWindow
{
 GtkBin container;


 GtkWidget *hscrollbar;
 GtkWidget *vscrollbar;


 guint hscrollbar_policy : 2;
 guint vscrollbar_policy : 2;
 guint hscrollbar_visible : 1;
 guint vscrollbar_visible : 1;
 guint window_placement : 2;
 guint focus_out : 1;

 guint16 shadow_type;
};

struct _GtkScrolledWindowClass
{
 GtkBinClass parent_class;

 gint scrollbar_spacing;
# 87 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkscrolledwindow.h"
 gboolean (*scroll_child) (GtkScrolledWindow *scrolled_window,
        GtkScrollType scroll,
      gboolean horizontal);

 void (* move_focus_out) (GtkScrolledWindow *scrolled_window,
     GtkDirectionType direction);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_scrolled_window_get_type (void) __attribute__((__const__));
GtkWidget* gtk_scrolled_window_new (GtkAdjustment *hadjustment,
           GtkAdjustment *vadjustment);
void gtk_scrolled_window_set_hadjustment (GtkScrolledWindow *scrolled_window,
           GtkAdjustment *hadjustment);
void gtk_scrolled_window_set_vadjustment (GtkScrolledWindow *scrolled_window,
           GtkAdjustment *vadjustment);
GtkAdjustment* gtk_scrolled_window_get_hadjustment (GtkScrolledWindow *scrolled_window);
GtkAdjustment* gtk_scrolled_window_get_vadjustment (GtkScrolledWindow *scrolled_window);
GtkWidget* gtk_scrolled_window_get_hscrollbar (GtkScrolledWindow *scrolled_window);
GtkWidget* gtk_scrolled_window_get_vscrollbar (GtkScrolledWindow *scrolled_window);
void gtk_scrolled_window_set_policy (GtkScrolledWindow *scrolled_window,
           GtkPolicyType hscrollbar_policy,
           GtkPolicyType vscrollbar_policy);
void gtk_scrolled_window_get_policy (GtkScrolledWindow *scrolled_window,
           GtkPolicyType *hscrollbar_policy,
           GtkPolicyType *vscrollbar_policy);
void gtk_scrolled_window_set_placement (GtkScrolledWindow *scrolled_window,
           GtkCornerType window_placement);
void gtk_scrolled_window_unset_placement (GtkScrolledWindow *scrolled_window);

GtkCornerType gtk_scrolled_window_get_placement (GtkScrolledWindow *scrolled_window);
void gtk_scrolled_window_set_shadow_type (GtkScrolledWindow *scrolled_window,
           GtkShadowType type);
GtkShadowType gtk_scrolled_window_get_shadow_type (GtkScrolledWindow *scrolled_window);
void gtk_scrolled_window_add_with_viewport (GtkScrolledWindow *scrolled_window,
           GtkWidget *child);

gint _gtk_scrolled_window_get_scrollbar_spacing (GtkScrolledWindow *scrolled_window);


}
# 162 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkseparatormenuitem.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkseparatormenuitem.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkseparatormenuitem.h"
typedef struct _GtkSeparatorMenuItem GtkSeparatorMenuItem;
typedef struct _GtkSeparatorMenuItemClass GtkSeparatorMenuItemClass;

struct _GtkSeparatorMenuItem
{
 GtkMenuItem menu_item;
};

struct _GtkSeparatorMenuItemClass
{
 GtkMenuItemClass parent_class;
};


GType gtk_separator_menu_item_get_type (void) __attribute__((__const__));
GtkWidget* gtk_separator_menu_item_new (void);


}
# 165 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkseparatortoolitem.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkseparatortoolitem.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkseparatortoolitem.h"
typedef struct _GtkSeparatorToolItem GtkSeparatorToolItem;
typedef struct _GtkSeparatorToolItemClass GtkSeparatorToolItemClass;
typedef struct _GtkSeparatorToolItemPrivate GtkSeparatorToolItemPrivate;

struct _GtkSeparatorToolItem
{
 GtkToolItem parent;


 GtkSeparatorToolItemPrivate *priv;
};

struct _GtkSeparatorToolItemClass
{
 GtkToolItemClass parent_class;


 void (* _gtk_reserved1) (void);
 void (* _gtk_reserved2) (void);
 void (* _gtk_reserved3) (void);
 void (* _gtk_reserved4) (void);
};

GType gtk_separator_tool_item_get_type (void) __attribute__((__const__));
GtkToolItem *gtk_separator_tool_item_new (void);

gboolean gtk_separator_tool_item_get_draw (GtkSeparatorToolItem *item);
void gtk_separator_tool_item_set_draw (GtkSeparatorToolItem *item,
           gboolean draw);

}
# 166 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkshow.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkshow.h"
extern "C" {

gboolean gtk_show_uri (GdkScreen *screen,
                       const gchar *uri,
                       guint32 timestamp,
                       GError **error);

}
# 168 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkspinbutton.h" 1
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkspinbutton.h"
extern "C" {
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkspinbutton.h"
typedef enum
{
 GTK_UPDATE_ALWAYS,
 GTK_UPDATE_IF_VALID
} GtkSpinButtonUpdatePolicy;

typedef enum
{
 GTK_SPIN_STEP_FORWARD,
 GTK_SPIN_STEP_BACKWARD,
 GTK_SPIN_PAGE_FORWARD,
 GTK_SPIN_PAGE_BACKWARD,
 GTK_SPIN_HOME,
 GTK_SPIN_END,
 GTK_SPIN_USER_DEFINED
} GtkSpinType;


typedef struct _GtkSpinButton GtkSpinButton;
typedef struct _GtkSpinButtonClass GtkSpinButtonClass;


struct _GtkSpinButton
{
 GtkEntry entry;

 GtkAdjustment *adjustment;

 GdkWindow *panel;

 guint32 timer;

 gdouble climb_rate;
 gdouble timer_step;

 GtkSpinButtonUpdatePolicy update_policy;

 guint in_child : 2;
 guint click_child : 2;
 guint button : 2;
 guint need_timer : 1;
 guint timer_calls : 3;
 guint digits : 10;
 guint numeric : 1;
 guint wrap : 1;
 guint snap_to_ticks : 1;
};

struct _GtkSpinButtonClass
{
 GtkEntryClass parent_class;

 gint (*input) (GtkSpinButton *spin_button,
   gdouble *new_value);
 gint (*output) (GtkSpinButton *spin_button);
 void (*value_changed) (GtkSpinButton *spin_button);


 void (*change_value) (GtkSpinButton *spin_button,
  GtkScrollType scroll);

 void (*wrapped) (GtkSpinButton *spin_button);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
};


GType gtk_spin_button_get_type (void) __attribute__((__const__));

void gtk_spin_button_configure (GtkSpinButton *spin_button,
         GtkAdjustment *adjustment,
         gdouble climb_rate,
         guint digits);

GtkWidget* gtk_spin_button_new (GtkAdjustment *adjustment,
         gdouble climb_rate,
         guint digits);

GtkWidget* gtk_spin_button_new_with_range (gdouble min,
         gdouble max,
         gdouble step);

void gtk_spin_button_set_adjustment (GtkSpinButton *spin_button,
         GtkAdjustment *adjustment);

GtkAdjustment* gtk_spin_button_get_adjustment (GtkSpinButton *spin_button);

void gtk_spin_button_set_digits (GtkSpinButton *spin_button,
         guint digits);
guint gtk_spin_button_get_digits (GtkSpinButton *spin_button);

void gtk_spin_button_set_increments (GtkSpinButton *spin_button,
         gdouble step,
         gdouble page);
void gtk_spin_button_get_increments (GtkSpinButton *spin_button,
         gdouble *step,
         gdouble *page);

void gtk_spin_button_set_range (GtkSpinButton *spin_button,
         gdouble min,
         gdouble max);
void gtk_spin_button_get_range (GtkSpinButton *spin_button,
         gdouble *min,
         gdouble *max);

gdouble gtk_spin_button_get_value (GtkSpinButton *spin_button);

gint gtk_spin_button_get_value_as_int (GtkSpinButton *spin_button);

void gtk_spin_button_set_value (GtkSpinButton *spin_button,
         gdouble value);

void gtk_spin_button_set_update_policy (GtkSpinButton *spin_button,
         GtkSpinButtonUpdatePolicy policy);
GtkSpinButtonUpdatePolicy gtk_spin_button_get_update_policy (GtkSpinButton *spin_button);

void gtk_spin_button_set_numeric (GtkSpinButton *spin_button,
         gboolean numeric);
gboolean gtk_spin_button_get_numeric (GtkSpinButton *spin_button);

void gtk_spin_button_spin (GtkSpinButton *spin_button,
         GtkSpinType direction,
         gdouble increment);

void gtk_spin_button_set_wrap (GtkSpinButton *spin_button,
         gboolean wrap);
gboolean gtk_spin_button_get_wrap (GtkSpinButton *spin_button);

void gtk_spin_button_set_snap_to_ticks (GtkSpinButton *spin_button,
         gboolean snap_to_ticks);
gboolean gtk_spin_button_get_snap_to_ticks (GtkSpinButton *spin_button);
void gtk_spin_button_update (GtkSpinButton *spin_button);






}
# 171 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkspinner.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkspinner.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkspinner.h"
typedef struct _GtkSpinner GtkSpinner;
typedef struct _GtkSpinnerClass GtkSpinnerClass;
typedef struct _GtkSpinnerPrivate GtkSpinnerPrivate;

struct _GtkSpinner
{
 GtkDrawingArea parent;
 GtkSpinnerPrivate *priv;
};

struct _GtkSpinnerClass
{
 GtkDrawingAreaClass parent_class;
};

GType gtk_spinner_get_type (void) __attribute__((__const__));
GtkWidget *gtk_spinner_new (void);
void gtk_spinner_start (GtkSpinner *spinner);
void gtk_spinner_stop (GtkSpinner *spinner);

}
# 172 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstatusbar.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstatusbar.h"
extern "C" {
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstatusbar.h"
typedef struct _GtkStatusbar GtkStatusbar;
typedef struct _GtkStatusbarClass GtkStatusbarClass;

struct _GtkStatusbar
{
 GtkHBox parent_widget;

 GtkWidget *frame;
 GtkWidget *label;

 GSList *messages;
 GSList *keys;

 guint seq_context_id;
 guint seq_message_id;

 GdkWindow *grip_window;

 guint has_resize_grip : 1;
};

struct _GtkStatusbarClass
{
 GtkHBoxClass parent_class;

 gpointer reserved;

 void (*text_pushed) (GtkStatusbar *statusbar,
   guint context_id,
   const gchar *text);
 void (*text_popped) (GtkStatusbar *statusbar,
   guint context_id,
   const gchar *text);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_statusbar_get_type (void) __attribute__((__const__));
GtkWidget* gtk_statusbar_new (void);



guint gtk_statusbar_get_context_id (GtkStatusbar *statusbar,
     const gchar *context_description);

guint gtk_statusbar_push (GtkStatusbar *statusbar,
     guint context_id,
     const gchar *text);
void gtk_statusbar_pop (GtkStatusbar *statusbar,
     guint context_id);
void gtk_statusbar_remove (GtkStatusbar *statusbar,
     guint context_id,
     guint message_id);
void gtk_statusbar_remove_all (GtkStatusbar *statusbar,
     guint context_id);


void gtk_statusbar_set_has_resize_grip (GtkStatusbar *statusbar,
        gboolean setting);
gboolean gtk_statusbar_get_has_resize_grip (GtkStatusbar *statusbar);

GtkWidget* gtk_statusbar_get_message_area (GtkStatusbar *statusbar);

}
# 173 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstatusicon.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstatusicon.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstatusicon.h"
typedef struct _GtkStatusIcon GtkStatusIcon;
typedef struct _GtkStatusIconClass GtkStatusIconClass;
typedef struct _GtkStatusIconPrivate GtkStatusIconPrivate;

struct _GtkStatusIcon
{
 GObject parent_instance;

 GtkStatusIconPrivate *priv;
};

struct _GtkStatusIconClass
{
 GObjectClass parent_class;

 void (* activate) (GtkStatusIcon *status_icon);
 void (* popup_menu) (GtkStatusIcon *status_icon,
                                    guint button,
                                    guint32 activate_time);
 gboolean (* size_changed) (GtkStatusIcon *status_icon,
                                    gint size);
 gboolean (* button_press_event) (GtkStatusIcon *status_icon,
                                    GdkEventButton *event);
 gboolean (* button_release_event) (GtkStatusIcon *status_icon,
                                    GdkEventButton *event);
 gboolean (* scroll_event) (GtkStatusIcon *status_icon,
                                    GdkEventScroll *event);
 gboolean (* query_tooltip) (GtkStatusIcon *status_icon,
                                    gint x,
                                    gint y,
                                    gboolean keyboard_mode,
                                    GtkTooltip *tooltip);

 void (*__gtk_reserved1);
 void (*__gtk_reserved2);
};

GType gtk_status_icon_get_type (void) __attribute__((__const__));

GtkStatusIcon *gtk_status_icon_new (void);
GtkStatusIcon *gtk_status_icon_new_from_pixbuf (GdkPixbuf *pixbuf);
GtkStatusIcon *gtk_status_icon_new_from_file (const gchar *filename);
GtkStatusIcon *gtk_status_icon_new_from_stock (const gchar *stock_id);
GtkStatusIcon *gtk_status_icon_new_from_icon_name (const gchar *icon_name);
GtkStatusIcon *gtk_status_icon_new_from_gicon (GIcon *icon);

void gtk_status_icon_set_from_pixbuf (GtkStatusIcon *status_icon,
        GdkPixbuf *pixbuf);
void gtk_status_icon_set_from_file (GtkStatusIcon *status_icon,
        const gchar *filename);
void gtk_status_icon_set_from_stock (GtkStatusIcon *status_icon,
        const gchar *stock_id);
void gtk_status_icon_set_from_icon_name (GtkStatusIcon *status_icon,
        const gchar *icon_name);
void gtk_status_icon_set_from_gicon (GtkStatusIcon *status_icon,
                                                         GIcon *icon);

GtkImageType gtk_status_icon_get_storage_type (GtkStatusIcon *status_icon);

GdkPixbuf *gtk_status_icon_get_pixbuf (GtkStatusIcon *status_icon);
const gchar * gtk_status_icon_get_stock (GtkStatusIcon *status_icon);
const gchar * gtk_status_icon_get_icon_name (GtkStatusIcon *status_icon);
GIcon *gtk_status_icon_get_gicon (GtkStatusIcon *status_icon);

gint gtk_status_icon_get_size (GtkStatusIcon *status_icon);

void gtk_status_icon_set_screen (GtkStatusIcon *status_icon,
                                                         GdkScreen *screen);
GdkScreen *gtk_status_icon_get_screen (GtkStatusIcon *status_icon);


void gtk_status_icon_set_tooltip (GtkStatusIcon *status_icon,
                                                         const gchar *tooltip_text);

void gtk_status_icon_set_has_tooltip (GtkStatusIcon *status_icon,
                                                         gboolean has_tooltip);
void gtk_status_icon_set_tooltip_text (GtkStatusIcon *status_icon,
                                                         const gchar *text);
void gtk_status_icon_set_tooltip_markup (GtkStatusIcon *status_icon,
                                                         const gchar *markup);
void gtk_status_icon_set_title (GtkStatusIcon *status_icon,
                                                         const gchar *title);
const gchar * gtk_status_icon_get_title (GtkStatusIcon *status_icon);
void gtk_status_icon_set_name (GtkStatusIcon *status_icon,
                                                         const gchar *name);
void gtk_status_icon_set_visible (GtkStatusIcon *status_icon,
        gboolean visible);
gboolean gtk_status_icon_get_visible (GtkStatusIcon *status_icon);


void gtk_status_icon_set_blinking (GtkStatusIcon *status_icon,
        gboolean blinking);
gboolean gtk_status_icon_get_blinking (GtkStatusIcon *status_icon);


gboolean gtk_status_icon_is_embedded (GtkStatusIcon *status_icon);

void gtk_status_icon_position_menu (GtkMenu *menu,
        gint *x,
        gint *y,
        gboolean *push_in,
        gpointer user_data);
gboolean gtk_status_icon_get_geometry (GtkStatusIcon *status_icon,
        GdkScreen **screen,
        GdkRectangle *area,
        GtkOrientation *orientation);
gboolean gtk_status_icon_get_has_tooltip (GtkStatusIcon *status_icon);
gchar *gtk_status_icon_get_tooltip_text (GtkStatusIcon *status_icon);
gchar *gtk_status_icon_get_tooltip_markup (GtkStatusIcon *status_icon);

guint32 gtk_status_icon_get_x11_window_id (GtkStatusIcon *status_icon);

}
# 174 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstock.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstock.h"
extern "C" {

typedef struct _GtkStockItem GtkStockItem;

struct _GtkStockItem
{
 gchar *stock_id;
 gchar *label;
 GdkModifierType modifier;
 guint keyval;
 gchar *translation_domain;
};

void gtk_stock_add (const GtkStockItem *items,
                              guint n_items);
void gtk_stock_add_static (const GtkStockItem *items,
                              guint n_items);
gboolean gtk_stock_lookup (const gchar *stock_id,
                              GtkStockItem *item);




GSList* gtk_stock_list_ids (void);

GtkStockItem *gtk_stock_item_copy (const GtkStockItem *item);
void gtk_stock_item_free (GtkStockItem *item);

void gtk_stock_set_translate_func (const gchar *domain,
        GtkTranslateFunc func,
        gpointer data,
        GDestroyNotify notify);
# 1014 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkstock.h"
}
# 175 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktable.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktable.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktable.h"
typedef struct _GtkTable GtkTable;
typedef struct _GtkTableClass GtkTableClass;
typedef struct _GtkTableChild GtkTableChild;
typedef struct _GtkTableRowCol GtkTableRowCol;

struct _GtkTable
{
 GtkContainer container;

 GList *children;
 GtkTableRowCol *rows;
 GtkTableRowCol *cols;
 guint16 nrows;
 guint16 ncols;
 guint16 column_spacing;
 guint16 row_spacing;
 guint homogeneous : 1;
};

struct _GtkTableClass
{
 GtkContainerClass parent_class;
};

struct _GtkTableChild
{
 GtkWidget *widget;
 guint16 left_attach;
 guint16 right_attach;
 guint16 top_attach;
 guint16 bottom_attach;
 guint16 xpadding;
 guint16 ypadding;
 guint xexpand : 1;
 guint yexpand : 1;
 guint xshrink : 1;
 guint yshrink : 1;
 guint xfill : 1;
 guint yfill : 1;
};

struct _GtkTableRowCol
{
 guint16 requisition;
 guint16 allocation;
 guint16 spacing;
 guint need_expand : 1;
 guint need_shrink : 1;
 guint expand : 1;
 guint shrink : 1;
 guint empty : 1;
};


GType gtk_table_get_type (void) __attribute__((__const__));
GtkWidget* gtk_table_new (guint rows,
          guint columns,
          gboolean homogeneous);
void gtk_table_resize (GtkTable *table,
          guint rows,
          guint columns);
void gtk_table_attach (GtkTable *table,
          GtkWidget *child,
          guint left_attach,
          guint right_attach,
          guint top_attach,
          guint bottom_attach,
          GtkAttachOptions xoptions,
          GtkAttachOptions yoptions,
          guint xpadding,
          guint ypadding);
void gtk_table_attach_defaults (GtkTable *table,
          GtkWidget *widget,
          guint left_attach,
          guint right_attach,
          guint top_attach,
          guint bottom_attach);
void gtk_table_set_row_spacing (GtkTable *table,
          guint row,
          guint spacing);
guint gtk_table_get_row_spacing (GtkTable *table,
          guint row);
void gtk_table_set_col_spacing (GtkTable *table,
          guint column,
          guint spacing);
guint gtk_table_get_col_spacing (GtkTable *table,
          guint column);
void gtk_table_set_row_spacings (GtkTable *table,
          guint spacing);
guint gtk_table_get_default_row_spacing (GtkTable *table);
void gtk_table_set_col_spacings (GtkTable *table,
          guint spacing);
guint gtk_table_get_default_col_spacing (GtkTable *table);
void gtk_table_set_homogeneous (GtkTable *table,
          gboolean homogeneous);
gboolean gtk_table_get_homogeneous (GtkTable *table);
void gtk_table_get_size (GtkTable *table,
                                      guint *rows,
                                      guint *columns);


}
# 177 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktearoffmenuitem.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktearoffmenuitem.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktearoffmenuitem.h"
typedef struct _GtkTearoffMenuItem GtkTearoffMenuItem;
typedef struct _GtkTearoffMenuItemClass GtkTearoffMenuItemClass;

struct _GtkTearoffMenuItem
{
 GtkMenuItem menu_item;

 guint torn_off : 1;
};

struct _GtkTearoffMenuItemClass
{
 GtkMenuItemClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_tearoff_menu_item_get_type (void) __attribute__((__const__));
GtkWidget* gtk_tearoff_menu_item_new (void);

}
# 178 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextbuffer.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextbuffer.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktexttagtable.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktexttagtable.h"
extern "C" {

typedef void (* GtkTextTagTableForeach) (GtkTextTag *tag, gpointer data);
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktexttagtable.h"
typedef struct _GtkTextTagTableClass GtkTextTagTableClass;

struct _GtkTextTagTable
{
 GObject parent_instance;

 GHashTable *hash;
 GSList *anonymous;
 gint anon_count;

 GSList *buffers;
};

struct _GtkTextTagTableClass
{
 GObjectClass parent_class;

 void (* tag_changed) (GtkTextTagTable *table, GtkTextTag *tag, gboolean size_changed);
 void (* tag_added) (GtkTextTagTable *table, GtkTextTag *tag);
 void (* tag_removed) (GtkTextTagTable *table, GtkTextTag *tag);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_text_tag_table_get_type (void) __attribute__((__const__));

GtkTextTagTable *gtk_text_tag_table_new (void);
void gtk_text_tag_table_add (GtkTextTagTable *table,
                                             GtkTextTag *tag);
void gtk_text_tag_table_remove (GtkTextTagTable *table,
                                             GtkTextTag *tag);
GtkTextTag *gtk_text_tag_table_lookup (GtkTextTagTable *table,
                                             const gchar *name);
void gtk_text_tag_table_foreach (GtkTextTagTable *table,
                                             GtkTextTagTableForeach func,
                                             gpointer data);
gint gtk_text_tag_table_get_size (GtkTextTagTable *table);





void _gtk_text_tag_table_add_buffer (GtkTextTagTable *table,
                                       gpointer buffer);
void _gtk_text_tag_table_remove_buffer (GtkTextTagTable *table,
                                       gpointer buffer);

}
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextbuffer.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextmark.h" 1
# 57 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextmark.h"
extern "C" {



typedef struct _GtkTextMark GtkTextMark;
typedef struct _GtkTextMarkClass GtkTextMarkClass;
# 71 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextmark.h"
struct _GtkTextMark
{
 GObject parent_instance;

 gpointer segment;
};

struct _GtkTextMarkClass
{
 GObjectClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_text_mark_get_type (void) __attribute__((__const__));

void gtk_text_mark_set_visible (GtkTextMark *mark,
                                         gboolean setting);
gboolean gtk_text_mark_get_visible (GtkTextMark *mark);

GtkTextMark *gtk_text_mark_new (const gchar *name,
           gboolean left_gravity);
const gchar * gtk_text_mark_get_name (GtkTextMark *mark);
gboolean gtk_text_mark_get_deleted (GtkTextMark *mark);
GtkTextBuffer* gtk_text_mark_get_buffer (GtkTextMark *mark);
gboolean gtk_text_mark_get_left_gravity (GtkTextMark *mark);

}
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextbuffer.h" 2


extern "C" {
# 54 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextbuffer.h"
typedef enum
{
 GTK_TEXT_BUFFER_TARGET_INFO_BUFFER_CONTENTS = - 1,
 GTK_TEXT_BUFFER_TARGET_INFO_RICH_TEXT = - 2,
 GTK_TEXT_BUFFER_TARGET_INFO_TEXT = - 3
} GtkTextBufferTargetInfo;

typedef struct _GtkTextBTree GtkTextBTree;

typedef struct _GtkTextLogAttrCache GtkTextLogAttrCache;
# 72 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextbuffer.h"
typedef struct _GtkTextBufferClass GtkTextBufferClass;

struct _GtkTextBuffer
{
 GObject parent_instance;

 GtkTextTagTable *tag_table;
 GtkTextBTree *btree;

 GSList *clipboard_contents_buffers;
 GSList *selection_clipboards;

 GtkTextLogAttrCache *log_attr_cache;

 guint user_action_count;


 guint modified : 1;

 guint has_selection : 1;
};

struct _GtkTextBufferClass
{
 GObjectClass parent_class;

 void (* insert_text) (GtkTextBuffer *buffer,
                           GtkTextIter *pos,
                           const gchar *text,
                           gint length);

 void (* insert_pixbuf) (GtkTextBuffer *buffer,
                           GtkTextIter *pos,
                           GdkPixbuf *pixbuf);

 void (* insert_child_anchor) (GtkTextBuffer *buffer,
                                 GtkTextIter *pos,
                                 GtkTextChildAnchor *anchor);

 void (* delete_range) (GtkTextBuffer *buffer,
                            GtkTextIter *start,
                            GtkTextIter *end);




 void (* changed) (GtkTextBuffer *buffer);



 void (* modified_changed) (GtkTextBuffer *buffer);


 void (* mark_set) (GtkTextBuffer *buffer,
                              const GtkTextIter *location,
                              GtkTextMark *mark);

 void (* mark_deleted) (GtkTextBuffer *buffer,
                              GtkTextMark *mark);

 void (* apply_tag) (GtkTextBuffer *buffer,
                              GtkTextTag *tag,
                              const GtkTextIter *start_char,
                              const GtkTextIter *end_char);

 void (* remove_tag) (GtkTextBuffer *buffer,
                              GtkTextTag *tag,
                              const GtkTextIter *start_char,
                              const GtkTextIter *end_char);


 void (* begin_user_action) (GtkTextBuffer *buffer);
 void (* end_user_action) (GtkTextBuffer *buffer);

 void (* paste_done) (GtkTextBuffer *buffer,
                              GtkClipboard *clipboard);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
};

GType gtk_text_buffer_get_type (void) __attribute__((__const__));




GtkTextBuffer *gtk_text_buffer_new (GtkTextTagTable *table);
gint gtk_text_buffer_get_line_count (GtkTextBuffer *buffer);
gint gtk_text_buffer_get_char_count (GtkTextBuffer *buffer);


GtkTextTagTable* gtk_text_buffer_get_tag_table (GtkTextBuffer *buffer);


void gtk_text_buffer_set_text (GtkTextBuffer *buffer,
                                       const gchar *text,
                                       gint len);


void gtk_text_buffer_insert (GtkTextBuffer *buffer,
                                       GtkTextIter *iter,
                                       const gchar *text,
                                       gint len);
void gtk_text_buffer_insert_at_cursor (GtkTextBuffer *buffer,
                                       const gchar *text,
                                       gint len);

gboolean gtk_text_buffer_insert_interactive (GtkTextBuffer *buffer,
                                                      GtkTextIter *iter,
                                                      const gchar *text,
                                                      gint len,
                                                      gboolean default_editable);
gboolean gtk_text_buffer_insert_interactive_at_cursor (GtkTextBuffer *buffer,
                                                      const gchar *text,
                                                      gint len,
                                                      gboolean default_editable);

void gtk_text_buffer_insert_range (GtkTextBuffer *buffer,
                                                  GtkTextIter *iter,
                                                  const GtkTextIter *start,
                                                  const GtkTextIter *end);
gboolean gtk_text_buffer_insert_range_interactive (GtkTextBuffer *buffer,
                                                  GtkTextIter *iter,
                                                  const GtkTextIter *start,
                                                  const GtkTextIter *end,
                                                  gboolean default_editable);

void gtk_text_buffer_insert_with_tags (GtkTextBuffer *buffer,
                                                  GtkTextIter *iter,
                                                  const gchar *text,
                                                  gint len,
                                                  GtkTextTag *first_tag,
                                                  ...) __attribute__((__sentinel__));

void gtk_text_buffer_insert_with_tags_by_name (GtkTextBuffer *buffer,
                                                  GtkTextIter *iter,
                                                  const gchar *text,
                                                  gint len,
                                                  const gchar *first_tag_name,
                                                  ...) __attribute__((__sentinel__));


void gtk_text_buffer_delete (GtkTextBuffer *buffer,
         GtkTextIter *start,
         GtkTextIter *end);
gboolean gtk_text_buffer_delete_interactive (GtkTextBuffer *buffer,
         GtkTextIter *start_iter,
         GtkTextIter *end_iter,
         gboolean default_editable);
gboolean gtk_text_buffer_backspace (GtkTextBuffer *buffer,
         GtkTextIter *iter,
         gboolean interactive,
         gboolean default_editable);


gchar *gtk_text_buffer_get_text (GtkTextBuffer *buffer,
                                                    const GtkTextIter *start,
                                                    const GtkTextIter *end,
                                                    gboolean include_hidden_chars);

gchar *gtk_text_buffer_get_slice (GtkTextBuffer *buffer,
                                                    const GtkTextIter *start,
                                                    const GtkTextIter *end,
                                                    gboolean include_hidden_chars);


void gtk_text_buffer_insert_pixbuf (GtkTextBuffer *buffer,
                                           GtkTextIter *iter,
                                           GdkPixbuf *pixbuf);


void gtk_text_buffer_insert_child_anchor (GtkTextBuffer *buffer,
                                                       GtkTextIter *iter,
                                                       GtkTextChildAnchor *anchor);


GtkTextChildAnchor *gtk_text_buffer_create_child_anchor (GtkTextBuffer *buffer,
                                                        GtkTextIter *iter);


void gtk_text_buffer_add_mark (GtkTextBuffer *buffer,
                                           GtkTextMark *mark,
                                           const GtkTextIter *where);
GtkTextMark *gtk_text_buffer_create_mark (GtkTextBuffer *buffer,
                                           const gchar *mark_name,
                                           const GtkTextIter *where,
                                           gboolean left_gravity);
void gtk_text_buffer_move_mark (GtkTextBuffer *buffer,
                                           GtkTextMark *mark,
                                           const GtkTextIter *where);
void gtk_text_buffer_delete_mark (GtkTextBuffer *buffer,
                                           GtkTextMark *mark);
GtkTextMark* gtk_text_buffer_get_mark (GtkTextBuffer *buffer,
                                           const gchar *name);

void gtk_text_buffer_move_mark_by_name (GtkTextBuffer *buffer,
                                         const gchar *name,
                                         const GtkTextIter *where);
void gtk_text_buffer_delete_mark_by_name (GtkTextBuffer *buffer,
                                         const gchar *name);

GtkTextMark* gtk_text_buffer_get_insert (GtkTextBuffer *buffer);
GtkTextMark* gtk_text_buffer_get_selection_bound (GtkTextBuffer *buffer);


void gtk_text_buffer_place_cursor (GtkTextBuffer *buffer,
                                  const GtkTextIter *where);
void gtk_text_buffer_select_range (GtkTextBuffer *buffer,
                                  const GtkTextIter *ins,
      const GtkTextIter *bound);




void gtk_text_buffer_apply_tag (GtkTextBuffer *buffer,
                                           GtkTextTag *tag,
                                           const GtkTextIter *start,
                                           const GtkTextIter *end);
void gtk_text_buffer_remove_tag (GtkTextBuffer *buffer,
                                           GtkTextTag *tag,
                                           const GtkTextIter *start,
                                           const GtkTextIter *end);
void gtk_text_buffer_apply_tag_by_name (GtkTextBuffer *buffer,
                                           const gchar *name,
                                           const GtkTextIter *start,
                                           const GtkTextIter *end);
void gtk_text_buffer_remove_tag_by_name (GtkTextBuffer *buffer,
                                           const gchar *name,
                                           const GtkTextIter *start,
                                           const GtkTextIter *end);
void gtk_text_buffer_remove_all_tags (GtkTextBuffer *buffer,
                                           const GtkTextIter *start,
                                           const GtkTextIter *end);





GtkTextTag *gtk_text_buffer_create_tag (GtkTextBuffer *buffer,
                                          const gchar *tag_name,
                                          const gchar *first_property_name,
                                          ...);




void gtk_text_buffer_get_iter_at_line_offset (GtkTextBuffer *buffer,
                                             GtkTextIter *iter,
                                             gint line_number,
                                             gint char_offset);
void gtk_text_buffer_get_iter_at_line_index (GtkTextBuffer *buffer,
                                             GtkTextIter *iter,
                                             gint line_number,
                                             gint byte_index);
void gtk_text_buffer_get_iter_at_offset (GtkTextBuffer *buffer,
                                             GtkTextIter *iter,
                                             gint char_offset);
void gtk_text_buffer_get_iter_at_line (GtkTextBuffer *buffer,
                                             GtkTextIter *iter,
                                             gint line_number);
void gtk_text_buffer_get_start_iter (GtkTextBuffer *buffer,
                                             GtkTextIter *iter);
void gtk_text_buffer_get_end_iter (GtkTextBuffer *buffer,
                                             GtkTextIter *iter);
void gtk_text_buffer_get_bounds (GtkTextBuffer *buffer,
                                             GtkTextIter *start,
                                             GtkTextIter *end);
void gtk_text_buffer_get_iter_at_mark (GtkTextBuffer *buffer,
                                             GtkTextIter *iter,
                                             GtkTextMark *mark);

void gtk_text_buffer_get_iter_at_child_anchor (GtkTextBuffer *buffer,
                                              GtkTextIter *iter,
                                              GtkTextChildAnchor *anchor);
# 360 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextbuffer.h"
gboolean gtk_text_buffer_get_modified (GtkTextBuffer *buffer);
void gtk_text_buffer_set_modified (GtkTextBuffer *buffer,
                                                        gboolean setting);

gboolean gtk_text_buffer_get_has_selection (GtkTextBuffer *buffer);

void gtk_text_buffer_add_selection_clipboard (GtkTextBuffer *buffer,
      GtkClipboard *clipboard);
void gtk_text_buffer_remove_selection_clipboard (GtkTextBuffer *buffer,
      GtkClipboard *clipboard);

void gtk_text_buffer_cut_clipboard (GtkTextBuffer *buffer,
       GtkClipboard *clipboard,
                                                        gboolean default_editable);
void gtk_text_buffer_copy_clipboard (GtkTextBuffer *buffer,
       GtkClipboard *clipboard);
void gtk_text_buffer_paste_clipboard (GtkTextBuffer *buffer,
       GtkClipboard *clipboard,
       GtkTextIter *override_location,
                                                        gboolean default_editable);

gboolean gtk_text_buffer_get_selection_bounds (GtkTextBuffer *buffer,
                                                        GtkTextIter *start,
                                                        GtkTextIter *end);
gboolean gtk_text_buffer_delete_selection (GtkTextBuffer *buffer,
                                                        gboolean interactive,
                                                        gboolean default_editable);


void gtk_text_buffer_begin_user_action (GtkTextBuffer *buffer);
void gtk_text_buffer_end_user_action (GtkTextBuffer *buffer);

GtkTargetList * gtk_text_buffer_get_copy_target_list (GtkTextBuffer *buffer);
GtkTargetList * gtk_text_buffer_get_paste_target_list (GtkTextBuffer *buffer);


void _gtk_text_buffer_spew (GtkTextBuffer *buffer);

GtkTextBTree* _gtk_text_buffer_get_btree (GtkTextBuffer *buffer);

const PangoLogAttr* _gtk_text_buffer_get_line_log_attrs (GtkTextBuffer *buffer,
                                                        const GtkTextIter *anywhere_in_line,
                                                        gint *char_len);

void _gtk_text_buffer_notify_will_remove_tag (GtkTextBuffer *buffer,
                                             GtkTextTag *tag);

}
# 179 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextbufferrichtext.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextbufferrichtext.h"
extern "C" {

typedef guint8 * (* GtkTextBufferSerializeFunc) (GtkTextBuffer *register_buffer,
                                                  GtkTextBuffer *content_buffer,
                                                  const GtkTextIter *start,
                                                  const GtkTextIter *end,
                                                  gsize *length,
                                                  gpointer user_data);
typedef gboolean (* GtkTextBufferDeserializeFunc) (GtkTextBuffer *register_buffer,
                                                  GtkTextBuffer *content_buffer,
                                                  GtkTextIter *iter,
                                                  const guint8 *data,
                                                  gsize length,
                                                  gboolean create_tags,
                                                  gpointer user_data,
                                                  GError **error);

GdkAtom gtk_text_buffer_register_serialize_format (GtkTextBuffer *buffer,
                                                      const gchar *mime_type,
                                                      GtkTextBufferSerializeFunc function,
                                                      gpointer user_data,
                                                      GDestroyNotify user_data_destroy);
GdkAtom gtk_text_buffer_register_serialize_tagset (GtkTextBuffer *buffer,
                                                      const gchar *tagset_name);

GdkAtom gtk_text_buffer_register_deserialize_format (GtkTextBuffer *buffer,
                                                      const gchar *mime_type,
                                                      GtkTextBufferDeserializeFunc function,
                                                      gpointer user_data,
                                                      GDestroyNotify user_data_destroy);
GdkAtom gtk_text_buffer_register_deserialize_tagset (GtkTextBuffer *buffer,
                                                      const gchar *tagset_name);

void gtk_text_buffer_unregister_serialize_format (GtkTextBuffer *buffer,
                                                      GdkAtom format);
void gtk_text_buffer_unregister_deserialize_format (GtkTextBuffer *buffer,
                                                      GdkAtom format);

void gtk_text_buffer_deserialize_set_can_create_tags (GtkTextBuffer *buffer,
                                                         GdkAtom format,
                                                         gboolean can_create_tags);
gboolean gtk_text_buffer_deserialize_get_can_create_tags (GtkTextBuffer *buffer,
                                                         GdkAtom format);

GdkAtom * gtk_text_buffer_get_serialize_formats (GtkTextBuffer *buffer,
                                                      gint *n_formats);
GdkAtom * gtk_text_buffer_get_deserialize_formats (GtkTextBuffer *buffer,
                                                      gint *n_formats);

guint8 * gtk_text_buffer_serialize (GtkTextBuffer *register_buffer,
                                                      GtkTextBuffer *content_buffer,
                                                      GdkAtom format,
                                                      const GtkTextIter *start,
                                                      const GtkTextIter *end,
                                                      gsize *length);
gboolean gtk_text_buffer_deserialize (GtkTextBuffer *register_buffer,
                                                      GtkTextBuffer *content_buffer,
                                                      GdkAtom format,
                                                      GtkTextIter *iter,
                                                      const guint8 *data,
                                                      gsize length,
                                                      GError **error);

}
# 180 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2





# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextview.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextview.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextview.h"
typedef enum
{
 GTK_TEXT_WINDOW_PRIVATE,
 GTK_TEXT_WINDOW_WIDGET,
 GTK_TEXT_WINDOW_TEXT,
 GTK_TEXT_WINDOW_LEFT,
 GTK_TEXT_WINDOW_RIGHT,
 GTK_TEXT_WINDOW_TOP,
 GTK_TEXT_WINDOW_BOTTOM
} GtkTextWindowType;



typedef struct _GtkTextView GtkTextView;
typedef struct _GtkTextViewClass GtkTextViewClass;


typedef struct _GtkTextWindow GtkTextWindow;
typedef struct _GtkTextPendingScroll GtkTextPendingScroll;

struct _GtkTextView
{
 GtkContainer parent_instance;

 struct _GtkTextLayout *layout;
 GtkTextBuffer *buffer;

 guint selection_drag_handler;
 guint scroll_timeout;


 gint pixels_above_lines;
 gint pixels_below_lines;
 gint pixels_inside_wrap;
 GtkWrapMode wrap_mode;
 GtkJustification justify;
 gint left_margin;
 gint right_margin;
 gint indent;
 PangoTabArray *tabs;
 guint editable : 1;

 guint overwrite_mode : 1;
 guint cursor_visible : 1;


 guint need_im_reset : 1;

 guint accepts_tab : 1;

 guint width_changed : 1;




 guint onscreen_validated : 1;

 guint mouse_cursor_obscured : 1;

 GtkTextWindow *text_window;
 GtkTextWindow *left_window;
 GtkTextWindow *right_window;
 GtkTextWindow *top_window;
 GtkTextWindow *bottom_window;

 GtkAdjustment *hadjustment;
 GtkAdjustment *vadjustment;

 gint xoffset;
 gint yoffset;
 gint width;
 gint height;
# 130 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktextview.h"
 gint virtual_cursor_x;
 gint virtual_cursor_y;

 GtkTextMark *first_para_mark;
 gint first_para_pixels;

 GtkTextMark *dnd_mark;
 guint blink_timeout;

 guint first_validate_idle;
 guint incremental_validate_idle;

 GtkIMContext *im_context;
 GtkWidget *popup_menu;

 gint drag_start_x;
 gint drag_start_y;

 GSList *children;

 GtkTextPendingScroll *pending_scroll;

 gint pending_place_cursor_button;
};

struct _GtkTextViewClass
{
 GtkContainerClass parent_class;

 void (* set_scroll_adjustments) (GtkTextView *text_view,
                                    GtkAdjustment *hadjustment,
                                    GtkAdjustment *vadjustment);

 void (* populate_popup) (GtkTextView *text_view,
                                    GtkMenu *menu);




 void (* move_cursor) (GtkTextView *text_view,
                       GtkMovementStep step,
                       gint count,
                       gboolean extend_selection);





 void (* page_horizontally) (GtkTextView *text_view,
                             gint count,
                             gboolean extend_selection);


 void (* set_anchor) (GtkTextView *text_view);


 void (* insert_at_cursor) (GtkTextView *text_view,
                                 const gchar *str);
 void (* delete_from_cursor) (GtkTextView *text_view,
                                 GtkDeleteType type,
                                 gint count);
 void (* backspace) (GtkTextView *text_view);


 void (* cut_clipboard) (GtkTextView *text_view);
 void (* copy_clipboard) (GtkTextView *text_view);
 void (* paste_clipboard) (GtkTextView *text_view);

 void (* toggle_overwrite) (GtkTextView *text_view);





 void (* move_focus) (GtkTextView *text_view,
                            GtkDirectionType direction);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
 void (*_gtk_reserved6) (void);
 void (*_gtk_reserved7) (void);
};

GType gtk_text_view_get_type (void) __attribute__((__const__));
GtkWidget * gtk_text_view_new (void);
GtkWidget * gtk_text_view_new_with_buffer (GtkTextBuffer *buffer);
void gtk_text_view_set_buffer (GtkTextView *text_view,
                                                   GtkTextBuffer *buffer);
GtkTextBuffer *gtk_text_view_get_buffer (GtkTextView *text_view);
gboolean gtk_text_view_scroll_to_iter (GtkTextView *text_view,
                                                   GtkTextIter *iter,
                                                   gdouble within_margin,
                                                   gboolean use_align,
                                                   gdouble xalign,
                                                   gdouble yalign);
void gtk_text_view_scroll_to_mark (GtkTextView *text_view,
                                                   GtkTextMark *mark,
                                                   gdouble within_margin,
                                                   gboolean use_align,
                                                   gdouble xalign,
                                                   gdouble yalign);
void gtk_text_view_scroll_mark_onscreen (GtkTextView *text_view,
                                                   GtkTextMark *mark);
gboolean gtk_text_view_move_mark_onscreen (GtkTextView *text_view,
                                                   GtkTextMark *mark);
gboolean gtk_text_view_place_cursor_onscreen (GtkTextView *text_view);

void gtk_text_view_get_visible_rect (GtkTextView *text_view,
                                                   GdkRectangle *visible_rect);
void gtk_text_view_set_cursor_visible (GtkTextView *text_view,
                                                   gboolean setting);
gboolean gtk_text_view_get_cursor_visible (GtkTextView *text_view);

void gtk_text_view_get_iter_location (GtkTextView *text_view,
                                                   const GtkTextIter *iter,
                                                   GdkRectangle *location);
void gtk_text_view_get_iter_at_location (GtkTextView *text_view,
                                                   GtkTextIter *iter,
                                                   gint x,
                                                   gint y);
void gtk_text_view_get_iter_at_position (GtkTextView *text_view,
                                                   GtkTextIter *iter,
         gint *trailing,
                                                   gint x,
                                                   gint y);
void gtk_text_view_get_line_yrange (GtkTextView *text_view,
                                                   const GtkTextIter *iter,
                                                   gint *y,
                                                   gint *height);

void gtk_text_view_get_line_at_y (GtkTextView *text_view,
                                                   GtkTextIter *target_iter,
                                                   gint y,
                                                   gint *line_top);

void gtk_text_view_buffer_to_window_coords (GtkTextView *text_view,
                                           GtkTextWindowType win,
                                           gint buffer_x,
                                           gint buffer_y,
                                           gint *window_x,
                                           gint *window_y);
void gtk_text_view_window_to_buffer_coords (GtkTextView *text_view,
                                           GtkTextWindowType win,
                                           gint window_x,
                                           gint window_y,
                                           gint *buffer_x,
                                           gint *buffer_y);

GtkAdjustment* gtk_text_view_get_hadjustment (GtkTextView *text_view);
GtkAdjustment* gtk_text_view_get_vadjustment (GtkTextView *text_view);

GdkWindow* gtk_text_view_get_window (GtkTextView *text_view,
                                                GtkTextWindowType win);
GtkTextWindowType gtk_text_view_get_window_type (GtkTextView *text_view,
                                                GdkWindow *window);

void gtk_text_view_set_border_window_size (GtkTextView *text_view,
                                          GtkTextWindowType type,
                                          gint size);
gint gtk_text_view_get_border_window_size (GtkTextView *text_view,
       GtkTextWindowType type);

gboolean gtk_text_view_forward_display_line (GtkTextView *text_view,
                                                      GtkTextIter *iter);
gboolean gtk_text_view_backward_display_line (GtkTextView *text_view,
                                                      GtkTextIter *iter);
gboolean gtk_text_view_forward_display_line_end (GtkTextView *text_view,
                                                      GtkTextIter *iter);
gboolean gtk_text_view_backward_display_line_start (GtkTextView *text_view,
                                                      GtkTextIter *iter);
gboolean gtk_text_view_starts_display_line (GtkTextView *text_view,
                                                      const GtkTextIter *iter);
gboolean gtk_text_view_move_visually (GtkTextView *text_view,
                                                      GtkTextIter *iter,
                                                      gint count);

gboolean gtk_text_view_im_context_filter_keypress (GtkTextView *text_view,
                                                                GdkEventKey *event);
void gtk_text_view_reset_im_context (GtkTextView *text_view);


void gtk_text_view_add_child_at_anchor (GtkTextView *text_view,
                                       GtkWidget *child,
                                       GtkTextChildAnchor *anchor);

void gtk_text_view_add_child_in_window (GtkTextView *text_view,
                                       GtkWidget *child,
                                       GtkTextWindowType which_window,

                                       gint xpos,
                                       gint ypos);

void gtk_text_view_move_child (GtkTextView *text_view,
                                       GtkWidget *child,

                                       gint xpos,
                                       gint ypos);



void gtk_text_view_set_wrap_mode (GtkTextView *text_view,
                                                      GtkWrapMode wrap_mode);
GtkWrapMode gtk_text_view_get_wrap_mode (GtkTextView *text_view);
void gtk_text_view_set_editable (GtkTextView *text_view,
                                                      gboolean setting);
gboolean gtk_text_view_get_editable (GtkTextView *text_view);
void gtk_text_view_set_overwrite (GtkTextView *text_view,
            gboolean overwrite);
gboolean gtk_text_view_get_overwrite (GtkTextView *text_view);
void gtk_text_view_set_accepts_tab (GtkTextView *text_view,
            gboolean accepts_tab);
gboolean gtk_text_view_get_accepts_tab (GtkTextView *text_view);
void gtk_text_view_set_pixels_above_lines (GtkTextView *text_view,
                                                      gint pixels_above_lines);
gint gtk_text_view_get_pixels_above_lines (GtkTextView *text_view);
void gtk_text_view_set_pixels_below_lines (GtkTextView *text_view,
                                                      gint pixels_below_lines);
gint gtk_text_view_get_pixels_below_lines (GtkTextView *text_view);
void gtk_text_view_set_pixels_inside_wrap (GtkTextView *text_view,
                                                      gint pixels_inside_wrap);
gint gtk_text_view_get_pixels_inside_wrap (GtkTextView *text_view);
void gtk_text_view_set_justification (GtkTextView *text_view,
                                                      GtkJustification justification);
GtkJustification gtk_text_view_get_justification (GtkTextView *text_view);
void gtk_text_view_set_left_margin (GtkTextView *text_view,
                                                      gint left_margin);
gint gtk_text_view_get_left_margin (GtkTextView *text_view);
void gtk_text_view_set_right_margin (GtkTextView *text_view,
                                                      gint right_margin);
gint gtk_text_view_get_right_margin (GtkTextView *text_view);
void gtk_text_view_set_indent (GtkTextView *text_view,
                                                      gint indent);
gint gtk_text_view_get_indent (GtkTextView *text_view);
void gtk_text_view_set_tabs (GtkTextView *text_view,
                                                      PangoTabArray *tabs);
PangoTabArray* gtk_text_view_get_tabs (GtkTextView *text_view);


GtkTextAttributes* gtk_text_view_get_default_attributes (GtkTextView *text_view);

}
# 186 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2



# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbar.h" 1
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbar.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktooltips.h" 1
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbar.h" 2





# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpixmap.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpixmap.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpixmap.h" 2


extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpixmap.h"
typedef struct _GtkPixmap GtkPixmap;
typedef struct _GtkPixmapClass GtkPixmapClass;

struct _GtkPixmap
{
 GtkMisc misc;

 GdkPixmap *pixmap;
 GdkBitmap *mask;

 GdkPixmap *pixmap_insensitive;
 guint build_insensitive : 1;
};

struct _GtkPixmapClass
{
 GtkMiscClass parent_class;
};


GType gtk_pixmap_get_type (void) __attribute__((__const__));
GtkWidget* gtk_pixmap_new (GdkPixmap *pixmap,
     GdkBitmap *mask);
void gtk_pixmap_set (GtkPixmap *pixmap,
     GdkPixmap *val,
     GdkBitmap *mask);
void gtk_pixmap_get (GtkPixmap *pixmap,
     GdkPixmap **val,
     GdkBitmap **mask);

void gtk_pixmap_set_build_insensitive (GtkPixmap *pixmap,
                              gboolean build);


}
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbar.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksignal.h" 1
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbar.h" 2



extern "C" {
# 62 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolbar.h"
typedef enum
{
 GTK_TOOLBAR_CHILD_SPACE,
 GTK_TOOLBAR_CHILD_BUTTON,
 GTK_TOOLBAR_CHILD_TOGGLEBUTTON,
 GTK_TOOLBAR_CHILD_RADIOBUTTON,
 GTK_TOOLBAR_CHILD_WIDGET
} GtkToolbarChildType;

typedef struct _GtkToolbarChild GtkToolbarChild;

struct _GtkToolbarChild
{
 GtkToolbarChildType type;
 GtkWidget *widget;
 GtkWidget *icon;
 GtkWidget *label;
};



typedef enum
{
 GTK_TOOLBAR_SPACE_EMPTY,
 GTK_TOOLBAR_SPACE_LINE
} GtkToolbarSpaceStyle;

typedef struct _GtkToolbar GtkToolbar;
typedef struct _GtkToolbarClass GtkToolbarClass;
typedef struct _GtkToolbarPrivate GtkToolbarPrivate;

struct _GtkToolbar
{
 GtkContainer container;


 gint num_children;
 GList *children;
 GtkOrientation orientation;
 GtkToolbarStyle style;
 GtkIconSize icon_size;


 GtkTooltips *tooltips;





 gint button_maxw;
 gint button_maxh;

 guint _gtk_reserved1;
 guint _gtk_reserved2;

 guint style_set : 1;
 guint icon_size_set : 1;
};

struct _GtkToolbarClass
{
 GtkContainerClass parent_class;


 void (* orientation_changed) (GtkToolbar *toolbar,
       GtkOrientation orientation);
 void (* style_changed) (GtkToolbar *toolbar,
       GtkToolbarStyle style);
 gboolean (* popup_context_menu) (GtkToolbar *toolbar,
       gint x,
       gint y,
       gint button_number);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
};

GType gtk_toolbar_get_type (void) __attribute__((__const__));
GtkWidget * gtk_toolbar_new (void);

void gtk_toolbar_insert (GtkToolbar *toolbar,
          GtkToolItem *item,
          gint pos);

gint gtk_toolbar_get_item_index (GtkToolbar *toolbar,
          GtkToolItem *item);
gint gtk_toolbar_get_n_items (GtkToolbar *toolbar);
GtkToolItem * gtk_toolbar_get_nth_item (GtkToolbar *toolbar,
          gint n);

gboolean gtk_toolbar_get_show_arrow (GtkToolbar *toolbar);
void gtk_toolbar_set_show_arrow (GtkToolbar *toolbar,
          gboolean show_arrow);

GtkToolbarStyle gtk_toolbar_get_style (GtkToolbar *toolbar);
void gtk_toolbar_set_style (GtkToolbar *toolbar,
          GtkToolbarStyle style);
void gtk_toolbar_unset_style (GtkToolbar *toolbar);

GtkIconSize gtk_toolbar_get_icon_size (GtkToolbar *toolbar);
void gtk_toolbar_set_icon_size (GtkToolbar *toolbar,
                                                    GtkIconSize icon_size);
void gtk_toolbar_unset_icon_size (GtkToolbar *toolbar);

GtkReliefStyle gtk_toolbar_get_relief_style (GtkToolbar *toolbar);
gint gtk_toolbar_get_drop_index (GtkToolbar *toolbar,
          gint x,
          gint y);
void gtk_toolbar_set_drop_highlight_item (GtkToolbar *toolbar,
          GtkToolItem *tool_item,
          gint index_);



gchar * _gtk_toolbar_elide_underscores (const gchar *original);
void _gtk_toolbar_paint_space_line (GtkWidget *widget,
          GtkToolbar *toolbar,
          const GdkRectangle *area,
          const GtkAllocation *allocation);
gint _gtk_toolbar_get_default_space_size (void);





GtkOrientation gtk_toolbar_get_orientation (GtkToolbar *toolbar);
void gtk_toolbar_set_orientation (GtkToolbar *toolbar,
          GtkOrientation orientation);
gboolean gtk_toolbar_get_tooltips (GtkToolbar *toolbar);
void gtk_toolbar_set_tooltips (GtkToolbar *toolbar,
          gboolean enable);


GtkWidget* gtk_toolbar_append_item (GtkToolbar *toolbar,
         const char *text,
         const char *tooltip_text,
         const char *tooltip_private_text,
         GtkWidget *icon,
         GCallback callback,
         gpointer user_data);
GtkWidget* gtk_toolbar_prepend_item (GtkToolbar *toolbar,
         const char *text,
         const char *tooltip_text,
         const char *tooltip_private_text,
         GtkWidget *icon,
         GCallback callback,
         gpointer user_data);
GtkWidget* gtk_toolbar_insert_item (GtkToolbar *toolbar,
         const char *text,
         const char *tooltip_text,
         const char *tooltip_private_text,
         GtkWidget *icon,
         GCallback callback,
         gpointer user_data,
         gint position);


GtkWidget* gtk_toolbar_insert_stock (GtkToolbar *toolbar,
    const gchar *stock_id,
    const char *tooltip_text,
    const char *tooltip_private_text,
    GCallback callback,
    gpointer user_data,
    gint position);


void gtk_toolbar_append_space (GtkToolbar *toolbar);
void gtk_toolbar_prepend_space (GtkToolbar *toolbar);
void gtk_toolbar_insert_space (GtkToolbar *toolbar,
    gint position);
void gtk_toolbar_remove_space (GtkToolbar *toolbar,
                                       gint position);

GtkWidget* gtk_toolbar_append_element (GtkToolbar *toolbar,
    GtkToolbarChildType type,
    GtkWidget *widget,
    const char *text,
    const char *tooltip_text,
    const char *tooltip_private_text,
    GtkWidget *icon,
    GCallback callback,
    gpointer user_data);

GtkWidget* gtk_toolbar_prepend_element (GtkToolbar *toolbar,
    GtkToolbarChildType type,
    GtkWidget *widget,
    const char *text,
    const char *tooltip_text,
    const char *tooltip_private_text,
    GtkWidget *icon,
    GCallback callback,
    gpointer user_data);

GtkWidget* gtk_toolbar_insert_element (GtkToolbar *toolbar,
    GtkToolbarChildType type,
    GtkWidget *widget,
    const char *text,
    const char *tooltip_text,
    const char *tooltip_private_text,
    GtkWidget *icon,
    GCallback callback,
    gpointer user_data,
    gint position);


void gtk_toolbar_append_widget (GtkToolbar *toolbar,
    GtkWidget *widget,
    const char *tooltip_text,
    const char *tooltip_private_text);
void gtk_toolbar_prepend_widget (GtkToolbar *toolbar,
    GtkWidget *widget,
    const char *tooltip_text,
    const char *tooltip_private_text);
void gtk_toolbar_insert_widget (GtkToolbar *toolbar,
    GtkWidget *widget,
    const char *tooltip_text,
    const char *tooltip_private_text,
    gint position);




}
# 190 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolitemgroup.h" 1
# 32 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolitemgroup.h"
extern "C" {
# 41 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolitemgroup.h"
typedef struct _GtkToolItemGroup GtkToolItemGroup;
typedef struct _GtkToolItemGroupClass GtkToolItemGroupClass;
typedef struct _GtkToolItemGroupPrivate GtkToolItemGroupPrivate;






struct _GtkToolItemGroup
{
 GtkContainer parent_instance;
 GtkToolItemGroupPrivate *priv;
};

struct _GtkToolItemGroupClass
{
 GtkContainerClass parent_class;
};

GType gtk_tool_item_group_get_type (void) __attribute__((__const__));
GtkWidget* gtk_tool_item_group_new (const gchar *label);

void gtk_tool_item_group_set_label (GtkToolItemGroup *group,
                                                            const gchar *label);
void gtk_tool_item_group_set_label_widget (GtkToolItemGroup *group,
                                                            GtkWidget *label_widget);
void gtk_tool_item_group_set_collapsed (GtkToolItemGroup *group,
                                                            gboolean collapsed);
void gtk_tool_item_group_set_ellipsize (GtkToolItemGroup *group,
                                                            PangoEllipsizeMode ellipsize);
void gtk_tool_item_group_set_header_relief (GtkToolItemGroup *group,
                                                            GtkReliefStyle style);

const gchar * gtk_tool_item_group_get_label (GtkToolItemGroup *group);
GtkWidget *gtk_tool_item_group_get_label_widget (GtkToolItemGroup *group);
gboolean gtk_tool_item_group_get_collapsed (GtkToolItemGroup *group);
PangoEllipsizeMode gtk_tool_item_group_get_ellipsize (GtkToolItemGroup *group);
GtkReliefStyle gtk_tool_item_group_get_header_relief (GtkToolItemGroup *group);

void gtk_tool_item_group_insert (GtkToolItemGroup *group,
                                                            GtkToolItem *item,
                                                            gint position);
void gtk_tool_item_group_set_item_position (GtkToolItemGroup *group,
                                                            GtkToolItem *item,
                                                            gint position);
gint gtk_tool_item_group_get_item_position (GtkToolItemGroup *group,
                                                            GtkToolItem *item);

guint gtk_tool_item_group_get_n_items (GtkToolItemGroup *group);
GtkToolItem* gtk_tool_item_group_get_nth_item (GtkToolItemGroup *group,
                                                            guint index);
GtkToolItem* gtk_tool_item_group_get_drop_item (GtkToolItemGroup *group,
                                                            gint x,
                                                            gint y);

}
# 193 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolpalette.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolpalette.h"
extern "C" {
# 42 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolpalette.h"
typedef struct _GtkToolPalette GtkToolPalette;
typedef struct _GtkToolPaletteClass GtkToolPaletteClass;
typedef struct _GtkToolPalettePrivate GtkToolPalettePrivate;
# 53 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolpalette.h"
typedef enum
{
 GTK_TOOL_PALETTE_DRAG_ITEMS = (1 << 0),
 GTK_TOOL_PALETTE_DRAG_GROUPS = (1 << 1)
}
GtkToolPaletteDragTargets;






struct _GtkToolPalette
{
 GtkContainer parent_instance;
 GtkToolPalettePrivate *priv;
};

struct _GtkToolPaletteClass
{
 GtkContainerClass parent_class;

 void (*set_scroll_adjustments) (GtkWidget *widget,
                                 GtkAdjustment *hadjustment,
                                 GtkAdjustment *vadjustment);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
 void (*_gtk_reserved5) (void);
 void (*_gtk_reserved6) (void);
};

GType gtk_tool_palette_get_type (void) __attribute__((__const__));
GtkWidget* gtk_tool_palette_new (void);

void gtk_tool_palette_set_group_position (GtkToolPalette *palette,
                                                                      GtkToolItemGroup *group,
                                                                      gint position);
void gtk_tool_palette_set_exclusive (GtkToolPalette *palette,
                                                                      GtkToolItemGroup *group,
                                                                      gboolean exclusive);
void gtk_tool_palette_set_expand (GtkToolPalette *palette,
                                                                      GtkToolItemGroup *group,
                                                                      gboolean expand);

gint gtk_tool_palette_get_group_position (GtkToolPalette *palette,
                                                                      GtkToolItemGroup *group);
gboolean gtk_tool_palette_get_exclusive (GtkToolPalette *palette,
                                                                      GtkToolItemGroup *group);
gboolean gtk_tool_palette_get_expand (GtkToolPalette *palette,
                                                                      GtkToolItemGroup *group);

void gtk_tool_palette_set_icon_size (GtkToolPalette *palette,
                                                                      GtkIconSize icon_size);
void gtk_tool_palette_unset_icon_size (GtkToolPalette *palette);
void gtk_tool_palette_set_style (GtkToolPalette *palette,
                                                                      GtkToolbarStyle style);
void gtk_tool_palette_unset_style (GtkToolPalette *palette);

GtkIconSize gtk_tool_palette_get_icon_size (GtkToolPalette *palette);
GtkToolbarStyle gtk_tool_palette_get_style (GtkToolPalette *palette);

GtkToolItem* gtk_tool_palette_get_drop_item (GtkToolPalette *palette,
                                                                      gint x,
                                                                      gint y);
GtkToolItemGroup* gtk_tool_palette_get_drop_group (GtkToolPalette *palette,
                                                                      gint x,
                                                                      gint y);
GtkWidget* gtk_tool_palette_get_drag_item (GtkToolPalette *palette,
                                                                      const GtkSelectionData *selection);

void gtk_tool_palette_set_drag_source (GtkToolPalette *palette,
                                                                      GtkToolPaletteDragTargets targets);
void gtk_tool_palette_add_drag_dest (GtkToolPalette *palette,
                                                                      GtkWidget *widget,
                                                                      GtkDestDefaults flags,
                                                                      GtkToolPaletteDragTargets targets,
                                                                      GdkDragAction actions);

GtkAdjustment* gtk_tool_palette_get_hadjustment (GtkToolPalette *palette);
GtkAdjustment* gtk_tool_palette_get_vadjustment (GtkToolPalette *palette);

const GtkTargetEntry * gtk_tool_palette_get_drag_target_item (void) __attribute__((__const__));
const GtkTargetEntry * gtk_tool_palette_get_drag_target_group (void) __attribute__((__const__));


}
# 194 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolshell.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolshell.h"
extern "C" {






typedef struct _GtkToolShell GtkToolShell;
typedef struct _GtkToolShellIface GtkToolShellIface;
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktoolshell.h"
struct _GtkToolShellIface
{

 GTypeInterface g_iface;


 GtkIconSize (*get_icon_size) (GtkToolShell *shell);
 GtkOrientation (*get_orientation) (GtkToolShell *shell);
 GtkToolbarStyle (*get_style) (GtkToolShell *shell);
 GtkReliefStyle (*get_relief_style) (GtkToolShell *shell);
 void (*rebuild_menu) (GtkToolShell *shell);
 GtkOrientation (*get_text_orientation) (GtkToolShell *shell);
 gfloat (*get_text_alignment) (GtkToolShell *shell);
 PangoEllipsizeMode (*get_ellipsize_mode) (GtkToolShell *shell);
 GtkSizeGroup * (*get_text_size_group) (GtkToolShell *shell);
};

GType gtk_tool_shell_get_type (void) __attribute__((__const__));

GtkIconSize gtk_tool_shell_get_icon_size (GtkToolShell *shell);
GtkOrientation gtk_tool_shell_get_orientation (GtkToolShell *shell);
GtkToolbarStyle gtk_tool_shell_get_style (GtkToolShell *shell);
GtkReliefStyle gtk_tool_shell_get_relief_style (GtkToolShell *shell);
void gtk_tool_shell_rebuild_menu (GtkToolShell *shell);
GtkOrientation gtk_tool_shell_get_text_orientation (GtkToolShell *shell);
gfloat gtk_tool_shell_get_text_alignment (GtkToolShell *shell);
PangoEllipsizeMode gtk_tool_shell_get_ellipsize_mode (GtkToolShell *shell);
GtkSizeGroup * gtk_tool_shell_get_text_size_group (GtkToolShell *shell);

}
# 195 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktestutils.h" 1
# 28 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktestutils.h"
extern "C" {


void gtk_test_init (int *argcp,
                                                char ***argvp,
                                                ...);
void gtk_test_register_all_types (void);
const GType* gtk_test_list_all_types (guint *n_types);
GtkWidget* gtk_test_find_widget (GtkWidget *widget,
                                                const gchar *label_pattern,
                                                GType widget_type);
GtkWidget* gtk_test_create_widget (GType widget_type,
                                                const gchar *first_property_name,
                                                ...);
GtkWidget* gtk_test_create_simple_window (const gchar *window_title,
                                                const gchar *dialog_text);
GtkWidget* gtk_test_display_button_window (const gchar *window_title,
                                                const gchar *dialog_text,
                                                ...);
void gtk_test_slider_set_perc (GtkWidget *widget,
                                                double percentage);
double gtk_test_slider_get_value (GtkWidget *widget);
gboolean gtk_test_spin_button_click (GtkSpinButton *spinner,
                                                guint button,
                                                gboolean upwards);
gboolean gtk_test_widget_click (GtkWidget *widget,
                                                guint button,
                                                GdkModifierType modifiers);
gboolean gtk_test_widget_send_key (GtkWidget *widget,
                                                guint keyval,
                                                GdkModifierType modifiers);

void gtk_test_text_set (GtkWidget *widget,
                                                const gchar *string);
gchar* gtk_test_text_get (GtkWidget *widget);


GtkWidget* gtk_test_find_sibling (GtkWidget *base_widget,
                                                GType widget_type);
GtkWidget* gtk_test_find_label (GtkWidget *widget,
                                                const gchar *label_pattern);
}
# 197 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreednd.h" 1
# 30 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreednd.h"
extern "C" {






typedef struct _GtkTreeDragSource GtkTreeDragSource;
typedef struct _GtkTreeDragSourceIface GtkTreeDragSourceIface;

struct _GtkTreeDragSourceIface
{
 GTypeInterface g_iface;



 gboolean (* row_draggable) (GtkTreeDragSource *drag_source,
                                        GtkTreePath *path);

 gboolean (* drag_data_get) (GtkTreeDragSource *drag_source,
                                        GtkTreePath *path,
                                        GtkSelectionData *selection_data);

 gboolean (* drag_data_delete) (GtkTreeDragSource *drag_source,
                                        GtkTreePath *path);
};

GType gtk_tree_drag_source_get_type (void) __attribute__((__const__));


gboolean gtk_tree_drag_source_row_draggable (GtkTreeDragSource *drag_source,
                                               GtkTreePath *path);


gboolean gtk_tree_drag_source_drag_data_delete (GtkTreeDragSource *drag_source,
                                               GtkTreePath *path);




gboolean gtk_tree_drag_source_drag_data_get (GtkTreeDragSource *drag_source,
                                               GtkTreePath *path,
                                               GtkSelectionData *selection_data);






typedef struct _GtkTreeDragDest GtkTreeDragDest;
typedef struct _GtkTreeDragDestIface GtkTreeDragDestIface;

struct _GtkTreeDragDestIface
{
 GTypeInterface g_iface;



 gboolean (* drag_data_received) (GtkTreeDragDest *drag_dest,
                                      GtkTreePath *dest,
                                      GtkSelectionData *selection_data);

 gboolean (* row_drop_possible) (GtkTreeDragDest *drag_dest,
                                      GtkTreePath *dest_path,
          GtkSelectionData *selection_data);
};

GType gtk_tree_drag_dest_get_type (void) __attribute__((__const__));




gboolean gtk_tree_drag_dest_drag_data_received (GtkTreeDragDest *drag_dest,
     GtkTreePath *dest,
     GtkSelectionData *selection_data);



gboolean gtk_tree_drag_dest_row_drop_possible (GtkTreeDragDest *drag_dest,
     GtkTreePath *dest_path,
     GtkSelectionData *selection_data);





gboolean gtk_tree_set_row_drag_data (GtkSelectionData *selection_data,
     GtkTreeModel *tree_model,
     GtkTreePath *path);
gboolean gtk_tree_get_row_drag_data (GtkSelectionData *selection_data,
     GtkTreeModel **tree_model,
     GtkTreePath **path);

}
# 198 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodelsort.h" 1
# 31 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodelsort.h"
extern "C" {
# 40 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreemodelsort.h"
typedef struct _GtkTreeModelSort GtkTreeModelSort;
typedef struct _GtkTreeModelSortClass GtkTreeModelSortClass;

struct _GtkTreeModelSort
{
 GObject parent;


 gpointer root;
 gint stamp;
 guint child_flags;
 GtkTreeModel *child_model;
 gint zero_ref_count;


 GList *sort_list;
 gint sort_column_id;
 GtkSortType order;


 GtkTreeIterCompareFunc default_sort_func;
 gpointer default_sort_data;
 GDestroyNotify default_sort_destroy;


 guint changed_id;
 guint inserted_id;
 guint has_child_toggled_id;
 guint deleted_id;
 guint reordered_id;
};

struct _GtkTreeModelSortClass
{
 GObjectClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_tree_model_sort_get_type (void) __attribute__((__const__));
GtkTreeModel *gtk_tree_model_sort_new_with_model (GtkTreeModel *child_model);

GtkTreeModel *gtk_tree_model_sort_get_model (GtkTreeModelSort *tree_model);
GtkTreePath *gtk_tree_model_sort_convert_child_path_to_path (GtkTreeModelSort *tree_model_sort,
            GtkTreePath *child_path);
gboolean gtk_tree_model_sort_convert_child_iter_to_iter (GtkTreeModelSort *tree_model_sort,
            GtkTreeIter *sort_iter,
            GtkTreeIter *child_iter);
GtkTreePath *gtk_tree_model_sort_convert_path_to_child_path (GtkTreeModelSort *tree_model_sort,
            GtkTreePath *sorted_path);
void gtk_tree_model_sort_convert_iter_to_child_iter (GtkTreeModelSort *tree_model_sort,
            GtkTreeIter *child_iter,
            GtkTreeIter *sorted_iter);
void gtk_tree_model_sort_reset_default_sort_func (GtkTreeModelSort *tree_model_sort);
void gtk_tree_model_sort_clear_cache (GtkTreeModelSort *tree_model_sort);
gboolean gtk_tree_model_sort_iter_is_valid (GtkTreeModelSort *tree_model_sort,
                                                             GtkTreeIter *iter);


}
# 201 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeselection.h" 1
# 29 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeselection.h"
extern "C" {
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeselection.h"
typedef gboolean (* GtkTreeSelectionFunc) (GtkTreeSelection *selection,
          GtkTreeModel *model,
          GtkTreePath *path,
                                             gboolean path_currently_selected,
          gpointer data);
typedef void (* GtkTreeSelectionForeachFunc) (GtkTreeModel *model,
          GtkTreePath *path,
          GtkTreeIter *iter,
          gpointer data);

struct _GtkTreeSelection
{
 GObject parent;



 GtkTreeView *tree_view;
 GtkSelectionMode type;
 GtkTreeSelectionFunc user_func;
 gpointer user_data;
 GDestroyNotify destroy;
};

struct _GtkTreeSelectionClass
{
 GObjectClass parent_class;

 void (* changed) (GtkTreeSelection *selection);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_tree_selection_get_type (void) __attribute__((__const__));

void gtk_tree_selection_set_mode (GtkTreeSelection *selection,
       GtkSelectionMode type);
GtkSelectionMode gtk_tree_selection_get_mode (GtkTreeSelection *selection);
void gtk_tree_selection_set_select_function (GtkTreeSelection *selection,
       GtkTreeSelectionFunc func,
       gpointer data,
       GDestroyNotify destroy);
gpointer gtk_tree_selection_get_user_data (GtkTreeSelection *selection);
GtkTreeView* gtk_tree_selection_get_tree_view (GtkTreeSelection *selection);

GtkTreeSelectionFunc gtk_tree_selection_get_select_function (GtkTreeSelection *selection);



gboolean gtk_tree_selection_get_selected (GtkTreeSelection *selection,
       GtkTreeModel **model,
       GtkTreeIter *iter);
GList * gtk_tree_selection_get_selected_rows (GtkTreeSelection *selection,
                                                        GtkTreeModel **model);
gint gtk_tree_selection_count_selected_rows (GtkTreeSelection *selection);
void gtk_tree_selection_selected_foreach (GtkTreeSelection *selection,
       GtkTreeSelectionForeachFunc func,
       gpointer data);
void gtk_tree_selection_select_path (GtkTreeSelection *selection,
       GtkTreePath *path);
void gtk_tree_selection_unselect_path (GtkTreeSelection *selection,
       GtkTreePath *path);
void gtk_tree_selection_select_iter (GtkTreeSelection *selection,
       GtkTreeIter *iter);
void gtk_tree_selection_unselect_iter (GtkTreeSelection *selection,
       GtkTreeIter *iter);
gboolean gtk_tree_selection_path_is_selected (GtkTreeSelection *selection,
       GtkTreePath *path);
gboolean gtk_tree_selection_iter_is_selected (GtkTreeSelection *selection,
       GtkTreeIter *iter);
void gtk_tree_selection_select_all (GtkTreeSelection *selection);
void gtk_tree_selection_unselect_all (GtkTreeSelection *selection);
void gtk_tree_selection_select_range (GtkTreeSelection *selection,
       GtkTreePath *start_path,
       GtkTreePath *end_path);
void gtk_tree_selection_unselect_range (GtkTreeSelection *selection,
                                                        GtkTreePath *start_path,
       GtkTreePath *end_path);


}
# 202 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreestore.h" 1
# 33 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreestore.h"
extern "C" {
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreestore.h"
typedef struct _GtkTreeStore GtkTreeStore;
typedef struct _GtkTreeStoreClass GtkTreeStoreClass;

struct _GtkTreeStore
{
 GObject parent;

 gint stamp;
 gpointer root;
 gpointer last;
 gint n_columns;
 gint sort_column_id;
 GList *sort_list;
 GtkSortType order;
 GType *column_headers;
 GtkTreeIterCompareFunc default_sort_func;
 gpointer default_sort_data;
 GDestroyNotify default_sort_destroy;
 guint columns_dirty : 1;
};

struct _GtkTreeStoreClass
{
 GObjectClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_tree_store_get_type (void) __attribute__((__const__));
GtkTreeStore *gtk_tree_store_new (gint n_columns,
           ...);
GtkTreeStore *gtk_tree_store_newv (gint n_columns,
           GType *types);
void gtk_tree_store_set_column_types (GtkTreeStore *tree_store,
           gint n_columns,
           GType *types);



void gtk_tree_store_set_value (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           gint column,
           GValue *value);
void gtk_tree_store_set (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           ...);
void gtk_tree_store_set_valuesv (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           gint *columns,
           GValue *values,
           gint n_values);
void gtk_tree_store_set_valist (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           va_list var_args);
gboolean gtk_tree_store_remove (GtkTreeStore *tree_store,
           GtkTreeIter *iter);
void gtk_tree_store_insert (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           GtkTreeIter *parent,
           gint position);
void gtk_tree_store_insert_before (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           GtkTreeIter *parent,
           GtkTreeIter *sibling);
void gtk_tree_store_insert_after (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           GtkTreeIter *parent,
           GtkTreeIter *sibling);
void gtk_tree_store_insert_with_values (GtkTreeStore *tree_store,
      GtkTreeIter *iter,
      GtkTreeIter *parent,
      gint position,
      ...);
void gtk_tree_store_insert_with_valuesv (GtkTreeStore *tree_store,
       GtkTreeIter *iter,
       GtkTreeIter *parent,
       gint position,
       gint *columns,
       GValue *values,
       gint n_values);
void gtk_tree_store_prepend (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           GtkTreeIter *parent);
void gtk_tree_store_append (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           GtkTreeIter *parent);
gboolean gtk_tree_store_is_ancestor (GtkTreeStore *tree_store,
           GtkTreeIter *iter,
           GtkTreeIter *descendant);
gint gtk_tree_store_iter_depth (GtkTreeStore *tree_store,
           GtkTreeIter *iter);
void gtk_tree_store_clear (GtkTreeStore *tree_store);
gboolean gtk_tree_store_iter_is_valid (GtkTreeStore *tree_store,
                                              GtkTreeIter *iter);
void gtk_tree_store_reorder (GtkTreeStore *tree_store,
                                              GtkTreeIter *parent,
                                              gint *new_order);
void gtk_tree_store_swap (GtkTreeStore *tree_store,
                                              GtkTreeIter *a,
                                              GtkTreeIter *b);
void gtk_tree_store_move_before (GtkTreeStore *tree_store,
                                              GtkTreeIter *iter,
                                              GtkTreeIter *position);
void gtk_tree_store_move_after (GtkTreeStore *tree_store,
                                              GtkTreeIter *iter,
                                              GtkTreeIter *position);


}
# 204 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2



# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkuimanager.h" 1
# 43 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkuimanager.h"
extern "C" {
# 52 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkuimanager.h"
typedef struct _GtkUIManager GtkUIManager;
typedef struct _GtkUIManagerClass GtkUIManagerClass;
typedef struct _GtkUIManagerPrivate GtkUIManagerPrivate;


struct _GtkUIManager {
 GObject parent;



 GtkUIManagerPrivate *private_data;
};

struct _GtkUIManagerClass {
 GObjectClass parent_class;


 void (* add_widget) (GtkUIManager *merge,
                            GtkWidget *widget);
 void (* actions_changed) (GtkUIManager *merge);
 void (* connect_proxy) (GtkUIManager *merge,
       GtkAction *action,
       GtkWidget *proxy);
 void (* disconnect_proxy) (GtkUIManager *merge,
       GtkAction *action,
       GtkWidget *proxy);
 void (* pre_activate) (GtkUIManager *merge,
       GtkAction *action);
 void (* post_activate) (GtkUIManager *merge,
       GtkAction *action);


 GtkWidget * (* get_widget) (GtkUIManager *manager,
                             const gchar *path);
 GtkAction * (* get_action) (GtkUIManager *manager,
                             const gchar *path);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
};

typedef enum {
 GTK_UI_MANAGER_AUTO = 0,
 GTK_UI_MANAGER_MENUBAR = 1 << 0,
 GTK_UI_MANAGER_MENU = 1 << 1,
 GTK_UI_MANAGER_TOOLBAR = 1 << 2,
 GTK_UI_MANAGER_PLACEHOLDER = 1 << 3,
 GTK_UI_MANAGER_POPUP = 1 << 4,
 GTK_UI_MANAGER_MENUITEM = 1 << 5,
 GTK_UI_MANAGER_TOOLITEM = 1 << 6,
 GTK_UI_MANAGER_SEPARATOR = 1 << 7,
 GTK_UI_MANAGER_ACCELERATOR = 1 << 8,
 GTK_UI_MANAGER_POPUP_WITH_ACCELS = 1 << 9
} GtkUIManagerItemType;






GType gtk_ui_manager_get_type (void) __attribute__((__const__));
GtkUIManager *gtk_ui_manager_new (void);
void gtk_ui_manager_set_add_tearoffs (GtkUIManager *self,
        gboolean add_tearoffs);
gboolean gtk_ui_manager_get_add_tearoffs (GtkUIManager *self);
void gtk_ui_manager_insert_action_group (GtkUIManager *self,
        GtkActionGroup *action_group,
        gint pos);
void gtk_ui_manager_remove_action_group (GtkUIManager *self,
        GtkActionGroup *action_group);
GList *gtk_ui_manager_get_action_groups (GtkUIManager *self);
GtkAccelGroup *gtk_ui_manager_get_accel_group (GtkUIManager *self);
GtkWidget *gtk_ui_manager_get_widget (GtkUIManager *self,
        const gchar *path);
GSList *gtk_ui_manager_get_toplevels (GtkUIManager *self,
        GtkUIManagerItemType types);
GtkAction *gtk_ui_manager_get_action (GtkUIManager *self,
        const gchar *path);
guint gtk_ui_manager_add_ui_from_string (GtkUIManager *self,
        const gchar *buffer,
        gssize length,
        GError **error);
guint gtk_ui_manager_add_ui_from_file (GtkUIManager *self,
        const gchar *filename,
        GError **error);
void gtk_ui_manager_add_ui (GtkUIManager *self,
        guint merge_id,
        const gchar *path,
        const gchar *name,
        const gchar *action,
        GtkUIManagerItemType type,
        gboolean top);
void gtk_ui_manager_remove_ui (GtkUIManager *self,
        guint merge_id);
gchar *gtk_ui_manager_get_ui (GtkUIManager *self);
void gtk_ui_manager_ensure_update (GtkUIManager *self);
guint gtk_ui_manager_new_merge_id (GtkUIManager *self);

}
# 208 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvbbox.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvbbox.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvbbox.h"
typedef struct _GtkVButtonBox GtkVButtonBox;
typedef struct _GtkVButtonBoxClass GtkVButtonBoxClass;

struct _GtkVButtonBox
{
 GtkButtonBox button_box;
};

struct _GtkVButtonBoxClass
{
 GtkButtonBoxClass parent_class;
};


GType gtk_vbutton_box_get_type (void) __attribute__((__const__));
GtkWidget *gtk_vbutton_box_new (void);




gint gtk_vbutton_box_get_spacing_default (void);
void gtk_vbutton_box_set_spacing_default (gint spacing);

GtkButtonBoxStyle gtk_vbutton_box_get_layout_default (void);
void gtk_vbutton_box_set_layout_default (GtkButtonBoxStyle layout);



GtkButtonBoxStyle _gtk_vbutton_box_get_layout_default (void);

}
# 209 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkversion.h" 1
# 211 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvolumebutton.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvolumebutton.h"
extern "C" {
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvolumebutton.h"
typedef struct _GtkVolumeButton GtkVolumeButton;
typedef struct _GtkVolumeButtonClass GtkVolumeButtonClass;

struct _GtkVolumeButton
{
 GtkScaleButton parent;
};

struct _GtkVolumeButtonClass
{
 GtkScaleButtonClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_volume_button_get_type (void) __attribute__((__const__));
GtkWidget* gtk_volume_button_new (void);

}
# 213 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvpaned.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvpaned.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvpaned.h"
typedef struct _GtkVPaned GtkVPaned;
typedef struct _GtkVPanedClass GtkVPanedClass;

struct _GtkVPaned
{
 GtkPaned paned;
};

struct _GtkVPanedClass
{
 GtkPanedClass parent_class;
};


GType gtk_vpaned_get_type (void) __attribute__((__const__));
GtkWidget * gtk_vpaned_new (void);

}
# 214 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvruler.h" 1
# 47 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvruler.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkruler.h" 1
# 48 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvruler.h" 2


extern "C" {
# 61 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvruler.h"
typedef struct _GtkVRuler GtkVRuler;
typedef struct _GtkVRulerClass GtkVRulerClass;

struct _GtkVRuler
{
 GtkRuler ruler;
};

struct _GtkVRulerClass
{
 GtkRulerClass parent_class;
};


GType gtk_vruler_get_type (void) __attribute__((__const__));
GtkWidget* gtk_vruler_new (void);


}
# 215 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvscale.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvscale.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvscale.h"
typedef struct _GtkVScale GtkVScale;
typedef struct _GtkVScaleClass GtkVScaleClass;







struct _GtkVScale
{
 GtkScale scale;
};

struct _GtkVScaleClass
{
 GtkScaleClass parent_class;
};


GType gtk_vscale_get_type (void) __attribute__((__const__));
GtkWidget* gtk_vscale_new (GtkAdjustment *adjustment);
GtkWidget* gtk_vscale_new_with_range (gdouble min,
                                     gdouble max,
                                     gdouble step);


}
# 216 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvseparator.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvseparator.h"
extern "C" {
# 49 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkvseparator.h"
typedef struct _GtkVSeparator GtkVSeparator;
typedef struct _GtkVSeparatorClass GtkVSeparatorClass;







struct _GtkVSeparator
{
 GtkSeparator separator;
};

struct _GtkVSeparatorClass
{
 GtkSeparatorClass parent_class;
};


GType gtk_vseparator_get_type (void) __attribute__((__const__));
GtkWidget* gtk_vseparator_new (void);


}
# 218 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2




# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktext.h" 1
# 223 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktree.h" 1
# 224 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktreeitem.h" 1
# 225 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2


# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkclist.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkclist.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksignal.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkclist.h" 2







extern "C" {



enum {
 GTK_CLIST_IN_DRAG = 1 << 0,
 GTK_CLIST_ROW_HEIGHT_SET = 1 << 1,
 GTK_CLIST_SHOW_TITLES = 1 << 2,

 GTK_CLIST_ADD_MODE = 1 << 4,
 GTK_CLIST_AUTO_SORT = 1 << 5,
 GTK_CLIST_AUTO_RESIZE_BLOCKED = 1 << 6,
 GTK_CLIST_REORDERABLE = 1 << 7,
 GTK_CLIST_USE_DRAG_ICONS = 1 << 8,
 GTK_CLIST_DRAW_DRAG_LINE = 1 << 9,
 GTK_CLIST_DRAW_DRAG_RECT = 1 << 10
};


typedef enum
{
 GTK_CELL_EMPTY,
 GTK_CELL_TEXT,
 GTK_CELL_PIXMAP,
 GTK_CELL_PIXTEXT,
 GTK_CELL_WIDGET
} GtkCellType;

typedef enum
{
 GTK_CLIST_DRAG_NONE,
 GTK_CLIST_DRAG_BEFORE,
 GTK_CLIST_DRAG_INTO,
 GTK_CLIST_DRAG_AFTER
} GtkCListDragPos;

typedef enum
{
 GTK_BUTTON_IGNORED = 0,
 GTK_BUTTON_SELECTS = 1 << 0,
 GTK_BUTTON_DRAGS = 1 << 1,
 GTK_BUTTON_EXPANDS = 1 << 2
} GtkButtonAction;
# 117 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkclist.h"
typedef struct _GtkCList GtkCList;
typedef struct _GtkCListClass GtkCListClass;
typedef struct _GtkCListColumn GtkCListColumn;
typedef struct _GtkCListRow GtkCListRow;

typedef struct _GtkCell GtkCell;
typedef struct _GtkCellText GtkCellText;
typedef struct _GtkCellPixmap GtkCellPixmap;
typedef struct _GtkCellPixText GtkCellPixText;
typedef struct _GtkCellWidget GtkCellWidget;

typedef gint (*GtkCListCompareFunc) (GtkCList *clist,
        gconstpointer ptr1,
        gconstpointer ptr2);

typedef struct _GtkCListCellInfo GtkCListCellInfo;
typedef struct _GtkCListDestInfo GtkCListDestInfo;

struct _GtkCListCellInfo
{
 gint row;
 gint column;
};

struct _GtkCListDestInfo
{
 GtkCListCellInfo cell;
 GtkCListDragPos insert_pos;
};

struct _GtkCList
{
 GtkContainer container;

 guint16 flags;

 gpointer reserved1;
 gpointer reserved2;

 guint freeze_count;



 GdkRectangle internal_allocation;


 gint rows;
 gint row_height;
 GList *row_list;
 GList *row_list_end;


 gint columns;
 GdkRectangle column_title_area;
 GdkWindow *title_window;


 GtkCListColumn *column;



 GdkWindow *clist_window;
 gint clist_window_width;
 gint clist_window_height;


 gint hoffset;
 gint voffset;


 GtkShadowType shadow_type;


 GtkSelectionMode selection_mode;


 GList *selection;
 GList *selection_end;

 GList *undo_selection;
 GList *undo_unselection;
 gint undo_anchor;


 guint8 button_actions[5];

 guint8 drag_button;


 GtkCListCellInfo click_cell;


 GtkAdjustment *hadjustment;
 GtkAdjustment *vadjustment;


 GdkGC *xor_gc;


 GdkGC *fg_gc;
 GdkGC *bg_gc;


 GdkCursor *cursor_drag;


 gint x_drag;


 gint focus_row;

 gint focus_header_column;


 gint anchor;
 GtkStateType anchor_state;
 gint drag_pos;
 gint htimer;
 gint vtimer;

 GtkSortType sort_type;
 GtkCListCompareFunc compare;
 gint sort_column;

 gint drag_highlight_row;
 GtkCListDragPos drag_highlight_pos;
};

struct _GtkCListClass
{
 GtkContainerClass parent_class;

 void (*set_scroll_adjustments) (GtkCList *clist,
      GtkAdjustment *hadjustment,
      GtkAdjustment *vadjustment);
 void (*refresh) (GtkCList *clist);
 void (*select_row) (GtkCList *clist,
    gint row,
    gint column,
    GdkEvent *event);
 void (*unselect_row) (GtkCList *clist,
    gint row,
    gint column,
    GdkEvent *event);
 void (*row_move) (GtkCList *clist,
    gint source_row,
    gint dest_row);
 void (*click_column) (GtkCList *clist,
    gint column);
 void (*resize_column) (GtkCList *clist,
    gint column,
                                gint width);
 void (*toggle_focus_row) (GtkCList *clist);
 void (*select_all) (GtkCList *clist);
 void (*unselect_all) (GtkCList *clist);
 void (*undo_selection) (GtkCList *clist);
 void (*start_selection) (GtkCList *clist);
 void (*end_selection) (GtkCList *clist);
 void (*extend_selection) (GtkCList *clist,
    GtkScrollType scroll_type,
    gfloat position,
    gboolean auto_start_selection);
 void (*scroll_horizontal) (GtkCList *clist,
    GtkScrollType scroll_type,
    gfloat position);
 void (*scroll_vertical) (GtkCList *clist,
    GtkScrollType scroll_type,
    gfloat position);
 void (*toggle_add_mode) (GtkCList *clist);
 void (*abort_column_resize) (GtkCList *clist);
 void (*resync_selection) (GtkCList *clist,
    GdkEvent *event);
 GList* (*selection_find) (GtkCList *clist,
    gint row_number,
    GList *row_list_element);
 void (*draw_row) (GtkCList *clist,
    GdkRectangle *area,
    gint row,
    GtkCListRow *clist_row);
 void (*draw_drag_highlight) (GtkCList *clist,
    GtkCListRow *target_row,
    gint target_row_number,
    GtkCListDragPos drag_pos);
 void (*clear) (GtkCList *clist);
 void (*fake_unselect_all) (GtkCList *clist,
    gint row);
 void (*sort_list) (GtkCList *clist);
 gint (*insert_row) (GtkCList *clist,
    gint row,
    gchar *text[]);
 void (*remove_row) (GtkCList *clist,
    gint row);
 void (*set_cell_contents) (GtkCList *clist,
    GtkCListRow *clist_row,
    gint column,
    GtkCellType type,
    const gchar *text,
    guint8 spacing,
    GdkPixmap *pixmap,
    GdkBitmap *mask);
 void (*cell_size_request) (GtkCList *clist,
    GtkCListRow *clist_row,
    gint column,
    GtkRequisition *requisition);

};

struct _GtkCListColumn
{
 gchar *title;
 GdkRectangle area;

 GtkWidget *button;
 GdkWindow *window;

 gint width;
 gint min_width;
 gint max_width;
 GtkJustification justification;

 guint visible : 1;
 guint width_set : 1;
 guint resizeable : 1;
 guint auto_resize : 1;
 guint button_passive : 1;
};

struct _GtkCListRow
{
 GtkCell *cell;
 GtkStateType state;

 GdkColor foreground;
 GdkColor background;

 GtkStyle *style;

 gpointer data;
 GDestroyNotify destroy;

 guint fg_set : 1;
 guint bg_set : 1;
 guint selectable : 1;
};


struct _GtkCellText
{
 GtkCellType type;

 gint16 vertical;
 gint16 horizontal;

 GtkStyle *style;

 gchar *text;
};

struct _GtkCellPixmap
{
 GtkCellType type;

 gint16 vertical;
 gint16 horizontal;

 GtkStyle *style;

 GdkPixmap *pixmap;
 GdkBitmap *mask;
};

struct _GtkCellPixText
{
 GtkCellType type;

 gint16 vertical;
 gint16 horizontal;

 GtkStyle *style;

 gchar *text;
 guint8 spacing;
 GdkPixmap *pixmap;
 GdkBitmap *mask;
};

struct _GtkCellWidget
{
 GtkCellType type;

 gint16 vertical;
 gint16 horizontal;

 GtkStyle *style;

 GtkWidget *widget;
};

struct _GtkCell
{
 GtkCellType type;

 gint16 vertical;
 gint16 horizontal;

 GtkStyle *style;

 union {
   gchar *text;

   struct {
     GdkPixmap *pixmap;
     GdkBitmap *mask;
   } pm;

   struct {
     gchar *text;
     guint8 spacing;
     GdkPixmap *pixmap;
     GdkBitmap *mask;
   } pt;

   GtkWidget *widget;
 } u;
};

GType gtk_clist_get_type (void) __attribute__((__const__));


GtkWidget* gtk_clist_new (gint columns);
GtkWidget* gtk_clist_new_with_titles (gint columns,
         gchar *titles[]);


void gtk_clist_set_hadjustment (GtkCList *clist,
   GtkAdjustment *adjustment);
void gtk_clist_set_vadjustment (GtkCList *clist,
   GtkAdjustment *adjustment);


GtkAdjustment* gtk_clist_get_hadjustment (GtkCList *clist);
GtkAdjustment* gtk_clist_get_vadjustment (GtkCList *clist);


void gtk_clist_set_shadow_type (GtkCList *clist,
   GtkShadowType type);


void gtk_clist_set_selection_mode (GtkCList *clist,
      GtkSelectionMode mode);


void gtk_clist_set_reorderable (GtkCList *clist,
   gboolean reorderable);
void gtk_clist_set_use_drag_icons (GtkCList *clist,
      gboolean use_icons);
void gtk_clist_set_button_actions (GtkCList *clist,
      guint button,
      guint8 button_actions);





void gtk_clist_freeze (GtkCList *clist);
void gtk_clist_thaw (GtkCList *clist);


void gtk_clist_column_titles_show (GtkCList *clist);
void gtk_clist_column_titles_hide (GtkCList *clist);





void gtk_clist_column_title_active (GtkCList *clist,
         gint column);
void gtk_clist_column_title_passive (GtkCList *clist,
         gint column);
void gtk_clist_column_titles_active (GtkCList *clist);
void gtk_clist_column_titles_passive (GtkCList *clist);


void gtk_clist_set_column_title (GtkCList *clist,
    gint column,
    const gchar *title);


gchar * gtk_clist_get_column_title (GtkCList *clist,
       gint column);


void gtk_clist_set_column_widget (GtkCList *clist,
     gint column,
     GtkWidget *widget);


GtkWidget * gtk_clist_get_column_widget (GtkCList *clist,
     gint column);


void gtk_clist_set_column_justification (GtkCList *clist,
     gint column,
     GtkJustification justification);


void gtk_clist_set_column_visibility (GtkCList *clist,
         gint column,
         gboolean visible);


void gtk_clist_set_column_resizeable (GtkCList *clist,
         gint column,
         gboolean resizeable);


void gtk_clist_set_column_auto_resize (GtkCList *clist,
          gint column,
          gboolean auto_resize);

gint gtk_clist_columns_autosize (GtkCList *clist);


gint gtk_clist_optimal_column_width (GtkCList *clist,
        gint column);





void gtk_clist_set_column_width (GtkCList *clist,
    gint column,
    gint width);


void gtk_clist_set_column_min_width (GtkCList *clist,
        gint column,
        gint min_width);
void gtk_clist_set_column_max_width (GtkCList *clist,
        gint column,
        gint max_width);




void gtk_clist_set_row_height (GtkCList *clist,
         guint height);






void gtk_clist_moveto (GtkCList *clist,
        gint row,
        gint column,
        gfloat row_align,
        gfloat col_align);


GtkVisibility gtk_clist_row_is_visible (GtkCList *clist,
    gint row);


GtkCellType gtk_clist_get_cell_type (GtkCList *clist,
        gint row,
        gint column);


void gtk_clist_set_text (GtkCList *clist,
   gint row,
   gint column,
   const gchar *text);




gint gtk_clist_get_text (GtkCList *clist,
   gint row,
   gint column,
   gchar **text);


void gtk_clist_set_pixmap (GtkCList *clist,
     gint row,
     gint column,
     GdkPixmap *pixmap,
     GdkBitmap *mask);

gint gtk_clist_get_pixmap (GtkCList *clist,
     gint row,
     gint column,
     GdkPixmap **pixmap,
     GdkBitmap **mask);


void gtk_clist_set_pixtext (GtkCList *clist,
      gint row,
      gint column,
      const gchar *text,
      guint8 spacing,
      GdkPixmap *pixmap,
      GdkBitmap *mask);

gint gtk_clist_get_pixtext (GtkCList *clist,
      gint row,
      gint column,
      gchar **text,
      guint8 *spacing,
      GdkPixmap **pixmap,
      GdkBitmap **mask);




void gtk_clist_set_foreground (GtkCList *clist,
         gint row,
         const GdkColor *color);




void gtk_clist_set_background (GtkCList *clist,
         gint row,
         const GdkColor *color);


void gtk_clist_set_cell_style (GtkCList *clist,
         gint row,
         gint column,
         GtkStyle *style);

GtkStyle *gtk_clist_get_cell_style (GtkCList *clist,
       gint row,
       gint column);

void gtk_clist_set_row_style (GtkCList *clist,
        gint row,
        GtkStyle *style);

GtkStyle *gtk_clist_get_row_style (GtkCList *clist,
      gint row);





void gtk_clist_set_shift (GtkCList *clist,
    gint row,
    gint column,
    gint vertical,
    gint horizontal);


void gtk_clist_set_selectable (GtkCList *clist,
         gint row,
         gboolean selectable);
gboolean gtk_clist_get_selectable (GtkCList *clist,
      gint row);




gint gtk_clist_prepend (GtkCList *clist,
         gchar *text[]);
gint gtk_clist_append (GtkCList *clist,
  gchar *text[]);




gint gtk_clist_insert (GtkCList *clist,
        gint row,
        gchar *text[]);


void gtk_clist_remove (GtkCList *clist,
        gint row);


void gtk_clist_set_row_data (GtkCList *clist,
       gint row,
       gpointer data);


void gtk_clist_set_row_data_full (GtkCList *clist,
            gint row,
            gpointer data,
     GDestroyNotify destroy);


gpointer gtk_clist_get_row_data (GtkCList *clist,
    gint row);




gint gtk_clist_find_row_from_data (GtkCList *clist,
      gpointer data);


void gtk_clist_select_row (GtkCList *clist,
     gint row,
     gint column);


void gtk_clist_unselect_row (GtkCList *clist,
       gint row,
       gint column);


void gtk_clist_undo_selection (GtkCList *clist);




void gtk_clist_clear (GtkCList *clist);





gint gtk_clist_get_selection_info (GtkCList *clist,
           gint x,
           gint y,
           gint *row,
           gint *column);


void gtk_clist_select_all (GtkCList *clist);


void gtk_clist_unselect_all (GtkCList *clist);


void gtk_clist_swap_rows (GtkCList *clist,
    gint row1,
    gint row2);


void gtk_clist_row_move (GtkCList *clist,
   gint source_row,
   gint dest_row);


void gtk_clist_set_compare_func (GtkCList *clist,
    GtkCListCompareFunc cmp_func);


void gtk_clist_set_sort_column (GtkCList *clist,
   gint column);


void gtk_clist_set_sort_type (GtkCList *clist,
        GtkSortType sort_type);


void gtk_clist_sort (GtkCList *clist);


void gtk_clist_set_auto_sort (GtkCList *clist,
        gboolean auto_sort);



PangoLayout *_gtk_clist_create_cell_layout (GtkCList *clist,
        GtkCListRow *clist_row,
        gint column);


}
# 228 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcombo.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcombo.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcombo.h"
typedef struct _GtkCombo GtkCombo;
typedef struct _GtkComboClass GtkComboClass;


struct _GtkCombo {
GtkHBox hbox;


GtkWidget *entry;


GtkWidget *button;
GtkWidget *popup;
GtkWidget *popwin;


GtkWidget *list;


guint entry_change_id;
guint list_change_id;

guint value_in_list:1;
guint ok_if_empty:1;
guint case_sensitive:1;
guint use_arrows:1;
guint use_arrows_always:1;

       guint16 current_button;
guint activate_id;
};

struct _GtkComboClass {
GtkHBoxClass parent_class;


       void (*_gtk_reserved1) (void);
       void (*_gtk_reserved2) (void);
       void (*_gtk_reserved3) (void);
       void (*_gtk_reserved4) (void);
};

GType gtk_combo_get_type (void) __attribute__((__const__));

GtkWidget* gtk_combo_new (void);

void gtk_combo_set_value_in_list (GtkCombo* combo,
                                           gboolean val,
                                           gboolean ok_if_empty);

void gtk_combo_set_use_arrows (GtkCombo* combo,
                                           gboolean val);

void gtk_combo_set_use_arrows_always (GtkCombo* combo,
                                           gboolean val);

void gtk_combo_set_case_sensitive (GtkCombo* combo,
                                           gboolean val);


void gtk_combo_set_item_string (GtkCombo* combo,
                                           GtkItem* item,
                                           const gchar* item_value);

void gtk_combo_set_popdown_strings (GtkCombo* combo,
                                           GList *strings);

void gtk_combo_disable_activate (GtkCombo* combo);

}
# 229 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkctree.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkctree.h"
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkclist.h" 1
# 37 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkctree.h" 2

extern "C" {
# 55 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkctree.h"
typedef enum
{
 GTK_CTREE_POS_BEFORE,
 GTK_CTREE_POS_AS_CHILD,
 GTK_CTREE_POS_AFTER
} GtkCTreePos;

typedef enum
{
 GTK_CTREE_LINES_NONE,
 GTK_CTREE_LINES_SOLID,
 GTK_CTREE_LINES_DOTTED,
 GTK_CTREE_LINES_TABBED
} GtkCTreeLineStyle;

typedef enum
{
 GTK_CTREE_EXPANDER_NONE,
 GTK_CTREE_EXPANDER_SQUARE,
 GTK_CTREE_EXPANDER_TRIANGLE,
 GTK_CTREE_EXPANDER_CIRCULAR
} GtkCTreeExpanderStyle;

typedef enum
{
 GTK_CTREE_EXPANSION_EXPAND,
 GTK_CTREE_EXPANSION_EXPAND_RECURSIVE,
 GTK_CTREE_EXPANSION_COLLAPSE,
 GTK_CTREE_EXPANSION_COLLAPSE_RECURSIVE,
 GTK_CTREE_EXPANSION_TOGGLE,
 GTK_CTREE_EXPANSION_TOGGLE_RECURSIVE
} GtkCTreeExpansionType;

typedef struct _GtkCTree GtkCTree;
typedef struct _GtkCTreeClass GtkCTreeClass;
typedef struct _GtkCTreeRow GtkCTreeRow;
typedef struct _GtkCTreeNode GtkCTreeNode;

typedef void (*GtkCTreeFunc) (GtkCTree *ctree,
        GtkCTreeNode *node,
        gpointer data);

typedef gboolean (*GtkCTreeGNodeFunc) (GtkCTree *ctree,
                                      guint depth,
                                      GNode *gnode,
          GtkCTreeNode *cnode,
                                      gpointer data);

typedef gboolean (*GtkCTreeCompareDragFunc) (GtkCTree *ctree,
                                            GtkCTreeNode *source_node,
                                            GtkCTreeNode *new_parent,
                                            GtkCTreeNode *new_sibling);

struct _GtkCTree
{
 GtkCList clist;

 GdkGC *lines_gc;

 gint tree_indent;
 gint tree_spacing;
 gint tree_column;

 guint line_style : 2;
 guint expander_style : 2;
 guint show_stub : 1;

 GtkCTreeCompareDragFunc drag_compare;
};

struct _GtkCTreeClass
{
 GtkCListClass parent_class;

 void (*tree_select_row) (GtkCTree *ctree,
       GtkCTreeNode *row,
       gint column);
 void (*tree_unselect_row) (GtkCTree *ctree,
       GtkCTreeNode *row,
       gint column);
 void (*tree_expand) (GtkCTree *ctree,
       GtkCTreeNode *node);
 void (*tree_collapse) (GtkCTree *ctree,
       GtkCTreeNode *node);
 void (*tree_move) (GtkCTree *ctree,
       GtkCTreeNode *node,
       GtkCTreeNode *new_parent,
       GtkCTreeNode *new_sibling);
 void (*change_focus_row_expansion) (GtkCTree *ctree,
         GtkCTreeExpansionType action);
};

struct _GtkCTreeRow
{
 GtkCListRow row;

 GtkCTreeNode *parent;
 GtkCTreeNode *sibling;
 GtkCTreeNode *children;

 GdkPixmap *pixmap_closed;
 GdkBitmap *mask_closed;
 GdkPixmap *pixmap_opened;
 GdkBitmap *mask_opened;

 guint16 level;

 guint is_leaf : 1;
 guint expanded : 1;
};

struct _GtkCTreeNode {
 GList list;
};






GType gtk_ctree_get_type (void) __attribute__((__const__));
GtkWidget * gtk_ctree_new_with_titles (gint columns,
       gint tree_column,
       gchar *titles[]);
GtkWidget * gtk_ctree_new (gint columns,
       gint tree_column);
GtkCTreeNode * gtk_ctree_insert_node (GtkCTree *ctree,
       GtkCTreeNode *parent,
       GtkCTreeNode *sibling,
       gchar *text[],
       guint8 spacing,
       GdkPixmap *pixmap_closed,
       GdkBitmap *mask_closed,
       GdkPixmap *pixmap_opened,
       GdkBitmap *mask_opened,
       gboolean is_leaf,
       gboolean expanded);
void gtk_ctree_remove_node (GtkCTree *ctree,
       GtkCTreeNode *node);
GtkCTreeNode * gtk_ctree_insert_gnode (GtkCTree *ctree,
       GtkCTreeNode *parent,
       GtkCTreeNode *sibling,
       GNode *gnode,
       GtkCTreeGNodeFunc func,
       gpointer data);
GNode * gtk_ctree_export_to_gnode (GtkCTree *ctree,
       GNode *parent,
       GNode *sibling,
       GtkCTreeNode *node,
       GtkCTreeGNodeFunc func,
       gpointer data);






void gtk_ctree_post_recursive (GtkCTree *ctree,
       GtkCTreeNode *node,
       GtkCTreeFunc func,
       gpointer data);
void gtk_ctree_post_recursive_to_depth (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint depth,
       GtkCTreeFunc func,
       gpointer data);
void gtk_ctree_pre_recursive (GtkCTree *ctree,
       GtkCTreeNode *node,
       GtkCTreeFunc func,
       gpointer data);
void gtk_ctree_pre_recursive_to_depth (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint depth,
       GtkCTreeFunc func,
       gpointer data);
gboolean gtk_ctree_is_viewable (GtkCTree *ctree,
              GtkCTreeNode *node);
GtkCTreeNode * gtk_ctree_last (GtkCTree *ctree,
              GtkCTreeNode *node);
GtkCTreeNode * gtk_ctree_find_node_ptr (GtkCTree *ctree,
              GtkCTreeRow *ctree_row);
GtkCTreeNode * gtk_ctree_node_nth (GtkCTree *ctree,
       guint row);
gboolean gtk_ctree_find (GtkCTree *ctree,
              GtkCTreeNode *node,
              GtkCTreeNode *child);
gboolean gtk_ctree_is_ancestor (GtkCTree *ctree,
              GtkCTreeNode *node,
              GtkCTreeNode *child);
GtkCTreeNode * gtk_ctree_find_by_row_data (GtkCTree *ctree,
              GtkCTreeNode *node,
              gpointer data);

GList * gtk_ctree_find_all_by_row_data (GtkCTree *ctree,
       GtkCTreeNode *node,
       gpointer data);
GtkCTreeNode * gtk_ctree_find_by_row_data_custom (GtkCTree *ctree,
       GtkCTreeNode *node,
       gpointer data,
       GCompareFunc func);

GList * gtk_ctree_find_all_by_row_data_custom (GtkCTree *ctree,
       GtkCTreeNode *node,
       gpointer data,
       GCompareFunc func);
gboolean gtk_ctree_is_hot_spot (GtkCTree *ctree,
              gint x,
              gint y);





void gtk_ctree_move (GtkCTree *ctree,
       GtkCTreeNode *node,
       GtkCTreeNode *new_parent,
       GtkCTreeNode *new_sibling);
void gtk_ctree_expand (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_expand_recursive (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_expand_to_depth (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint depth);
void gtk_ctree_collapse (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_collapse_recursive (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_collapse_to_depth (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint depth);
void gtk_ctree_toggle_expansion (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_toggle_expansion_recursive (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_select (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_select_recursive (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_unselect (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_unselect_recursive (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_real_select_recursive (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint state);





void gtk_ctree_node_set_text (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column,
       const gchar *text);
void gtk_ctree_node_set_pixmap (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column,
       GdkPixmap *pixmap,
       GdkBitmap *mask);
void gtk_ctree_node_set_pixtext (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column,
       const gchar *text,
       guint8 spacing,
       GdkPixmap *pixmap,
       GdkBitmap *mask);
void gtk_ctree_set_node_info (GtkCTree *ctree,
       GtkCTreeNode *node,
       const gchar *text,
       guint8 spacing,
       GdkPixmap *pixmap_closed,
       GdkBitmap *mask_closed,
       GdkPixmap *pixmap_opened,
       GdkBitmap *mask_opened,
       gboolean is_leaf,
       gboolean expanded);
void gtk_ctree_node_set_shift (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column,
       gint vertical,
       gint horizontal);
void gtk_ctree_node_set_selectable (GtkCTree *ctree,
       GtkCTreeNode *node,
       gboolean selectable);
gboolean gtk_ctree_node_get_selectable (GtkCTree *ctree,
       GtkCTreeNode *node);
GtkCellType gtk_ctree_node_get_cell_type (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column);
gboolean gtk_ctree_node_get_text (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column,
       gchar **text);
gboolean gtk_ctree_node_get_pixmap (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column,
       GdkPixmap **pixmap,
       GdkBitmap **mask);
gboolean gtk_ctree_node_get_pixtext (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column,
       gchar **text,
       guint8 *spacing,
       GdkPixmap **pixmap,
       GdkBitmap **mask);
gboolean gtk_ctree_get_node_info (GtkCTree *ctree,
       GtkCTreeNode *node,
       gchar **text,
       guint8 *spacing,
       GdkPixmap **pixmap_closed,
       GdkBitmap **mask_closed,
       GdkPixmap **pixmap_opened,
       GdkBitmap **mask_opened,
       gboolean *is_leaf,
       gboolean *expanded);
void gtk_ctree_node_set_row_style (GtkCTree *ctree,
       GtkCTreeNode *node,
       GtkStyle *style);
GtkStyle * gtk_ctree_node_get_row_style (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_node_set_cell_style (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column,
       GtkStyle *style);
GtkStyle * gtk_ctree_node_get_cell_style (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column);
void gtk_ctree_node_set_foreground (GtkCTree *ctree,
       GtkCTreeNode *node,
       const GdkColor *color);
void gtk_ctree_node_set_background (GtkCTree *ctree,
       GtkCTreeNode *node,
       const GdkColor *color);
void gtk_ctree_node_set_row_data (GtkCTree *ctree,
       GtkCTreeNode *node,
       gpointer data);
void gtk_ctree_node_set_row_data_full (GtkCTree *ctree,
       GtkCTreeNode *node,
       gpointer data,
       GDestroyNotify destroy);
gpointer gtk_ctree_node_get_row_data (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_node_moveto (GtkCTree *ctree,
       GtkCTreeNode *node,
       gint column,
       gfloat row_align,
       gfloat col_align);
GtkVisibility gtk_ctree_node_is_visible (GtkCTree *ctree,
       GtkCTreeNode *node);





void gtk_ctree_set_indent (GtkCTree *ctree,
         gint indent);
void gtk_ctree_set_spacing (GtkCTree *ctree,
         gint spacing);
void gtk_ctree_set_show_stub (GtkCTree *ctree,
         gboolean show_stub);
void gtk_ctree_set_line_style (GtkCTree *ctree,
         GtkCTreeLineStyle line_style);
void gtk_ctree_set_expander_style (GtkCTree *ctree,
         GtkCTreeExpanderStyle expander_style);
void gtk_ctree_set_drag_compare_func (GtkCTree *ctree,
         GtkCTreeCompareDragFunc cmp_func);





void gtk_ctree_sort_node (GtkCTree *ctree,
       GtkCTreeNode *node);
void gtk_ctree_sort_recursive (GtkCTree *ctree,
       GtkCTreeNode *node);
# 439 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkctree.h"
GType gtk_ctree_node_get_type (void) __attribute__((__const__));

}
# 230 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcurve.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcurve.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkcurve.h"
typedef struct _GtkCurve GtkCurve;
typedef struct _GtkCurveClass GtkCurveClass;


struct _GtkCurve
{
 GtkDrawingArea graph;

 gint cursor_type;
 gfloat min_x;
 gfloat max_x;
 gfloat min_y;
 gfloat max_y;
 GdkPixmap *pixmap;
 GtkCurveType curve_type;
 gint height;
 gint grab_point;
 gint last;


 gint num_points;
 GdkPoint *point;


 gint num_ctlpoints;
 gfloat (*ctlpoint)[2];
};

struct _GtkCurveClass
{
 GtkDrawingAreaClass parent_class;

 void (* curve_type_changed) (GtkCurve *curve);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_curve_get_type (void) __attribute__((__const__));
GtkWidget* gtk_curve_new (void);
void gtk_curve_reset (GtkCurve *curve);
void gtk_curve_set_gamma (GtkCurve *curve, gfloat gamma_);
void gtk_curve_set_range (GtkCurve *curve,
     gfloat min_x, gfloat max_x,
     gfloat min_y, gfloat max_y);
void gtk_curve_get_vector (GtkCurve *curve,
     int veclen, gfloat vector[]);
void gtk_curve_set_vector (GtkCurve *curve,
     int veclen, gfloat vector[]);
void gtk_curve_set_curve_type (GtkCurve *curve, GtkCurveType type);


}
# 231 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilesel.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilesel.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilesel.h"
typedef struct _GtkFileSelection GtkFileSelection;
typedef struct _GtkFileSelectionClass GtkFileSelectionClass;

struct _GtkFileSelection
{

 GtkDialog parent_instance;


 GtkWidget *dir_list;
 GtkWidget *file_list;
 GtkWidget *selection_entry;
 GtkWidget *selection_text;
 GtkWidget *main_vbox;
 GtkWidget *ok_button;
 GtkWidget *cancel_button;
 GtkWidget *help_button;
 GtkWidget *history_pulldown;
 GtkWidget *history_menu;
 GList *history_list;
 GtkWidget *fileop_dialog;
 GtkWidget *fileop_entry;
 gchar *fileop_file;
 gpointer cmpl_state;

 GtkWidget *fileop_c_dir;
 GtkWidget *fileop_del_file;
 GtkWidget *fileop_ren_file;

 GtkWidget *button_area;
 GtkWidget *action_area;


 GPtrArray *selected_names;
 gchar *last_selected;
};

struct _GtkFileSelectionClass
{
 GtkDialogClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};
# 102 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkfilesel.h"
GType gtk_file_selection_get_type (void) __attribute__((__const__));
GtkWidget* gtk_file_selection_new (const gchar *title);
void gtk_file_selection_set_filename (GtkFileSelection *filesel,
        const gchar *filename);
const gchar* gtk_file_selection_get_filename (GtkFileSelection *filesel);

void gtk_file_selection_complete (GtkFileSelection *filesel,
        const gchar *pattern);
void gtk_file_selection_show_fileop_buttons (GtkFileSelection *filesel);
void gtk_file_selection_hide_fileop_buttons (GtkFileSelection *filesel);

gchar** gtk_file_selection_get_selections (GtkFileSelection *filesel);

void gtk_file_selection_set_select_multiple (GtkFileSelection *filesel,
        gboolean select_multiple);
gboolean gtk_file_selection_get_select_multiple (GtkFileSelection *filesel);


}
# 232 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkgamma.h" 1
# 36 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkgamma.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkgamma.h"
typedef struct _GtkGammaCurve GtkGammaCurve;
typedef struct _GtkGammaCurveClass GtkGammaCurveClass;


struct _GtkGammaCurve
{
 GtkVBox vbox;

 GtkWidget *table;
 GtkWidget *curve;
 GtkWidget *button[5];

 gfloat gamma;
 GtkWidget *gamma_dialog;
 GtkWidget *gamma_text;
};

struct _GtkGammaCurveClass
{
 GtkVBoxClass parent_class;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_gamma_curve_get_type (void) __attribute__((__const__));
GtkWidget* gtk_gamma_curve_new (void);


}
# 233 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkinputdialog.h" 1
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkinputdialog.h"
extern "C" {
# 56 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkinputdialog.h"
typedef struct _GtkInputDialog GtkInputDialog;
typedef struct _GtkInputDialogClass GtkInputDialogClass;

struct _GtkInputDialog
{
 GtkDialog dialog;

 GtkWidget *axis_list;
 GtkWidget *axis_listbox;
 GtkWidget *mode_optionmenu;

 GtkWidget *close_button;
 GtkWidget *save_button;

 GtkWidget *axis_items[GDK_AXIS_LAST];
 GdkDevice *current_device;

 GtkWidget *keys_list;
 GtkWidget *keys_listbox;
};

struct _GtkInputDialogClass
{
 GtkDialogClass parent_class;

 void (* enable_device) (GtkInputDialog *inputd,
    GdkDevice *device);
 void (* disable_device) (GtkInputDialog *inputd,
    GdkDevice *device);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

GType gtk_input_dialog_get_type (void) __attribute__((__const__));
GtkWidget* gtk_input_dialog_new (void);

}
# 234 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkitemfactory.h" 1
# 38 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkitemfactory.h"
extern "C" {

typedef void (*GtkPrintFunc) (gpointer func_data,
        const gchar *str);





typedef void (*GtkItemFactoryCallback) ();
typedef void (*GtkItemFactoryCallback1) (gpointer callback_data,
        guint callback_action,
        GtkWidget *widget);
# 60 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkitemfactory.h"
typedef struct _GtkItemFactory GtkItemFactory;
typedef struct _GtkItemFactoryClass GtkItemFactoryClass;
typedef struct _GtkItemFactoryEntry GtkItemFactoryEntry;
typedef struct _GtkItemFactoryItem GtkItemFactoryItem;

struct _GtkItemFactory
{
 GtkObject object;

 gchar *path;
 GtkAccelGroup *accel_group;
 GtkWidget *widget;
 GSList *items;

 GtkTranslateFunc translate_func;
 gpointer translate_data;
 GDestroyNotify translate_notify;
};

struct _GtkItemFactoryClass
{
 GtkObjectClass object_class;

 GHashTable *item_ht;


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};

struct _GtkItemFactoryEntry
{
 gchar *path;
 gchar *accelerator;

 GtkItemFactoryCallback callback;
 guint callback_action;
# 116 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkitemfactory.h"
 gchar *item_type;





 gconstpointer extra_data;
};

struct _GtkItemFactoryItem
{
 gchar *path;
 GSList *widgets;
};


GType gtk_item_factory_get_type (void) __attribute__((__const__));




GtkItemFactory* gtk_item_factory_new (GType container_type,
        const gchar *path,
        GtkAccelGroup *accel_group);
void gtk_item_factory_construct (GtkItemFactory *ifactory,
        GType container_type,
        const gchar *path,
        GtkAccelGroup *accel_group);



void gtk_item_factory_add_foreign (GtkWidget *accel_widget,
          const gchar *full_path,
          GtkAccelGroup *accel_group,
          guint keyval,
          GdkModifierType modifiers);

GtkItemFactory* gtk_item_factory_from_widget (GtkWidget *widget);
const gchar * gtk_item_factory_path_from_widget (GtkWidget *widget);

GtkWidget* gtk_item_factory_get_item (GtkItemFactory *ifactory,
            const gchar *path);
GtkWidget* gtk_item_factory_get_widget (GtkItemFactory *ifactory,
            const gchar *path);
GtkWidget* gtk_item_factory_get_widget_by_action (GtkItemFactory *ifactory,
            guint action);
GtkWidget* gtk_item_factory_get_item_by_action (GtkItemFactory *ifactory,
            guint action);

void gtk_item_factory_create_item (GtkItemFactory *ifactory,
     GtkItemFactoryEntry *entry,
     gpointer callback_data,
     guint callback_type);
void gtk_item_factory_create_items (GtkItemFactory *ifactory,
     guint n_entries,
     GtkItemFactoryEntry *entries,
     gpointer callback_data);
void gtk_item_factory_delete_item (GtkItemFactory *ifactory,
     const gchar *path);
void gtk_item_factory_delete_entry (GtkItemFactory *ifactory,
     GtkItemFactoryEntry *entry);
void gtk_item_factory_delete_entries (GtkItemFactory *ifactory,
     guint n_entries,
     GtkItemFactoryEntry *entries);
void gtk_item_factory_popup (GtkItemFactory *ifactory,
     guint x,
     guint y,
     guint mouse_button,
     guint32 time_);
void gtk_item_factory_popup_with_data(GtkItemFactory *ifactory,
     gpointer popup_data,
     GDestroyNotify destroy,
     guint x,
     guint y,
     guint mouse_button,
     guint32 time_);
gpointer gtk_item_factory_popup_data (GtkItemFactory *ifactory);
gpointer gtk_item_factory_popup_data_from_widget (GtkWidget *widget);
void gtk_item_factory_set_translate_func (GtkItemFactory *ifactory,
        GtkTranslateFunc func,
        gpointer data,
        GDestroyNotify notify);





typedef void (*GtkMenuCallback) (GtkWidget *widget,
    gpointer user_data);
typedef struct {
 gchar *path;
 gchar *accelerator;
 GtkMenuCallback callback;
 gpointer callback_data;
 GtkWidget *widget;
} GtkMenuEntry;


typedef void (*GtkItemFactoryCallback2) (GtkWidget *widget,
        gpointer callback_data,
        guint callback_action);


void gtk_item_factory_create_items_ac (GtkItemFactory *ifactory,
      guint n_entries,
      GtkItemFactoryEntry *entries,
      gpointer callback_data,
      guint callback_type);

GtkItemFactory* gtk_item_factory_from_path (const gchar *path);
void gtk_item_factory_create_menu_entries (guint n_entries,
          GtkMenuEntry *entries);
void gtk_item_factories_path_delete (const gchar *ifactory_path,
        const gchar *path);

}
# 235 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklist.h" 1
# 34 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklist.h"
extern "C" {
# 44 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklist.h"
typedef struct _GtkList GtkList;
typedef struct _GtkListClass GtkListClass;

struct _GtkList
{
 GtkContainer container;

 GList *children;
 GList *selection;

 GList *undo_selection;
 GList *undo_unselection;

 GtkWidget *last_focus_child;
 GtkWidget *undo_focus_child;

 guint htimer;
 guint vtimer;

 gint anchor;
 gint drag_pos;
 GtkStateType anchor_state;

 guint selection_mode : 2;
 guint drag_selection:1;
 guint add_mode:1;
};

struct _GtkListClass
{
 GtkContainerClass parent_class;

 void (* selection_changed) (GtkList *list);
 void (* select_child) (GtkList *list,
        GtkWidget *child);
 void (* unselect_child) (GtkList *list,
        GtkWidget *child);
};


GType gtk_list_get_type (void) __attribute__((__const__));
GtkWidget* gtk_list_new (void);
void gtk_list_insert_items (GtkList *list,
       GList *items,
       gint position);
void gtk_list_append_items (GtkList *list,
       GList *items);
void gtk_list_prepend_items (GtkList *list,
       GList *items);
void gtk_list_remove_items (GtkList *list,
       GList *items);
void gtk_list_remove_items_no_unref (GtkList *list,
       GList *items);
void gtk_list_clear_items (GtkList *list,
       gint start,
       gint end);
void gtk_list_select_item (GtkList *list,
       gint item);
void gtk_list_unselect_item (GtkList *list,
       gint item);
void gtk_list_select_child (GtkList *list,
       GtkWidget *child);
void gtk_list_unselect_child (GtkList *list,
       GtkWidget *child);
gint gtk_list_child_position (GtkList *list,
       GtkWidget *child);
void gtk_list_set_selection_mode (GtkList *list,
       GtkSelectionMode mode);

void gtk_list_extend_selection (GtkList *list,
       GtkScrollType scroll_type,
       gfloat position,
       gboolean auto_start_selection);
void gtk_list_start_selection (GtkList *list);
void gtk_list_end_selection (GtkList *list);
void gtk_list_select_all (GtkList *list);
void gtk_list_unselect_all (GtkList *list);
void gtk_list_scroll_horizontal (GtkList *list,
       GtkScrollType scroll_type,
       gfloat position);
void gtk_list_scroll_vertical (GtkList *list,
       GtkScrollType scroll_type,
       gfloat position);
void gtk_list_toggle_add_mode (GtkList *list);
void gtk_list_toggle_focus_row (GtkList *list);
void gtk_list_toggle_row (GtkList *list,
       GtkWidget *item);
void gtk_list_undo_selection (GtkList *list);
void gtk_list_end_drag_selection (GtkList *list);

}
# 236 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklistitem.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklistitem.h"
extern "C" {
# 46 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtklistitem.h"
typedef struct _GtkListItem GtkListItem;
typedef struct _GtkListItemClass GtkListItemClass;

struct _GtkListItem
{
 GtkItem item;
};

struct _GtkListItemClass
{
 GtkItemClass parent_class;

 void (*toggle_focus_row) (GtkListItem *list_item);
 void (*select_all) (GtkListItem *list_item);
 void (*unselect_all) (GtkListItem *list_item);
 void (*undo_selection) (GtkListItem *list_item);
 void (*start_selection) (GtkListItem *list_item);
 void (*end_selection) (GtkListItem *list_item);
 void (*extend_selection) (GtkListItem *list_item,
       GtkScrollType scroll_type,
       gfloat position,
       gboolean auto_start_selection);
 void (*scroll_horizontal) (GtkListItem *list_item,
       GtkScrollType scroll_type,
       gfloat position);
 void (*scroll_vertical) (GtkListItem *list_item,
       GtkScrollType scroll_type,
       gfloat position);
 void (*toggle_add_mode) (GtkListItem *list_item);
};


GType gtk_list_item_get_type (void) __attribute__((__const__));
GtkWidget* gtk_list_item_new (void);
GtkWidget* gtk_list_item_new_with_label (const gchar *label);
void gtk_list_item_select (GtkListItem *list_item);
void gtk_list_item_deselect (GtkListItem *list_item);



}
# 237 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkoldeditable.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkoldeditable.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkoldeditable.h"
typedef struct _GtkOldEditable GtkOldEditable;
typedef struct _GtkOldEditableClass GtkOldEditableClass;

typedef void (*GtkTextFunction) (GtkOldEditable *editable, guint32 time_);

struct _GtkOldEditable
{
 GtkWidget widget;


 guint current_pos;

 guint selection_start_pos;
 guint selection_end_pos;
 guint has_selection : 1;


 guint editable : 1;
 guint visible : 1;

 gchar *clipboard_text;
};

struct _GtkOldEditableClass
{
 GtkWidgetClass parent_class;


 void (* activate) (GtkOldEditable *editable);
 void (* set_editable) (GtkOldEditable *editable,
      gboolean is_editable);
 void (* move_cursor) (GtkOldEditable *editable,
      gint x,
      gint y);
 void (* move_word) (GtkOldEditable *editable,
      gint n);
 void (* move_page) (GtkOldEditable *editable,
      gint x,
      gint y);
 void (* move_to_row) (GtkOldEditable *editable,
      gint row);
 void (* move_to_column) (GtkOldEditable *editable,
      gint row);
 void (* kill_char) (GtkOldEditable *editable,
      gint direction);
 void (* kill_word) (GtkOldEditable *editable,
      gint direction);
 void (* kill_line) (GtkOldEditable *editable,
      gint direction);
 void (* cut_clipboard) (GtkOldEditable *editable);
 void (* copy_clipboard) (GtkOldEditable *editable);
 void (* paste_clipboard) (GtkOldEditable *editable);






 void (* update_text) (GtkOldEditable *editable,
   gint start_pos,
   gint end_pos);
 gchar* (* get_chars) (GtkOldEditable *editable,
   gint start_pos,
   gint end_pos);
 void (* set_selection)(GtkOldEditable *editable,
   gint start_pos,
   gint end_pos);
 void (* set_position) (GtkOldEditable *editable,
   gint position);
};

GType gtk_old_editable_get_type (void) __attribute__((__const__));
void gtk_old_editable_claim_selection (GtkOldEditable *old_editable,
         gboolean claim,
         guint32 time_);
void gtk_old_editable_changed (GtkOldEditable *old_editable);

}
# 238 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkoptionmenu.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkoptionmenu.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkoptionmenu.h"
typedef struct _GtkOptionMenu GtkOptionMenu;
typedef struct _GtkOptionMenuClass GtkOptionMenuClass;

struct _GtkOptionMenu
{
 GtkButton button;

 GtkWidget *menu;
 GtkWidget *menu_item;

 guint16 width;
 guint16 height;
};

struct _GtkOptionMenuClass
{
 GtkButtonClass parent_class;

 void (*changed) (GtkOptionMenu *option_menu);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};


GType gtk_option_menu_get_type (void) __attribute__((__const__));
GtkWidget* gtk_option_menu_new (void);
GtkWidget* gtk_option_menu_get_menu (GtkOptionMenu *option_menu);
void gtk_option_menu_set_menu (GtkOptionMenu *option_menu,
    GtkWidget *menu);
void gtk_option_menu_remove_menu (GtkOptionMenu *option_menu);
gint gtk_option_menu_get_history (GtkOptionMenu *option_menu);
void gtk_option_menu_set_history (GtkOptionMenu *option_menu,
    guint index_);


}
# 239 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpixmap.h" 1
# 240 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpreview.h" 1
# 35 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpreview.h"
extern "C" {
# 45 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtkpreview.h"
typedef struct _GtkPreview GtkPreview;
typedef struct _GtkPreviewInfo GtkPreviewInfo;
typedef union _GtkDitherInfo GtkDitherInfo;
typedef struct _GtkPreviewClass GtkPreviewClass;

struct _GtkPreview
{
 GtkWidget widget;

 guchar *buffer;
 guint16 buffer_width;
 guint16 buffer_height;

 guint16 bpp;
 guint16 rowstride;

 GdkRgbDither dither;

 guint type : 1;
 guint expand : 1;
};

struct _GtkPreviewInfo
{
 guchar *lookup;

 gdouble gamma;
};

union _GtkDitherInfo
{
 gushort s[2];
 guchar c[4];
};

struct _GtkPreviewClass
{
 GtkWidgetClass parent_class;

 GtkPreviewInfo info;

};


GType gtk_preview_get_type (void) __attribute__((__const__));
void gtk_preview_uninit (void);
GtkWidget* gtk_preview_new (GtkPreviewType type);
void gtk_preview_size (GtkPreview *preview,
     gint width,
     gint height);
void gtk_preview_put (GtkPreview *preview,
     GdkWindow *window,
     GdkGC *gc,
     gint srcx,
     gint srcy,
     gint destx,
     gint desty,
     gint width,
     gint height);
void gtk_preview_draw_row (GtkPreview *preview,
     guchar *data,
     gint x,
     gint y,
     gint w);
void gtk_preview_set_expand (GtkPreview *preview,
     gboolean expand);

void gtk_preview_set_gamma (double gamma_);
void gtk_preview_set_color_cube (guint nred_shades,
     guint ngreen_shades,
     guint nblue_shades,
     guint ngray_shades);
void gtk_preview_set_install_cmap (gint install_cmap);
void gtk_preview_set_reserved (gint nreserved);
void gtk_preview_set_dither (GtkPreview *preview,
     GdkRgbDither dither);
GdkVisual* gtk_preview_get_visual (void);
GdkColormap* gtk_preview_get_cmap (void);
GtkPreviewInfo* gtk_preview_get_info (void);






void gtk_preview_reset (void);


}
# 241 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2

# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtksignal.h" 1
# 243 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktipsquery.h" 1
# 39 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktipsquery.h"
extern "C" {
# 51 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktipsquery.h"
typedef struct _GtkTipsQuery GtkTipsQuery;
typedef struct _GtkTipsQueryClass GtkTipsQueryClass;



struct _GtkTipsQuery
{
 GtkLabel label;

 guint emit_always : 1;
 guint in_query : 1;
 gchar *label_inactive;
 gchar *label_no_tip;

 GtkWidget *caller;
 GtkWidget *last_crossed;

 GdkCursor *query_cursor;
};

struct _GtkTipsQueryClass
{
 GtkLabelClass parent_class;

 void (*start_query) (GtkTipsQuery *tips_query);
 void (*stop_query) (GtkTipsQuery *tips_query);
 void (*widget_entered) (GtkTipsQuery *tips_query,
    GtkWidget *widget,
    const gchar *tip_text,
    const gchar *tip_private);
 gint (*widget_selected) (GtkTipsQuery *tips_query,
    GtkWidget *widget,
    const gchar *tip_text,
    const gchar *tip_private,
    GdkEventButton *event);


 void (*_gtk_reserved1) (void);
 void (*_gtk_reserved2) (void);
 void (*_gtk_reserved3) (void);
 void (*_gtk_reserved4) (void);
};



GType gtk_tips_query_get_type (void) __attribute__((__const__));
GtkWidget* gtk_tips_query_new (void);
void gtk_tips_query_start_query (GtkTipsQuery *tips_query);
void gtk_tips_query_stop_query (GtkTipsQuery *tips_query);
void gtk_tips_query_set_caller (GtkTipsQuery *tips_query,
      GtkWidget *caller);
void gtk_tips_query_set_labels (GtkTipsQuery *tips_query,
      const gchar *label_inactive,
      const gchar *label_no_tip);

}
# 244 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 1 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtktooltips.h" 1
# 245 "/tmp/graphics/geeqie/work/.buildlink/include/gtk-2.0/gtk/gtk.h" 2
# 64 "main.h" 2




# 1 "compat.h" 1
# 69 "main.h" 2
# 121 "main.h"
# 1 "typedefs.h" 1
# 25 "typedefs.h"
typedef enum {
ZOOM_RESET_ORIGINAL = 0,
ZOOM_RESET_FIT_WINDOW = 1,
ZOOM_RESET_NONE = 2
} ZoomMode;

typedef enum {
MOUSE_BUTTON_LEFT = 1,
MOUSE_BUTTON_MIDDLE = 2,
MOUSE_BUTTON_RIGHT = 3,
MOUSE_BUTTON_WHEEL_UP = 4,
MOUSE_BUTTON_WHEEL_DOWN = 5
} MouseButton;

typedef enum {
DIRVIEW_LIST,
DIRVIEW_TREE
} DirViewType;

typedef enum {
FILEVIEW_LIST,
FILEVIEW_ICON
} FileViewType;







typedef enum {
SORT_NONE,
SORT_NAME,
SORT_SIZE,
SORT_TIME,
SORT_CTIME,
SORT_PATH,
SORT_NUMBER,
SORT_EXIFTIME
} SortType;

typedef enum {
ALTER_NONE,
ALTER_ROTATE_90,
ALTER_ROTATE_90_CC,
ALTER_ROTATE_180,
ALTER_MIRROR,
ALTER_FLIP,
} AlterType;

typedef enum {
LAYOUT_HIDE = 0,
LAYOUT_LEFT = 1 << 0,
LAYOUT_RIGHT = 1 << 1,
LAYOUT_TOP = 1 << 2,
LAYOUT_BOTTOM = 1 << 3
} LayoutLocation;


typedef enum {
IMAGE_STATE_NONE = 0,
IMAGE_STATE_IMAGE = 1 << 0,
IMAGE_STATE_LOADING = 1 << 1,
IMAGE_STATE_ERROR = 1 << 2,
IMAGE_STATE_COLOR_ADJ = 1 << 3,
IMAGE_STATE_ROTATE_AUTO = 1 << 4,
IMAGE_STATE_ROTATE_USER = 1 << 5,
IMAGE_STATE_DELAY_FLIP = 1 << 6
} ImageState;

typedef enum {
SPLIT_NONE = 0,
SPLIT_VERT,
SPLIT_HOR,
SPLIT_QUAD,
} ImageSplitMode;

typedef enum {
FILEDATA_CHANGE_DELETE,
FILEDATA_CHANGE_MOVE,
FILEDATA_CHANGE_RENAME,
FILEDATA_CHANGE_COPY,
FILEDATA_CHANGE_UNSPECIFIED,
FILEDATA_CHANGE_WRITE_METADATA
} FileDataChangeType;

typedef enum {
MTS_MODE_MINUS,
MTS_MODE_SET,
MTS_MODE_OR,
MTS_MODE_AND
} MarkToSelectionMode;

typedef enum {
STM_MODE_RESET,
STM_MODE_SET,
STM_MODE_TOGGLE
} SelectionToMarkMode;

typedef enum {
FORMAT_CLASS_UNKNOWN,
FORMAT_CLASS_IMAGE,
FORMAT_CLASS_RAWIMAGE,
FORMAT_CLASS_META,
FILE_FORMAT_CLASSES
} FileFormatClass;

typedef enum {
SS_ERR_NONE = 0,
SS_ERR_DISABLED,
SS_ERR_OUT_OF_MEM,


SS_ERR_OPEN_READ,
SS_ERR_OPEN_WRITE,
SS_ERR_STAT,
SS_ERR_ACCESS,
SS_ERR_MKSTEMP,
SS_ERR_RENAME,
SS_ERR_OTHER,
} SecureSaveErrno;

typedef enum {
NOTIFY_PRIORITY_HIGH = 0,
NOTIFY_PRIORITY_MEDIUM,
NOTIFY_PRIORITY_LOW
} NotifyPriority;

typedef enum {
NOTIFY_MARKS = 1 << 1,
NOTIFY_PIXBUF = 1 << 2,
NOTIFY_HISTMAP = 1 << 3,
NOTIFY_ORIENTATION = 1 << 4,
NOTIFY_METADATA = 1 << 5,
NOTIFY_GROUPING = 1 << 6,
NOTIFY_REREAD = 1 << 7,
NOTIFY_CHANGE = 1 << 8
} NotifyType;

typedef enum {
CHANGE_OK = 0,
CHANGE_WARN_DEST_EXISTS = 1 << 0,
CHANGE_WARN_NO_WRITE_PERM = 1 << 1,
CHANGE_WARN_SAME = 1 << 2,
CHANGE_WARN_CHANGED_EXT = 1 << 3,
CHANGE_WARN_UNSAVED_META = 1 << 4,
CHANGE_WARN_NO_WRITE_PERM_DEST_DIR = 1 << 5,
CHANGE_ERROR_MASK = (~0U) << 8,
CHANGE_NO_READ_PERM = 1 << 8,
CHANGE_NO_WRITE_PERM_DIR = 1 << 9,
CHANGE_NO_DEST_DIR = 1 << 10,
CHANGE_DUPLICATE_DEST = 1 << 11,
CHANGE_NO_WRITE_PERM_DEST = 1 << 12,
CHANGE_DEST_EXISTS = 1 << 13,
CHANGE_NO_SRC = 1 << 14,
CHANGE_GENERIC_ERROR = 1 << 16
} ChangeError;

typedef enum {
METADATA_PLAIN = 0,
METADATA_FORMATTED = 1
} MetadataFormat;

typedef enum {
STARTUP_PATH_CURRENT = 0,
STARTUP_PATH_LAST,
STARTUP_PATH_HOME,
} StartUpPath;

typedef enum {
TOOLBAR_MAIN,
TOOLBAR_STATUS,
TOOLBAR_COUNT
} ToolbarType;

typedef enum {
PR_STEREO_NONE = 0,
PR_STEREO_DUAL = 1 << 0,
PR_STEREO_FIXED = 1 << 1,
PR_STEREO_HORIZ = 1 << 2,
PR_STEREO_VERT = 1 << 3,
PR_STEREO_RIGHT = 1 << 4,
PR_STEREO_ANAGLYPH_RC = 1 << 5,
PR_STEREO_ANAGLYPH_GM = 1 << 6,
PR_STEREO_ANAGLYPH_YB = 1 << 7,
PR_STEREO_ANAGLYPH_GRAY_RC = 1 << 8,
PR_STEREO_ANAGLYPH_GRAY_GM = 1 << 9,
PR_STEREO_ANAGLYPH_GRAY_YB = 1 << 10,
PR_STEREO_ANAGLYPH_DB_RC = 1 << 11,
PR_STEREO_ANAGLYPH_DB_GM = 1 << 12,
PR_STEREO_ANAGLYPH_DB_YB = 1 << 13,
PR_STEREO_ANAGLYPH = PR_STEREO_ANAGLYPH_RC |
                             PR_STEREO_ANAGLYPH_GM |
                             PR_STEREO_ANAGLYPH_YB |
                             PR_STEREO_ANAGLYPH_GRAY_RC |
                             PR_STEREO_ANAGLYPH_GRAY_GM |
                             PR_STEREO_ANAGLYPH_GRAY_YB |
                             PR_STEREO_ANAGLYPH_DB_RC |
                             PR_STEREO_ANAGLYPH_DB_GM |
                             PR_STEREO_ANAGLYPH_DB_YB,

PR_STEREO_MIRROR_LEFT = 1 << 14,
PR_STEREO_FLIP_LEFT = 1 << 15,

PR_STEREO_MIRROR_RIGHT = 1 << 16,
PR_STEREO_FLIP_RIGHT = 1 << 17,

PR_STEREO_MIRROR = PR_STEREO_MIRROR_LEFT | PR_STEREO_MIRROR_RIGHT,
PR_STEREO_FLIP = PR_STEREO_FLIP_LEFT | PR_STEREO_FLIP_RIGHT,
PR_STEREO_SWAP = 1 << 18,
PR_STEREO_TEMP_DISABLE = 1 << 19,
PR_STEREO_HALF = 1 << 20
} PixbufRendererStereoMode;

typedef enum {
STEREO_PIXBUF_DEFAULT = 0,
STEREO_PIXBUF_SBS = 1,
STEREO_PIXBUF_CROSS = 2,
STEREO_PIXBUF_NONE = 3
} StereoPixbufData;



typedef struct _ImageLoader ImageLoader;
typedef struct _ThumbLoader ThumbLoader;

typedef struct _CollectInfo CollectInfo;
typedef struct _CollectionData CollectionData;
typedef struct _CollectTable CollectTable;
typedef struct _CollectWindow CollectWindow;

typedef struct _ImageWindow ImageWindow;

typedef struct _FileData FileData;
typedef struct _FileDataChangeInfo FileDataChangeInfo;

typedef struct _LayoutWindow LayoutWindow;
typedef struct _LayoutOptions LayoutOptions;

typedef struct _ViewDir ViewDir;
typedef struct _ViewDirInfoList ViewDirInfoList;
typedef struct _ViewDirInfoTree ViewDirInfoTree;

typedef struct _ViewFile ViewFile;
typedef struct _ViewFileInfoList ViewFileInfoList;
typedef struct _ViewFileInfoIcon ViewFileInfoIcon;

typedef struct _SlideShowData SlideShowData;
typedef struct _FullScreenData FullScreenData;

typedef struct _PixmapFolders PixmapFolders;
typedef struct _Histogram Histogram;
typedef struct _HistMap HistMap;

typedef struct _SecureSaveInfo SecureSaveInfo;

typedef struct _ExifData ExifData;

typedef struct _EditorDescription EditorDescription;

typedef struct _CommandLine CommandLine;

struct _Histogram {
gint histogram_channel;
gint histogram_mode;
guint vgrid;
guint hgrid;
struct {
 int R;
 int G;
 int B;
 int A;
} grid_color;

};



struct _ImageLoader;

typedef void (* ThumbLoaderFunc)(ThumbLoader *tl, gpointer data);

typedef void (* FileUtilDoneFunc)(gboolean success, const gchar *done_path, gpointer data);

struct _ThumbLoader
{
gboolean standard_loader;

ImageLoader *il;
FileData *fd;

gboolean cache_enable;
gboolean cache_hit;
gdouble percent_done;

gint max_w;
gint max_h;

ThumbLoaderFunc func_done;
ThumbLoaderFunc func_error;
ThumbLoaderFunc func_progress;

gpointer data;

guint idle_done_id;
};

struct _CollectInfo
{
FileData *fd;
GdkPixbuf *pixbuf;
guint flag_mask;
};

struct _CollectionData
{
gchar *path;
gchar *name;
GList *list;
SortType sort_method;

ThumbLoader *thumb_loader;
CollectInfo *thumb_info;

void (*info_updated_func)(CollectionData *, CollectInfo *, gpointer);
gpointer info_updated_data;

gint ref;


gint window_read;
gint window_x;
gint window_y;
gint window_w;
gint window_h;


gboolean changed;

GHashTable *existence;
};

struct _CollectTable
{
GtkWidget *scrolled;
GtkWidget *listview;
gint columns;
gint rows;

CollectionData *cd;

GList *selection;
CollectInfo *prev_selection;

CollectInfo *click_info;

GtkWidget *tip_window;
guint tip_delay_id;
CollectInfo *tip_info;

GdkWindow *marker_window;
CollectInfo *marker_info;

GtkWidget *status_label;
GtkWidget *extra_label;

gint focus_row;
gint focus_column;
CollectInfo *focus_info;

GtkWidget *popup;
CollectInfo *drop_info;
GList *drop_list;

guint sync_idle_id;
guint drop_idle_id;

gboolean show_text;


GList *editmenu_fd_list;
};

struct _CollectWindow
{
GtkWidget *window;
CollectTable *table;
GtkWidget *status_box;
GList *list;

GtkWidget *close_dialog;

CollectionData *cd;
};

typedef gint (* ImageTileRequestFunc)(ImageWindow *imd, gint x, gint y,
         gint width, gint height, GdkPixbuf *pixbuf, gpointer);
typedef void (* ImageTileDisposeFunc)(ImageWindow *imd, gint x, gint y,
         gint width, gint height, GdkPixbuf *pixbuf, gpointer);

struct _ImageWindow
{
GtkWidget *widget;
GtkWidget *pr;
GtkWidget *frame;

FileData *image_fd;

gboolean unknown;

ImageLoader *il;


gint has_frame;


gboolean top_window_sync;
GtkWidget *top_window;
gchar *title;
gchar *title_right;
gboolean title_show_zoom;

gboolean completed;
ImageState state;

void (*func_update)(ImageWindow *imd, gpointer data);
void (*func_complete)(ImageWindow *imd, gint preload, gpointer data);
void (*func_state)(ImageWindow *imd, ImageState state, gpointer data);
ImageTileRequestFunc func_tile_request;
ImageTileDisposeFunc func_tile_dispose;

gpointer data_update;
gpointer data_complete;
gpointer data_state;
gpointer data_tile;


void (*func_button)(ImageWindow *, GdkEventButton *event, gpointer);
void (*func_drag)(ImageWindow *, GdkEventButton *event, gdouble dx, gdouble dy, gpointer);
void (*func_scroll)(ImageWindow *, GdkEventScroll *event, gpointer);
void (*func_focus_in)(ImageWindow *, gpointer);

gpointer data_button;
gpointer data_drag;
gpointer data_scroll;
gpointer data_focus_in;


void (*func_scroll_notify)(ImageWindow *, gint x, gint y, gint width, gint height, gpointer);

gpointer data_scroll_notify;


CollectionData *collection;
CollectInfo *collection_info;


gboolean color_profile_enable;
gint color_profile_input;
gboolean color_profile_use_image;
gint color_profile_from_image;
gpointer cm;

AlterType delay_alter_type;

FileData *read_ahead_fd;
ImageLoader *read_ahead_il;

gint prev_color_row;

gboolean auto_refresh;

gboolean delay_flip;
gint orientation;
gboolean desaturate;
gint user_stereo;
};



struct _FileDataChangeInfo {
FileDataChangeType type;
gchar *source;
gchar *dest;
gint error;
gboolean regroup_when_finished;
};

struct _FileData {
guint magick;
gint type;
gchar *original_path;
gchar *path;
const gchar *name;
const gchar *extension;
gchar *collate_key_name;
gchar *collate_key_name_nocase;
gint64 size;
time_t date;
time_t cdate;

# 525 "typedefs.h" 3 4
__mode_t
# 525 "typedefs.h"
      mode;
gint sidecar_priority;

guint marks;
guint valid_marks;


GList *sidecar_files;
FileData *parent;
FileDataChangeInfo *change;
GdkPixbuf *thumb_pixbuf;

GdkPixbuf *pixbuf;


HistMap *histmap;

gboolean locked;
gint ref;
gint version;
gboolean disable_grouping;

gint user_orientation;
gint exif_orientation;

ExifData *exif;
time_t exifdate;
GHashTable *modified_xmp;
GList *cached_metadata;
};

struct _LayoutOptions
{
gchar *id;

gchar *order;
gint style;

DirViewType dir_view_type;
FileViewType file_view_type;

gboolean show_thumbnails;
gboolean show_marks;
gboolean show_directory_date;
gboolean show_info_pixel;

struct {
 gint w;
 gint h;
 gint x;
 gint y;
 gboolean maximized;
 gint hdivider_pos;
 gint vdivider_pos;
} main_window;

struct {
 gint w;
 gint h;
 gint x;
 gint y;
 gint vdivider_pos;
} float_window;

struct {
 gint w;
 gint h;
} properties_window;

struct {
 guint state;
 gint histogram_channel;
 gint histogram_mode;
} image_overlay;

gboolean tools_float;
gboolean tools_hidden;
gboolean toolbar_hidden;

gchar *home_path;
gchar *last_path;

StartUpPath startup_path;

gboolean exit_on_close;
};

struct _LayoutWindow
{
LayoutOptions options;

FileData *dir_fd;



GtkWidget *window;

GtkWidget *main_box;

GtkWidget *group_box;
GtkWidget *h_pane;
GtkWidget *v_pane;



GtkActionGroup *action_group;
GtkActionGroup *action_group_editors;
guint ui_editors_id;
GtkUIManager *ui_manager;
GList *toolbar_actions[TOOLBAR_COUNT];

GtkWidget *path_entry;



LayoutLocation image_location;

ImageWindow *image;

ImageWindow *split_images[4];
ImageSplitMode split_mode;
gint active_split_image;

GtkWidget *split_image_widget;
GtkSizeGroup *split_image_sizegroup;



GtkWidget *tools;
GtkWidget *tools_pane;




GtkWidget *menu_bar;


GtkWidget *toolbar[TOOLBAR_COUNT];






GtkWidget *back_button;



LayoutLocation dir_location;

ViewDir *vd;
GtkWidget *dir_view;





LayoutLocation file_location;

ViewFile *vf;


GtkWidget *file_view;

SortType sort_method;
gboolean sort_ascend;



GtkWidget *info_box;
GtkWidget *info_progress_bar;
GtkWidget *info_sort;
GtkWidget *info_status;
GtkWidget *info_details;
GtkWidget *info_zoom;
GtkWidget *info_pixel;



SlideShowData *slideshow;



FullScreenData *full_screen;
# 718 "typedefs.h"
GtkWidget *utility_box;
GtkWidget *utility_paned;
GtkWidget *bar_sort;
GtkWidget *bar;






GtkWidget *exif_window;
};

struct _ViewDir
{
DirViewType type;
gpointer info;

GtkWidget *widget;
GtkWidget *view;

FileData *dir_fd;

FileData *click_fd;

FileData *drop_fd;
GList *drop_list;
guint drop_scroll_id;


void (*select_func)(ViewDir *vd, FileData *fd, gpointer data);
gpointer select_data;

void (*dnd_drop_update_func)(ViewDir *vd);
void (*dnd_drop_leave_func)(ViewDir *vd);

LayoutWindow *layout;

GtkWidget *popup;

PixmapFolders *pf;
};

struct _ViewDirInfoList
{
GList *list;
};

struct _ViewDirInfoTree
{
guint drop_expand_id;
gint busy_ref;
};


struct _ViewFile
{
FileViewType type;
gpointer info;

GtkWidget *widget;
GtkWidget *listview;
GtkWidget *scrolled;
GtkWidget *filter;
GtkWidget *filter_check[6];

FileData *dir_fd;
GList *list;

SortType sort_method;
gboolean sort_ascend;


void (*func_thumb_status)(ViewFile *vf, gdouble val, const gchar *text, gpointer data);
gpointer data_thumb_status;

void (*func_status)(ViewFile *vf, gpointer data);
gpointer data_status;

LayoutWindow *layout;

GtkWidget *popup;


gboolean thumbs_running;
ThumbLoader *thumbs_loader;
FileData *thumbs_filedata;


gboolean marks_enabled;
gint active_mark;
gint clicked_mark;


guint refresh_idle_id;
time_t time_refresh_set;


GList *editmenu_fd_list;
};

struct _ViewFileInfoList
{
FileData *click_fd;
FileData *select_fd;

gboolean thumbs_enabled;

guint select_idle_id;
};

struct _IconData;

struct _ViewFileInfoIcon
{

gint columns;
gint rows;

GList *selection;
struct _IconData *prev_selection;

GtkWidget *tip_window;
guint tip_delay_id;
struct _IconData *tip_id;

struct _IconData *click_id;

struct _IconData *focus_id;
gint focus_row;
gint focus_column;

gboolean show_text;
};

struct _SlideShowData
{
LayoutWindow *lw;
ImageWindow *imd;


GList *filelist;
CollectionData *cd;
FileData *dir_fd;

GList *list;
GList *list_done;

FileData *slide_fd;

guint slide_count;
guint timeout_id;

gboolean from_selection;

void (*stop_func)(SlideShowData *, gpointer);
gpointer stop_data;

gboolean paused;
};

struct _FullScreenData
{
GtkWidget *window;
ImageWindow *imd;

GtkWidget *normal_window;
ImageWindow *normal_imd;

guint hide_mouse_id;
guint busy_mouse_id;

gint cursor_state;

guint saver_block_id;

void (*stop_func)(FullScreenData *, gpointer);
gpointer stop_data;

gboolean same_region;
};

struct _PixmapFolders
{
GdkPixbuf *close;
GdkPixbuf *open;
GdkPixbuf *deny;
GdkPixbuf *parent;
};

struct _SecureSaveInfo {
FILE *fp;
gchar *file_name;
gchar *tmp_file_name;
gint err;
gboolean secure_save;
gboolean preserve_perms;
gboolean preserve_mtime;
gboolean unlink_on_error;
};

struct _CommandLine
{
int argc;
gchar **argv;
gboolean startup_blank;
gboolean startup_full_screen;
gboolean startup_in_slideshow;
gboolean startup_command_line_collection;
gboolean tools_hide;
gboolean tools_show;
gchar *path;
gchar *file;
GList *cmd_list;
GList *collection_list;
gchar *geometry;
};
# 122 "main.h" 2
# 1 "debug.h" 1
# 29 "debug.h"
void log_domain_printf(const gchar *domain, const gchar *format, ...) __attribute__((__format__ (__printf__, 2, 3)));







gint get_debug_level(void);
void set_debug_level(gint new_level);
void debug_level_add(gint delta);
gint required_debug_level(gint level);
const gchar *get_exec_time(void);
void init_exec_time(void);
# 123 "main.h" 2
# 1 "options.h" 1
# 24 "options.h"
typedef struct _ConfOptions ConfOptions;

struct _ConfOptions
{

gboolean progressive_key_scrolling;
gboolean place_dialogs_under_mouse;
gboolean mousewheel_scrolls;
gboolean show_icon_names;


gboolean tree_descend_subdirs;

gboolean lazy_image_sync;
gboolean update_on_time_change;

guint duplicates_similarity_threshold;
gboolean rot_invariant_sim;

gint open_recent_list_maxsize;
gint dnd_icon_size;

gboolean save_window_positions;
gboolean tools_restore_state;


struct {
 gboolean enable_in_place_rename;

 gboolean confirm_delete;
 gboolean enable_delete_key;
 gboolean safe_delete_enable;
 gchar *safe_delete_path;
 gint safe_delete_folder_maxsize;
} file_ops;


struct {
 gboolean exif_rotate_enable;
 gboolean exif_proof_rotate_enable;
 guint scroll_reset_method;
 gboolean fit_window_to_image;
 gboolean limit_window_size;
 gint max_window_size;
 gboolean limit_autofit_size;
 gint max_autofit_size;

 gint tile_cache_max;
 gint image_cache_max;
 gboolean enable_read_ahead;

 ZoomMode zoom_mode;
 gboolean zoom_2pass;
 gboolean zoom_to_fit_allow_expand;
 guint zoom_quality;
 gint zoom_increment;
 gboolean use_clutter_renderer;

 gboolean use_custom_border_color_in_fullscreen;
 gboolean use_custom_border_color;
 GdkColor border_color;
} image;


struct {
 gint max_width;
 gint max_height;
 gboolean enable_caching;
 gboolean cache_into_dirs;
 gboolean use_xvpics;
 gboolean spec_standard;
 guint quality;
 gboolean use_exif;
} thumbnails;


struct {
 gboolean show_hidden_files;
 gboolean show_parent_directory;
 gboolean show_dot_directory;
 gboolean disable_file_extension_checks;
 gboolean disable;
} file_filter;

struct {
 gchar *ext;
} sidecar;


struct {
 gboolean rectangular_selection;
} collections;


struct {
 gchar *path;
 gchar *options;
} shell;


struct {
 SortType method;
 gboolean ascending;
 gboolean case_sensitive;
} file_sort;


struct {
 gint delay;
 gboolean random;
 gboolean repeat;
} slideshow;


struct {
 gint screen;
 gboolean clean_flip;
 gboolean disable_saver;
 gboolean above;
} fullscreen;


struct {
 gchar *template_string;
 gint x;
 gint y;
 guint16 text_red;
 guint16 text_green;
 guint16 text_blue;
 guint16 text_alpha;
 guint16 background_red;
 guint16 background_green;
 guint16 background_blue;
 guint16 background_alpha;
 gchar *font;
} image_overlay;


struct {
 gchar *tabs_order;
} properties;


struct {
 gboolean enabled;
 gint input_type;
 gchar *input_file[4];
 gchar *input_name[4];
 gchar *screen_file;
 gboolean use_image;
 gboolean use_x11_screen_profile;

} color_profile;


struct {
 struct {
  gchar *command_name;
  gchar *command_line;
 } html_browser;
} helpers;


struct {
 gboolean enable_metadata_dirs;

 gboolean save_in_image_file;
 gboolean save_legacy_IPTC;
 gboolean warn_on_write_problems;

 gboolean save_legacy_format;

 gboolean sync_grouped_files;

 gboolean confirm_write;
 gint confirm_timeout;
 gboolean confirm_after_timeout;
 gboolean confirm_on_image_change;
 gboolean confirm_on_dir_change;
 gboolean keywords_case_sensitive;
 gboolean write_orientation;
} metadata;


struct {
 gint mode;;
 gint fsmode;
 gboolean enable_fsmode;
 gint fixed_w, fixed_h;
 gint fixed_x1, fixed_y1;
 gint fixed_x2, fixed_y2;
 struct {
  gboolean mirror_right;
  gboolean mirror_left;
  gboolean flip_right;
  gboolean flip_left;
  gboolean swap;
  gboolean temp_disable;
  gboolean fs_mirror_right;
  gboolean fs_mirror_left;
  gboolean fs_flip_right;
  gboolean fs_flip_left;
  gboolean fs_swap;
  gboolean fs_temp_disable;
 } tmp;
} stereo;
};

ConfOptions *options;
CommandLine *command_line;

ConfOptions *init_options(ConfOptions *options);
void setup_default_options(ConfOptions *options);
void save_options(ConfOptions *options);
gboolean load_options(ConfOptions *options);

void copy_layout_options(LayoutOptions *dest, const LayoutOptions *src);
void free_layout_options_content(LayoutOptions *dest);
LayoutOptions *init_layout_options(LayoutOptions *options);
# 124 "main.h" 2
# 136 "main.h"
extern gboolean thumb_format_changed;

void keyboard_scroll_calc(gint *x, gint *y, GdkEventKey *event);
gint key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer data);

void exit_program(void);
# 69 "exiv2.cc" 2
# 1 "exif.h" 1
# 36 "exif.h"
typedef enum {
EXIF_FORMAT_UNKNOWN = 0,
EXIF_FORMAT_BYTE_UNSIGNED = 1,
EXIF_FORMAT_STRING = 2,
EXIF_FORMAT_SHORT_UNSIGNED = 3,
EXIF_FORMAT_LONG_UNSIGNED = 4,
EXIF_FORMAT_RATIONAL_UNSIGNED = 5,
EXIF_FORMAT_BYTE = 6,
EXIF_FORMAT_UNDEFINED = 7,
EXIF_FORMAT_SHORT = 8,
EXIF_FORMAT_LONG = 9,
EXIF_FORMAT_RATIONAL = 10,
EXIF_FORMAT_FLOAT = 11,
EXIF_FORMAT_DOUBLE = 12
} ExifFormatType;
# 59 "exif.h"
typedef struct _ExifItem ExifItem;

typedef struct _ExifRational ExifRational;
struct _ExifRational
{
guint32 num;
guint32 den;
};




typedef enum {
EXIF_ORIENTATION_UNKNOWN = 0,
EXIF_ORIENTATION_TOP_LEFT = 1,
EXIF_ORIENTATION_TOP_RIGHT = 2,
EXIF_ORIENTATION_BOTTOM_RIGHT = 3,
EXIF_ORIENTATION_BOTTOM_LEFT = 4,
EXIF_ORIENTATION_LEFT_TOP = 5,
EXIF_ORIENTATION_RIGHT_TOP = 6,
EXIF_ORIENTATION_RIGHT_BOTTOM = 7,
EXIF_ORIENTATION_LEFT_BOTTOM = 8
} ExifOrientationType;

typedef enum {
EXIF_UNIT_UNKNOWN = 0,
EXIF_UNIT_NOUNIT = 1,
EXIF_UNIT_INCH = 2,
EXIF_UNIT_CENTIMETER = 3
} ExifUnitType;

typedef struct _ExifFormattedText ExifFormattedText;
struct _ExifFormattedText
{
const gchar *key;
const gchar *description;
gchar *(*build_func)(ExifData *exif);
};







void exif_init(void);

ExifData *exif_read(gchar *path, gchar *sidecar_path, GHashTable *modified_xmp);

ExifData *exif_read_fd(FileData *fd);
void exif_free_fd(FileData *fd, ExifData *exif);




ExifData *exif_get_original(ExifData *processed);


gboolean exif_write(ExifData *exif);
gboolean exif_write_sidecar(ExifData *exif, gchar *path);

void exif_free(ExifData *exif);

gchar *exif_get_data_as_text(ExifData *exif, const gchar *key);
gint exif_get_integer(ExifData *exif, const gchar *key, gint *value);
ExifRational *exif_get_rational(ExifData *exif, const gchar *key, gint *sign);

ExifItem *exif_get_item(ExifData *exif, const gchar *key);
ExifItem *exif_get_first_item(ExifData *exif);
ExifItem *exif_get_next_item(ExifData *exif);


gchar *exif_item_get_tag_name(ExifItem *item);
guint exif_item_get_tag_id(ExifItem *item);
guint exif_item_get_elements(ExifItem *item);
gchar *exif_item_get_data(ExifItem *item, guint *data_len);
gchar *exif_item_get_description(ExifItem *item);
guint exif_item_get_format_id(ExifItem *item);
const gchar *exif_item_get_format_name(ExifItem *item, gboolean brief);
gchar *exif_item_get_data_as_text(ExifItem *item);
gint exif_item_get_integer(ExifItem *item, gint *value);
ExifRational *exif_item_get_rational(ExifItem *item, gint *sign, guint n);

gchar *exif_item_get_string(ExifItem *item, gint idx);

gchar *exif_get_description_by_key(const gchar *key);
gchar *exif_get_tag_description_by_key(const gchar *key);

gchar *exif_get_formatted_by_key(ExifData *exif, const gchar *key, gboolean *key_valid);

gint exif_update_metadata(ExifData *exif, const gchar *key, const GList *values);
GList *exif_get_metadata(ExifData *exif, const gchar *key, MetadataFormat format);

guchar *exif_get_color_profile(ExifData *exif, guint *data_len);



void exif_add_jpeg_color_profile(ExifData *exif, guchar *cp_data, guint cp_length);


gboolean exif_jpeg_parse_color(ExifData *exif, guchar *data, guint size);


guchar *exif_get_preview(ExifData *exif, guint *data_len, gint requested_width, gint requested_height);
void exif_free_preview(guchar *buf);

gchar *metadata_file_info(FileData *fd, const gchar *key, MetadataFormat format);
# 70 "exiv2.cc" 2

# 1 "filefilter.h" 1
# 26 "filefilter.h"
typedef struct _FilterEntry FilterEntry;
struct _FilterEntry {
gchar *key;
gchar *description;
gchar *extensions;
FileFormatClass file_class;
gboolean enabled;
gboolean writable;
gboolean allow_sidecar;
};


GList *filter_get_list(void);
void filter_remove_entry(FilterEntry *fe);

void filter_add(const gchar *key, const gchar *description, const gchar *extensions, FileFormatClass file_class, gboolean writable, gboolean allow_sidecar, gboolean enabled);
void filter_add_unique(const gchar *description, const gchar *extensions, FileFormatClass file_class, gboolean writable, gboolean allow_sidecar, gboolean enabled);
void filter_add_defaults(void);
void filter_reset(void);
void filter_rebuild(void);
GList *filter_to_list(const gchar *extensions);

const gchar *registered_extension_from_path(const gchar *name);
gboolean filter_name_exists(const gchar *name);
gboolean filter_file_class(const gchar *name, FileFormatClass file_class);
gboolean filter_name_is_writable(const gchar *name);
gboolean filter_name_allow_sidecar(const gchar *name);

void filter_write_list(GString *outstr, gint indent);
void filter_load_file_type(const gchar **attribute_names, const gchar **attribute_values);


void sidecar_ext_parse(const gchar *text);
gchar *sidecar_ext_to_string(void);
GList *sidecar_ext_get_list(void);
# 72 "exiv2.cc" 2
# 1 "ui_fileops.h" 1
# 33 "ui_fileops.h"
void print_term(const gchar *text_utf8);
# 48 "ui_fileops.h"
gchar *path_to_utf8(const gchar *path);
gchar *path_from_utf8(const gchar *utf8);


const gchar *xdg_data_home_get(void);
const gchar *xdg_config_home_get(void);
const gchar *xdg_cache_home_get(void);
const gchar *homedir(void);
const gchar *get_rc_dir(void);
const gchar *get_collections_dir(void);
const gchar *get_trash_dir(void);

gboolean stat_utf8(const gchar *s, struct stat *st);
gboolean lstat_utf8(const gchar *s, struct stat *st);

gboolean isname(const gchar *s);
gboolean isfile(const gchar *s);
gboolean isdir(const gchar *s);
gboolean islink(const gchar *s);
gint64 filesize(const gchar *s);
time_t filetime(const gchar *s);
gboolean filetime_set(const gchar *s, time_t tval);
gboolean is_readable_file(const gchar *s);
gboolean access_file(const gchar *s, gint mode);
gboolean unlink_file(const gchar *s);
gboolean symlink_utf8(const gchar *source, const gchar *target);
gboolean mkdir_utf8(const gchar *s, gint mode);
gboolean rmdir_utf8(const gchar *s);
gboolean copy_file_attributes(const gchar *s, const gchar *t, gint perms, gint mtime);
gboolean copy_file(const gchar *s, const gchar *t);
gboolean move_file(const gchar *s, const gchar *t);
gboolean rename_file(const gchar *s, const gchar *t);
gchar *get_current_dir(void);




void string_list_free(GList *list);
GList *string_list_copy(const GList *list);

gchar *unique_filename(const gchar *path, const gchar *ext, const gchar *divider, gboolean pad);
gchar *unique_filename_simple(const gchar *path);

const gchar *filename_from_path(const gchar *path);
gchar *remove_level_from_path(const gchar *path);

const gchar *extension_from_path(const gchar *path);
gchar *remove_extension_from_path(const gchar *path);

gboolean file_extension_match(const gchar *path, const gchar *ext);


void parse_out_relatives(gchar *path);

gboolean file_in_path(const gchar *name);

gboolean recursive_mkdir_if_not_exists(const gchar *path,
# 104 "ui_fileops.h" 3 4
                                                        __mode_t
# 104 "ui_fileops.h"
                                                               mode);





gchar *md5_text_from_file_utf8(const gchar *path, const gchar *error_text);
gboolean md5_get_digest_from_file_utf8(const gchar *path, guchar digest[16]);
# 73 "exiv2.cc" 2

# 1 "misc.h" 1
# 24 "misc.h"
gdouble get_zoom_increment(void);
gchar *utf8_validate_or_convert(const gchar *text);
gint utf8_compare(const gchar *s1, const gchar *s2, gboolean case_sensitive);
gchar *expand_tilde(const gchar *filename);
int runcmd(gchar *cmd);
# 75 "exiv2.cc" 2
}

typedef struct _AltKey AltKey;

struct _AltKey
{
const gchar *xmp_key;
const gchar *exif_key;
const gchar *iptc_key;
};


static const AltKey alt_keys[] = {
{"Xmp.tiff.Orientation", "Exif.Image.Orientation",
# 88 "exiv2.cc" 3 4
                                                    __null
# 88 "exiv2.cc"
                                                        },
{"Xmp.dc.title",
# 89 "exiv2.cc" 3 4
                  __null
# 89 "exiv2.cc"
                      , "Iptc.Application2.ObjectName" },
{"Xmp.photoshop.Urgency",
# 90 "exiv2.cc" 3 4
                          __null
# 90 "exiv2.cc"
                              , "Iptc.Application2.Urgency" },
{"Xmp.photoshop.Category",
# 91 "exiv2.cc" 3 4
                           __null
# 91 "exiv2.cc"
                               , "Iptc.Application2.Category" },
{"Xmp.photoshop.SupplementalCategory",
# 92 "exiv2.cc" 3 4
                                      __null
# 92 "exiv2.cc"
                                          , "Iptc.Application2.SuppCategory" },
{"Xmp.dc.subject",
# 93 "exiv2.cc" 3 4
                    __null
# 93 "exiv2.cc"
                        , "Iptc.Application2.Keywords" },
{"Xmp.iptc.Location",
# 94 "exiv2.cc" 3 4
                       __null
# 94 "exiv2.cc"
                           , "Iptc.Application2.LocationName" },
{"Xmp.photoshop.Instruction",
# 95 "exiv2.cc" 3 4
                              __null
# 95 "exiv2.cc"
                                  , "Iptc.Application2.SpecialInstructions" },
{"Xmp.photoshop.DateCreated",
# 96 "exiv2.cc" 3 4
                              __null
# 96 "exiv2.cc"
                                  , "Iptc.Application2.DateCreated" },
{"Xmp.dc.creator",
# 97 "exiv2.cc" 3 4
                    __null
# 97 "exiv2.cc"
                        , "Iptc.Application2.Byline" },
{"Xmp.photoshop.AuthorsPosition",
# 98 "exiv2.cc" 3 4
                                 __null
# 98 "exiv2.cc"
                                     , "Iptc.Application2.BylineTitle" },
{"Xmp.photoshop.City",
# 99 "exiv2.cc" 3 4
                        __null
# 99 "exiv2.cc"
                            , "Iptc.Application2.City" },
{"Xmp.photoshop.State",
# 100 "exiv2.cc" 3 4
                         __null
# 100 "exiv2.cc"
                             , "Iptc.Application2.ProvinceState" },
{"Xmp.iptc.CountryCode",
# 101 "exiv2.cc" 3 4
                         __null
# 101 "exiv2.cc"
                             , "Iptc.Application2.CountryCode" },
{"Xmp.photoshop.Country",
# 102 "exiv2.cc" 3 4
                          __null
# 102 "exiv2.cc"
                              , "Iptc.Application2.CountryName" },
{"Xmp.photoshop.TransmissionReference",
# 103 "exiv2.cc" 3 4
                                       __null
# 103 "exiv2.cc"
                                           , "Iptc.Application2.TransmissionReference"},
{"Xmp.photoshop.Headline",
# 104 "exiv2.cc" 3 4
                           __null
# 104 "exiv2.cc"
                               , "Iptc.Application2.Headline" },
{"Xmp.photoshop.Credit",
# 105 "exiv2.cc" 3 4
                         __null
# 105 "exiv2.cc"
                             , "Iptc.Application2.Credit" },
{"Xmp.photoshop.Source",
# 106 "exiv2.cc" 3 4
                         __null
# 106 "exiv2.cc"
                             , "Iptc.Application2.Source" },
{"Xmp.dc.rights",
# 107 "exiv2.cc" 3 4
                   __null
# 107 "exiv2.cc"
                       , "Iptc.Application2.Copyright" },
{"Xmp.dc.description",
# 108 "exiv2.cc" 3 4
                        __null
# 108 "exiv2.cc"
                            , "Iptc.Application2.Caption" },
{"Xmp.photoshop.CaptionWriter",
# 109 "exiv2.cc" 3 4
                                __null
# 109 "exiv2.cc"
                                    , "Iptc.Application2.Writer" },
{
# 110 "exiv2.cc" 3 4
__null
# 110 "exiv2.cc"
    ,
# 110 "exiv2.cc" 3 4
      __null
# 110 "exiv2.cc"
          ,
# 110 "exiv2.cc" 3 4
            __null
# 110 "exiv2.cc"
                }
};

static void _debug_exception(const char* file,
                            int line,
                            const char* func,
                            Exiv2::AnyError& e)
{
gchar *str = g_locale_from_utf8(e.what(), -1,
# 118 "exiv2.cc" 3 4
                                             __null
# 118 "exiv2.cc"
                                                 ,
# 118 "exiv2.cc" 3 4
                                                   __null
# 118 "exiv2.cc"
                                                       ,
# 118 "exiv2.cc" 3 4
                                                         __null
# 118 "exiv2.cc"
                                                             );
do { gint debug_level = get_debug_level(); if (debug_level >= (1)) { if (debug_level != 1) log_domain_printf("debug", "%s:%d: ", "exiv2.cc", 119); log_domain_printf("debug", "%s:%d:%s:Exiv2: %s", file, line, func, str); log_domain_printf("debug", "\n"); } } while (0);
g_free(str);
}



struct _ExifData
{
Exiv2::ExifData::const_iterator exifIter;
Exiv2::IptcData::const_iterator iptcIter;

Exiv2::XmpData::const_iterator xmpIter;


virtual ~_ExifData()
{
}

virtual void writeMetadata(gchar *path =
# 137 "exiv2.cc" 3 4
                                        __null
# 137 "exiv2.cc"
                                            )
{
 g_log (((gchar*) 0), G_LOG_LEVEL_CRITICAL, "Unsupported method of writing metadata");
}

virtual ExifData *original()
{
 return
# 144 "exiv2.cc" 3 4
       __null
# 144 "exiv2.cc"
           ;
}

virtual Exiv2::Image *image() = 0;

virtual Exiv2::ExifData &exifData() = 0;

virtual Exiv2::IptcData &iptcData() = 0;


virtual Exiv2::XmpData &xmpData() = 0;


virtual void add_jpeg_color_profile(unsigned char *cp_data, guint cp_length) = 0;

virtual guchar *get_jpeg_color_profile(guint *data_len) = 0;
};


struct _ExifDataOriginal : public _ExifData
{
protected:
Exiv2::Image::AutoPtr image_;


unsigned char *cp_data_;
guint cp_length_;
gboolean valid_;
gchar *pathl_;

Exiv2::ExifData emptyExifData_;
Exiv2::IptcData emptyIptcData_;

Exiv2::XmpData emptyXmpData_;


public:
_ExifDataOriginal(Exiv2::Image::AutoPtr image)
{
 cp_data_ =
# 183 "exiv2.cc" 3 4
           __null
# 183 "exiv2.cc"
               ;
 cp_length_ = 0;
 image_ = image;
 valid_ = (!(0));
}

_ExifDataOriginal(gchar *path)
{
 cp_data_ =
# 191 "exiv2.cc" 3 4
           __null
# 191 "exiv2.cc"
               ;
 cp_length_ = 0;
 valid_ = (!(0));

 pathl_ = path_from_utf8(path);
 try
  {
  image_ = Exiv2::ImageFactory::open(pathl_);

  image_->readMetadata();


  if (image_->mimeType() == "application/rdf+xml")
   {

   image_->clearExifData();
   image_->clearIptcData();
   }



  if (image_->mimeType() == "image/jpeg")
   {

   Exiv2::BasicIo &io = image_->io();
   gint open = io.isopen();
   if (!open) io.open();
   if (io.isopen())
    {
    unsigned char *mapped = (unsigned char*)io.mmap();
    if (mapped) exif_jpeg_parse_color(this, mapped, io.size());
    io.munmap();
    }
   if (!open) io.close();
   }

  }
 catch (Exiv2::AnyError& e)
  {
  valid_ = (0);
  }
}

virtual ~_ExifDataOriginal()
{
 if (cp_data_) g_free(cp_data_);
 if (pathl_) g_free(pathl_);
}

virtual Exiv2::Image *image()
{
 if (!valid_) return
# 242 "exiv2.cc" 3 4
                    __null
# 242 "exiv2.cc"
                        ;
 return image_.get();
}

virtual Exiv2::ExifData &exifData ()
{
 if (!valid_) return emptyExifData_;
 return image_->exifData();
}

virtual Exiv2::IptcData &iptcData ()
{
 if (!valid_) return emptyIptcData_;
 return image_->iptcData();
}


virtual Exiv2::XmpData &xmpData ()
{
 if (!valid_) return emptyXmpData_;
 return image_->xmpData();
}


virtual void add_jpeg_color_profile(unsigned char *cp_data, guint cp_length)
{
 if (cp_data_) g_free(cp_data_);
 cp_data_ = cp_data;
 cp_length_ = cp_length;
}

virtual guchar *get_jpeg_color_profile(guint *data_len)
{
 if (cp_data_)
 {
  if (data_len) *data_len = cp_length_;
  return (unsigned char *) g_memdup(cp_data_, cp_length_);
 }
 return
# 280 "exiv2.cc" 3 4
       __null
# 280 "exiv2.cc"
           ;
}
};

extern "C" {
static void _ExifDataProcessed_update_xmp(gpointer key, gpointer value, gpointer data);
}


struct _ExifDataProcessed : public _ExifData
{
protected:
_ExifDataOriginal *imageData_;
_ExifDataOriginal *sidecarData_;

Exiv2::ExifData exifData_;
Exiv2::IptcData iptcData_;

Exiv2::XmpData xmpData_;


public:
_ExifDataProcessed(gchar *path, gchar *sidecar_path, GHashTable *modified_xmp)
{
 imageData_ = new _ExifDataOriginal(path);
 sidecarData_ =
# 305 "exiv2.cc" 3 4
               __null
# 305 "exiv2.cc"
                   ;

 if (sidecar_path)
  {
  sidecarData_ = new _ExifDataOriginal(sidecar_path);
  xmpData_ = sidecarData_->xmpData();
  }
 else
  {
  xmpData_ = imageData_->xmpData();
  }


 exifData_ = imageData_->exifData();
 iptcData_ = imageData_->iptcData();

 try
  {
  syncExifWithXmp(exifData_, xmpData_);
  }
 catch (...)
  {
  do { gint debug_level = get_debug_level(); if (debug_level >= (1)) { if (debug_level != 1) log_domain_printf("debug", "%s:%d: ", "exiv2.cc", 327); log_domain_printf("debug", "Exiv2: Catching bug\n"); log_domain_printf("debug", "\n"); } } while (0);
  }

 if (modified_xmp)
  {
  g_hash_table_foreach(modified_xmp, _ExifDataProcessed_update_xmp, this);
  }
}

virtual ~_ExifDataProcessed()
{
 if (imageData_) delete imageData_;
 if (sidecarData_) delete sidecarData_;
}

virtual ExifData *original()
{
 return imageData_;
}

virtual void writeMetadata(gchar *path =
# 347 "exiv2.cc" 3 4
                                        __null
# 347 "exiv2.cc"
                                            )
{
 if (!path)
  {

  if (options->metadata.save_legacy_IPTC)
   copyXmpToIptc(xmpData_, iptcData_);
  else
   iptcData_.clear();

  copyXmpToExif(xmpData_, exifData_);

  Exiv2::Image *image = imageData_->image();

  if (!image) Exiv2::Error(21);
  image->setExifData(exifData_);
  image->setIptcData(iptcData_);

  image->setXmpData(xmpData_);

  image->writeMetadata();
  }
 else
  {

  gchar *pathl = path_from_utf8(path);;

  Exiv2::Image::AutoPtr sidecar = Exiv2::ImageFactory::create(Exiv2::ImageType::xmp, pathl);

  g_free(pathl);

  sidecar->setXmpData(xmpData_);
  sidecar->writeMetadata();



  }
}

virtual Exiv2::Image *image()
{
 return imageData_->image();
}

virtual Exiv2::ExifData &exifData ()
{
 return exifData_;
}

virtual Exiv2::IptcData &iptcData ()
{
 return iptcData_;
}


virtual Exiv2::XmpData &xmpData ()
{
 return xmpData_;
}


virtual void add_jpeg_color_profile(unsigned char *cp_data, guint cp_length)
{
 imageData_->add_jpeg_color_profile(cp_data, cp_length);
}

virtual guchar *get_jpeg_color_profile(guint *data_len)
{
 return imageData_->get_jpeg_color_profile(data_len);
}
};




extern "C" {


void exif_init(void)
{

bind_textdomain_codeset ("exiv2", "UTF-8");

}



static void _ExifDataProcessed_update_xmp(gpointer key, gpointer value, gpointer data)
{
exif_update_metadata((ExifData *)data, (gchar *)key, (GList *)value);
}

ExifData *exif_read(gchar *path, gchar *sidecar_path, GHashTable *modified_xmp)
{
do { gint debug_level = get_debug_level(); if (debug_level >= (1)) { if (debug_level != 1) log_domain_printf("debug", "%s:%d: ", "exiv2.cc", 441); log_domain_printf("debug", "exif read %s, sidecar: %s", path, sidecar_path ? sidecar_path : "-"); log_domain_printf("debug", "\n"); } } while (0);
try {
 return new _ExifDataProcessed(path, sidecar_path, modified_xmp);
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 446,
# 446 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 446 "exiv2.cc"
, e);
 return
# 447 "exiv2.cc" 3 4
       __null
# 447 "exiv2.cc"
           ;
}

}

gboolean exif_write(ExifData *exif)
{
try {
 exif->writeMetadata();
 return (!(0));
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 459,
# 459 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 459 "exiv2.cc"
, e);
 return (0);
}
}

gboolean exif_write_sidecar(ExifData *exif, gchar *path)
{
try {
 exif->writeMetadata(path);
 return (!(0));
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 471,
# 471 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 471 "exiv2.cc"
, e);
 return (0);
}

}


void exif_free(ExifData *exif)
{
if (!exif) return;
do { if (__builtin_expect (__extension__ ({ int _g_boolean_var_; if ((dynamic_cast<_ExifDataProcessed *>(exif))) _g_boolean_var_ = 1; else _g_boolean_var_ = 0; _g_boolean_var_; }), 1)) ; else g_assertion_message_expr (((gchar*) 0), "exiv2.cc", 481, ((const char*) (__PRETTY_FUNCTION__)), "dynamic_cast<_ExifDataProcessed *>(exif)"); } while (0);
delete exif;
}

ExifData *exif_get_original(ExifData *exif)
{
return exif->original();
}


ExifItem *exif_get_item(ExifData *exif, const gchar *key)
{
try {
 Exiv2::Metadatum *item =
# 494 "exiv2.cc" 3 4
                         __null
# 494 "exiv2.cc"
                             ;
 try {
  Exiv2::ExifKey ekey(key);
  Exiv2::ExifData::iterator pos = exif->exifData().findKey(ekey);
  if (pos == exif->exifData().end()) return
# 498 "exiv2.cc" 3 4
                                           __null
# 498 "exiv2.cc"
                                               ;
  item = &*pos;
 }
 catch (Exiv2::AnyError& e) {
  try {
   Exiv2::IptcKey ekey(key);
   Exiv2::IptcData::iterator pos = exif->iptcData().findKey(ekey);
   if (pos == exif->iptcData().end()) return
# 505 "exiv2.cc" 3 4
                                            __null
# 505 "exiv2.cc"
                                                ;
   item = &*pos;
  }
  catch (Exiv2::AnyError& e) {

   Exiv2::XmpKey ekey(key);
   Exiv2::XmpData::iterator pos = exif->xmpData().findKey(ekey);
   if (pos == exif->xmpData().end()) return
# 512 "exiv2.cc" 3 4
                                           __null
# 512 "exiv2.cc"
                                               ;
   item = &*pos;

  }
 }
 return (ExifItem *)item;
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 520,
# 520 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 520 "exiv2.cc"
, e);
 return
# 521 "exiv2.cc" 3 4
       __null
# 521 "exiv2.cc"
           ;
}
}

ExifItem *exif_add_item(ExifData *exif, const gchar *key)
{
try {
 Exiv2::Metadatum *item =
# 528 "exiv2.cc" 3 4
                         __null
# 528 "exiv2.cc"
                             ;
 try {
  Exiv2::ExifKey ekey(key);
  exif->exifData().add(ekey,
# 531 "exiv2.cc" 3 4
                            __null
# 531 "exiv2.cc"
                                );
  Exiv2::ExifData::iterator pos = exif->exifData().end();
  pos--;
  item = &*pos;
 }
 catch (Exiv2::AnyError& e) {
  try {
   Exiv2::IptcKey ekey(key);
   exif->iptcData().add(ekey,
# 539 "exiv2.cc" 3 4
                             __null
# 539 "exiv2.cc"
                                 );
   Exiv2::IptcData::iterator pos = exif->iptcData().end();
   pos--;
   item = &*pos;
  }
  catch (Exiv2::AnyError& e) {

   Exiv2::XmpKey ekey(key);
   exif->xmpData().add(ekey,
# 547 "exiv2.cc" 3 4
                            __null
# 547 "exiv2.cc"
                                );
   Exiv2::XmpData::iterator pos = exif->xmpData().end();
   pos--;
   item = &*pos;

  }
 }
 return (ExifItem *)item;
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 557,
# 557 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 557 "exiv2.cc"
, e);
 return
# 558 "exiv2.cc" 3 4
       __null
# 558 "exiv2.cc"
           ;
}
}


ExifItem *exif_get_first_item(ExifData *exif)
{
try {
 exif->exifIter = exif->exifData().begin();
 exif->iptcIter = exif->iptcData().begin();

 exif->xmpIter = exif->xmpData().begin();

 if (exif->exifIter != exif->exifData().end())
  {
  const Exiv2::Metadatum *item = &*exif->exifIter;
  exif->exifIter++;
  return (ExifItem *)item;
  }
 if (exif->iptcIter != exif->iptcData().end())
  {
  const Exiv2::Metadatum *item = &*exif->iptcIter;
  exif->iptcIter++;
  return (ExifItem *)item;
  }

 if (exif->xmpIter != exif->xmpData().end())
  {
  const Exiv2::Metadatum *item = &*exif->xmpIter;
  exif->xmpIter++;
  return (ExifItem *)item;
  }

 return
# 591 "exiv2.cc" 3 4
       __null
# 591 "exiv2.cc"
           ;

}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 595,
# 595 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 595 "exiv2.cc"
, e);
 return
# 596 "exiv2.cc" 3 4
       __null
# 596 "exiv2.cc"
           ;
}
}

ExifItem *exif_get_next_item(ExifData *exif)
{
try {
 if (exif->exifIter != exif->exifData().end())
  {
  const Exiv2::Metadatum *item = &*exif->exifIter;
  exif->exifIter++;
  return (ExifItem *)item;
 }
 if (exif->iptcIter != exif->iptcData().end())
  {
  const Exiv2::Metadatum *item = &*exif->iptcIter;
  exif->iptcIter++;
  return (ExifItem *)item;
 }

 if (exif->xmpIter != exif->xmpData().end())
  {
  const Exiv2::Metadatum *item = &*exif->xmpIter;
  exif->xmpIter++;
  return (ExifItem *)item;
 }

 return
# 623 "exiv2.cc" 3 4
       __null
# 623 "exiv2.cc"
           ;
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 626,
# 626 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 626 "exiv2.cc"
, e);
 return
# 627 "exiv2.cc" 3 4
       __null
# 627 "exiv2.cc"
           ;
}
}

char *exif_item_get_tag_name(ExifItem *item)
{
try {
 if (!item) return
# 634 "exiv2.cc" 3 4
                  __null
# 634 "exiv2.cc"
                      ;
 return g_strdup(((Exiv2::Metadatum *)item)->key().c_str());
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 638,
# 638 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 638 "exiv2.cc"
, e);
 return
# 639 "exiv2.cc" 3 4
       __null
# 639 "exiv2.cc"
           ;
}
}

guint exif_item_get_tag_id(ExifItem *item)
{
try {
 if (!item) return 0;
 return ((Exiv2::Metadatum *)item)->tag();
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 650,
# 650 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 650 "exiv2.cc"
, e);
 return 0;
}
}

guint exif_item_get_elements(ExifItem *item)
{
try {
 if (!item) return 0;
 return ((Exiv2::Metadatum *)item)->count();
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 662,
# 662 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 662 "exiv2.cc"
, e);
 return 0;
}
}

char *exif_item_get_data(ExifItem *item, guint *data_len)
{
try {
 if (!item) return 0;
 Exiv2::Metadatum *md = (Exiv2::Metadatum *)item;
 if (data_len) *data_len = md->size();
 char *data = (char *)g_malloc(md->size());
 long res = md->copy((Exiv2::byte *)data, Exiv2::littleEndian );
 do { if (__builtin_expect (__extension__ ({ int _g_boolean_var_; if ((res == md->size())) _g_boolean_var_ = 1; else _g_boolean_var_ = 0; _g_boolean_var_; }), 1)) ; else g_assertion_message_expr (((gchar*) 0), "exiv2.cc", 675, ((const char*) (__PRETTY_FUNCTION__)), "res == md->size()"); } while (0);
 return data;
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 679,
# 679 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 679 "exiv2.cc"
, e);
 return
# 680 "exiv2.cc" 3 4
       __null
# 680 "exiv2.cc"
           ;
}
}

char *exif_item_get_description(ExifItem *item)
{
try {
 if (!item) return
# 687 "exiv2.cc" 3 4
                  __null
# 687 "exiv2.cc"
                      ;
 return utf8_validate_or_convert(((Exiv2::Metadatum *)item)->tagLabel().c_str());
}
catch (std::exception& e) {

 return
# 692 "exiv2.cc" 3 4
       __null
# 692 "exiv2.cc"
           ;
}
}
# 705 "exiv2.cc"
static guint format_id_trans_tbl [] = {
EXIF_FORMAT_UNKNOWN,
EXIF_FORMAT_BYTE_UNSIGNED,
EXIF_FORMAT_STRING,
EXIF_FORMAT_SHORT_UNSIGNED,
EXIF_FORMAT_LONG_UNSIGNED,
EXIF_FORMAT_RATIONAL_UNSIGNED,
EXIF_FORMAT_BYTE,
EXIF_FORMAT_UNDEFINED,
EXIF_FORMAT_SHORT,
EXIF_FORMAT_LONG,
EXIF_FORMAT_RATIONAL,
EXIF_FORMAT_STRING,
EXIF_FORMAT_STRING,
EXIF_FORMAT_STRING,
EXIF_FORMAT_UNDEFINED,
EXIF_FORMAT_STRING,
EXIF_FORMAT_STRING,
EXIF_FORMAT_STRING,
EXIF_FORMAT_STRING
};



guint exif_item_get_format_id(ExifItem *item)
{
try {
 if (!item) return EXIF_FORMAT_UNKNOWN;
 guint id = ((Exiv2::Metadatum *)item)->typeId();
 if (id >= (sizeof(format_id_trans_tbl) / sizeof(format_id_trans_tbl[0])) ) return EXIF_FORMAT_UNKNOWN;
 return format_id_trans_tbl[id];
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 738,
# 738 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 738 "exiv2.cc"
, e);
 return EXIF_FORMAT_UNKNOWN;
}
}

const char *exif_item_get_format_name(ExifItem *item, gboolean brief)
{
try {
 if (!item) return
# 746 "exiv2.cc" 3 4
                  __null
# 746 "exiv2.cc"
                      ;
 return ((Exiv2::Metadatum *)item)->typeName();
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 750,
# 750 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 750 "exiv2.cc"
, e);
 return
# 751 "exiv2.cc" 3 4
       __null
# 751 "exiv2.cc"
           ;
}
}


gchar *exif_item_get_data_as_text(ExifItem *item)
{
try {
 if (!item) return
# 759 "exiv2.cc" 3 4
                  __null
# 759 "exiv2.cc"
                      ;
 Exiv2::Metadatum *metadatum = (Exiv2::Metadatum *)item;

 return utf8_validate_or_convert(metadatum->print().c_str());
# 781 "exiv2.cc"
}
catch (Exiv2::AnyError& e) {
 return
# 783 "exiv2.cc" 3 4
       __null
# 783 "exiv2.cc"
           ;
}
}

gchar *exif_item_get_string(ExifItem *item, int idx)
{
try {
 if (!item) return
# 790 "exiv2.cc" 3 4
                  __null
# 790 "exiv2.cc"
                      ;
 Exiv2::Metadatum *em = (Exiv2::Metadatum *)item;

 std::string str = em->toString(idx);



 if (idx == 0 && str == "") str = em->toString();
 if (str.length() > 5 && str.substr(0, 5) == "lang=")
  {
  std::string::size_type pos = str.find_first_of(' ');
  if (pos != std::string::npos) str = str.substr(pos+1);
  }

 return utf8_validate_or_convert(str.c_str());
}
catch (Exiv2::AnyError& e) {
 return
# 807 "exiv2.cc" 3 4
       __null
# 807 "exiv2.cc"
           ;
}
}


gint exif_item_get_integer(ExifItem *item, gint *value)
{
try {
 if (!item || exif_item_get_elements(item) == 0) return 0;
 *value = ((Exiv2::Metadatum *)item)->toLong();
 return 1;
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 820,
# 820 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 820 "exiv2.cc"
, e);
 return 0;
}
}

ExifRational *exif_item_get_rational(ExifItem *item, gint *sign, guint n)
{
try {
 if (!item) return
# 828 "exiv2.cc" 3 4
                  __null
# 828 "exiv2.cc"
                      ;
 if (n >= exif_item_get_elements(item)) return
# 829 "exiv2.cc" 3 4
                                              __null
# 829 "exiv2.cc"
                                                  ;
 Exiv2::Rational v = ((Exiv2::Metadatum *)item)->toRational(n);
 static ExifRational ret;
 ret.num = v.first;
 ret.den = v.second;
 if (sign) *sign = (((Exiv2::Metadatum *)item)->typeId() == Exiv2::signedRational);
 return &ret;
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 838,
# 838 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 838 "exiv2.cc"
, e);
 return
# 839 "exiv2.cc" 3 4
       __null
# 839 "exiv2.cc"
           ;
}
}

gchar *exif_get_tag_description_by_key(const gchar *key)
{
try {
 Exiv2::ExifKey ekey(key);
 return utf8_validate_or_convert(ekey.tagLabel().c_str());
}
catch (Exiv2::AnyError& e) {
 try {
  Exiv2::IptcKey ikey(key);
  return utf8_validate_or_convert(ikey.tagLabel().c_str());
 }
 catch (Exiv2::AnyError& e) {
  try {

   Exiv2::XmpKey xkey(key);
   return utf8_validate_or_convert(xkey.tagLabel().c_str());

  }
  catch (Exiv2::AnyError& e) {
   _debug_exception("exiv2.cc", 862,
# 862 "exiv2.cc" 3 4
  __PRETTY_FUNCTION__
# 862 "exiv2.cc"
  , e);
   return
# 863 "exiv2.cc" 3 4
         __null
# 863 "exiv2.cc"
             ;
  }
 }
}
return
# 867 "exiv2.cc" 3 4
      __null
# 867 "exiv2.cc"
          ;
}

static const AltKey *find_alt_key(const gchar *xmp_key)
{
gint i = 0;

while (alt_keys[i].xmp_key)
 {
 if (strcmp(xmp_key, alt_keys[i].xmp_key) == 0) return &alt_keys[i];
 i++;
 }
return
# 879 "exiv2.cc" 3 4
      __null
# 879 "exiv2.cc"
          ;
}

static gint exif_update_metadata_simple(ExifData *exif, const gchar *key, const GList *values)
{
try {
 const GList *work = values;

 try {
  Exiv2::ExifKey ekey(key);

  Exiv2::ExifData::iterator pos = exif->exifData().findKey(ekey);
  while (pos != exif->exifData().end())
   {
   exif->exifData().erase(pos);
   pos = exif->exifData().findKey(ekey);
   }

  while (work)
   {
   exif->exifData()[key] = (gchar *)work->data;
   work = work->next;
   }
 }
 catch (Exiv2::AnyError& e) {

  try

  {
   Exiv2::IptcKey ekey(key);
   Exiv2::IptcData::iterator pos = exif->iptcData().findKey(ekey);
   while (pos != exif->iptcData().end())
    {
    exif->iptcData().erase(pos);
    pos = exif->iptcData().findKey(ekey);
    }

   while (work)
    {
    exif->iptcData()[key] = (gchar *)work->data;
    work = work->next;
    }
  }

  catch (Exiv2::AnyError& e) {
   Exiv2::XmpKey ekey(key);
   Exiv2::XmpData::iterator pos = exif->xmpData().findKey(ekey);
   while (pos != exif->xmpData().end())
    {
    exif->xmpData().erase(pos);
    pos = exif->xmpData().findKey(ekey);
    }

   while (work)
    {
    exif->xmpData()[key] = (gchar *)work->data;
    work = work->next;
    }
  }

 }
 return 1;
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 943,
# 943 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 943 "exiv2.cc"
, e);
 return 0;
}
}

gint exif_update_metadata(ExifData *exif, const gchar *key, const GList *values)
{
gint ret = exif_update_metadata_simple(exif, key, values);

if (



    !values ||
    !ret
    )
 {


 const AltKey *alt_key = find_alt_key(key);
 if (alt_key && alt_key->iptc_key)
  ret = exif_update_metadata_simple(exif, alt_key->iptc_key, values);

 if (alt_key && alt_key->exif_key)
  ret = exif_update_metadata_simple(exif, alt_key->exif_key, values);
 }
return ret;
}


static GList *exif_add_value_to_glist(GList *list, Exiv2::Metadatum &item, MetadataFormat format, const Exiv2::ExifData *metadata)
{

Exiv2::TypeId id = item.typeId();
if (format == METADATA_FORMATTED ||
    id == Exiv2::asciiString ||
    id == Exiv2::undefined ||
    id == Exiv2::string ||
    id == Exiv2::date ||
    id == Exiv2::time ||
    id == Exiv2::xmpText ||
    id == Exiv2::langAlt ||
    id == Exiv2::comment
    )
 {


 std::string str;

 if (format == METADATA_FORMATTED)
  {

  str = item.print(

    metadata

    );
# 1017 "exiv2.cc"
  if (str.length() > 1024)
   {

   str.erase(1024);
   str.append("...");
   }
  }
 else
  {
  str = item.toString();
  }
 if (str.length() > 5 && str.substr(0, 5) == "lang=")
  {
  std::string::size_type pos = str.find_first_of(' ');
  if (pos != std::string::npos) str = str.substr(pos+1);
  }
 list = g_list_append(list, utf8_validate_or_convert(str.c_str()));

 }
else
 {

 gint i;
 for (i = 0; i < item.count(); i++)
  list = g_list_append(list, utf8_validate_or_convert(item.toString(i).c_str()));
 }

return list;
}

static GList *exif_get_metadata_simple(ExifData *exif, const gchar *key, MetadataFormat format)
{
GList *list =
# 1049 "exiv2.cc" 3 4
             __null
# 1049 "exiv2.cc"
                 ;
try {
 try {
  Exiv2::ExifKey ekey(key);
  Exiv2::ExifData::iterator pos = exif->exifData().findKey(ekey);
  if (pos != exif->exifData().end())
   list = exif_add_value_to_glist(list, *pos, format, &exif->exifData());

 }
 catch (Exiv2::AnyError& e) {
  try {
   Exiv2::IptcKey ekey(key);
   Exiv2::IptcData::iterator pos = exif->iptcData().begin();
   while (pos != exif->iptcData().end())
    {
    if (pos->key() == key)
     list = exif_add_value_to_glist(list, *pos, format,
# 1065 "exiv2.cc" 3 4
                                                       __null
# 1065 "exiv2.cc"
                                                           );
    ++pos;
    }

  }
  catch (Exiv2::AnyError& e) {

   Exiv2::XmpKey ekey(key);
   Exiv2::XmpData::iterator pos = exif->xmpData().findKey(ekey);
   if (pos != exif->xmpData().end())
    list = exif_add_value_to_glist(list, *pos, format,
# 1075 "exiv2.cc" 3 4
                                                      __null
# 1075 "exiv2.cc"
                                                          );

  }
 }
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 1081,
# 1081 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 1081 "exiv2.cc"
, e);
}
return list;
}

GList *exif_get_metadata(ExifData *exif, const gchar *key, MetadataFormat format)
{
GList *list =
# 1088 "exiv2.cc" 3 4
             __null
# 1088 "exiv2.cc"
                 ;

if (!key) return
# 1090 "exiv2.cc" 3 4
                __null
# 1090 "exiv2.cc"
                    ;

if (format == METADATA_FORMATTED)
 {
 gchar *text;
 gint key_valid;
 text = exif_get_formatted_by_key(exif, key, &key_valid);
 if (key_valid) return g_list_append(
# 1097 "exiv2.cc" 3 4
                                    __null
# 1097 "exiv2.cc"
                                        , text);
 }

list = exif_get_metadata_simple(exif, key, format);


if (!list)
 {
 const AltKey *alt_key = find_alt_key(key);
 if (alt_key && alt_key->iptc_key)
  list = exif_get_metadata_simple(exif, alt_key->iptc_key, format);






 }
return list;
}


void exif_add_jpeg_color_profile(ExifData *exif, unsigned char *cp_data, guint cp_length)
{
exif->add_jpeg_color_profile(cp_data, cp_length);
}

guchar *exif_get_color_profile(ExifData *exif, guint *data_len)
{
guchar *ret = exif->get_jpeg_color_profile(data_len);
if (ret) return ret;

ExifItem *prof_item = exif_get_item(exif, "Exif.Image.InterColorProfile");
if (prof_item && exif_item_get_format_id(prof_item) == EXIF_FORMAT_UNDEFINED)
 ret = (guchar *)exif_item_get_data(prof_item, data_len);
return ret;
}



guchar *exif_get_preview(ExifData *exif, guint *data_len, gint requested_width, gint requested_height)
{
if (!exif) return
# 1139 "exiv2.cc" 3 4
                 __null
# 1139 "exiv2.cc"
                     ;

if (!exif->image()) return
# 1141 "exiv2.cc" 3 4
                          __null
# 1141 "exiv2.cc"
                              ;


gboolean is_raw = filter_file_class(exif->image()->io().path().c_str(), FORMAT_CLASS_RAWIMAGE);

if (!is_raw && requested_width == 0) return
# 1146 "exiv2.cc" 3 4
                                           __null
# 1146 "exiv2.cc"
                                               ;

try {

 Exiv2::PreviewManager pm(*exif->image());

 Exiv2::PreviewPropertiesList list = pm.getPreviewProperties();

 if (!list.empty())
  {
  Exiv2::PreviewPropertiesList::iterator pos;
  Exiv2::PreviewPropertiesList::iterator last = --list.end();

  if (requested_width == 0)
   {
   pos = last;
   }
  else
   {
   pos = list.begin();
   while (pos != last)
    {
    if (pos->width_ >= (
# 1168 "exiv2.cc" 3 4
                       __uint32_t
# 1168 "exiv2.cc"
                               )requested_width &&
        pos->height_ >= (
# 1169 "exiv2.cc" 3 4
                        __uint32_t
# 1169 "exiv2.cc"
                                )requested_height) break;
    ++pos;
    }


   if (!is_raw)
    {
    if (pos->width_ < (
# 1176 "exiv2.cc" 3 4
                      __uint32_t
# 1176 "exiv2.cc"
                              )requested_width || pos->height_ < (
# 1176 "exiv2.cc" 3 4
                                                                  __uint32_t
# 1176 "exiv2.cc"
                                                                          )requested_height) return
# 1176 "exiv2.cc" 3 4
                                                                                                    __null
# 1176 "exiv2.cc"
                                                                                                        ;
    }
   }

  Exiv2::PreviewImage image = pm.getPreviewImage(*pos);

  Exiv2::DataBuf buf = image.copy();
  std::pair<Exiv2::byte*, long> p = buf.release();

  *data_len = p.second;
  return p.first;
  }
 return
# 1188 "exiv2.cc" 3 4
       __null
# 1188 "exiv2.cc"
           ;
}
catch (Exiv2::AnyError& e) {
 _debug_exception("exiv2.cc", 1191,
# 1191 "exiv2.cc" 3 4
__PRETTY_FUNCTION__
# 1191 "exiv2.cc"
, e);
 return
# 1192 "exiv2.cc" 3 4
       __null
# 1192 "exiv2.cc"
           ;
}
}

void exif_free_preview(guchar *buf)
{
delete[] (Exiv2::byte*)buf;
}


}