403Webshell
Server IP : 182.53.201.61  /  Your IP : 216.73.217.175
Web Server : Apache/2.2.15 (Fedora)
System : Linux km10.dyndns.org 2.6.31.5-127.fc12.i686.PAE #1 SMP Sat Nov 7 21:25:57 EST 2009 i686
User : apache ( 48)
PHP Version : 5.3.3
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/gir-1.0/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/gir-1.0/GLib-2.0.gir
<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.0"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <package name="glib-2.0"/>
  <c:include name="glib.h"/>
  <namespace name="GLib"
             version="2.0"
             shared-library="libglib-2.0.so.0"
             c:prefix="g">
    <alias name="DateDay" target="uint8" c:type="GDateDay"/>
    <alias name="DateYear" target="uint16" c:type="GDateYear"/>
    <alias name="Pid" target="int" c:type="GPid"/>
    <alias name="Quark" target="uint32" c:type="GQuark"/>
    <alias name="Time" target="int32" c:type="GTime"/>
    <alias name="intptr" target="int" c:type="gintptr"/>
    <alias name="offset" target="int64" c:type="goffset"/>
    <alias name="uintptr" target="uint" c:type="guintptr"/>
    <alias name="unichar" target="uint32" c:type="gunichar"/>
    <alias name="unichar2" target="uint16" c:type="gunichar2"/>
    <constant name="ALLOCATOR_LIST" value="1">
      <type name="int"/>
    </constant>
    <constant name="ALLOCATOR_NODE" value="3">
      <type name="int"/>
    </constant>
    <constant name="ALLOCATOR_SLIST" value="2">
      <type name="int"/>
    </constant>
    <constant name="ALLOC_AND_FREE" value="2">
      <type name="int"/>
    </constant>
    <constant name="ALLOC_ONLY" value="1">
      <type name="int"/>
    </constant>
    <constant name="ASCII_DTOSTR_BUF_SIZE" value="39">
      <type name="int"/>
    </constant>
    <record name="Allocator" c:type="GAllocator">
    </record>
    <record name="Array" c:type="GArray">
      <field name="data" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="len" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <bitfield name="AsciiType" c:type="GAsciiType">
      <member name="alnum" value="1" c:identifier="G_ASCII_ALNUM"/>
      <member name="alpha" value="2" c:identifier="G_ASCII_ALPHA"/>
      <member name="cntrl" value="4" c:identifier="G_ASCII_CNTRL"/>
      <member name="digit" value="8" c:identifier="G_ASCII_DIGIT"/>
      <member name="graph" value="16" c:identifier="G_ASCII_GRAPH"/>
      <member name="lower" value="32" c:identifier="G_ASCII_LOWER"/>
      <member name="print" value="64" c:identifier="G_ASCII_PRINT"/>
      <member name="punct" value="128" c:identifier="G_ASCII_PUNCT"/>
      <member name="space" value="256" c:identifier="G_ASCII_SPACE"/>
      <member name="upper" value="512" c:identifier="G_ASCII_UPPER"/>
      <member name="xdigit" value="1024" c:identifier="G_ASCII_XDIGIT"/>
    </bitfield>
    <record name="AsyncQueue" c:type="GAsyncQueue">
    </record>
    <constant name="BIG_ENDIAN" value="4321">
      <type name="int"/>
    </constant>
    <record name="BookmarkFile" c:type="GBookmarkFile">
    </record>
    <enumeration name="BookmarkFileError" c:type="GBookmarkFileError">
      <member name="invalid_uri"
              value="0"
              c:identifier="G_BOOKMARK_FILE_ERROR_INVALID_URI"/>
      <member name="invalid_value"
              value="1"
              c:identifier="G_BOOKMARK_FILE_ERROR_INVALID_VALUE"/>
      <member name="app_not_registered"
              value="2"
              c:identifier="G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED"/>
      <member name="uri_not_found"
              value="3"
              c:identifier="G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND"/>
      <member name="read" value="4" c:identifier="G_BOOKMARK_FILE_ERROR_READ"/>
      <member name="unknown_encoding"
              value="5"
              c:identifier="G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING"/>
      <member name="write"
              value="6"
              c:identifier="G_BOOKMARK_FILE_ERROR_WRITE"/>
      <member name="file_not_found"
              value="7"
              c:identifier="G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND"/>
    </enumeration>
    <record name="ByteArray" c:type="GByteArray">
      <field name="data" writable="1">
        <type name="any" c:type="guint8*"/>
      </field>
      <field name="len" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <constant name="CAN_INLINE" value="1">
      <type name="int"/>
    </constant>
    <constant name="CSET_A_2_Z" value="ABCDEFGHIJKLMNOPQRSTUVWXYZ">
      <type name="utf8"/>
    </constant>
    <constant name="CSET_DIGITS" value="0123456789">
      <type name="utf8"/>
    </constant>
    <constant name="CSET_a_2_z" value="abcdefghijklmnopqrstuvwxyz">
      <type name="utf8"/>
    </constant>
    <record name="Cache" c:type="GCache">
    </record>
    <callback name="CacheDestroyFunc" c:type="GCacheDestroyFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="CacheDupFunc" c:type="GCacheDupFunc">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="CacheNewFunc" c:type="GCacheNewFunc">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="Checksum"
            c:type="GChecksum"
            doc="An opaque structure representing a checksumming operation.
To create a new GChecksum, use g_checksum_new(). To free
a GChecksum, use g_checksum_free()."
            version="2.16">
    </record>
    <enumeration name="ChecksumType"
                 doc="The hashing algorithm to be used by #GChecksum when performing the
digest of some data.
Note that the #GChecksumType enumeration may be extended at a later
date to include new hashing algorithm types."
                 version="2.16"
                 c:type="GChecksumType">
      <member name="md5" value="0" c:identifier="G_CHECKSUM_MD5"/>
      <member name="sha1" value="1" c:identifier="G_CHECKSUM_SHA1"/>
      <member name="sha256" value="2" c:identifier="G_CHECKSUM_SHA256"/>
    </enumeration>
    <callback name="ChildWatchFunc" c:type="GChildWatchFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pid" transfer-ownership="none">
          <type name="Pid" c:type="GPid"/>
        </parameter>
        <parameter name="status" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="CompareDataFunc" c:type="GCompareDataFunc">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="a" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="b" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" closure="2">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="CompareFunc" c:type="GCompareFunc">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="a" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="b" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="Completion" c:type="GCompletion">
      <field name="items" writable="1">
        <type name="List" c:type="GList*"/>
      </field>
      <field name="func" writable="1">
        <type name="CompletionFunc" c:type="GCompletionFunc"/>
      </field>
      <field name="prefix" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="cache" writable="1">
        <type name="List" c:type="GList*"/>
      </field>
      <field name="strncmp_func" writable="1">
        <type name="CompletionStrncmpFunc" c:type="GCompletionStrncmpFunc"/>
      </field>
    </record>
    <callback name="CompletionFunc" c:type="GCompletionFunc">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="CompletionStrncmpFunc" c:type="GCompletionStrncmpFunc">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="s1" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="s2" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </callback>
    <record name="Cond" c:type="GCond">
    </record>
    <enumeration name="ConvertError" c:type="GConvertError">
      <member name="no_conversion"
              value="0"
              c:identifier="G_CONVERT_ERROR_NO_CONVERSION"/>
      <member name="illegal_sequence"
              value="1"
              c:identifier="G_CONVERT_ERROR_ILLEGAL_SEQUENCE"/>
      <member name="failed" value="2" c:identifier="G_CONVERT_ERROR_FAILED"/>
      <member name="partial_input"
              value="3"
              c:identifier="G_CONVERT_ERROR_PARTIAL_INPUT"/>
      <member name="bad_uri" value="4" c:identifier="G_CONVERT_ERROR_BAD_URI"/>
      <member name="not_absolute_path"
              value="5"
              c:identifier="G_CONVERT_ERROR_NOT_ABSOLUTE_PATH"/>
    </enumeration>
    <callback name="CopyFunc"
              c:type="GCopyFunc"
              doc="A function of this signature is used to copy the node data
when doing a deep-copy of a tree."
              version="2.4">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <constant name="DATALIST_FLAGS_MASK" value="3">
      <type name="int"/>
    </constant>
    <constant name="DATE_BAD_DAY" value="0">
      <type name="int"/>
    </constant>
    <constant name="DATE_BAD_JULIAN" value="0">
      <type name="int"/>
    </constant>
    <constant name="DATE_BAD_YEAR" value="0">
      <type name="int"/>
    </constant>
    <constant name="DIR_SEPARATOR_S" value="\">
      <type name="utf8"/>
    </constant>
    <record name="Data" c:type="GData">
    </record>
    <callback name="DataForeachFunc" c:type="GDataForeachFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_id" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" closure="2">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="Date" c:type="GDate">
      <field name="julian_days" writable="1" bits="32">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="julian" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="dmy" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="day" writable="1" bits="6">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="month" writable="1" bits="4">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="year" writable="1" bits="16">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <enumeration name="DateDMY" c:type="GDateDMY">
      <member name="day" value="0" c:identifier="G_DATE_DAY"/>
      <member name="month" value="1" c:identifier="G_DATE_MONTH"/>
      <member name="year" value="2" c:identifier="G_DATE_YEAR"/>
    </enumeration>
    <enumeration name="DateMonth" c:type="GDateMonth">
      <member name="bad_month" value="0" c:identifier="G_DATE_BAD_MONTH"/>
      <member name="january" value="1" c:identifier="G_DATE_JANUARY"/>
      <member name="february" value="2" c:identifier="G_DATE_FEBRUARY"/>
      <member name="march" value="3" c:identifier="G_DATE_MARCH"/>
      <member name="april" value="4" c:identifier="G_DATE_APRIL"/>
      <member name="may" value="5" c:identifier="G_DATE_MAY"/>
      <member name="june" value="6" c:identifier="G_DATE_JUNE"/>
      <member name="july" value="7" c:identifier="G_DATE_JULY"/>
      <member name="august" value="8" c:identifier="G_DATE_AUGUST"/>
      <member name="september" value="9" c:identifier="G_DATE_SEPTEMBER"/>
      <member name="october" value="10" c:identifier="G_DATE_OCTOBER"/>
      <member name="november" value="11" c:identifier="G_DATE_NOVEMBER"/>
      <member name="december" value="12" c:identifier="G_DATE_DECEMBER"/>
    </enumeration>
    <enumeration name="DateWeekday" c:type="GDateWeekday">
      <member name="bad_weekday" value="0" c:identifier="G_DATE_BAD_WEEKDAY"/>
      <member name="monday" value="1" c:identifier="G_DATE_MONDAY"/>
      <member name="tuesday" value="2" c:identifier="G_DATE_TUESDAY"/>
      <member name="wednesday" value="3" c:identifier="G_DATE_WEDNESDAY"/>
      <member name="thursday" value="4" c:identifier="G_DATE_THURSDAY"/>
      <member name="friday" value="5" c:identifier="G_DATE_FRIDAY"/>
      <member name="saturday" value="6" c:identifier="G_DATE_SATURDAY"/>
      <member name="sunday" value="7" c:identifier="G_DATE_SUNDAY"/>
    </enumeration>
    <record name="DebugKey" c:type="GDebugKey">
      <field name="key" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="value" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <callback name="DestroyNotify" c:type="GDestroyNotify">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="Dir" c:type="GDir">
    </record>
    <union name="DoubleIEEE754" c:type="GDoubleIEEE754">
      <field name="v_double" writable="1">
        <type name="double" c:type="gdouble"/>
      </field>
      <record name="mpn" c:type="mpn">
        <field name="mantissa_low" writable="1" bits="32">
          <type name="uint" c:type="guint"/>
        </field>
        <field name="mantissa_high" writable="1" bits="20">
          <type name="uint" c:type="guint"/>
        </field>
        <field name="biased_exponent" writable="1" bits="11">
          <type name="uint" c:type="guint"/>
        </field>
        <field name="sign" writable="1" bits="1">
          <type name="uint" c:type="guint"/>
        </field>
      </record>
    </union>
    <constant name="E" value="2.71828182846">
      <type name="double"/>
    </constant>
    <callback name="EqualFunc" c:type="GEqualFunc">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="a" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="b" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="Error" c:type="GError">
      <field name="domain" writable="1">
        <type name="Quark" c:type="GQuark"/>
      </field>
      <field name="code" writable="1">
        <type name="int" c:type="gint"/>
      </field>
      <field name="message" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
    </record>
    <enumeration name="ErrorType" c:type="GErrorType">
      <member name="unknown" value="0" c:identifier="G_ERR_UNKNOWN"/>
      <member name="unexp_eof" value="1" c:identifier="G_ERR_UNEXP_EOF"/>
      <member name="unexp_eof_in_string"
              value="2"
              c:identifier="G_ERR_UNEXP_EOF_IN_STRING"/>
      <member name="unexp_eof_in_comment"
              value="3"
              c:identifier="G_ERR_UNEXP_EOF_IN_COMMENT"/>
      <member name="non_digit_in_const"
              value="4"
              c:identifier="G_ERR_NON_DIGIT_IN_CONST"/>
      <member name="digit_radix" value="5" c:identifier="G_ERR_DIGIT_RADIX"/>
      <member name="float_radix" value="6" c:identifier="G_ERR_FLOAT_RADIX"/>
      <member name="float_malformed"
              value="7"
              c:identifier="G_ERR_FLOAT_MALFORMED"/>
    </enumeration>
    <constant name="FALSE" value="0">
      <type name="int"/>
    </constant>
    <enumeration name="FileError" c:type="GFileError">
      <member name="exist" value="0" c:identifier="G_FILE_ERROR_EXIST"/>
      <member name="isdir" value="1" c:identifier="G_FILE_ERROR_ISDIR"/>
      <member name="acces" value="2" c:identifier="G_FILE_ERROR_ACCES"/>
      <member name="nametoolong"
              value="3"
              c:identifier="G_FILE_ERROR_NAMETOOLONG"/>
      <member name="noent" value="4" c:identifier="G_FILE_ERROR_NOENT"/>
      <member name="notdir" value="5" c:identifier="G_FILE_ERROR_NOTDIR"/>
      <member name="nxio" value="6" c:identifier="G_FILE_ERROR_NXIO"/>
      <member name="nodev" value="7" c:identifier="G_FILE_ERROR_NODEV"/>
      <member name="rofs" value="8" c:identifier="G_FILE_ERROR_ROFS"/>
      <member name="txtbsy" value="9" c:identifier="G_FILE_ERROR_TXTBSY"/>
      <member name="fault" value="10" c:identifier="G_FILE_ERROR_FAULT"/>
      <member name="loop" value="11" c:identifier="G_FILE_ERROR_LOOP"/>
      <member name="nospc" value="12" c:identifier="G_FILE_ERROR_NOSPC"/>
      <member name="nomem" value="13" c:identifier="G_FILE_ERROR_NOMEM"/>
      <member name="mfile" value="14" c:identifier="G_FILE_ERROR_MFILE"/>
      <member name="nfile" value="15" c:identifier="G_FILE_ERROR_NFILE"/>
      <member name="badf" value="16" c:identifier="G_FILE_ERROR_BADF"/>
      <member name="inval" value="17" c:identifier="G_FILE_ERROR_INVAL"/>
      <member name="pipe" value="18" c:identifier="G_FILE_ERROR_PIPE"/>
      <member name="again" value="19" c:identifier="G_FILE_ERROR_AGAIN"/>
      <member name="intr" value="20" c:identifier="G_FILE_ERROR_INTR"/>
      <member name="io" value="21" c:identifier="G_FILE_ERROR_IO"/>
      <member name="perm" value="22" c:identifier="G_FILE_ERROR_PERM"/>
      <member name="nosys" value="23" c:identifier="G_FILE_ERROR_NOSYS"/>
      <member name="failed" value="24" c:identifier="G_FILE_ERROR_FAILED"/>
    </enumeration>
    <bitfield name="FileTest" c:type="GFileTest">
      <member name="is_regular"
              value="1"
              c:identifier="G_FILE_TEST_IS_REGULAR"/>
      <member name="is_symlink"
              value="2"
              c:identifier="G_FILE_TEST_IS_SYMLINK"/>
      <member name="is_dir" value="4" c:identifier="G_FILE_TEST_IS_DIR"/>
      <member name="is_executable"
              value="8"
              c:identifier="G_FILE_TEST_IS_EXECUTABLE"/>
      <member name="exists" value="16" c:identifier="G_FILE_TEST_EXISTS"/>
    </bitfield>
    <union name="FloatIEEE754" c:type="GFloatIEEE754">
      <field name="v_float" writable="1">
        <type name="float" c:type="gfloat"/>
      </field>
      <record name="mpn" c:type="mpn">
        <field name="mantissa" writable="1" bits="23">
          <type name="uint" c:type="guint"/>
        </field>
        <field name="biased_exponent" writable="1" bits="8">
          <type name="uint" c:type="guint"/>
        </field>
        <field name="sign" writable="1" bits="1">
          <type name="uint" c:type="guint"/>
        </field>
      </record>
    </union>
    <callback name="FreeFunc" c:type="GFreeFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="Func" c:type="GFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" closure="1">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <constant name="GINT16_FORMAT" value="hi">
      <type name="utf8"/>
    </constant>
    <constant name="GINT16_MODIFIER" value="h">
      <type name="utf8"/>
    </constant>
    <constant name="GINT32_FORMAT" value="i">
      <type name="utf8"/>
    </constant>
    <constant name="GINT32_MODIFIER" value="">
      <type name="utf8"/>
    </constant>
    <constant name="GINT64_FORMAT" value="lli">
      <type name="utf8"/>
    </constant>
    <constant name="GINT64_MODIFIER" value="ll">
      <type name="utf8"/>
    </constant>
    <constant name="GINTPTR_FORMAT" value="i">
      <type name="utf8"/>
    </constant>
    <constant name="GINTPTR_MODIFIER" value="">
      <type name="utf8"/>
    </constant>
    <constant name="GNUC_FUNCTION" value="">
      <type name="utf8"/>
    </constant>
    <constant name="GNUC_PRETTY_FUNCTION" value="">
      <type name="utf8"/>
    </constant>
    <constant name="GSIZE_FORMAT" value="u">
      <type name="utf8"/>
    </constant>
    <constant name="GSIZE_MODIFIER" value="">
      <type name="utf8"/>
    </constant>
    <constant name="GSSIZE_FORMAT" value="i">
      <type name="utf8"/>
    </constant>
    <constant name="GUINT16_FORMAT" value="hu">
      <type name="utf8"/>
    </constant>
    <constant name="GUINT32_FORMAT" value="u">
      <type name="utf8"/>
    </constant>
    <constant name="GUINT64_FORMAT" value="llu">
      <type name="utf8"/>
    </constant>
    <constant name="GUINTPTR_FORMAT" value="u">
      <type name="utf8"/>
    </constant>
    <constant name="HAVE_GINT64" value="1">
      <type name="int"/>
    </constant>
    <constant name="HAVE_GNUC_VARARGS" value="1">
      <type name="int"/>
    </constant>
    <constant name="HAVE_GNUC_VISIBILITY" value="1">
      <type name="int"/>
    </constant>
    <constant name="HAVE_GROWING_STACK" value="0">
      <type name="int"/>
    </constant>
    <constant name="HAVE_INLINE" value="1">
      <type name="int"/>
    </constant>
    <constant name="HAVE_ISO_VARARGS" value="1">
      <type name="int"/>
    </constant>
    <constant name="HAVE___INLINE" value="1">
      <type name="int"/>
    </constant>
    <constant name="HAVE___INLINE__" value="1">
      <type name="int"/>
    </constant>
    <callback name="HFunc" c:type="GHFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" closure="2">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <constant name="HOOK_FLAG_USER_SHIFT" value="4">
      <type name="int"/>
    </constant>
    <callback name="HRFunc" c:type="GHRFunc">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" closure="2">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="HashFunc" c:type="GHashFunc">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="HashTable" c:type="GHashTable">
    </record>
    <record name="HashTableIter" c:type="GHashTableIter">
      <field name="dummy1" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="dummy2" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="dummy3" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="dummy4" writable="1">
        <type name="int" c:type="int"/>
      </field>
      <field name="dummy5" writable="1">
        <type name="boolean" c:type="gboolean"/>
      </field>
      <field name="dummy6" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
    </record>
    <record name="Hook" c:type="GHook">
      <field name="data" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="next" writable="1">
        <type name="Hook" c:type="GHook*"/>
      </field>
      <field name="prev" writable="1">
        <type name="Hook" c:type="GHook*"/>
      </field>
      <field name="ref_count" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="hook_id" writable="1">
        <type name="ulong" c:type="gulong"/>
      </field>
      <field name="flags" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="func" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="destroy" writable="1">
        <type name="DestroyNotify" c:type="GDestroyNotify"/>
      </field>
    </record>
    <callback name="HookCheckFunc" c:type="GHookCheckFunc">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="HookCheckMarshaller" c:type="GHookCheckMarshaller">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
        <parameter name="marshal_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="HookCompareFunc" c:type="GHookCompareFunc">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="new_hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
        <parameter name="sibling" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="HookFinalizeFunc" c:type="GHookFinalizeFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="HookFindFunc" c:type="GHookFindFunc">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <bitfield name="HookFlagMask" c:type="GHookFlagMask">
      <member name="active" value="1" c:identifier="G_HOOK_FLAG_ACTIVE"/>
      <member name="in_call" value="2" c:identifier="G_HOOK_FLAG_IN_CALL"/>
      <member name="mask" value="15" c:identifier="G_HOOK_FLAG_MASK"/>
    </bitfield>
    <callback name="HookFunc" c:type="GHookFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="HookList" c:type="GHookList">
      <field name="seq_id" writable="1">
        <type name="ulong" c:type="gulong"/>
      </field>
      <field name="hook_size" writable="1" bits="16">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="is_setup" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="hooks" writable="1">
        <type name="Hook" c:type="GHook*"/>
      </field>
      <field name="dummy3" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="finalize_hook" writable="1">
        <type name="HookFinalizeFunc" c:type="GHookFinalizeFunc"/>
      </field>
      <field name="dummy" writable="1">
        <array zero-terminated="0" c:type="gpointer" fixed-size="2">
          <type name="any"/>
        </array>
      </field>
    </record>
    <callback name="HookMarshaller" c:type="GHookMarshaller">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
        <parameter name="marshal_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="IConv" c:type="GIConv" disguised="1">
    </record>
    <constant name="IEEE754_DOUBLE_BIAS" value="1023">
      <type name="int"/>
    </constant>
    <constant name="IEEE754_FLOAT_BIAS" value="127">
      <type name="int"/>
    </constant>
    <record name="IOChannel" c:type="GIOChannel">
      <field name="ref_count" writable="1">
        <type name="int" c:type="gint"/>
      </field>
      <field name="funcs" writable="1">
        <type name="IOFuncs" c:type="GIOFuncs*"/>
      </field>
      <field name="encoding" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="read_cd" writable="1">
        <type name="IConv" c:type="GIConv"/>
      </field>
      <field name="write_cd" writable="1">
        <type name="IConv" c:type="GIConv"/>
      </field>
      <field name="line_term" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="line_term_len" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="buf_size" writable="1">
        <type name="size_t" c:type="gsize"/>
      </field>
      <field name="read_buf" writable="1">
        <type name="String" c:type="GString*"/>
      </field>
      <field name="encoded_read_buf" writable="1">
        <type name="String" c:type="GString*"/>
      </field>
      <field name="write_buf" writable="1">
        <type name="String" c:type="GString*"/>
      </field>
      <field name="partial_write_buf" writable="1">
        <array zero-terminated="0" c:type="gchar" fixed-size="6">
          <type name="int8"/>
        </array>
      </field>
      <field name="use_buffer" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="do_encode" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="close_on_unref" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="is_readable" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="is_writeable" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="is_seekable" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="reserved1" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="reserved2" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
    </record>
    <enumeration name="IOChannelError" c:type="GIOChannelError">
      <member name="fbig" value="0" c:identifier="G_IO_CHANNEL_ERROR_FBIG"/>
      <member name="inval" value="1" c:identifier="G_IO_CHANNEL_ERROR_INVAL"/>
      <member name="io" value="2" c:identifier="G_IO_CHANNEL_ERROR_IO"/>
      <member name="isdir" value="3" c:identifier="G_IO_CHANNEL_ERROR_ISDIR"/>
      <member name="nospc" value="4" c:identifier="G_IO_CHANNEL_ERROR_NOSPC"/>
      <member name="nxio" value="5" c:identifier="G_IO_CHANNEL_ERROR_NXIO"/>
      <member name="overflow"
              value="6"
              c:identifier="G_IO_CHANNEL_ERROR_OVERFLOW"/>
      <member name="pipe" value="7" c:identifier="G_IO_CHANNEL_ERROR_PIPE"/>
      <member name="failed"
              value="8"
              c:identifier="G_IO_CHANNEL_ERROR_FAILED"/>
    </enumeration>
    <bitfield name="IOCondition" c:type="GIOCondition">
      <member name="in" value="1" c:identifier="G_IO_IN"/>
      <member name="out" value="4" c:identifier="G_IO_OUT"/>
      <member name="pri" value="2" c:identifier="G_IO_PRI"/>
      <member name="err" value="8" c:identifier="G_IO_ERR"/>
      <member name="hup" value="16" c:identifier="G_IO_HUP"/>
      <member name="nval" value="32" c:identifier="G_IO_NVAL"/>
    </bitfield>
    <enumeration name="IOError" c:type="GIOError">
      <member name="none" value="0" c:identifier="G_IO_ERROR_NONE"/>
      <member name="again" value="1" c:identifier="G_IO_ERROR_AGAIN"/>
      <member name="inval" value="2" c:identifier="G_IO_ERROR_INVAL"/>
      <member name="unknown" value="3" c:identifier="G_IO_ERROR_UNKNOWN"/>
    </enumeration>
    <bitfield name="IOFlags" c:type="GIOFlags">
      <member name="append" value="1" c:identifier="G_IO_FLAG_APPEND"/>
      <member name="nonblock" value="2" c:identifier="G_IO_FLAG_NONBLOCK"/>
      <member name="is_readable"
              value="4"
              c:identifier="G_IO_FLAG_IS_READABLE"/>
      <member name="is_writeable"
              value="8"
              c:identifier="G_IO_FLAG_IS_WRITEABLE"/>
      <member name="is_seekable"
              value="16"
              c:identifier="G_IO_FLAG_IS_SEEKABLE"/>
      <member name="mask" value="31" c:identifier="G_IO_FLAG_MASK"/>
      <member name="get_mask" value="31" c:identifier="G_IO_FLAG_GET_MASK"/>
      <member name="set_mask" value="3" c:identifier="G_IO_FLAG_SET_MASK"/>
    </bitfield>
    <callback name="IOFunc" c:type="GIOFunc">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="condition" transfer-ownership="none">
          <type name="IOCondition" c:type="GIOCondition"/>
        </parameter>
        <parameter name="data" transfer-ownership="none" closure="2">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="IOFuncs" c:type="GIOFuncs">
      <callback name="io_read" c:type="io_read" throws="1">
        <return-value transfer-ownership="full">
          <type name="IOStatus" c:type="GIOStatus"/>
        </return-value>
        <parameters>
          <parameter name="channel" transfer-ownership="none">
            <type name="IOChannel" c:type="GIOChannel*"/>
          </parameter>
          <parameter name="buf" transfer-ownership="full">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="count" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
          <parameter name="bytes_read"
                     direction="out"
                     transfer-ownership="full">
            <type name="size_t" c:type="gsize*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="io_write" c:type="io_write" throws="1">
        <return-value transfer-ownership="full">
          <type name="IOStatus" c:type="GIOStatus"/>
        </return-value>
        <parameters>
          <parameter name="channel" transfer-ownership="none">
            <type name="IOChannel" c:type="GIOChannel*"/>
          </parameter>
          <parameter name="buf" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="count" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
          <parameter name="bytes_written"
                     direction="out"
                     transfer-ownership="full">
            <type name="size_t" c:type="gsize*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="io_seek" c:type="io_seek" throws="1">
        <return-value transfer-ownership="full">
          <type name="IOStatus" c:type="GIOStatus"/>
        </return-value>
        <parameters>
          <parameter name="channel" transfer-ownership="none">
            <type name="IOChannel" c:type="GIOChannel*"/>
          </parameter>
          <parameter name="offset" transfer-ownership="none">
            <type name="int64" c:type="gint64"/>
          </parameter>
          <parameter name="type" transfer-ownership="none">
            <type name="SeekType" c:type="GSeekType"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="io_close" c:type="io_close" throws="1">
        <return-value transfer-ownership="full">
          <type name="IOStatus" c:type="GIOStatus"/>
        </return-value>
        <parameters>
          <parameter name="channel" transfer-ownership="none">
            <type name="IOChannel" c:type="GIOChannel*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="io_create_watch" c:type="io_create_watch">
        <return-value transfer-ownership="full">
          <type name="Source" c:type="GSource*"/>
        </return-value>
        <parameters>
          <parameter name="channel" transfer-ownership="none">
            <type name="IOChannel" c:type="GIOChannel*"/>
          </parameter>
          <parameter name="condition" transfer-ownership="none">
            <type name="IOCondition" c:type="GIOCondition"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="io_free" c:type="io_free">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="channel" transfer-ownership="none">
            <type name="IOChannel" c:type="GIOChannel*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="io_set_flags" c:type="io_set_flags" throws="1">
        <return-value transfer-ownership="full">
          <type name="IOStatus" c:type="GIOStatus"/>
        </return-value>
        <parameters>
          <parameter name="channel" transfer-ownership="none">
            <type name="IOChannel" c:type="GIOChannel*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <type name="IOFlags" c:type="GIOFlags"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="io_get_flags" c:type="io_get_flags">
        <return-value transfer-ownership="full">
          <type name="IOFlags" c:type="GIOFlags"/>
        </return-value>
        <parameters>
          <parameter name="channel" transfer-ownership="none">
            <type name="IOChannel" c:type="GIOChannel*"/>
          </parameter>
        </parameters>
      </callback>
    </record>
    <enumeration name="IOStatus" c:type="GIOStatus">
      <member name="error" value="0" c:identifier="G_IO_STATUS_ERROR"/>
      <member name="normal" value="1" c:identifier="G_IO_STATUS_NORMAL"/>
      <member name="eof" value="2" c:identifier="G_IO_STATUS_EOF"/>
      <member name="again" value="3" c:identifier="G_IO_STATUS_AGAIN"/>
    </enumeration>
    <constant name="KEY_FILE_DESKTOP_GROUP" value="Desktop Entry">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_CATEGORIES" value="Categories">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_COMMENT" value="Comment">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_EXEC" value="Exec">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_GENERIC_NAME" value="GenericName">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_HIDDEN" value="Hidden">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_ICON" value="Icon">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_MIME_TYPE" value="MimeType">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_NAME" value="Name">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_NOT_SHOW_IN" value="NotShowIn">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_NO_DISPLAY" value="NoDisplay">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_ONLY_SHOW_IN" value="OnlyShowIn">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_PATH" value="Path">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_STARTUP_NOTIFY" value="StartupNotify">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_STARTUP_WM_CLASS"
              value="StartupWMClass">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_TERMINAL" value="Terminal">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_TRY_EXEC" value="TryExec">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_TYPE" value="Type">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_URL" value="URL">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_KEY_VERSION" value="Version">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_TYPE_APPLICATION" value="Application">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_TYPE_DIRECTORY" value="Directory">
      <type name="utf8"/>
    </constant>
    <constant name="KEY_FILE_DESKTOP_TYPE_LINK" value="Link">
      <type name="utf8"/>
    </constant>
    <record name="KeyFile" c:type="GKeyFile">
    </record>
    <enumeration name="KeyFileError" c:type="GKeyFileError">
      <member name="unknown_encoding"
              value="0"
              c:identifier="G_KEY_FILE_ERROR_UNKNOWN_ENCODING"/>
      <member name="parse" value="1" c:identifier="G_KEY_FILE_ERROR_PARSE"/>
      <member name="not_found"
              value="2"
              c:identifier="G_KEY_FILE_ERROR_NOT_FOUND"/>
      <member name="key_not_found"
              value="3"
              c:identifier="G_KEY_FILE_ERROR_KEY_NOT_FOUND"/>
      <member name="group_not_found"
              value="4"
              c:identifier="G_KEY_FILE_ERROR_GROUP_NOT_FOUND"/>
      <member name="invalid_value"
              value="5"
              c:identifier="G_KEY_FILE_ERROR_INVALID_VALUE"/>
    </enumeration>
    <bitfield name="KeyFileFlags" c:type="GKeyFileFlags">
      <member name="none" value="0" c:identifier="G_KEY_FILE_NONE"/>
      <member name="keep_comments"
              value="1"
              c:identifier="G_KEY_FILE_KEEP_COMMENTS"/>
      <member name="keep_translations"
              value="2"
              c:identifier="G_KEY_FILE_KEEP_TRANSLATIONS"/>
    </bitfield>
    <constant name="LIB_MAJOR_VERSION" value="2">
      <type name="int"/>
    </constant>
    <constant name="LIB_MICRO_VERSION" value="5">
      <type name="int"/>
    </constant>
    <constant name="LIB_MINOR_VERSION" value="21">
      <type name="int"/>
    </constant>
    <constant name="LIB_SIZEOF_LONG" value="4">
      <type name="int"/>
    </constant>
    <constant name="LIB_SIZEOF_SIZE_T" value="4">
      <type name="int"/>
    </constant>
    <constant name="LIB_SIZEOF_VOID_P" value="4">
      <type name="int"/>
    </constant>
    <constant name="LIB_SYSDEF_AF_INET" value="2">
      <type name="int"/>
    </constant>
    <constant name="LIB_SYSDEF_AF_INET6" value="10">
      <type name="int"/>
    </constant>
    <constant name="LIB_SYSDEF_AF_UNIX" value="1">
      <type name="int"/>
    </constant>
    <constant name="LIB_SYSDEF_MSG_DONTROUTE" value="4">
      <type name="int"/>
    </constant>
    <constant name="LIB_SYSDEF_MSG_OOB" value="1">
      <type name="int"/>
    </constant>
    <constant name="LIB_SYSDEF_MSG_PEEK" value="2">
      <type name="int"/>
    </constant>
    <constant name="LITTLE_ENDIAN" value="1234">
      <type name="int"/>
    </constant>
    <constant name="LN10" value="2.30258509299">
      <type name="double"/>
    </constant>
    <constant name="LN2" value="0.69314718056">
      <type name="double"/>
    </constant>
    <constant name="LOG_2_BASE_10" value="0.301029995664">
      <type name="double"/>
    </constant>
    <constant name="LOG_FATAL_MASK" value="0">
      <type name="int"/>
    </constant>
    <constant name="LOG_LEVEL_USER_SHIFT" value="8">
      <type name="int"/>
    </constant>
    <record name="List" c:type="GList">
      <field name="data" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="next" writable="1">
        <type name="List" c:type="GList*"/>
      </field>
      <field name="prev" writable="1">
        <type name="List" c:type="GList*"/>
      </field>
    </record>
    <callback name="LogFunc" c:type="GLogFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="log_domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="log_level" transfer-ownership="none">
          <type name="LogLevelFlags" c:type="GLogLevelFlags"/>
        </parameter>
        <parameter name="message" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" closure="3">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <bitfield name="LogLevelFlags" c:type="GLogLevelFlags">
      <member name="flag_recursion"
              value="1"
              c:identifier="G_LOG_FLAG_RECURSION"/>
      <member name="flag_fatal" value="2" c:identifier="G_LOG_FLAG_FATAL"/>
      <member name="level_error" value="4" c:identifier="G_LOG_LEVEL_ERROR"/>
      <member name="level_critical"
              value="8"
              c:identifier="G_LOG_LEVEL_CRITICAL"/>
      <member name="level_warning"
              value="16"
              c:identifier="G_LOG_LEVEL_WARNING"/>
      <member name="level_message"
              value="32"
              c:identifier="G_LOG_LEVEL_MESSAGE"/>
      <member name="level_info" value="64" c:identifier="G_LOG_LEVEL_INFO"/>
      <member name="level_debug" value="128" c:identifier="G_LOG_LEVEL_DEBUG"/>
      <member name="level_mask" value="-4" c:identifier="G_LOG_LEVEL_MASK"/>
    </bitfield>
    <constant name="MAXPATHLEN" value="1024">
      <type name="int"/>
    </constant>
    <constant name="MODULE_SUFFIX" value="so">
      <type name="utf8"/>
    </constant>
    <constant name="MUTEX_DEBUG_MAGIC" value="2147483647">
      <type name="int"/>
    </constant>
    <record name="MainContext" c:type="GMainContext">
    </record>
    <record name="MainLoop" c:type="GMainLoop">
    </record>
    <record name="MappedFile" c:type="GMappedFile">
    </record>
    <bitfield name="MarkupCollectType" c:type="GMarkupCollectType">
      <member name="invalid"
              value="0"
              c:identifier="G_MARKUP_COLLECT_INVALID"/>
      <member name="string" value="1" c:identifier="G_MARKUP_COLLECT_STRING"/>
      <member name="strdup" value="2" c:identifier="G_MARKUP_COLLECT_STRDUP"/>
      <member name="boolean"
              value="3"
              c:identifier="G_MARKUP_COLLECT_BOOLEAN"/>
      <member name="tristate"
              value="4"
              c:identifier="G_MARKUP_COLLECT_TRISTATE"/>
      <member name="optional"
              value="65536"
              c:identifier="G_MARKUP_COLLECT_OPTIONAL"/>
    </bitfield>
    <enumeration name="MarkupError" c:type="GMarkupError">
      <member name="bad_utf8"
              value="0"
              c:identifier="G_MARKUP_ERROR_BAD_UTF8"/>
      <member name="empty" value="1" c:identifier="G_MARKUP_ERROR_EMPTY"/>
      <member name="parse" value="2" c:identifier="G_MARKUP_ERROR_PARSE"/>
      <member name="unknown_element"
              value="3"
              c:identifier="G_MARKUP_ERROR_UNKNOWN_ELEMENT"/>
      <member name="unknown_attribute"
              value="4"
              c:identifier="G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE"/>
      <member name="invalid_content"
              value="5"
              c:identifier="G_MARKUP_ERROR_INVALID_CONTENT"/>
      <member name="missing_attribute"
              value="6"
              c:identifier="G_MARKUP_ERROR_MISSING_ATTRIBUTE"/>
    </enumeration>
    <record name="MarkupParseContext" c:type="GMarkupParseContext">
    </record>
    <bitfield name="MarkupParseFlags" c:type="GMarkupParseFlags">
      <member name="do_not_use_this_unsupported_flag"
              value="1"
              c:identifier="G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG"/>
      <member name="treat_cdata_as_text"
              value="2"
              c:identifier="G_MARKUP_TREAT_CDATA_AS_TEXT"/>
      <member name="prefix_error_position"
              value="4"
              c:identifier="G_MARKUP_PREFIX_ERROR_POSITION"/>
    </bitfield>
    <record name="MarkupParser" c:type="GMarkupParser">
      <callback name="start_element" c:type="start_element" throws="1">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="context" transfer-ownership="none">
            <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
          </parameter>
          <parameter name="element_name" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="attribute_names" transfer-ownership="none">
            <array c:type="gchar**">
              <type name="utf8"/>
            </array>
          </parameter>
          <parameter name="attribute_values" transfer-ownership="none">
            <array c:type="gchar**">
              <type name="utf8"/>
            </array>
          </parameter>
          <parameter name="user_data" transfer-ownership="none" closure="4">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="end_element" c:type="end_element" throws="1">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="context" transfer-ownership="none">
            <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
          </parameter>
          <parameter name="element_name" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="user_data" transfer-ownership="none" closure="2">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="text" c:type="text" throws="1">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="context" transfer-ownership="none">
            <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="text_len" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
          <parameter name="user_data" transfer-ownership="none" closure="3">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="passthrough" c:type="passthrough" throws="1">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="context" transfer-ownership="none">
            <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
          </parameter>
          <parameter name="passthrough_text" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="text_len" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
          <parameter name="user_data" transfer-ownership="none" closure="3">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="error" c:type="error">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="context" transfer-ownership="none">
            <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
          </parameter>
          <parameter name="error" transfer-ownership="none">
            <type name="Error" c:type="GError*"/>
          </parameter>
          <parameter name="user_data" transfer-ownership="none" closure="2">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
    </record>
    <record name="MatchInfo" c:type="GMatchInfo">
    </record>
    <record name="MemChunk" c:type="GMemChunk">
    </record>
    <record name="MemVTable" c:type="GMemVTable">
      <callback name="malloc" c:type="malloc">
        <return-value transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </return-value>
        <parameters>
          <parameter name="n_bytes" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="realloc" c:type="realloc">
        <return-value transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </return-value>
        <parameters>
          <parameter name="mem" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
          <parameter name="n_bytes" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="free" c:type="free">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="mem" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="calloc" c:type="calloc">
        <return-value transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </return-value>
        <parameters>
          <parameter name="n_blocks" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
          <parameter name="n_block_bytes" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="try_malloc" c:type="try_malloc">
        <return-value transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </return-value>
        <parameters>
          <parameter name="n_bytes" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="try_realloc" c:type="try_realloc">
        <return-value transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </return-value>
        <parameters>
          <parameter name="mem" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
          <parameter name="n_bytes" transfer-ownership="none">
            <type name="size_t" c:type="gsize"/>
          </parameter>
        </parameters>
      </callback>
    </record>
    <record name="Mutex" c:type="GMutex">
    </record>
    <constant name="NULL" value="0">
      <type name="int"/>
    </constant>
    <record name="Node" c:type="GNode">
      <field name="data" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="next" writable="1">
        <type name="Node" c:type="GNode*"/>
      </field>
      <field name="prev" writable="1">
        <type name="Node" c:type="GNode*"/>
      </field>
      <field name="parent" writable="1">
        <type name="Node" c:type="GNode*"/>
      </field>
      <field name="children" writable="1">
        <type name="Node" c:type="GNode*"/>
      </field>
    </record>
    <callback name="NodeForeachFunc" c:type="GNodeForeachFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="NodeTraverseFunc" c:type="GNodeTraverseFunc">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <enumeration name="NormalizeMode" c:type="GNormalizeMode">
      <member name="default" value="0" c:identifier="G_NORMALIZE_DEFAULT"/>
      <member name="nfd" value="0" c:identifier="G_NORMALIZE_NFD"/>
      <member name="default_compose"
              value="1"
              c:identifier="G_NORMALIZE_DEFAULT_COMPOSE"/>
      <member name="nfc" value="1" c:identifier="G_NORMALIZE_NFC"/>
      <member name="all" value="2" c:identifier="G_NORMALIZE_ALL"/>
      <member name="nfkd" value="2" c:identifier="G_NORMALIZE_NFKD"/>
      <member name="all_compose"
              value="3"
              c:identifier="G_NORMALIZE_ALL_COMPOSE"/>
      <member name="nfkc" value="3" c:identifier="G_NORMALIZE_NFKC"/>
    </enumeration>
    <constant name="OPTION_REMAINING" value="">
      <type name="utf8"/>
    </constant>
    <record name="Once" c:type="GOnce">
      <field name="status" writable="1">
        <type name="OnceStatus" c:type="GOnceStatus"/>
      </field>
      <field name="retval" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
    </record>
    <enumeration name="OnceStatus" c:type="GOnceStatus">
      <member name="notcalled"
              value="0"
              c:identifier="G_ONCE_STATUS_NOTCALLED"/>
      <member name="progress" value="1" c:identifier="G_ONCE_STATUS_PROGRESS"/>
      <member name="ready" value="2" c:identifier="G_ONCE_STATUS_READY"/>
    </enumeration>
    <enumeration name="OptionArg"
                 doc="extra argument.
uses of the option are collected into an array of strings.
multiple uses of the option are collected into an array of strings.
can be formatted either for the user&apos;s locale or for the &quot;C&quot; locale. Since 2.12
but for larger numbers. The number can be in decimal base, or in hexadecimal
(when prefixed with &lt;literal&gt;0x&lt;/literal&gt;, for example, &lt;literal&gt;0xffffffff&lt;/literal&gt;).
Since 2.12
The #GOptionArg enum values determine which type of extra argument the
options expect to find. If an option expects an extra argument, it
can be specified in several ways; with a short option:"
                 c:type="GOptionArg">
      <member name="none" value="0" c:identifier="G_OPTION_ARG_NONE"/>
      <member name="string" value="1" c:identifier="G_OPTION_ARG_STRING"/>
      <member name="int" value="2" c:identifier="G_OPTION_ARG_INT"/>
      <member name="callback" value="3" c:identifier="G_OPTION_ARG_CALLBACK"/>
      <member name="filename" value="4" c:identifier="G_OPTION_ARG_FILENAME"/>
      <member name="string_array"
              value="5"
              c:identifier="G_OPTION_ARG_STRING_ARRAY"/>
      <member name="filename_array"
              value="6"
              c:identifier="G_OPTION_ARG_FILENAME_ARRAY"/>
      <member name="double" value="7" c:identifier="G_OPTION_ARG_DOUBLE"/>
      <member name="int64" value="8" c:identifier="G_OPTION_ARG_INT64"/>
    </enumeration>
    <callback name="OptionArgFunc"
              c:type="GOptionArgFunc"
              doc="single dash followed by a single letter (for a short name) or two dashes
followed by a long option name.
was created with g_option_group_new()
is intended to be used for errors in #GOptionArgFunc callbacks.
The type of function to be passed as callback for %G_OPTION_ARG_CALLBACK
options.
occurred, in which case @error should be set with g_set_error()"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="option_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="OptionContext"
            c:type="GOptionContext"
            doc="A &lt;structname&gt;GOptionContext&lt;/structname&gt; struct defines which options
are accepted by the commandline option parser. The struct has only private
fields and should not be directly accessed.">
    </record>
    <record name="OptionEntry"
            c:type="GOptionEntry"
            doc="in a commandline as --&lt;replaceable&gt;long_name&lt;/replaceable&gt;. Every
option must have a long name. To resolve conflicts if multiple
option groups contain the same long name, it is also possible to
specify the option as
--&lt;replaceable&gt;groupname&lt;/replaceable&gt;-&lt;replaceable&gt;long_name&lt;/replaceable&gt;.
-&lt;replaceable&gt;short_name&lt;/replaceable&gt; in a commandline. @short_name must be
a printable ASCII character different from &apos;-&apos;, or zero if the option has no
short name.
point to a #GOptionArgFunc callback function, which will be called to handle
the extra argument. Otherwise, @arg_data is a pointer to a location to store
the value, the required type of the location depends on the @arg type:
&lt;variablelist&gt;
&lt;varlistentry&gt;
&lt;term&gt;%G_OPTION_ARG_NONE&lt;/term&gt;
&lt;listitem&gt;&lt;para&gt;%gboolean&lt;/para&gt;&lt;/listitem&gt;
&lt;/varlistentry&gt;
&lt;varlistentry&gt;
&lt;term&gt;%G_OPTION_ARG_STRING&lt;/term&gt;
&lt;listitem&gt;&lt;para&gt;%gchar*&lt;/para&gt;&lt;/listitem&gt;
&lt;/varlistentry&gt;
&lt;varlistentry&gt;
&lt;term&gt;%G_OPTION_ARG_INT&lt;/term&gt;
&lt;listitem&gt;&lt;para&gt;%gint&lt;/para&gt;&lt;/listitem&gt;
&lt;/varlistentry&gt;
&lt;varlistentry&gt;
&lt;term&gt;%G_OPTION_ARG_FILENAME&lt;/term&gt;
&lt;listitem&gt;&lt;para&gt;%gchar*&lt;/para&gt;&lt;/listitem&gt;
&lt;/varlistentry&gt;
&lt;varlistentry&gt;
&lt;term&gt;%G_OPTION_ARG_STRING_ARRAY&lt;/term&gt;
&lt;listitem&gt;&lt;para&gt;%gchar**&lt;/para&gt;&lt;/listitem&gt;
&lt;/varlistentry&gt;
&lt;varlistentry&gt;
&lt;term&gt;%G_OPTION_ARG_FILENAME_ARRAY&lt;/term&gt;
&lt;listitem&gt;&lt;para&gt;%gchar**&lt;/para&gt;&lt;/listitem&gt;
&lt;/varlistentry&gt;
&lt;varlistentry&gt;
&lt;term&gt;%G_OPTION_ARG_DOUBLE&lt;/term&gt;
&lt;listitem&gt;&lt;para&gt;%gdouble&lt;/para&gt;&lt;/listitem&gt;
&lt;/varlistentry&gt;
&lt;/variablelist&gt;
If @arg type is %G_OPTION_ARG_STRING or %G_OPTION_ARG_FILENAME the location
will contain a newly allocated string if the option was given. That string
needs to be freed by the callee using g_free(). Likewise if @arg type is
%G_OPTION_ARG_STRING_ARRAY or %G_OPTION_ARG_FILENAME_ARRAY, the data should
be freed using g_strfreev().
output. The @description is translated using the @translate_func of the
group, see g_option_group_set_translation_domain().
by the option in &lt;option&gt;--help&lt;/option&gt;
output. The @arg_description is translated using the @translate_func of the
group, see g_option_group_set_translation_domain().
A &lt;structname&gt;GOptionEntry&lt;/structname&gt; defines a single option.
To have an effect, they must be added to a #GOptionGroup with
g_option_context_add_main_entries() or g_option_group_add_entries().">
      <field name="long_name" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="short_name" writable="1">
        <type name="int8" c:type="gchar"/>
      </field>
      <field name="flags" writable="1">
        <type name="int" c:type="gint"/>
      </field>
      <field name="arg" writable="1">
        <type name="OptionArg" c:type="GOptionArg"/>
      </field>
      <field name="arg_data" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="description" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="arg_description" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
    </record>
    <enumeration name="OptionError"
                 doc="This error will only be reported, if the parser hasn&apos;t been instructed
to ignore unknown options, see g_option_context_set_ignore_unknown_options().
Error codes returned by option parsing."
                 c:type="GOptionError">
      <member name="unknown_option"
              value="0"
              c:identifier="G_OPTION_ERROR_UNKNOWN_OPTION"/>
      <member name="bad_value"
              value="1"
              c:identifier="G_OPTION_ERROR_BAD_VALUE"/>
      <member name="failed" value="2" c:identifier="G_OPTION_ERROR_FAILED"/>
    </enumeration>
    <callback name="OptionErrorFunc"
              c:type="GOptionErrorFunc"
              doc="was created with g_option_group_new()
The type of function to be used as callback when a parse error occurs."
              throws="1">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <bitfield name="OptionFlags"
              doc="output.
&lt;option&gt;--help&lt;/option&gt; output, even if it is defined in a group.
indicates that the sense of the option is reversed.
this flag indicates that the callback does not take any argument
(like a %G_OPTION_ARG_NONE option). Since 2.8
kind, this flag indicates that the argument should be passed to the
callback in the GLib filename encoding rather than UTF-8. Since 2.8
kind, this flag indicates that the argument supply is optional. If no argument
is given then data of %GOptionParseFunc will be set to NULL. Since 2.8
which prefixes long option names with &lt;literal&gt;groupname-&lt;/literal&gt; if
there is a conflict. This option should only be used in situations where
aliasing is necessary to model some legacy commandline interface. It is
not safe to use this option, unless all option groups are under your
direct control. Since 2.8.
Flags which modify individual options."
              c:type="GOptionFlags">
      <member name="hidden" value="1" c:identifier="G_OPTION_FLAG_HIDDEN"/>
      <member name="in_main" value="2" c:identifier="G_OPTION_FLAG_IN_MAIN"/>
      <member name="reverse" value="4" c:identifier="G_OPTION_FLAG_REVERSE"/>
      <member name="no_arg" value="8" c:identifier="G_OPTION_FLAG_NO_ARG"/>
      <member name="filename"
              value="16"
              c:identifier="G_OPTION_FLAG_FILENAME"/>
      <member name="optional_arg"
              value="32"
              c:identifier="G_OPTION_FLAG_OPTIONAL_ARG"/>
      <member name="noalias" value="64" c:identifier="G_OPTION_FLAG_NOALIAS"/>
    </bitfield>
    <record name="OptionGroup"
            c:type="GOptionGroup"
            doc="A &lt;structname&gt;GOptionGroup&lt;/structname&gt; struct defines the options in a single
group. The struct has only private fields and should not be directly accessed.
All options in a group share the same translation function. Libaries which
need to parse commandline options are expected to provide a function for
getting a &lt;structname&gt;GOptionGroup&lt;/structname&gt; holding their options, which
the application can then add to its #GOptionContext.">
    </record>
    <callback name="OptionParseFunc"
              c:type="GOptionParseFunc"
              doc="was created with g_option_group_new()
The type of function that can be called before and after parsing.
occurred, in which case @error should be set with g_set_error()"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <constant name="PDP_ENDIAN" value="3412">
      <type name="int"/>
    </constant>
    <constant name="PI" value="3.14159265359">
      <type name="double"/>
    </constant>
    <constant name="PI_2" value="1.57079632679">
      <type name="double"/>
    </constant>
    <constant name="PI_4" value="0.785398163397">
      <type name="double"/>
    </constant>
    <constant name="POLLFD_FORMAT" value="%#I64x">
      <type name="utf8"/>
    </constant>
    <constant name="PRIORITY_DEFAULT" value="0">
      <type name="int"/>
    </constant>
    <constant name="PRIORITY_DEFAULT_IDLE" value="200">
      <type name="int"/>
    </constant>
    <constant name="PRIORITY_HIGH" value="-100">
      <type name="int"/>
    </constant>
    <constant name="PRIORITY_HIGH_IDLE" value="100">
      <type name="int"/>
    </constant>
    <constant name="PRIORITY_LOW" value="300">
      <type name="int"/>
    </constant>
    <record name="PatternSpec" c:type="GPatternSpec">
    </record>
    <record name="PollFD" c:type="GPollFD">
      <field name="fd" writable="1">
        <type name="int" c:type="gint"/>
      </field>
      <field name="events" writable="1">
        <type name="ushort" c:type="gushort"/>
      </field>
      <field name="revents" writable="1">
        <type name="ushort" c:type="gushort"/>
      </field>
    </record>
    <callback name="PollFunc" c:type="GPollFunc">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="ufds" transfer-ownership="none">
          <type name="PollFD" c:type="GPollFD*"/>
        </parameter>
        <parameter name="nfsd" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="timeout_" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="PrintFunc" c:type="GPrintFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </callback>
    <record name="Private" c:type="GPrivate">
    </record>
    <record name="PtrArray" c:type="GPtrArray">
      <field name="pdata" writable="1">
        <type name="any" c:type="gpointer*"/>
      </field>
      <field name="len" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <record name="Queue" c:type="GQueue">
      <field name="head" writable="1">
        <type name="List" c:type="GList*"/>
      </field>
      <field name="tail" writable="1">
        <type name="List" c:type="GList*"/>
      </field>
      <field name="length" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <record name="Rand" c:type="GRand">
    </record>
    <record name="Regex" c:type="GRegex">
    </record>
    <bitfield name="RegexCompileFlags" c:type="GRegexCompileFlags">
      <member name="caseless" value="1" c:identifier="G_REGEX_CASELESS"/>
      <member name="multiline" value="2" c:identifier="G_REGEX_MULTILINE"/>
      <member name="dotall" value="4" c:identifier="G_REGEX_DOTALL"/>
      <member name="extended" value="8" c:identifier="G_REGEX_EXTENDED"/>
      <member name="anchored" value="16" c:identifier="G_REGEX_ANCHORED"/>
      <member name="dollar_endonly"
              value="32"
              c:identifier="G_REGEX_DOLLAR_ENDONLY"/>
      <member name="ungreedy" value="512" c:identifier="G_REGEX_UNGREEDY"/>
      <member name="raw" value="2048" c:identifier="G_REGEX_RAW"/>
      <member name="no_auto_capture"
              value="4096"
              c:identifier="G_REGEX_NO_AUTO_CAPTURE"/>
      <member name="optimize" value="8192" c:identifier="G_REGEX_OPTIMIZE"/>
      <member name="dupnames" value="524288" c:identifier="G_REGEX_DUPNAMES"/>
      <member name="newline_cr"
              value="1048576"
              c:identifier="G_REGEX_NEWLINE_CR"/>
      <member name="newline_lf"
              value="2097152"
              c:identifier="G_REGEX_NEWLINE_LF"/>
      <member name="newline_crlf"
              value="3145728"
              c:identifier="G_REGEX_NEWLINE_CRLF"/>
    </bitfield>
    <enumeration name="RegexError" c:type="GRegexError">
      <member name="compile" value="0" c:identifier="G_REGEX_ERROR_COMPILE"/>
      <member name="optimize" value="1" c:identifier="G_REGEX_ERROR_OPTIMIZE"/>
      <member name="replace" value="2" c:identifier="G_REGEX_ERROR_REPLACE"/>
      <member name="match" value="3" c:identifier="G_REGEX_ERROR_MATCH"/>
      <member name="internal" value="4" c:identifier="G_REGEX_ERROR_INTERNAL"/>
      <member name="stray_backslash"
              value="101"
              c:identifier="G_REGEX_ERROR_STRAY_BACKSLASH"/>
      <member name="missing_control_char"
              value="102"
              c:identifier="G_REGEX_ERROR_MISSING_CONTROL_CHAR"/>
      <member name="unrecognized_escape"
              value="103"
              c:identifier="G_REGEX_ERROR_UNRECOGNIZED_ESCAPE"/>
      <member name="quantifiers_out_of_order"
              value="104"
              c:identifier="G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER"/>
      <member name="quantifier_too_big"
              value="105"
              c:identifier="G_REGEX_ERROR_QUANTIFIER_TOO_BIG"/>
      <member name="unterminated_character_class"
              value="106"
              c:identifier="G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS"/>
      <member name="invalid_escape_in_character_class"
              value="107"
              c:identifier="G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS"/>
      <member name="range_out_of_order"
              value="108"
              c:identifier="G_REGEX_ERROR_RANGE_OUT_OF_ORDER"/>
      <member name="nothing_to_repeat"
              value="109"
              c:identifier="G_REGEX_ERROR_NOTHING_TO_REPEAT"/>
      <member name="unrecognized_character"
              value="112"
              c:identifier="G_REGEX_ERROR_UNRECOGNIZED_CHARACTER"/>
      <member name="posix_named_class_outside_class"
              value="113"
              c:identifier="G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS"/>
      <member name="unmatched_parenthesis"
              value="114"
              c:identifier="G_REGEX_ERROR_UNMATCHED_PARENTHESIS"/>
      <member name="inexistent_subpattern_reference"
              value="115"
              c:identifier="G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE"/>
      <member name="unterminated_comment"
              value="118"
              c:identifier="G_REGEX_ERROR_UNTERMINATED_COMMENT"/>
      <member name="expression_too_large"
              value="120"
              c:identifier="G_REGEX_ERROR_EXPRESSION_TOO_LARGE"/>
      <member name="memory_error"
              value="121"
              c:identifier="G_REGEX_ERROR_MEMORY_ERROR"/>
      <member name="variable_length_lookbehind"
              value="125"
              c:identifier="G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND"/>
      <member name="malformed_condition"
              value="126"
              c:identifier="G_REGEX_ERROR_MALFORMED_CONDITION"/>
      <member name="too_many_conditional_branches"
              value="127"
              c:identifier="G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES"/>
      <member name="assertion_expected"
              value="128"
              c:identifier="G_REGEX_ERROR_ASSERTION_EXPECTED"/>
      <member name="unknown_posix_class_name"
              value="130"
              c:identifier="G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME"/>
      <member name="posix_collating_elements_not_supported"
              value="131"
              c:identifier="G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED"/>
      <member name="hex_code_too_large"
              value="134"
              c:identifier="G_REGEX_ERROR_HEX_CODE_TOO_LARGE"/>
      <member name="invalid_condition"
              value="135"
              c:identifier="G_REGEX_ERROR_INVALID_CONDITION"/>
      <member name="single_byte_match_in_lookbehind"
              value="136"
              c:identifier="G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND"/>
      <member name="infinite_loop"
              value="140"
              c:identifier="G_REGEX_ERROR_INFINITE_LOOP"/>
      <member name="missing_subpattern_name_terminator"
              value="142"
              c:identifier="G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR"/>
      <member name="duplicate_subpattern_name"
              value="143"
              c:identifier="G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME"/>
      <member name="malformed_property"
              value="146"
              c:identifier="G_REGEX_ERROR_MALFORMED_PROPERTY"/>
      <member name="unknown_property"
              value="147"
              c:identifier="G_REGEX_ERROR_UNKNOWN_PROPERTY"/>
      <member name="subpattern_name_too_long"
              value="148"
              c:identifier="G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG"/>
      <member name="too_many_subpatterns"
              value="149"
              c:identifier="G_REGEX_ERROR_TOO_MANY_SUBPATTERNS"/>
      <member name="invalid_octal_value"
              value="151"
              c:identifier="G_REGEX_ERROR_INVALID_OCTAL_VALUE"/>
      <member name="too_many_branches_in_define"
              value="154"
              c:identifier="G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE"/>
      <member name="define_repetion"
              value="155"
              c:identifier="G_REGEX_ERROR_DEFINE_REPETION"/>
      <member name="inconsistent_newline_options"
              value="156"
              c:identifier="G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS"/>
      <member name="missing_back_reference"
              value="157"
              c:identifier="G_REGEX_ERROR_MISSING_BACK_REFERENCE"/>
    </enumeration>
    <callback name="RegexEvalCallback" c:type="GRegexEvalCallback">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
        <parameter name="result" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" closure="2">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <bitfield name="RegexMatchFlags" c:type="GRegexMatchFlags">
      <member name="anchored"
              value="16"
              c:identifier="G_REGEX_MATCH_ANCHORED"/>
      <member name="notbol" value="128" c:identifier="G_REGEX_MATCH_NOTBOL"/>
      <member name="noteol" value="256" c:identifier="G_REGEX_MATCH_NOTEOL"/>
      <member name="notempty"
              value="1024"
              c:identifier="G_REGEX_MATCH_NOTEMPTY"/>
      <member name="partial"
              value="32768"
              c:identifier="G_REGEX_MATCH_PARTIAL"/>
      <member name="newline_cr"
              value="1048576"
              c:identifier="G_REGEX_MATCH_NEWLINE_CR"/>
      <member name="newline_lf"
              value="2097152"
              c:identifier="G_REGEX_MATCH_NEWLINE_LF"/>
      <member name="newline_crlf"
              value="3145728"
              c:identifier="G_REGEX_MATCH_NEWLINE_CRLF"/>
      <member name="newline_any"
              value="4194304"
              c:identifier="G_REGEX_MATCH_NEWLINE_ANY"/>
    </bitfield>
    <record name="Relation" c:type="GRelation">
    </record>
    <constant name="SEARCHPATH_SEPARATOR_S" value=";">
      <type name="utf8"/>
    </constant>
    <record name="SList" c:type="GSList">
      <field name="data" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="next" writable="1">
        <type name="SList" c:type="GSList*"/>
      </field>
    </record>
    <constant name="SQRT2" value="1.41421356237">
      <type name="double"/>
    </constant>
    <constant name="STR_DELIMITERS" value="_-|&gt; &lt;.">
      <type name="utf8"/>
    </constant>
    <record name="Scanner" c:type="GScanner">
      <field name="user_data" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="max_parse_errors" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="parse_errors" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="input_name" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="qdata" writable="1">
        <type name="Data" c:type="GData*"/>
      </field>
      <field name="config" writable="1">
        <type name="ScannerConfig" c:type="GScannerConfig*"/>
      </field>
      <field name="token" writable="1">
        <type name="TokenType" c:type="GTokenType"/>
      </field>
      <field name="value" writable="1">
        <type name="TokenValue" c:type="GTokenValue"/>
      </field>
      <field name="line" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="position" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="next_token" writable="1">
        <type name="TokenType" c:type="GTokenType"/>
      </field>
      <field name="next_value" writable="1">
        <type name="TokenValue" c:type="GTokenValue"/>
      </field>
      <field name="next_line" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="next_position" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="symbol_table" writable="1">
        <type name="HashTable" c:type="GHashTable*"/>
      </field>
      <field name="input_fd" writable="1">
        <type name="int" c:type="gint"/>
      </field>
      <field name="text" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="text_end" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="buffer" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="scope_id" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="msg_handler" writable="1">
        <type name="ScannerMsgFunc" c:type="GScannerMsgFunc"/>
      </field>
    </record>
    <record name="ScannerConfig" c:type="GScannerConfig">
      <field name="cset_skip_characters" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="cset_identifier_first" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="cset_identifier_nth" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="cpair_comment_single" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="case_sensitive" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="skip_comment_multi" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="skip_comment_single" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_comment_multi" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_identifier" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_identifier_1char" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_identifier_NULL" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_symbols" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_binary" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_octal" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_float" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_hex" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_hex_dollar" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_string_sq" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scan_string_dq" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="numbers_2_int" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="int_2_float" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="identifier_2_string" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="char_2_token" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="symbol_2_token" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="scope_0_fallback" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="store_int64" writable="1" bits="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="padding_dummy" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <callback name="ScannerMsgFunc" c:type="GScannerMsgFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="message" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="error" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </callback>
    <enumeration name="SeekType" c:type="GSeekType">
      <member name="cur" value="0" c:identifier="G_SEEK_CUR"/>
      <member name="set" value="1" c:identifier="G_SEEK_SET"/>
      <member name="end" value="2" c:identifier="G_SEEK_END"/>
    </enumeration>
    <record name="Sequence" c:type="GSequence">
    </record>
    <record name="SequenceIter" c:type="GSequenceIter">
    </record>
    <callback name="SequenceIterCompareFunc" c:type="GSequenceIterCompareFunc">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="a" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="b" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <enumeration name="ShellError" c:type="GShellError">
      <member name="bad_quoting"
              value="0"
              c:identifier="G_SHELL_ERROR_BAD_QUOTING"/>
      <member name="empty_string"
              value="1"
              c:identifier="G_SHELL_ERROR_EMPTY_STRING"/>
      <member name="failed" value="2" c:identifier="G_SHELL_ERROR_FAILED"/>
    </enumeration>
    <enumeration name="SliceConfig" c:type="GSliceConfig">
      <member name="always_malloc"
              value="1"
              c:identifier="G_SLICE_CONFIG_ALWAYS_MALLOC"/>
      <member name="bypass_magazines"
              value="2"
              c:identifier="G_SLICE_CONFIG_BYPASS_MAGAZINES"/>
      <member name="working_set_msecs"
              value="3"
              c:identifier="G_SLICE_CONFIG_WORKING_SET_MSECS"/>
      <member name="color_increment"
              value="4"
              c:identifier="G_SLICE_CONFIG_COLOR_INCREMENT"/>
      <member name="chunk_sizes"
              value="5"
              c:identifier="G_SLICE_CONFIG_CHUNK_SIZES"/>
      <member name="contention_counter"
              value="6"
              c:identifier="G_SLICE_CONFIG_CONTENTION_COUNTER"/>
    </enumeration>
    <record name="Source" c:type="GSource">
      <field name="callback_data" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="callback_funcs" writable="1">
        <type name="SourceCallbackFuncs" c:type="GSourceCallbackFuncs*"/>
      </field>
      <field name="source_funcs" writable="1">
        <type name="SourceFuncs" c:type="GSourceFuncs*"/>
      </field>
      <field name="ref_count" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="context" writable="1">
        <type name="MainContext" c:type="GMainContext*"/>
      </field>
      <field name="priority" writable="1">
        <type name="int" c:type="gint"/>
      </field>
      <field name="flags" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="source_id" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="poll_fds" writable="1">
        <type name="SList" c:type="GSList*"/>
      </field>
      <field name="prev" writable="1">
        <type name="Source" c:type="GSource*"/>
      </field>
      <field name="next" writable="1">
        <type name="Source" c:type="GSource*"/>
      </field>
      <field name="reserved1" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="reserved2" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
    </record>
    <record name="SourceCallbackFuncs" c:type="GSourceCallbackFuncs">
      <callback name="ref" c:type="ref">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="cb_data" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="unref" c:type="unref">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="cb_data" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="et" c:type="get">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="cb_data" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
          <parameter name="source" transfer-ownership="none">
            <type name="Source" c:type="GSource*"/>
          </parameter>
          <parameter name="func" transfer-ownership="none">
            <type name="SourceFunc" c:type="GSourceFunc*"/>
          </parameter>
          <parameter name="data" transfer-ownership="none">
            <type name="any" c:type="gpointer*"/>
          </parameter>
        </parameters>
      </callback>
    </record>
    <callback name="SourceDummyMarshal" c:type="GSourceDummyMarshal">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </callback>
    <callback name="SourceFunc" c:type="GSourceFunc">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none" closure="0">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="SourceFuncs" c:type="GSourceFuncs">
      <callback name="prepare" c:type="prepare">
        <return-value transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <type name="Source" c:type="GSource*"/>
          </parameter>
          <parameter name="timeout_" direction="out" transfer-ownership="full">
            <type name="int" c:type="gint*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="check" c:type="check">
        <return-value transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <type name="Source" c:type="GSource*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="dispatch" c:type="dispatch">
        <return-value transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <type name="Source" c:type="GSource*"/>
          </parameter>
          <parameter name="callback" transfer-ownership="none">
            <type name="SourceFunc" c:type="GSourceFunc"/>
          </parameter>
          <parameter name="user_data" transfer-ownership="none" closure="2">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="finalize" c:type="finalize">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="source" transfer-ownership="none">
            <type name="Source" c:type="GSource*"/>
          </parameter>
        </parameters>
      </callback>
      <field name="closure_callback" writable="1">
        <type name="SourceFunc" c:type="GSourceFunc"/>
      </field>
      <field name="closure_marshal" writable="1">
        <type name="SourceDummyMarshal" c:type="GSourceDummyMarshal"/>
      </field>
    </record>
    <callback name="SpawnChildSetupFunc" c:type="GSpawnChildSetupFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="user_data" transfer-ownership="none" closure="0">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <enumeration name="SpawnError" c:type="GSpawnError">
      <member name="fork" value="0" c:identifier="G_SPAWN_ERROR_FORK"/>
      <member name="read" value="1" c:identifier="G_SPAWN_ERROR_READ"/>
      <member name="chdir" value="2" c:identifier="G_SPAWN_ERROR_CHDIR"/>
      <member name="acces" value="3" c:identifier="G_SPAWN_ERROR_ACCES"/>
      <member name="perm" value="4" c:identifier="G_SPAWN_ERROR_PERM"/>
      <member name="2big" value="5" c:identifier="G_SPAWN_ERROR_2BIG"/>
      <member name="noexec" value="6" c:identifier="G_SPAWN_ERROR_NOEXEC"/>
      <member name="nametoolong"
              value="7"
              c:identifier="G_SPAWN_ERROR_NAMETOOLONG"/>
      <member name="noent" value="8" c:identifier="G_SPAWN_ERROR_NOENT"/>
      <member name="nomem" value="9" c:identifier="G_SPAWN_ERROR_NOMEM"/>
      <member name="notdir" value="10" c:identifier="G_SPAWN_ERROR_NOTDIR"/>
      <member name="loop" value="11" c:identifier="G_SPAWN_ERROR_LOOP"/>
      <member name="txtbusy" value="12" c:identifier="G_SPAWN_ERROR_TXTBUSY"/>
      <member name="io" value="13" c:identifier="G_SPAWN_ERROR_IO"/>
      <member name="nfile" value="14" c:identifier="G_SPAWN_ERROR_NFILE"/>
      <member name="mfile" value="15" c:identifier="G_SPAWN_ERROR_MFILE"/>
      <member name="inval" value="16" c:identifier="G_SPAWN_ERROR_INVAL"/>
      <member name="isdir" value="17" c:identifier="G_SPAWN_ERROR_ISDIR"/>
      <member name="libbad" value="18" c:identifier="G_SPAWN_ERROR_LIBBAD"/>
      <member name="failed" value="19" c:identifier="G_SPAWN_ERROR_FAILED"/>
    </enumeration>
    <bitfield name="SpawnFlags" c:type="GSpawnFlags">
      <member name="leave_descriptors_open"
              value="1"
              c:identifier="G_SPAWN_LEAVE_DESCRIPTORS_OPEN"/>
      <member name="do_not_reap_child"
              value="2"
              c:identifier="G_SPAWN_DO_NOT_REAP_CHILD"/>
      <member name="search_path" value="4" c:identifier="G_SPAWN_SEARCH_PATH"/>
      <member name="stdout_to_dev_null"
              value="8"
              c:identifier="G_SPAWN_STDOUT_TO_DEV_NULL"/>
      <member name="stderr_to_dev_null"
              value="16"
              c:identifier="G_SPAWN_STDERR_TO_DEV_NULL"/>
      <member name="child_inherits_stdin"
              value="32"
              c:identifier="G_SPAWN_CHILD_INHERITS_STDIN"/>
      <member name="file_and_argv_zero"
              value="64"
              c:identifier="G_SPAWN_FILE_AND_ARGV_ZERO"/>
    </bitfield>
    <record name="StaticMutex" c:type="GStaticMutex">
      <field name="runtime_mutex" writable="1">
        <type name="any" c:type="any*"/>
      </field>
      <union name="static_mutex" c:type="static_mutex">
        <field name="pad" writable="1">
          <array zero-terminated="0" c:type="char" fixed-size="24">
            <type name="int8"/>
          </array>
        </field>
        <field name="dummy_double" writable="1">
          <type name="double" c:type="double"/>
        </field>
        <field name="dummy_pointer" writable="1">
          <type name="any" c:type="void*"/>
        </field>
        <field name="dummy_long" writable="1">
          <type name="long" c:type="long"/>
        </field>
      </union>
    </record>
    <record name="StaticPrivate" c:type="GStaticPrivate">
      <field name="index" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <record name="StaticRWLock" c:type="GStaticRWLock">
      <field name="mutex" writable="1">
        <type name="StaticMutex" c:type="GStaticMutex"/>
      </field>
      <field name="read_cond" writable="1">
        <type name="Cond" c:type="GCond*"/>
      </field>
      <field name="write_cond" writable="1">
        <type name="Cond" c:type="GCond*"/>
      </field>
      <field name="read_counter" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="have_writer" writable="1">
        <type name="boolean" c:type="gboolean"/>
      </field>
      <field name="want_to_read" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="want_to_write" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <record name="StaticRecMutex" c:type="GStaticRecMutex">
      <field name="mutex" writable="1">
        <type name="StaticMutex" c:type="GStaticMutex"/>
      </field>
      <field name="depth" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="owner" writable="1">
        <type name="SystemThread" c:type="GSystemThread"/>
      </field>
    </record>
    <record name="String" c:type="GString">
      <field name="str" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="len" writable="1">
        <type name="size_t" c:type="gsize"/>
      </field>
      <field name="allocated_len" writable="1">
        <type name="size_t" c:type="gsize"/>
      </field>
    </record>
    <record name="StringChunk" c:type="GStringChunk">
    </record>
    <union name="SystemThread" c:type="GSystemThread">
      <field name="data" writable="1">
        <array zero-terminated="0" c:type="char" fixed-size="4">
          <type name="int8"/>
        </array>
      </field>
      <field name="dummy_double" writable="1">
        <type name="double" c:type="double"/>
      </field>
      <field name="dummy_pointer" writable="1">
        <type name="any" c:type="void*"/>
      </field>
      <field name="dummy_long" writable="1">
        <type name="long" c:type="long"/>
      </field>
    </union>
    <record name="TestCase" c:type="GTestCase">
    </record>
    <record name="TestConfig" c:type="GTestConfig">
      <field name="test_initialized" writable="1">
        <type name="boolean" c:type="gboolean"/>
      </field>
      <field name="test_quick" writable="1">
        <type name="boolean" c:type="gboolean"/>
      </field>
      <field name="test_perf" writable="1">
        <type name="boolean" c:type="gboolean"/>
      </field>
      <field name="test_verbose" writable="1">
        <type name="boolean" c:type="gboolean"/>
      </field>
      <field name="test_quiet" writable="1">
        <type name="boolean" c:type="gboolean"/>
      </field>
    </record>
    <record name="TestLogBuffer" c:type="GTestLogBuffer">
      <field name="data" writable="1">
        <type name="String" c:type="GString*"/>
      </field>
      <field name="msgs" writable="1">
        <type name="SList" c:type="GSList*"/>
      </field>
    </record>
    <record name="TestLogMsg" c:type="GTestLogMsg">
      <field name="log_type" writable="1">
        <type name="TestLogType" c:type="GTestLogType"/>
      </field>
      <field name="n_strings" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="strings" writable="1">
        <type name="utf8" c:type="gchar**"/>
      </field>
      <field name="n_nums" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
      <field name="nums" writable="1">
        <type name="any" c:type="long*"/>
      </field>
    </record>
    <enumeration name="TestLogType" c:type="GTestLogType">
      <member name="none" value="0" c:identifier="G_TEST_LOG_NONE"/>
      <member name="error" value="1" c:identifier="G_TEST_LOG_ERROR"/>
      <member name="start_binary"
              value="2"
              c:identifier="G_TEST_LOG_START_BINARY"/>
      <member name="list_case" value="3" c:identifier="G_TEST_LOG_LIST_CASE"/>
      <member name="skip_case" value="4" c:identifier="G_TEST_LOG_SKIP_CASE"/>
      <member name="start_case"
              value="5"
              c:identifier="G_TEST_LOG_START_CASE"/>
      <member name="stop_case" value="6" c:identifier="G_TEST_LOG_STOP_CASE"/>
      <member name="min_result"
              value="7"
              c:identifier="G_TEST_LOG_MIN_RESULT"/>
      <member name="max_result"
              value="8"
              c:identifier="G_TEST_LOG_MAX_RESULT"/>
      <member name="message" value="9" c:identifier="G_TEST_LOG_MESSAGE"/>
    </enumeration>
    <record name="TestSuite" c:type="GTestSuite">
    </record>
    <bitfield name="TestTrapFlags" c:type="GTestTrapFlags">
      <member name="silence_stdout"
              value="128"
              c:identifier="G_TEST_TRAP_SILENCE_STDOUT"/>
      <member name="silence_stderr"
              value="256"
              c:identifier="G_TEST_TRAP_SILENCE_STDERR"/>
      <member name="inherit_stdin"
              value="512"
              c:identifier="G_TEST_TRAP_INHERIT_STDIN"/>
    </bitfield>
    <record name="Thread" c:type="GThread">
      <field name="func" writable="1">
        <type name="ThreadFunc" c:type="GThreadFunc"/>
      </field>
      <field name="data" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="joinable" writable="1">
        <type name="boolean" c:type="gboolean"/>
      </field>
      <field name="priority" writable="1">
        <type name="ThreadPriority" c:type="GThreadPriority"/>
      </field>
    </record>
    <enumeration name="ThreadError" c:type="GThreadError">
      <member name="thread_error_again"
              value="0"
              c:identifier="G_THREAD_ERROR_AGAIN"/>
    </enumeration>
    <callback name="ThreadFunc" c:type="GThreadFunc">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="ThreadFunctions" c:type="GThreadFunctions">
      <callback name="mutex_new" c:type="mutex_new">
        <return-value transfer-ownership="full">
          <type name="Mutex" c:type="GMutex*"/>
        </return-value>
      </callback>
      <callback name="mutex_lock" c:type="mutex_lock">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="mutex" transfer-ownership="none">
            <type name="Mutex" c:type="GMutex*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="mutex_trylock" c:type="mutex_trylock">
        <return-value transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="mutex" transfer-ownership="none">
            <type name="Mutex" c:type="GMutex*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="mutex_unlock" c:type="mutex_unlock">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="mutex" transfer-ownership="none">
            <type name="Mutex" c:type="GMutex*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="mutex_free" c:type="mutex_free">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="mutex" transfer-ownership="none">
            <type name="Mutex" c:type="GMutex*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="cond_new" c:type="cond_new">
        <return-value transfer-ownership="full">
          <type name="Cond" c:type="GCond*"/>
        </return-value>
      </callback>
      <callback name="cond_signal" c:type="cond_signal">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="cond" transfer-ownership="none">
            <type name="Cond" c:type="GCond*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="cond_broadcast" c:type="cond_broadcast">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="cond" transfer-ownership="none">
            <type name="Cond" c:type="GCond*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="cond_wait" c:type="cond_wait">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="cond" transfer-ownership="none">
            <type name="Cond" c:type="GCond*"/>
          </parameter>
          <parameter name="mutex" transfer-ownership="none">
            <type name="Mutex" c:type="GMutex*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="cond_timed_wait" c:type="cond_timed_wait">
        <return-value transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="cond" transfer-ownership="none">
            <type name="Cond" c:type="GCond*"/>
          </parameter>
          <parameter name="mutex" transfer-ownership="none">
            <type name="Mutex" c:type="GMutex*"/>
          </parameter>
          <parameter name="end_time" transfer-ownership="none">
            <type name="TimeVal" c:type="GTimeVal*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="cond_free" c:type="cond_free">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="cond" transfer-ownership="none">
            <type name="Cond" c:type="GCond*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="private_new" c:type="private_new">
        <return-value transfer-ownership="full">
          <type name="Private" c:type="GPrivate*"/>
        </return-value>
        <parameters>
          <parameter name="destructor" transfer-ownership="none">
            <type name="DestroyNotify" c:type="GDestroyNotify"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="private_get" c:type="private_get">
        <return-value transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </return-value>
        <parameters>
          <parameter name="private_key" transfer-ownership="none">
            <type name="Private" c:type="GPrivate*"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="private_set" c:type="private_set">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="private_key" transfer-ownership="none">
            <type name="Private" c:type="GPrivate*"/>
          </parameter>
          <parameter name="data" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="thread_create" c:type="thread_create" throws="1">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="func" transfer-ownership="none">
            <type name="ThreadFunc" c:type="GThreadFunc"/>
          </parameter>
          <parameter name="data" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
          <parameter name="stack_size" transfer-ownership="none">
            <type name="ulong" c:type="gulong"/>
          </parameter>
          <parameter name="joinable" transfer-ownership="none">
            <type name="boolean" c:type="gboolean"/>
          </parameter>
          <parameter name="bound" transfer-ownership="none">
            <type name="boolean" c:type="gboolean"/>
          </parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="ThreadPriority" c:type="GThreadPriority"/>
          </parameter>
          <parameter name="thread" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="thread_yield" c:type="thread_yield">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </callback>
      <callback name="thread_join" c:type="thread_join">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="thread" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="thread_exit" c:type="thread_exit">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </callback>
      <callback name="thread_set_priority" c:type="thread_set_priority">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="thread" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
          <parameter name="priority" transfer-ownership="none">
            <type name="ThreadPriority" c:type="GThreadPriority"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="thread_self" c:type="thread_self">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="thread" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
      <callback name="thread_equal" c:type="thread_equal">
        <return-value transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="thread1" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
          <parameter name="thread2" transfer-ownership="none">
            <type name="any" c:type="gpointer"/>
          </parameter>
        </parameters>
      </callback>
    </record>
    <record name="ThreadPool" c:type="GThreadPool">
      <field name="func" writable="1">
        <type name="Func" c:type="GFunc"/>
      </field>
      <field name="user_data" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="exclusive" writable="1">
        <type name="boolean" c:type="gboolean"/>
      </field>
    </record>
    <enumeration name="ThreadPriority" c:type="GThreadPriority">
      <member name="low" value="0" c:identifier="G_THREAD_PRIORITY_LOW"/>
      <member name="normal" value="1" c:identifier="G_THREAD_PRIORITY_NORMAL"/>
      <member name="high" value="2" c:identifier="G_THREAD_PRIORITY_HIGH"/>
      <member name="urgent" value="3" c:identifier="G_THREAD_PRIORITY_URGENT"/>
    </enumeration>
    <record name="TimeVal" c:type="GTimeVal">
      <field name="tv_sec" writable="1">
        <type name="long" c:type="glong"/>
      </field>
      <field name="tv_usec" writable="1">
        <type name="long" c:type="glong"/>
      </field>
    </record>
    <record name="Timer" c:type="GTimer">
    </record>
    <enumeration name="TokenType" c:type="GTokenType">
      <member name="eof" value="0" c:identifier="G_TOKEN_EOF"/>
      <member name="left_paren" value="0" c:identifier="G_TOKEN_LEFT_PAREN"/>
      <member name="right_paren" value="0" c:identifier="G_TOKEN_RIGHT_PAREN"/>
      <member name="left_curly" value="0" c:identifier="G_TOKEN_LEFT_CURLY"/>
      <member name="right_curly" value="0" c:identifier="G_TOKEN_RIGHT_CURLY"/>
      <member name="left_brace" value="0" c:identifier="G_TOKEN_LEFT_BRACE"/>
      <member name="right_brace" value="0" c:identifier="G_TOKEN_RIGHT_BRACE"/>
      <member name="equal_sign" value="0" c:identifier="G_TOKEN_EQUAL_SIGN"/>
      <member name="comma" value="0" c:identifier="G_TOKEN_COMMA"/>
      <member name="none" value="256" c:identifier="G_TOKEN_NONE"/>
      <member name="error" value="257" c:identifier="G_TOKEN_ERROR"/>
      <member name="char" value="258" c:identifier="G_TOKEN_CHAR"/>
      <member name="binary" value="259" c:identifier="G_TOKEN_BINARY"/>
      <member name="octal" value="260" c:identifier="G_TOKEN_OCTAL"/>
      <member name="int" value="261" c:identifier="G_TOKEN_INT"/>
      <member name="hex" value="262" c:identifier="G_TOKEN_HEX"/>
      <member name="float" value="263" c:identifier="G_TOKEN_FLOAT"/>
      <member name="string" value="264" c:identifier="G_TOKEN_STRING"/>
      <member name="symbol" value="265" c:identifier="G_TOKEN_SYMBOL"/>
      <member name="identifier" value="266" c:identifier="G_TOKEN_IDENTIFIER"/>
      <member name="identifier_null"
              value="267"
              c:identifier="G_TOKEN_IDENTIFIER_NULL"/>
      <member name="comment_single"
              value="268"
              c:identifier="G_TOKEN_COMMENT_SINGLE"/>
      <member name="comment_multi"
              value="269"
              c:identifier="G_TOKEN_COMMENT_MULTI"/>
      <member name="last" value="270" c:identifier="G_TOKEN_LAST"/>
    </enumeration>
    <union name="TokenValue" c:type="GTokenValue">
      <field name="v_symbol" writable="1">
        <type name="any" c:type="gpointer"/>
      </field>
      <field name="v_identifier" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="v_binary" writable="1">
        <type name="ulong" c:type="gulong"/>
      </field>
      <field name="v_octal" writable="1">
        <type name="ulong" c:type="gulong"/>
      </field>
      <field name="v_int" writable="1">
        <type name="ulong" c:type="gulong"/>
      </field>
      <field name="v_int64" writable="1">
        <type name="uint64" c:type="guint64"/>
      </field>
      <field name="v_float" writable="1">
        <type name="double" c:type="gdouble"/>
      </field>
      <field name="v_hex" writable="1">
        <type name="ulong" c:type="gulong"/>
      </field>
      <field name="v_string" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="v_comment" writable="1">
        <type name="utf8" c:type="gchar*"/>
      </field>
      <field name="v_char" writable="1">
        <type name="uint8" c:type="guchar"/>
      </field>
      <field name="v_error" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </union>
    <callback name="TranslateFunc"
              c:type="GTranslateFunc"
              doc="in g_option_group_set_translate_func()
The type of functions which are used to translate user-visible
strings, for &lt;option&gt;--help&lt;/option&gt; output.
The returned string is owned by GLib and must not be freed.">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="TrashStack" c:type="GTrashStack">
      <field name="next" writable="1">
        <type name="TrashStack" c:type="GTrashStack*"/>
      </field>
    </record>
    <bitfield name="TraverseFlags" c:type="GTraverseFlags">
      <member name="leaves" value="1" c:identifier="G_TRAVERSE_LEAVES"/>
      <member name="non_leaves"
              value="2"
              c:identifier="G_TRAVERSE_NON_LEAVES"/>
      <member name="all" value="3" c:identifier="G_TRAVERSE_ALL"/>
      <member name="mask" value="3" c:identifier="G_TRAVERSE_MASK"/>
      <member name="leafs" value="1" c:identifier="G_TRAVERSE_LEAFS"/>
      <member name="non_leafs" value="2" c:identifier="G_TRAVERSE_NON_LEAFS"/>
    </bitfield>
    <callback name="TraverseFunc" c:type="GTraverseFunc">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <enumeration name="TraverseType" c:type="GTraverseType">
      <member name="in_order" value="0" c:identifier="G_IN_ORDER"/>
      <member name="pre_order" value="1" c:identifier="G_PRE_ORDER"/>
      <member name="post_order" value="2" c:identifier="G_POST_ORDER"/>
      <member name="level_order" value="3" c:identifier="G_LEVEL_ORDER"/>
    </enumeration>
    <record name="Tree" c:type="GTree">
    </record>
    <record name="Tuples" c:type="GTuples">
      <field name="len" writable="1">
        <type name="uint" c:type="guint"/>
      </field>
    </record>
    <constant name="URI_RESERVED_CHARS_GENERIC_DELIMITERS" value=":/?#[]@">
      <type name="utf8"/>
    </constant>
    <constant name="URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS"
              value="!$&amp;&apos;()*+,;=">
      <type name="utf8"/>
    </constant>
    <constant name="USEC_PER_SEC" value="1000000">
      <type name="int"/>
    </constant>
    <enumeration name="UnicodeBreakType" c:type="GUnicodeBreakType">
      <member name="mandatory"
              value="0"
              c:identifier="G_UNICODE_BREAK_MANDATORY"/>
      <member name="carriage_return"
              value="1"
              c:identifier="G_UNICODE_BREAK_CARRIAGE_RETURN"/>
      <member name="line_feed"
              value="2"
              c:identifier="G_UNICODE_BREAK_LINE_FEED"/>
      <member name="combining_mark"
              value="3"
              c:identifier="G_UNICODE_BREAK_COMBINING_MARK"/>
      <member name="surrogate"
              value="4"
              c:identifier="G_UNICODE_BREAK_SURROGATE"/>
      <member name="zero_width_space"
              value="5"
              c:identifier="G_UNICODE_BREAK_ZERO_WIDTH_SPACE"/>
      <member name="inseparable"
              value="6"
              c:identifier="G_UNICODE_BREAK_INSEPARABLE"/>
      <member name="non_breaking_glue"
              value="7"
              c:identifier="G_UNICODE_BREAK_NON_BREAKING_GLUE"/>
      <member name="contingent"
              value="8"
              c:identifier="G_UNICODE_BREAK_CONTINGENT"/>
      <member name="space" value="9" c:identifier="G_UNICODE_BREAK_SPACE"/>
      <member name="after" value="10" c:identifier="G_UNICODE_BREAK_AFTER"/>
      <member name="before" value="11" c:identifier="G_UNICODE_BREAK_BEFORE"/>
      <member name="before_and_after"
              value="12"
              c:identifier="G_UNICODE_BREAK_BEFORE_AND_AFTER"/>
      <member name="hyphen" value="13" c:identifier="G_UNICODE_BREAK_HYPHEN"/>
      <member name="non_starter"
              value="14"
              c:identifier="G_UNICODE_BREAK_NON_STARTER"/>
      <member name="open_punctuation"
              value="15"
              c:identifier="G_UNICODE_BREAK_OPEN_PUNCTUATION"/>
      <member name="close_punctuation"
              value="16"
              c:identifier="G_UNICODE_BREAK_CLOSE_PUNCTUATION"/>
      <member name="quotation"
              value="17"
              c:identifier="G_UNICODE_BREAK_QUOTATION"/>
      <member name="exclamation"
              value="18"
              c:identifier="G_UNICODE_BREAK_EXCLAMATION"/>
      <member name="ideographic"
              value="19"
              c:identifier="G_UNICODE_BREAK_IDEOGRAPHIC"/>
      <member name="numeric"
              value="20"
              c:identifier="G_UNICODE_BREAK_NUMERIC"/>
      <member name="infix_separator"
              value="21"
              c:identifier="G_UNICODE_BREAK_INFIX_SEPARATOR"/>
      <member name="symbol" value="22" c:identifier="G_UNICODE_BREAK_SYMBOL"/>
      <member name="alphabetic"
              value="23"
              c:identifier="G_UNICODE_BREAK_ALPHABETIC"/>
      <member name="prefix" value="24" c:identifier="G_UNICODE_BREAK_PREFIX"/>
      <member name="postfix"
              value="25"
              c:identifier="G_UNICODE_BREAK_POSTFIX"/>
      <member name="complex_context"
              value="26"
              c:identifier="G_UNICODE_BREAK_COMPLEX_CONTEXT"/>
      <member name="ambiguous"
              value="27"
              c:identifier="G_UNICODE_BREAK_AMBIGUOUS"/>
      <member name="unknown"
              value="28"
              c:identifier="G_UNICODE_BREAK_UNKNOWN"/>
      <member name="next_line"
              value="29"
              c:identifier="G_UNICODE_BREAK_NEXT_LINE"/>
      <member name="word_joiner"
              value="30"
              c:identifier="G_UNICODE_BREAK_WORD_JOINER"/>
      <member name="hangul_l_jamo"
              value="31"
              c:identifier="G_UNICODE_BREAK_HANGUL_L_JAMO"/>
      <member name="hangul_v_jamo"
              value="32"
              c:identifier="G_UNICODE_BREAK_HANGUL_V_JAMO"/>
      <member name="hangul_t_jamo"
              value="33"
              c:identifier="G_UNICODE_BREAK_HANGUL_T_JAMO"/>
      <member name="hangul_lv_syllable"
              value="34"
              c:identifier="G_UNICODE_BREAK_HANGUL_LV_SYLLABLE"/>
      <member name="hangul_lvt_syllable"
              value="35"
              c:identifier="G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE"/>
    </enumeration>
    <enumeration name="UnicodeScript" c:type="GUnicodeScript">
      <member name="invalid_code"
              value="-1"
              c:identifier="G_UNICODE_SCRIPT_INVALID_CODE"/>
      <member name="common" value="0" c:identifier="G_UNICODE_SCRIPT_COMMON"/>
      <member name="inherited"
              value="1"
              c:identifier="G_UNICODE_SCRIPT_INHERITED"/>
      <member name="arabic" value="2" c:identifier="G_UNICODE_SCRIPT_ARABIC"/>
      <member name="armenian"
              value="3"
              c:identifier="G_UNICODE_SCRIPT_ARMENIAN"/>
      <member name="bengali"
              value="4"
              c:identifier="G_UNICODE_SCRIPT_BENGALI"/>
      <member name="bopomofo"
              value="5"
              c:identifier="G_UNICODE_SCRIPT_BOPOMOFO"/>
      <member name="cherokee"
              value="6"
              c:identifier="G_UNICODE_SCRIPT_CHEROKEE"/>
      <member name="coptic" value="7" c:identifier="G_UNICODE_SCRIPT_COPTIC"/>
      <member name="cyrillic"
              value="8"
              c:identifier="G_UNICODE_SCRIPT_CYRILLIC"/>
      <member name="deseret"
              value="9"
              c:identifier="G_UNICODE_SCRIPT_DESERET"/>
      <member name="devanagari"
              value="10"
              c:identifier="G_UNICODE_SCRIPT_DEVANAGARI"/>
      <member name="ethiopic"
              value="11"
              c:identifier="G_UNICODE_SCRIPT_ETHIOPIC"/>
      <member name="georgian"
              value="12"
              c:identifier="G_UNICODE_SCRIPT_GEORGIAN"/>
      <member name="gothic" value="13" c:identifier="G_UNICODE_SCRIPT_GOTHIC"/>
      <member name="greek" value="14" c:identifier="G_UNICODE_SCRIPT_GREEK"/>
      <member name="gujarati"
              value="15"
              c:identifier="G_UNICODE_SCRIPT_GUJARATI"/>
      <member name="gurmukhi"
              value="16"
              c:identifier="G_UNICODE_SCRIPT_GURMUKHI"/>
      <member name="han" value="17" c:identifier="G_UNICODE_SCRIPT_HAN"/>
      <member name="hangul" value="18" c:identifier="G_UNICODE_SCRIPT_HANGUL"/>
      <member name="hebrew" value="19" c:identifier="G_UNICODE_SCRIPT_HEBREW"/>
      <member name="hiragana"
              value="20"
              c:identifier="G_UNICODE_SCRIPT_HIRAGANA"/>
      <member name="kannada"
              value="21"
              c:identifier="G_UNICODE_SCRIPT_KANNADA"/>
      <member name="katakana"
              value="22"
              c:identifier="G_UNICODE_SCRIPT_KATAKANA"/>
      <member name="khmer" value="23" c:identifier="G_UNICODE_SCRIPT_KHMER"/>
      <member name="lao" value="24" c:identifier="G_UNICODE_SCRIPT_LAO"/>
      <member name="latin" value="25" c:identifier="G_UNICODE_SCRIPT_LATIN"/>
      <member name="malayalam"
              value="26"
              c:identifier="G_UNICODE_SCRIPT_MALAYALAM"/>
      <member name="mongolian"
              value="27"
              c:identifier="G_UNICODE_SCRIPT_MONGOLIAN"/>
      <member name="myanmar"
              value="28"
              c:identifier="G_UNICODE_SCRIPT_MYANMAR"/>
      <member name="ogham" value="29" c:identifier="G_UNICODE_SCRIPT_OGHAM"/>
      <member name="old_italic"
              value="30"
              c:identifier="G_UNICODE_SCRIPT_OLD_ITALIC"/>
      <member name="oriya" value="31" c:identifier="G_UNICODE_SCRIPT_ORIYA"/>
      <member name="runic" value="32" c:identifier="G_UNICODE_SCRIPT_RUNIC"/>
      <member name="sinhala"
              value="33"
              c:identifier="G_UNICODE_SCRIPT_SINHALA"/>
      <member name="syriac" value="34" c:identifier="G_UNICODE_SCRIPT_SYRIAC"/>
      <member name="tamil" value="35" c:identifier="G_UNICODE_SCRIPT_TAMIL"/>
      <member name="telugu" value="36" c:identifier="G_UNICODE_SCRIPT_TELUGU"/>
      <member name="thaana" value="37" c:identifier="G_UNICODE_SCRIPT_THAANA"/>
      <member name="thai" value="38" c:identifier="G_UNICODE_SCRIPT_THAI"/>
      <member name="tibetan"
              value="39"
              c:identifier="G_UNICODE_SCRIPT_TIBETAN"/>
      <member name="canadian_aboriginal"
              value="40"
              c:identifier="G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL"/>
      <member name="yi" value="41" c:identifier="G_UNICODE_SCRIPT_YI"/>
      <member name="tagalog"
              value="42"
              c:identifier="G_UNICODE_SCRIPT_TAGALOG"/>
      <member name="hanunoo"
              value="43"
              c:identifier="G_UNICODE_SCRIPT_HANUNOO"/>
      <member name="buhid" value="44" c:identifier="G_UNICODE_SCRIPT_BUHID"/>
      <member name="tagbanwa"
              value="45"
              c:identifier="G_UNICODE_SCRIPT_TAGBANWA"/>
      <member name="braille"
              value="46"
              c:identifier="G_UNICODE_SCRIPT_BRAILLE"/>
      <member name="cypriot"
              value="47"
              c:identifier="G_UNICODE_SCRIPT_CYPRIOT"/>
      <member name="limbu" value="48" c:identifier="G_UNICODE_SCRIPT_LIMBU"/>
      <member name="osmanya"
              value="49"
              c:identifier="G_UNICODE_SCRIPT_OSMANYA"/>
      <member name="shavian"
              value="50"
              c:identifier="G_UNICODE_SCRIPT_SHAVIAN"/>
      <member name="linear_b"
              value="51"
              c:identifier="G_UNICODE_SCRIPT_LINEAR_B"/>
      <member name="tai_le" value="52" c:identifier="G_UNICODE_SCRIPT_TAI_LE"/>
      <member name="ugaritic"
              value="53"
              c:identifier="G_UNICODE_SCRIPT_UGARITIC"/>
      <member name="new_tai_lue"
              value="54"
              c:identifier="G_UNICODE_SCRIPT_NEW_TAI_LUE"/>
      <member name="buginese"
              value="55"
              c:identifier="G_UNICODE_SCRIPT_BUGINESE"/>
      <member name="glagolitic"
              value="56"
              c:identifier="G_UNICODE_SCRIPT_GLAGOLITIC"/>
      <member name="tifinagh"
              value="57"
              c:identifier="G_UNICODE_SCRIPT_TIFINAGH"/>
      <member name="syloti_nagri"
              value="58"
              c:identifier="G_UNICODE_SCRIPT_SYLOTI_NAGRI"/>
      <member name="old_persian"
              value="59"
              c:identifier="G_UNICODE_SCRIPT_OLD_PERSIAN"/>
      <member name="kharoshthi"
              value="60"
              c:identifier="G_UNICODE_SCRIPT_KHAROSHTHI"/>
      <member name="unknown"
              value="61"
              c:identifier="G_UNICODE_SCRIPT_UNKNOWN"/>
      <member name="balinese"
              value="62"
              c:identifier="G_UNICODE_SCRIPT_BALINESE"/>
      <member name="cuneiform"
              value="63"
              c:identifier="G_UNICODE_SCRIPT_CUNEIFORM"/>
      <member name="phoenician"
              value="64"
              c:identifier="G_UNICODE_SCRIPT_PHOENICIAN"/>
      <member name="phags_pa"
              value="65"
              c:identifier="G_UNICODE_SCRIPT_PHAGS_PA"/>
      <member name="nko" value="66" c:identifier="G_UNICODE_SCRIPT_NKO"/>
      <member name="kayah_li"
              value="67"
              c:identifier="G_UNICODE_SCRIPT_KAYAH_LI"/>
      <member name="lepcha" value="68" c:identifier="G_UNICODE_SCRIPT_LEPCHA"/>
      <member name="rejang" value="69" c:identifier="G_UNICODE_SCRIPT_REJANG"/>
      <member name="sundanese"
              value="70"
              c:identifier="G_UNICODE_SCRIPT_SUNDANESE"/>
      <member name="saurashtra"
              value="71"
              c:identifier="G_UNICODE_SCRIPT_SAURASHTRA"/>
      <member name="cham" value="72" c:identifier="G_UNICODE_SCRIPT_CHAM"/>
      <member name="ol_chiki"
              value="73"
              c:identifier="G_UNICODE_SCRIPT_OL_CHIKI"/>
      <member name="vai" value="74" c:identifier="G_UNICODE_SCRIPT_VAI"/>
      <member name="carian" value="75" c:identifier="G_UNICODE_SCRIPT_CARIAN"/>
      <member name="lycian" value="76" c:identifier="G_UNICODE_SCRIPT_LYCIAN"/>
      <member name="lydian" value="77" c:identifier="G_UNICODE_SCRIPT_LYDIAN"/>
    </enumeration>
    <enumeration name="UnicodeType" c:type="GUnicodeType">
      <member name="control" value="0" c:identifier="G_UNICODE_CONTROL"/>
      <member name="format" value="1" c:identifier="G_UNICODE_FORMAT"/>
      <member name="unassigned" value="2" c:identifier="G_UNICODE_UNASSIGNED"/>
      <member name="private_use"
              value="3"
              c:identifier="G_UNICODE_PRIVATE_USE"/>
      <member name="surrogate" value="4" c:identifier="G_UNICODE_SURROGATE"/>
      <member name="lowercase_letter"
              value="5"
              c:identifier="G_UNICODE_LOWERCASE_LETTER"/>
      <member name="modifier_letter"
              value="6"
              c:identifier="G_UNICODE_MODIFIER_LETTER"/>
      <member name="other_letter"
              value="7"
              c:identifier="G_UNICODE_OTHER_LETTER"/>
      <member name="titlecase_letter"
              value="8"
              c:identifier="G_UNICODE_TITLECASE_LETTER"/>
      <member name="uppercase_letter"
              value="9"
              c:identifier="G_UNICODE_UPPERCASE_LETTER"/>
      <member name="combining_mark"
              value="10"
              c:identifier="G_UNICODE_COMBINING_MARK"/>
      <member name="enclosing_mark"
              value="11"
              c:identifier="G_UNICODE_ENCLOSING_MARK"/>
      <member name="non_spacing_mark"
              value="12"
              c:identifier="G_UNICODE_NON_SPACING_MARK"/>
      <member name="decimal_number"
              value="13"
              c:identifier="G_UNICODE_DECIMAL_NUMBER"/>
      <member name="letter_number"
              value="14"
              c:identifier="G_UNICODE_LETTER_NUMBER"/>
      <member name="other_number"
              value="15"
              c:identifier="G_UNICODE_OTHER_NUMBER"/>
      <member name="connect_punctuation"
              value="16"
              c:identifier="G_UNICODE_CONNECT_PUNCTUATION"/>
      <member name="dash_punctuation"
              value="17"
              c:identifier="G_UNICODE_DASH_PUNCTUATION"/>
      <member name="close_punctuation"
              value="18"
              c:identifier="G_UNICODE_CLOSE_PUNCTUATION"/>
      <member name="final_punctuation"
              value="19"
              c:identifier="G_UNICODE_FINAL_PUNCTUATION"/>
      <member name="initial_punctuation"
              value="20"
              c:identifier="G_UNICODE_INITIAL_PUNCTUATION"/>
      <member name="other_punctuation"
              value="21"
              c:identifier="G_UNICODE_OTHER_PUNCTUATION"/>
      <member name="open_punctuation"
              value="22"
              c:identifier="G_UNICODE_OPEN_PUNCTUATION"/>
      <member name="currency_symbol"
              value="23"
              c:identifier="G_UNICODE_CURRENCY_SYMBOL"/>
      <member name="modifier_symbol"
              value="24"
              c:identifier="G_UNICODE_MODIFIER_SYMBOL"/>
      <member name="math_symbol"
              value="25"
              c:identifier="G_UNICODE_MATH_SYMBOL"/>
      <member name="other_symbol"
              value="26"
              c:identifier="G_UNICODE_OTHER_SYMBOL"/>
      <member name="line_separator"
              value="27"
              c:identifier="G_UNICODE_LINE_SEPARATOR"/>
      <member name="paragraph_separator"
              value="28"
              c:identifier="G_UNICODE_PARAGRAPH_SEPARATOR"/>
      <member name="space_separator"
              value="29"
              c:identifier="G_UNICODE_SPACE_SEPARATOR"/>
    </enumeration>
    <enumeration name="UserDirectory"
                 doc="These are logical ids for special directories which are defined
depending on the platform used. You should use g_get_user_special_dir()
to retrieve the full path associated to the logical id.
The #GUserDirectory enumeration can be extended at later date. Not
every platform has a directory for every logical id in this
enumeration."
                 version="2.14"
                 c:type="GUserDirectory">
      <member name="directory_desktop"
              value="0"
              c:identifier="G_USER_DIRECTORY_DESKTOP"/>
      <member name="directory_documents"
              value="1"
              c:identifier="G_USER_DIRECTORY_DOCUMENTS"/>
      <member name="directory_download"
              value="2"
              c:identifier="G_USER_DIRECTORY_DOWNLOAD"/>
      <member name="directory_music"
              value="3"
              c:identifier="G_USER_DIRECTORY_MUSIC"/>
      <member name="directory_pictures"
              value="4"
              c:identifier="G_USER_DIRECTORY_PICTURES"/>
      <member name="directory_public_share"
              value="5"
              c:identifier="G_USER_DIRECTORY_PUBLIC_SHARE"/>
      <member name="directory_templates"
              value="6"
              c:identifier="G_USER_DIRECTORY_TEMPLATES"/>
      <member name="directory_videos"
              value="7"
              c:identifier="G_USER_DIRECTORY_VIDEOS"/>
      <member name="n_directories"
              value="8"
              c:identifier="G_USER_N_DIRECTORIES"/>
    </enumeration>
    <callback name="VoidFunc" c:type="GVoidFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </callback>
    <constant name="WIN32_MSG_HANDLE" value="19981206">
      <type name="int"/>
    </constant>
    <function name="access" c:identifier="g_access">
      <return-value transfer-ownership="none">
        <type name="int" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="mode" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="allocator_free" c:identifier="g_allocator_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="allocator" transfer-ownership="none">
          <type name="Allocator" c:type="GAllocator*"/>
        </parameter>
      </parameters>
    </function>
    <function name="allocator_new" c:identifier="g_allocator_new">
      <return-value transfer-ownership="full">
        <type name="Allocator" c:type="GAllocator*"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="n_preallocs" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_append_vals" c:identifier="g_array_append_vals">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_free" c:identifier="g_array_free">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="free_segment" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_get_element_size"
              c:identifier="g_array_get_element_size">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_insert_vals" c:identifier="g_array_insert_vals">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_new" c:identifier="g_array_new">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="zero_terminated" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="clear_" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="element_size" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_prepend_vals" c:identifier="g_array_prepend_vals">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_ref" c:identifier="g_array_ref">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_remove_index" c:identifier="g_array_remove_index">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_remove_index_fast"
              c:identifier="g_array_remove_index_fast">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_remove_range" c:identifier="g_array_remove_range">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_set_size" c:identifier="g_array_set_size">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_sized_new" c:identifier="g_array_sized_new">
      <return-value transfer-ownership="full">
        <type name="Array" c:type="GArray*"/>
      </return-value>
      <parameters>
        <parameter name="zero_terminated" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="clear_" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="element_size" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="reserved_size" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_sort" c:identifier="g_array_sort">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_sort_with_data"
              c:identifier="g_array_sort_with_data">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="array_unref" c:identifier="g_array_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="Array" c:type="GArray*"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_digit_value" c:identifier="g_ascii_digit_value">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_dtostr" c:identifier="g_ascii_dtostr">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="buf_len" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="d" transfer-ownership="none">
          <type name="double" c:type="gdouble"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_formatd" c:identifier="g_ascii_formatd">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="buf_len" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="d" transfer-ownership="none">
          <type name="double" c:type="gdouble"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_strcasecmp" c:identifier="g_ascii_strcasecmp">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="s1" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="s2" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_strdown" c:identifier="g_ascii_strdown">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_strncasecmp" c:identifier="g_ascii_strncasecmp">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="s1" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="s2" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_strtod" c:identifier="g_ascii_strtod">
      <return-value transfer-ownership="none">
        <type name="double" c:type="gdouble"/>
      </return-value>
      <parameters>
        <parameter name="nptr" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="endptr" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_strtoll" c:identifier="g_ascii_strtoll">
      <return-value transfer-ownership="none">
        <type name="int64" c:type="gint64"/>
      </return-value>
      <parameters>
        <parameter name="nptr" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="endptr" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="base" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_strtoull" c:identifier="g_ascii_strtoull">
      <return-value transfer-ownership="none">
        <type name="uint64" c:type="guint64"/>
      </return-value>
      <parameters>
        <parameter name="nptr" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="endptr" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="base" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_strup" c:identifier="g_ascii_strup">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_tolower" c:identifier="g_ascii_tolower">
      <return-value transfer-ownership="none">
        <type name="int8" c:type="gchar"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_toupper" c:identifier="g_ascii_toupper">
      <return-value transfer-ownership="none">
        <type name="int8" c:type="gchar"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="ascii_xdigit_value" c:identifier="g_ascii_xdigit_value">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="assert_warning" c:identifier="g_assert_warning">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="log_domain" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="pretty_function" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="expression" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="assertion_message" c:identifier="g_assertion_message">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="message" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="assertion_message_cmpnum"
              c:identifier="g_assertion_message_cmpnum">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="expr" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="arg1" transfer-ownership="none">
          <type name="long double" c:type="long double"/>
        </parameter>
        <parameter name="cmp" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="arg2" transfer-ownership="none">
          <type name="long double" c:type="long double"/>
        </parameter>
        <parameter name="numtype" transfer-ownership="none">
          <type name="int8" c:type="char"/>
        </parameter>
      </parameters>
    </function>
    <function name="assertion_message_cmpstr"
              c:identifier="g_assertion_message_cmpstr">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="expr" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="arg1" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="cmp" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="arg2" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="assertion_message_error"
              c:identifier="g_assertion_message_error">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="expr" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="error" transfer-ownership="none">
          <type name="Error" c:type="GError*"/>
        </parameter>
        <parameter name="error_domain" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
        <parameter name="error_code" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="assertion_message_expr"
              c:identifier="g_assertion_message_expr">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="expr" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_length" c:identifier="g_async_queue_length">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_length_unlocked"
              c:identifier="g_async_queue_length_unlocked">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_lock" c:identifier="g_async_queue_lock">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_new" c:identifier="g_async_queue_new">
      <return-value transfer-ownership="full">
        <type name="AsyncQueue" c:type="GAsyncQueue*"/>
      </return-value>
    </function>
    <function name="async_queue_new_full"
              c:identifier="g_async_queue_new_full">
      <return-value transfer-ownership="full">
        <type name="AsyncQueue" c:type="GAsyncQueue*"/>
      </return-value>
      <parameters>
        <parameter name="item_free_func" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_pop" c:identifier="g_async_queue_pop">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_pop_unlocked"
              c:identifier="g_async_queue_pop_unlocked">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_push" c:identifier="g_async_queue_push">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_push_sorted"
              c:identifier="g_async_queue_push_sorted">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="3">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_push_sorted_unlocked"
              c:identifier="g_async_queue_push_sorted_unlocked">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="3">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_push_unlocked"
              c:identifier="g_async_queue_push_unlocked">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_ref" c:identifier="g_async_queue_ref">
      <return-value transfer-ownership="full">
        <type name="AsyncQueue" c:type="GAsyncQueue*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_ref_unlocked"
              c:identifier="g_async_queue_ref_unlocked">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_sort" c:identifier="g_async_queue_sort">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_sort_unlocked"
              c:identifier="g_async_queue_sort_unlocked">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_timed_pop"
              c:identifier="g_async_queue_timed_pop">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
        <parameter name="end_time" transfer-ownership="none">
          <type name="TimeVal" c:type="GTimeVal*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_timed_pop_unlocked"
              c:identifier="g_async_queue_timed_pop_unlocked">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
        <parameter name="end_time" transfer-ownership="none">
          <type name="TimeVal" c:type="GTimeVal*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_try_pop" c:identifier="g_async_queue_try_pop">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_try_pop_unlocked"
              c:identifier="g_async_queue_try_pop_unlocked">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_unlock" c:identifier="g_async_queue_unlock">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_unref" c:identifier="g_async_queue_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="async_queue_unref_and_unlock"
              c:identifier="g_async_queue_unref_and_unlock">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="AsyncQueue" c:type="GAsyncQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="atexit" c:identifier="g_atexit">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="func" transfer-ownership="none">
          <type name="VoidFunc" c:type="GVoidFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="atomic_int_add" c:identifier="g_atomic_int_add">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="atomic" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="atomic_int_compare_and_exchange"
              c:identifier="g_atomic_int_compare_and_exchange">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="atomic" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="oldval" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="newval" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="atomic_int_exchange_and_add"
              c:identifier="g_atomic_int_exchange_and_add">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="atomic" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="atomic_int_get" c:identifier="g_atomic_int_get">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="atomic" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="atomic_int_set" c:identifier="g_atomic_int_set">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="atomic" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="newval" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="atomic_pointer_compare_and_exchange"
              c:identifier="g_atomic_pointer_compare_and_exchange">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="atomic" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
        <parameter name="oldval" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="newval" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="atomic_pointer_get" c:identifier="g_atomic_pointer_get">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="atomic" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="atomic_pointer_set" c:identifier="g_atomic_pointer_set">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="atomic" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
        <parameter name="newval" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="base64_decode" c:identifier="g_base64_decode">
      <return-value transfer-ownership="full">
        <array c:type="guchar*">
          <type name="uint8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="text" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="out_len" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="base64_decode_inplace"
              c:identifier="g_base64_decode_inplace">
      <return-value transfer-ownership="full">
        <array c:type="guchar*">
          <type name="uint8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="text" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="out_len" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="base64_decode_step" c:identifier="g_base64_decode_step">
      <return-value transfer-ownership="none">
        <type name="size_t" c:type="gsize"/>
      </return-value>
      <parameters>
        <parameter name="in" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="out" transfer-ownership="none">
          <array c:type="guchar*">
            <type name="uint8"/>
          </array>
        </parameter>
        <parameter name="state" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="save" direction="out" transfer-ownership="full">
          <type name="uint" c:type="guint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="base64_encode" c:identifier="g_base64_encode">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <array c:type="guchar*">
            <type name="uint8"/>
          </array>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="base64_encode_close" c:identifier="g_base64_encode_close">
      <return-value transfer-ownership="none">
        <type name="size_t" c:type="gsize"/>
      </return-value>
      <parameters>
        <parameter name="break_lines" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="out" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="state" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="save" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="base64_encode_step" c:identifier="g_base64_encode_step">
      <return-value transfer-ownership="none">
        <type name="size_t" c:type="gsize"/>
      </return-value>
      <parameters>
        <parameter name="in" transfer-ownership="none">
          <array c:type="guchar*">
            <type name="uint8"/>
          </array>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="break_lines" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="out" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="state" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="save" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="basename" c:identifier="g_basename">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="file_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bit_nth_lsf" c:identifier="g_bit_nth_lsf">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="mask" transfer-ownership="none">
          <type name="ulong" c:type="gulong"/>
        </parameter>
        <parameter name="nth_bit" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="bit_nth_msf" c:identifier="g_bit_nth_msf">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="mask" transfer-ownership="none">
          <type name="ulong" c:type="gulong"/>
        </parameter>
        <parameter name="nth_bit" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="bit_storage" c:identifier="g_bit_storage">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="number" transfer-ownership="none">
          <type name="ulong" c:type="gulong"/>
        </parameter>
      </parameters>
    </function>
    <function name="blow_chunks" c:identifier="g_blow_chunks">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="bookmark_file_add_application"
              c:identifier="g_bookmark_file_add_application">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="exec" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_add_group"
              c:identifier="g_bookmark_file_add_group">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="group" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_error_quark"
              c:identifier="g_bookmark_file_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="bookmark_file_free" c:identifier="g_bookmark_file_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_added"
              c:identifier="g_bookmark_file_get_added"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="time_t" c:type="time_t"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_app_info"
              c:identifier="g_bookmark_file_get_app_info"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="exec" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="count" direction="out" transfer-ownership="full">
          <type name="uint" c:type="guint*"/>
        </parameter>
        <parameter name="stamp" direction="out" transfer-ownership="full">
          <type name="time_t" c:type="time_t*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_applications"
              c:identifier="g_bookmark_file_get_applications"
              throws="1">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_description"
              c:identifier="g_bookmark_file_get_description"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_groups"
              c:identifier="g_bookmark_file_get_groups"
              throws="1">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_icon"
              c:identifier="g_bookmark_file_get_icon"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="href" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="mime_type" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_is_private"
              c:identifier="g_bookmark_file_get_is_private"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_mime_type"
              c:identifier="g_bookmark_file_get_mime_type"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_modified"
              c:identifier="g_bookmark_file_get_modified"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="time_t" c:type="time_t"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_size"
              c:identifier="g_bookmark_file_get_size">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_title"
              c:identifier="g_bookmark_file_get_title"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_uris"
              c:identifier="g_bookmark_file_get_uris">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_get_visited"
              c:identifier="g_bookmark_file_get_visited"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="time_t" c:type="time_t"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_has_application"
              c:identifier="g_bookmark_file_has_application"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_has_group"
              c:identifier="g_bookmark_file_has_group"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="group" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_has_item"
              c:identifier="g_bookmark_file_has_item">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_load_from_data"
              c:identifier="g_bookmark_file_load_from_data"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_load_from_data_dirs"
              c:identifier="g_bookmark_file_load_from_data_dirs"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="full_path" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_load_from_file"
              c:identifier="g_bookmark_file_load_from_file"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_move_item"
              c:identifier="g_bookmark_file_move_item"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="old_uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="new_uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_new" c:identifier="g_bookmark_file_new">
      <return-value transfer-ownership="full">
        <type name="BookmarkFile" c:type="GBookmarkFile*"/>
      </return-value>
    </function>
    <function name="bookmark_file_remove_application"
              c:identifier="g_bookmark_file_remove_application"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_remove_group"
              c:identifier="g_bookmark_file_remove_group"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="group" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_remove_item"
              c:identifier="g_bookmark_file_remove_item"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_added"
              c:identifier="g_bookmark_file_set_added">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="added" transfer-ownership="none">
          <type name="time_t" c:type="time_t"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_app_info"
              c:identifier="g_bookmark_file_set_app_info"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="exec" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="count" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="stamp" transfer-ownership="none">
          <type name="time_t" c:type="time_t"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_description"
              c:identifier="g_bookmark_file_set_description">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="description" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_groups"
              c:identifier="g_bookmark_file_set_groups">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="groups" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_icon"
              c:identifier="g_bookmark_file_set_icon">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="href" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="mime_type" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_is_private"
              c:identifier="g_bookmark_file_set_is_private">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="is_private" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_mime_type"
              c:identifier="g_bookmark_file_set_mime_type">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="mime_type" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_modified"
              c:identifier="g_bookmark_file_set_modified">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="modified" transfer-ownership="none">
          <type name="time_t" c:type="time_t"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_title"
              c:identifier="g_bookmark_file_set_title">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="title" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_set_visited"
              c:identifier="g_bookmark_file_set_visited">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="visited" transfer-ownership="none">
          <type name="time_t" c:type="time_t"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_to_data"
              c:identifier="g_bookmark_file_to_data"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="bookmark_file_to_file"
              c:identifier="g_bookmark_file_to_file"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="bookmark" transfer-ownership="none">
          <type name="BookmarkFile" c:type="GBookmarkFile*"/>
        </parameter>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="build_filename" c:identifier="g_build_filename">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="first_element" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="build_filenamev" c:identifier="g_build_filenamev">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="args" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="build_path" c:identifier="g_build_path">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="separator" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="first_element" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="build_pathv" c:identifier="g_build_pathv">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="separator" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="args" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_append" c:identifier="g_byte_array_append">
      <return-value transfer-ownership="full">
        <type name="ByteArray" c:type="GByteArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <array c:type="guint8*">
            <type name="uint8"/>
          </array>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_free" c:identifier="g_byte_array_free">
      <return-value transfer-ownership="full">
        <array c:type="guint8*">
          <type name="uint8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
        <parameter name="free_segment" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_new" c:identifier="g_byte_array_new">
      <return-value transfer-ownership="full">
        <type name="ByteArray" c:type="GByteArray*"/>
      </return-value>
    </function>
    <function name="byte_array_prepend" c:identifier="g_byte_array_prepend">
      <return-value transfer-ownership="full">
        <type name="ByteArray" c:type="GByteArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <array c:type="guint8*">
            <type name="uint8"/>
          </array>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_ref" c:identifier="g_byte_array_ref">
      <return-value transfer-ownership="full">
        <type name="ByteArray" c:type="GByteArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_remove_index"
              c:identifier="g_byte_array_remove_index">
      <return-value transfer-ownership="full">
        <type name="ByteArray" c:type="GByteArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_remove_index_fast"
              c:identifier="g_byte_array_remove_index_fast">
      <return-value transfer-ownership="full">
        <type name="ByteArray" c:type="GByteArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_remove_range"
              c:identifier="g_byte_array_remove_range">
      <return-value transfer-ownership="full">
        <type name="ByteArray" c:type="GByteArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_set_size" c:identifier="g_byte_array_set_size">
      <return-value transfer-ownership="full">
        <type name="ByteArray" c:type="GByteArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_sized_new"
              c:identifier="g_byte_array_sized_new">
      <return-value transfer-ownership="full">
        <type name="ByteArray" c:type="GByteArray*"/>
      </return-value>
      <parameters>
        <parameter name="reserved_size" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_sort" c:identifier="g_byte_array_sort">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_sort_with_data"
              c:identifier="g_byte_array_sort_with_data">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="byte_array_unref" c:identifier="g_byte_array_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="ByteArray" c:type="GByteArray*"/>
        </parameter>
      </parameters>
    </function>
    <function name="cache_destroy" c:identifier="g_cache_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cache" transfer-ownership="none">
          <type name="Cache" c:type="GCache*"/>
        </parameter>
      </parameters>
    </function>
    <function name="cache_insert" c:identifier="g_cache_insert">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="cache" transfer-ownership="none">
          <type name="Cache" c:type="GCache*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="cache_key_foreach" c:identifier="g_cache_key_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cache" transfer-ownership="none">
          <type name="Cache" c:type="GCache*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="HFunc" c:type="GHFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="cache_new" c:identifier="g_cache_new">
      <return-value transfer-ownership="full">
        <type name="Cache" c:type="GCache*"/>
      </return-value>
      <parameters>
        <parameter name="value_new_func" transfer-ownership="none">
          <type name="CacheNewFunc" c:type="GCacheNewFunc"/>
        </parameter>
        <parameter name="value_destroy_func" transfer-ownership="none">
          <type name="CacheDestroyFunc" c:type="GCacheDestroyFunc"/>
        </parameter>
        <parameter name="key_dup_func" transfer-ownership="none">
          <type name="CacheDupFunc" c:type="GCacheDupFunc"/>
        </parameter>
        <parameter name="key_destroy_func" transfer-ownership="none">
          <type name="CacheDestroyFunc" c:type="GCacheDestroyFunc"/>
        </parameter>
        <parameter name="hash_key_func" transfer-ownership="none">
          <type name="HashFunc" c:type="GHashFunc"/>
        </parameter>
        <parameter name="hash_value_func" transfer-ownership="none">
          <type name="HashFunc" c:type="GHashFunc"/>
        </parameter>
        <parameter name="key_equal_func" transfer-ownership="none">
          <type name="EqualFunc" c:type="GEqualFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="cache_remove" c:identifier="g_cache_remove">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cache" transfer-ownership="none">
          <type name="Cache" c:type="GCache*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="cache_value_foreach" c:identifier="g_cache_value_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cache" transfer-ownership="none">
          <type name="Cache" c:type="GCache*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="HFunc" c:type="GHFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="chdir" c:identifier="g_chdir">
      <return-value transfer-ownership="none">
        <type name="int" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="path" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="check_version" c:identifier="glib_check_version">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="required_major" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="required_minor" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="required_micro" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="checksum_copy" c:identifier="g_checksum_copy">
      <return-value transfer-ownership="full">
        <type name="Checksum" c:type="GChecksum*"/>
      </return-value>
      <parameters>
        <parameter name="checksum" transfer-ownership="none">
          <type name="Checksum" c:type="GChecksum*"/>
        </parameter>
      </parameters>
    </function>
    <function name="checksum_free" c:identifier="g_checksum_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="checksum" transfer-ownership="none">
          <type name="Checksum" c:type="GChecksum*"/>
        </parameter>
      </parameters>
    </function>
    <function name="checksum_get_digest" c:identifier="g_checksum_get_digest">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="checksum" transfer-ownership="none">
          <type name="Checksum" c:type="GChecksum*"/>
        </parameter>
        <parameter name="buffer" transfer-ownership="none">
          <array c:type="guint8*">
            <type name="uint8"/>
          </array>
        </parameter>
        <parameter name="digest_len" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="checksum_get_string" c:identifier="g_checksum_get_string">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="checksum" transfer-ownership="none">
          <type name="Checksum" c:type="GChecksum*"/>
        </parameter>
      </parameters>
    </function>
    <function name="checksum_new" c:identifier="g_checksum_new">
      <return-value transfer-ownership="full">
        <type name="Checksum" c:type="GChecksum*"/>
      </return-value>
      <parameters>
        <parameter name="checksum_type" transfer-ownership="none">
          <type name="ChecksumType" c:type="GChecksumType"/>
        </parameter>
      </parameters>
    </function>
    <function name="checksum_reset" c:identifier="g_checksum_reset">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="checksum" transfer-ownership="none">
          <type name="Checksum" c:type="GChecksum*"/>
        </parameter>
      </parameters>
    </function>
    <function name="checksum_type_get_length"
              c:identifier="g_checksum_type_get_length">
      <return-value transfer-ownership="none">
        <type name="ssize_t" c:type="gssize"/>
      </return-value>
      <parameters>
        <parameter name="checksum_type" transfer-ownership="none">
          <type name="ChecksumType" c:type="GChecksumType"/>
        </parameter>
      </parameters>
    </function>
    <function name="checksum_update" c:identifier="g_checksum_update">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="checksum" transfer-ownership="none">
          <type name="Checksum" c:type="GChecksum*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <array c:type="guchar*">
            <type name="uint8"/>
          </array>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="child_watch_add" c:identifier="g_child_watch_add_full">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="priority" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="pid" transfer-ownership="none">
          <type name="Pid" c:type="GPid"/>
        </parameter>
        <parameter name="function"
                   transfer-ownership="none"
                   scope="notified"
                   closure="3"
                   destroy="4">
          <type name="ChildWatchFunc" c:type="GChildWatchFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="notify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="child_watch_source_new"
              c:identifier="g_child_watch_source_new">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
      <parameters>
        <parameter name="pid" transfer-ownership="none">
          <type name="Pid" c:type="GPid"/>
        </parameter>
      </parameters>
    </function>
    <function name="clear_error" c:identifier="g_clear_error" throws="1">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="completion_add_items"
              c:identifier="g_completion_add_items">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cmp" transfer-ownership="none">
          <type name="Completion" c:type="GCompletion*"/>
        </parameter>
        <parameter name="items" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="completion_clear_items"
              c:identifier="g_completion_clear_items">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cmp" transfer-ownership="none">
          <type name="Completion" c:type="GCompletion*"/>
        </parameter>
      </parameters>
    </function>
    <function name="completion_complete" c:identifier="g_completion_complete">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="cmp" transfer-ownership="none">
          <type name="Completion" c:type="GCompletion*"/>
        </parameter>
        <parameter name="prefix" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="new_prefix" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="completion_complete_utf8"
              c:identifier="g_completion_complete_utf8">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="cmp" transfer-ownership="none">
          <type name="Completion" c:type="GCompletion*"/>
        </parameter>
        <parameter name="prefix" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="new_prefix" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="completion_free" c:identifier="g_completion_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cmp" transfer-ownership="none">
          <type name="Completion" c:type="GCompletion*"/>
        </parameter>
      </parameters>
    </function>
    <function name="completion_new" c:identifier="g_completion_new">
      <return-value transfer-ownership="full">
        <type name="Completion" c:type="GCompletion*"/>
      </return-value>
      <parameters>
        <parameter name="func" transfer-ownership="none">
          <type name="CompletionFunc" c:type="GCompletionFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="completion_remove_items"
              c:identifier="g_completion_remove_items">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cmp" transfer-ownership="none">
          <type name="Completion" c:type="GCompletion*"/>
        </parameter>
        <parameter name="items" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="completion_set_compare"
              c:identifier="g_completion_set_compare">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cmp" transfer-ownership="none">
          <type name="Completion" c:type="GCompletion*"/>
        </parameter>
        <parameter name="strncmp_func" transfer-ownership="none">
          <type name="CompletionStrncmpFunc" c:type="GCompletionStrncmpFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="compute_checksum_for_data"
              c:identifier="g_compute_checksum_for_data">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="checksum_type" transfer-ownership="none">
          <type name="ChecksumType" c:type="GChecksumType"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <array c:type="guchar*">
            <type name="uint8"/>
          </array>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="compute_checksum_for_string"
              c:identifier="g_compute_checksum_for_string">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="checksum_type" transfer-ownership="none">
          <type name="ChecksumType" c:type="GChecksumType"/>
        </parameter>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="convert" c:identifier="g_convert" throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="to_codeset" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="from_codeset" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="bytes_read" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="bytes_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="convert_error_quark" c:identifier="g_convert_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="convert_with_fallback"
              c:identifier="g_convert_with_fallback"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="to_codeset" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="from_codeset" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="fallback" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="bytes_read" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="bytes_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="convert_with_iconv"
              c:identifier="g_convert_with_iconv"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="converter" transfer-ownership="none">
          <type name="IConv" c:type="GIConv"/>
        </parameter>
        <parameter name="bytes_read" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="bytes_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="datalist_clear" c:identifier="g_datalist_clear">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="datalist" transfer-ownership="none">
          <type name="Data" c:type="GData**"/>
        </parameter>
      </parameters>
    </function>
    <function name="datalist_foreach" c:identifier="g_datalist_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="datalist" transfer-ownership="none">
          <type name="Data" c:type="GData**"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="DataForeachFunc" c:type="GDataForeachFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="datalist_get_flags" c:identifier="g_datalist_get_flags">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="datalist" transfer-ownership="none">
          <type name="Data" c:type="GData**"/>
        </parameter>
      </parameters>
    </function>
    <function name="datalist_id_get_data"
              c:identifier="g_datalist_id_get_data">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="datalist" transfer-ownership="none">
          <type name="Data" c:type="GData**"/>
        </parameter>
        <parameter name="key_id" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
      </parameters>
    </function>
    <function name="datalist_id_remove_no_notify"
              c:identifier="g_datalist_id_remove_no_notify">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="datalist" transfer-ownership="none">
          <type name="Data" c:type="GData**"/>
        </parameter>
        <parameter name="key_id" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
      </parameters>
    </function>
    <function name="datalist_id_set_data_full"
              c:identifier="g_datalist_id_set_data_full">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="datalist" transfer-ownership="none">
          <type name="Data" c:type="GData**"/>
        </parameter>
        <parameter name="key_id" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="destroy_func" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="datalist_init" c:identifier="g_datalist_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="datalist" transfer-ownership="none">
          <type name="Data" c:type="GData**"/>
        </parameter>
      </parameters>
    </function>
    <function name="datalist_set_flags" c:identifier="g_datalist_set_flags">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="datalist" transfer-ownership="none">
          <type name="Data" c:type="GData**"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="datalist_unset_flags"
              c:identifier="g_datalist_unset_flags">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="datalist" transfer-ownership="none">
          <type name="Data" c:type="GData**"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="dataset_destroy" c:identifier="g_dataset_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dataset_location" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="dataset_foreach" c:identifier="g_dataset_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dataset_location" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="DataForeachFunc" c:type="GDataForeachFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="dataset_id_get_data" c:identifier="g_dataset_id_get_data">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="dataset_location" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="key_id" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
      </parameters>
    </function>
    <function name="dataset_id_remove_no_notify"
              c:identifier="g_dataset_id_remove_no_notify">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="dataset_location" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="key_id" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
      </parameters>
    </function>
    <function name="dataset_id_set_data_full"
              c:identifier="g_dataset_id_set_data_full">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dataset_location" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="key_id" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="destroy_func" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_add_days" c:identifier="g_date_add_days">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="n_days" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_add_months" c:identifier="g_date_add_months">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="n_months" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_add_years" c:identifier="g_date_add_years">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="n_years" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_clamp" c:identifier="g_date_clamp">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="min_date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="max_date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_clear" c:identifier="g_date_clear">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="n_dates" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_compare" c:identifier="g_date_compare">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="lhs" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="rhs" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_days_between" c:identifier="g_date_days_between">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="date1" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="date2" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_free" c:identifier="g_date_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_day" c:identifier="g_date_get_day">
      <return-value transfer-ownership="full">
        <type name="DateDay" c:type="GDateDay"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_day_of_year"
              c:identifier="g_date_get_day_of_year">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_days_in_month"
              c:identifier="g_date_get_days_in_month">
      <return-value transfer-ownership="none">
        <type name="uint8" c:type="guint8"/>
      </return-value>
      <parameters>
        <parameter name="month" transfer-ownership="none">
          <type name="DateMonth" c:type="GDateMonth"/>
        </parameter>
        <parameter name="year" transfer-ownership="none">
          <type name="DateYear" c:type="GDateYear"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_iso8601_week_of_year"
              c:identifier="g_date_get_iso8601_week_of_year">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_julian" c:identifier="g_date_get_julian">
      <return-value transfer-ownership="none">
        <type name="uint32" c:type="guint32"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_monday_week_of_year"
              c:identifier="g_date_get_monday_week_of_year">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_monday_weeks_in_year"
              c:identifier="g_date_get_monday_weeks_in_year">
      <return-value transfer-ownership="none">
        <type name="uint8" c:type="guint8"/>
      </return-value>
      <parameters>
        <parameter name="year" transfer-ownership="none">
          <type name="DateYear" c:type="GDateYear"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_month" c:identifier="g_date_get_month">
      <return-value transfer-ownership="full">
        <type name="DateMonth" c:type="GDateMonth"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_sunday_week_of_year"
              c:identifier="g_date_get_sunday_week_of_year">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_sunday_weeks_in_year"
              c:identifier="g_date_get_sunday_weeks_in_year">
      <return-value transfer-ownership="none">
        <type name="uint8" c:type="guint8"/>
      </return-value>
      <parameters>
        <parameter name="year" transfer-ownership="none">
          <type name="DateYear" c:type="GDateYear"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_weekday" c:identifier="g_date_get_weekday">
      <return-value transfer-ownership="full">
        <type name="DateWeekday" c:type="GDateWeekday"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_get_year" c:identifier="g_date_get_year">
      <return-value transfer-ownership="full">
        <type name="DateYear" c:type="GDateYear"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_is_first_of_month"
              c:identifier="g_date_is_first_of_month">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_is_last_of_month"
              c:identifier="g_date_is_last_of_month">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_is_leap_year" c:identifier="g_date_is_leap_year">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="year" transfer-ownership="none">
          <type name="DateYear" c:type="GDateYear"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_new" c:identifier="g_date_new">
      <return-value transfer-ownership="full">
        <type name="Date" c:type="GDate*"/>
      </return-value>
    </function>
    <function name="date_new_dmy" c:identifier="g_date_new_dmy">
      <return-value transfer-ownership="full">
        <type name="Date" c:type="GDate*"/>
      </return-value>
      <parameters>
        <parameter name="day" transfer-ownership="none">
          <type name="DateDay" c:type="GDateDay"/>
        </parameter>
        <parameter name="month" transfer-ownership="none">
          <type name="DateMonth" c:type="GDateMonth"/>
        </parameter>
        <parameter name="year" transfer-ownership="none">
          <type name="DateYear" c:type="GDateYear"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_new_julian" c:identifier="g_date_new_julian">
      <return-value transfer-ownership="full">
        <type name="Date" c:type="GDate*"/>
      </return-value>
      <parameters>
        <parameter name="julian_day" transfer-ownership="none">
          <type name="uint32" c:type="guint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_order" c:identifier="g_date_order">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date1" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="date2" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_set_day" c:identifier="g_date_set_day">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="day" transfer-ownership="none">
          <type name="DateDay" c:type="GDateDay"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_set_dmy" c:identifier="g_date_set_dmy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="day" transfer-ownership="none">
          <type name="DateDay" c:type="GDateDay"/>
        </parameter>
        <parameter name="month" transfer-ownership="none">
          <type name="DateMonth" c:type="GDateMonth"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="DateYear" c:type="GDateYear"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_set_julian" c:identifier="g_date_set_julian">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="julian_date" transfer-ownership="none">
          <type name="uint32" c:type="guint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_set_month" c:identifier="g_date_set_month">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="month" transfer-ownership="none">
          <type name="DateMonth" c:type="GDateMonth"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_set_parse" c:identifier="g_date_set_parse">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_set_time" c:identifier="g_date_set_time">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="time_" transfer-ownership="none">
          <type name="Time" c:type="GTime"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_set_time_t" c:identifier="g_date_set_time_t">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="timet" transfer-ownership="none">
          <type name="time_t" c:type="time_t"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_set_time_val" c:identifier="g_date_set_time_val">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="timeval" transfer-ownership="none">
          <type name="TimeVal" c:type="GTimeVal*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_set_year" c:identifier="g_date_set_year">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="year" transfer-ownership="none">
          <type name="DateYear" c:type="GDateYear"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_strftime" c:identifier="g_date_strftime">
      <return-value transfer-ownership="none">
        <type name="size_t" c:type="gsize"/>
      </return-value>
      <parameters>
        <parameter name="s" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="slen" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_subtract_days" c:identifier="g_date_subtract_days">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="n_days" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_subtract_months"
              c:identifier="g_date_subtract_months">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="n_months" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_subtract_years" c:identifier="g_date_subtract_years">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="n_years" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_to_struct_tm" c:identifier="g_date_to_struct_tm">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
        <parameter name="tm" transfer-ownership="none">
          <type name="any" c:type="any*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_valid" c:identifier="g_date_valid">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="date" transfer-ownership="none">
          <type name="Date" c:type="GDate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_valid_day" c:identifier="g_date_valid_day">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="day" transfer-ownership="none">
          <type name="DateDay" c:type="GDateDay"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_valid_dmy" c:identifier="g_date_valid_dmy">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="day" transfer-ownership="none">
          <type name="DateDay" c:type="GDateDay"/>
        </parameter>
        <parameter name="month" transfer-ownership="none">
          <type name="DateMonth" c:type="GDateMonth"/>
        </parameter>
        <parameter name="year" transfer-ownership="none">
          <type name="DateYear" c:type="GDateYear"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_valid_julian" c:identifier="g_date_valid_julian">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="julian_date" transfer-ownership="none">
          <type name="uint32" c:type="guint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_valid_month" c:identifier="g_date_valid_month">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="month" transfer-ownership="none">
          <type name="DateMonth" c:type="GDateMonth"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_valid_weekday" c:identifier="g_date_valid_weekday">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="weekday" transfer-ownership="none">
          <type name="DateWeekday" c:type="GDateWeekday"/>
        </parameter>
      </parameters>
    </function>
    <function name="date_valid_year" c:identifier="g_date_valid_year">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="year" transfer-ownership="none">
          <type name="DateYear" c:type="GDateYear"/>
        </parameter>
      </parameters>
    </function>
    <function name="dgettext" c:identifier="g_dgettext">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="msgid" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="dir_close" c:identifier="g_dir_close">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dir" transfer-ownership="none">
          <type name="Dir" c:type="GDir*"/>
        </parameter>
      </parameters>
    </function>
    <function name="dir_open" c:identifier="g_dir_open" throws="1">
      <return-value transfer-ownership="full">
        <type name="Dir" c:type="GDir*"/>
      </return-value>
      <parameters>
        <parameter name="path" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="dir_read_name" c:identifier="g_dir_read_name">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="dir" transfer-ownership="none">
          <type name="Dir" c:type="GDir*"/>
        </parameter>
      </parameters>
    </function>
    <function name="dir_rewind" c:identifier="g_dir_rewind">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dir" transfer-ownership="none">
          <type name="Dir" c:type="GDir*"/>
        </parameter>
      </parameters>
    </function>
    <function name="direct_equal" c:identifier="g_direct_equal">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="v1" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="v2" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="direct_hash" c:identifier="g_direct_hash">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="v" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="dngettext" c:identifier="g_dngettext">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="msgid" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="msgid_plural" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="ulong" c:type="gulong"/>
        </parameter>
      </parameters>
    </function>
    <function name="double_equal" c:identifier="g_double_equal">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="v1" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="v2" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="double_hash" c:identifier="g_double_hash">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="v" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="dpgettext" c:identifier="g_dpgettext">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="msgctxtid" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="msgidoffset" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="dpgettext2" c:identifier="g_dpgettext2">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="context" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="msgid" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="dummy_decl" c:identifier="glib_dummy_decl">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="error_copy" c:identifier="g_error_copy" throws="1">
      <return-value transfer-ownership="full">
        <type name="Error" c:type="GError*"/>
      </return-value>
    </function>
    <function name="error_free" c:identifier="g_error_free" throws="1">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="error_matches" c:identifier="g_error_matches">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="error" transfer-ownership="none">
          <type name="Error" c:type="GError*"/>
        </parameter>
        <parameter name="domain" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
        <parameter name="code" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="error_new" c:identifier="g_error_new">
      <return-value transfer-ownership="full">
        <type name="Error" c:type="GError*"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
        <parameter name="code" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="error_new_literal" c:identifier="g_error_new_literal">
      <return-value transfer-ownership="full">
        <type name="Error" c:type="GError*"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
        <parameter name="code" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="message" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_error_from_errno"
              c:identifier="g_file_error_from_errno">
      <return-value transfer-ownership="full">
        <type name="FileError" c:type="GFileError"/>
      </return-value>
      <parameters>
        <parameter name="err_no" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_error_quark" c:identifier="g_file_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="file_get_contents"
              c:identifier="g_file_get_contents"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="contents" direction="out" transfer-ownership="full">
          <type name="utf8" c:type="gchar**"/>
        </parameter>
        <parameter name="length"
                   direction="out"
                   transfer-ownership="full"
                   allow-none="1">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_open_tmp" c:identifier="g_file_open_tmp" throws="1">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="tmpl" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="name_used" direction="out" transfer-ownership="full">
          <type name="utf8" c:type="gchar**"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_read_link" c:identifier="g_file_read_link" throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_set_contents"
              c:identifier="g_file_set_contents"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="contents" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_test" c:identifier="g_file_test">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="test" transfer-ownership="none">
          <type name="FileTest" c:type="GFileTest"/>
        </parameter>
      </parameters>
    </function>
    <function name="filename_display_basename"
              c:identifier="g_filename_display_basename">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="filename_display_name"
              c:identifier="g_filename_display_name">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="filename_from_uri"
              c:identifier="g_filename_from_uri"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="hostname" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="filename_from_utf8"
              c:identifier="g_filename_from_utf8"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="utf8string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="bytes_read" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="bytes_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="filename_to_uri"
              c:identifier="g_filename_to_uri"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="hostname" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="filename_to_utf8"
              c:identifier="g_filename_to_utf8"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="opsysstring" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="bytes_read" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="bytes_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="find_program_in_path"
              c:identifier="g_find_program_in_path">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="program" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="format_size_for_display"
              c:identifier="g_format_size_for_display">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="char*"/>
      </return-value>
      <parameters>
        <parameter name="size" transfer-ownership="none">
          <type name="offset" c:type="goffset"/>
        </parameter>
      </parameters>
    </function>
    <function name="free" c:identifier="g_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mem" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_application_name"
              c:identifier="g_get_application_name">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_charset" c:identifier="g_get_charset">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="charset" transfer-ownership="none">
          <array c:type="char**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="get_current_dir" c:identifier="g_get_current_dir">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_current_time" c:identifier="g_get_current_time">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="result" transfer-ownership="none">
          <type name="TimeVal" c:type="GTimeVal*"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_filename_charsets"
              c:identifier="g_get_filename_charsets">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="charsets" transfer-ownership="none">
          <type name="utf8" c:type="gchar***"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_home_dir" c:identifier="g_get_home_dir">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_host_name" c:identifier="g_get_host_name">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_language_names" c:identifier="g_get_language_names">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
    </function>
    <function name="get_prgname" c:identifier="g_get_prgname">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_real_name" c:identifier="g_get_real_name">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_system_config_dirs"
              c:identifier="g_get_system_config_dirs">
      <return-value transfer-ownership="none">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
    </function>
    <function name="get_system_data_dirs"
              c:identifier="g_get_system_data_dirs">
      <return-value transfer-ownership="none">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
    </function>
    <function name="get_tmp_dir" c:identifier="g_get_tmp_dir">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_user_cache_dir" c:identifier="g_get_user_cache_dir">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_user_config_dir" c:identifier="g_get_user_config_dir">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_user_data_dir" c:identifier="g_get_user_data_dir">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_user_name" c:identifier="g_get_user_name">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_user_special_dir"
              c:identifier="g_get_user_special_dir">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="directory" transfer-ownership="none">
          <type name="UserDirectory" c:type="GUserDirectory"/>
        </parameter>
      </parameters>
    </function>
    <function name="getenv" c:identifier="g_getenv">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="variable" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_destroy" c:identifier="g_hash_table_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_find" c:identifier="g_hash_table_find">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="predicate" transfer-ownership="none" closure="2">
          <type name="HRFunc" c:type="GHRFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_foreach" c:identifier="g_hash_table_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="HFunc" c:type="GHFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_foreach_remove"
              c:identifier="g_hash_table_foreach_remove">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="HRFunc" c:type="GHRFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_foreach_steal"
              c:identifier="g_hash_table_foreach_steal">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="HRFunc" c:type="GHRFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_get_keys" c:identifier="g_hash_table_get_keys">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_get_values"
              c:identifier="g_hash_table_get_values">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_insert" c:identifier="g_hash_table_insert">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_iter_get_hash_table"
              c:identifier="g_hash_table_iter_get_hash_table">
      <return-value transfer-ownership="full">
        <type name="HashTable" c:type="GHashTable*"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="HashTableIter" c:type="GHashTableIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_iter_init"
              c:identifier="g_hash_table_iter_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="HashTableIter" c:type="GHashTableIter*"/>
        </parameter>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_iter_next"
              c:identifier="g_hash_table_iter_next">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="HashTableIter" c:type="GHashTableIter*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_iter_remove"
              c:identifier="g_hash_table_iter_remove">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="HashTableIter" c:type="GHashTableIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_iter_steal"
              c:identifier="g_hash_table_iter_steal">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="HashTableIter" c:type="GHashTableIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_lookup" c:identifier="g_hash_table_lookup">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_lookup_extended"
              c:identifier="g_hash_table_lookup_extended">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="lookup_key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="orig_key" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_new" c:identifier="g_hash_table_new">
      <return-value transfer-ownership="full">
        <type name="HashTable" c:type="GHashTable*"/>
      </return-value>
      <parameters>
        <parameter name="hash_func" transfer-ownership="none">
          <type name="HashFunc" c:type="GHashFunc"/>
        </parameter>
        <parameter name="key_equal_func" transfer-ownership="none">
          <type name="EqualFunc" c:type="GEqualFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_new_full" c:identifier="g_hash_table_new_full">
      <return-value transfer-ownership="full">
        <type name="HashTable" c:type="GHashTable*"/>
      </return-value>
      <parameters>
        <parameter name="hash_func" transfer-ownership="none">
          <type name="HashFunc" c:type="GHashFunc"/>
        </parameter>
        <parameter name="key_equal_func" transfer-ownership="none" destroy="2">
          <type name="EqualFunc" c:type="GEqualFunc"/>
        </parameter>
        <parameter name="key_destroy_func"
                   transfer-ownership="none"
                   destroy="3">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
        <parameter name="value_destroy_func" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_ref" c:identifier="g_hash_table_ref">
      <return-value transfer-ownership="full">
        <type name="HashTable" c:type="GHashTable*"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_remove" c:identifier="g_hash_table_remove">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_remove_all"
              c:identifier="g_hash_table_remove_all">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_replace" c:identifier="g_hash_table_replace">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_size" c:identifier="g_hash_table_size">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_steal" c:identifier="g_hash_table_steal">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_steal_all"
              c:identifier="g_hash_table_steal_all">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hash_table_unref" c:identifier="g_hash_table_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hash_table" transfer-ownership="none">
          <type name="HashTable" c:type="GHashTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_alloc" c:identifier="g_hook_alloc">
      <return-value transfer-ownership="full">
        <type name="Hook" c:type="GHook*"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_compare_ids" c:identifier="g_hook_compare_ids">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="new_hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
        <parameter name="sibling" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_destroy" c:identifier="g_hook_destroy">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook_id" transfer-ownership="none">
          <type name="ulong" c:type="gulong"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_destroy_link" c:identifier="g_hook_destroy_link">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_find" c:identifier="g_hook_find">
      <return-value transfer-ownership="full">
        <type name="Hook" c:type="GHook*"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="need_valids" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="3">
          <type name="HookFindFunc" c:type="GHookFindFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_find_data" c:identifier="g_hook_find_data">
      <return-value transfer-ownership="full">
        <type name="Hook" c:type="GHook*"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="need_valids" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_find_func" c:identifier="g_hook_find_func">
      <return-value transfer-ownership="full">
        <type name="Hook" c:type="GHook*"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="need_valids" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_find_func_data" c:identifier="g_hook_find_func_data">
      <return-value transfer-ownership="full">
        <type name="Hook" c:type="GHook*"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="need_valids" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_first_valid" c:identifier="g_hook_first_valid">
      <return-value transfer-ownership="full">
        <type name="Hook" c:type="GHook*"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="may_be_in_call" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_free" c:identifier="g_hook_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_get" c:identifier="g_hook_get">
      <return-value transfer-ownership="full">
        <type name="Hook" c:type="GHook*"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook_id" transfer-ownership="none">
          <type name="ulong" c:type="gulong"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_insert_before" c:identifier="g_hook_insert_before">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="sibling" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_insert_sorted" c:identifier="g_hook_insert_sorted">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="HookCompareFunc" c:type="GHookCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_list_clear" c:identifier="g_hook_list_clear">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_list_init" c:identifier="g_hook_list_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook_size" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_list_invoke" c:identifier="g_hook_list_invoke">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="may_recurse" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_list_invoke_check"
              c:identifier="g_hook_list_invoke_check">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="may_recurse" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_list_marshal" c:identifier="g_hook_list_marshal">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="may_recurse" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="marshaller" transfer-ownership="none" closure="3">
          <type name="HookMarshaller" c:type="GHookMarshaller"/>
        </parameter>
        <parameter name="marshal_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_list_marshal_check"
              c:identifier="g_hook_list_marshal_check">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="may_recurse" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="marshaller" transfer-ownership="none" closure="3">
          <type name="HookCheckMarshaller" c:type="GHookCheckMarshaller"/>
        </parameter>
        <parameter name="marshal_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_next_valid" c:identifier="g_hook_next_valid">
      <return-value transfer-ownership="full">
        <type name="Hook" c:type="GHook*"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
        <parameter name="may_be_in_call" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_prepend" c:identifier="g_hook_prepend">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_ref" c:identifier="g_hook_ref">
      <return-value transfer-ownership="full">
        <type name="Hook" c:type="GHook*"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hook_unref" c:identifier="g_hook_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="hook_list" transfer-ownership="none">
          <type name="HookList" c:type="GHookList*"/>
        </parameter>
        <parameter name="hook" transfer-ownership="none">
          <type name="Hook" c:type="GHook*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hostname_is_ascii_encoded"
              c:identifier="g_hostname_is_ascii_encoded">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="hostname" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hostname_is_ip_address"
              c:identifier="g_hostname_is_ip_address">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="hostname" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hostname_is_non_ascii"
              c:identifier="g_hostname_is_non_ascii">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="hostname" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hostname_to_ascii" c:identifier="g_hostname_to_ascii">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="hostname" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="hostname_to_unicode" c:identifier="g_hostname_to_unicode">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="hostname" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="iconv" c:identifier="g_iconv">
      <return-value transfer-ownership="none">
        <type name="size_t" c:type="gsize"/>
      </return-value>
      <parameters>
        <parameter name="converter" transfer-ownership="none">
          <type name="IConv" c:type="GIConv"/>
        </parameter>
        <parameter name="inbuf" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="inbytes_left"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="outbuf" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="outbytes_left"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="iconv_close" c:identifier="g_iconv_close">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="converter" transfer-ownership="none">
          <type name="IConv" c:type="GIConv"/>
        </parameter>
      </parameters>
    </function>
    <function name="iconv_open" c:identifier="g_iconv_open">
      <return-value transfer-ownership="full">
        <type name="IConv" c:type="GIConv"/>
      </return-value>
      <parameters>
        <parameter name="to_codeset" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="from_codeset" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="idle_add" c:identifier="g_idle_add_full">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="priority" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="function"
                   transfer-ownership="none"
                   scope="notified"
                   closure="2"
                   destroy="3">
          <type name="SourceFunc" c:type="GSourceFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="notify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="idle_remove_by_data" c:identifier="g_idle_remove_by_data">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="idle_source_new" c:identifier="g_idle_source_new">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
    </function>
    <function name="int64_equal" c:identifier="g_int64_equal">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="v1" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="v2" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="int64_hash" c:identifier="g_int64_hash">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="v" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="int_equal" c:identifier="g_int_equal">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="v1" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="v2" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="int_hash" c:identifier="g_int_hash">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="v" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="intern_static_string"
              c:identifier="g_intern_static_string">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="intern_string" c:identifier="g_intern_string">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_add_watch" c:identifier="g_io_add_watch_full">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="priority" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="condition" transfer-ownership="none">
          <type name="IOCondition" c:type="GIOCondition"/>
        </parameter>
        <parameter name="func"
                   transfer-ownership="none"
                   closure="4"
                   destroy="5">
          <type name="IOFunc" c:type="GIOFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="notify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_close" c:identifier="g_io_channel_close">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_error_from_errno"
              c:identifier="g_io_channel_error_from_errno">
      <return-value transfer-ownership="full">
        <type name="IOChannelError" c:type="GIOChannelError"/>
      </return-value>
      <parameters>
        <parameter name="en" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_error_quark"
              c:identifier="g_io_channel_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="io_channel_flush"
              c:identifier="g_io_channel_flush"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_get_buffer_condition"
              c:identifier="g_io_channel_get_buffer_condition">
      <return-value transfer-ownership="full">
        <type name="IOCondition" c:type="GIOCondition"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_get_buffer_size"
              c:identifier="g_io_channel_get_buffer_size">
      <return-value transfer-ownership="none">
        <type name="size_t" c:type="gsize"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_get_buffered"
              c:identifier="g_io_channel_get_buffered">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_get_close_on_unref"
              c:identifier="g_io_channel_get_close_on_unref">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_get_encoding"
              c:identifier="g_io_channel_get_encoding">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_get_flags"
              c:identifier="g_io_channel_get_flags">
      <return-value transfer-ownership="full">
        <type name="IOFlags" c:type="GIOFlags"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_get_line_term"
              c:identifier="g_io_channel_get_line_term">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_init" c:identifier="g_io_channel_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_new_file"
              c:identifier="g_io_channel_new_file"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOChannel" c:type="GIOChannel*"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="mode" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_read" c:identifier="g_io_channel_read">
      <return-value transfer-ownership="full">
        <type name="IOError" c:type="GIOError"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="buf" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="count" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="bytes_read" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_read_chars"
              c:identifier="g_io_channel_read_chars"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="buf" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="count" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="bytes_read" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_read_line"
              c:identifier="g_io_channel_read_line"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="str_return" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="terminator_pos"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_read_line_string"
              c:identifier="g_io_channel_read_line_string"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="buffer" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="terminator_pos"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_read_to_end"
              c:identifier="g_io_channel_read_to_end"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="str_return" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_read_unichar"
              c:identifier="g_io_channel_read_unichar"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="thechar" transfer-ownership="none">
          <type name="unichar" c:type="gunichar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_ref" c:identifier="g_io_channel_ref">
      <return-value transfer-ownership="full">
        <type name="IOChannel" c:type="GIOChannel*"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_seek" c:identifier="g_io_channel_seek">
      <return-value transfer-ownership="full">
        <type name="IOError" c:type="GIOError"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="offset" transfer-ownership="none">
          <type name="int64" c:type="gint64"/>
        </parameter>
        <parameter name="type" transfer-ownership="none">
          <type name="SeekType" c:type="GSeekType"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_seek_position"
              c:identifier="g_io_channel_seek_position"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="offset" transfer-ownership="none">
          <type name="int64" c:type="gint64"/>
        </parameter>
        <parameter name="type" transfer-ownership="none">
          <type name="SeekType" c:type="GSeekType"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_set_buffer_size"
              c:identifier="g_io_channel_set_buffer_size">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_set_buffered"
              c:identifier="g_io_channel_set_buffered">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="buffered" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_set_close_on_unref"
              c:identifier="g_io_channel_set_close_on_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="do_close" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_set_encoding"
              c:identifier="g_io_channel_set_encoding"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="encoding" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_set_flags"
              c:identifier="g_io_channel_set_flags"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="IOFlags" c:type="GIOFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_set_line_term"
              c:identifier="g_io_channel_set_line_term">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="line_term" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_shutdown"
              c:identifier="g_io_channel_shutdown"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="flush" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_unix_get_fd"
              c:identifier="g_io_channel_unix_get_fd">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_unix_new" c:identifier="g_io_channel_unix_new">
      <return-value transfer-ownership="full">
        <type name="IOChannel" c:type="GIOChannel*"/>
      </return-value>
      <parameters>
        <parameter name="fd" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_unref" c:identifier="g_io_channel_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_write" c:identifier="g_io_channel_write">
      <return-value transfer-ownership="full">
        <type name="IOError" c:type="GIOError"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="buf" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="count" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="bytes_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_write_chars"
              c:identifier="g_io_channel_write_chars"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="buf" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="count" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="bytes_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_channel_write_unichar"
              c:identifier="g_io_channel_write_unichar"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="IOStatus" c:type="GIOStatus"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="thechar" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="io_create_watch" c:identifier="g_io_create_watch">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
      <parameters>
        <parameter name="channel" transfer-ownership="none">
          <type name="IOChannel" c:type="GIOChannel*"/>
        </parameter>
        <parameter name="condition" transfer-ownership="none">
          <type name="IOCondition" c:type="GIOCondition"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_error_quark"
              c:identifier="g_key_file_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="key_file_free" c:identifier="g_key_file_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_boolean"
              c:identifier="g_key_file_get_boolean"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_boolean_list"
              c:identifier="g_key_file_get_boolean_list"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="boolean" c:type="gboolean*"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_comment"
              c:identifier="g_key_file_get_comment"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_double"
              c:identifier="g_key_file_get_double"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="double" c:type="gdouble"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_double_list"
              c:identifier="g_key_file_get_double_list"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="double" c:type="gdouble*"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_groups" c:identifier="g_key_file_get_groups">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_integer"
              c:identifier="g_key_file_get_integer"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_integer_list"
              c:identifier="g_key_file_get_integer_list"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="int" c:type="gint*"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_keys"
              c:identifier="g_key_file_get_keys"
              throws="1">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_locale_string"
              c:identifier="g_key_file_get_locale_string"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="locale" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_locale_string_list"
              c:identifier="g_key_file_get_locale_string_list"
              throws="1">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="locale" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_start_group"
              c:identifier="g_key_file_get_start_group">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_string"
              c:identifier="g_key_file_get_string"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_string_list"
              c:identifier="g_key_file_get_string_list"
              throws="1">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_get_value"
              c:identifier="g_key_file_get_value"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_has_group" c:identifier="g_key_file_has_group">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_has_key"
              c:identifier="g_key_file_has_key"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_load_from_data"
              c:identifier="g_key_file_load_from_data"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="KeyFileFlags" c:type="GKeyFileFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_load_from_data_dirs"
              c:identifier="g_key_file_load_from_data_dirs"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="full_path" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="KeyFileFlags" c:type="GKeyFileFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_load_from_dirs"
              c:identifier="g_key_file_load_from_dirs"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="search_dirs" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="full_path" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="KeyFileFlags" c:type="GKeyFileFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_load_from_file"
              c:identifier="g_key_file_load_from_file"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="KeyFileFlags" c:type="GKeyFileFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_new" c:identifier="g_key_file_new">
      <return-value transfer-ownership="full">
        <type name="KeyFile" c:type="GKeyFile*"/>
      </return-value>
    </function>
    <function name="key_file_remove_comment"
              c:identifier="g_key_file_remove_comment"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_remove_group"
              c:identifier="g_key_file_remove_group"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_remove_key"
              c:identifier="g_key_file_remove_key"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_boolean"
              c:identifier="g_key_file_set_boolean">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_boolean_list"
              c:identifier="g_key_file_set_boolean_list">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="list" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_comment"
              c:identifier="g_key_file_set_comment"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="comment" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_double" c:identifier="g_key_file_set_double">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="double" c:type="gdouble"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_double_list"
              c:identifier="g_key_file_set_double_list">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="list" transfer-ownership="none">
          <type name="double" c:type="gdouble"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_integer"
              c:identifier="g_key_file_set_integer">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_integer_list"
              c:identifier="g_key_file_set_integer_list">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="list" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_list_separator"
              c:identifier="g_key_file_set_list_separator">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="separator" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_locale_string"
              c:identifier="g_key_file_set_locale_string">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="locale" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_locale_string_list"
              c:identifier="g_key_file_set_locale_string_list">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="locale" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="list" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_string" c:identifier="g_key_file_set_string">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_string_list"
              c:identifier="g_key_file_set_string_list">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="list" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_set_value" c:identifier="g_key_file_set_value">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="group_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="key_file_to_data"
              c:identifier="g_key_file_to_data"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="key_file" transfer-ownership="none">
          <type name="KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="length" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_alloc" c:identifier="g_list_alloc">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
    </function>
    <function name="list_append" c:identifier="g_list_append">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_concat" c:identifier="g_list_concat">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list1" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="list2" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_copy" c:identifier="g_list_copy">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_delete_link" c:identifier="g_list_delete_link">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="link_" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_find" c:identifier="g_list_find">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_find_custom" c:identifier="g_list_find_custom">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_first" c:identifier="g_list_first">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_foreach" c:identifier="g_list_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="Func" c:type="GFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_free" c:identifier="g_list_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_free_1" c:identifier="g_list_free_1">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_index" c:identifier="g_list_index">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_insert" c:identifier="g_list_insert">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="position" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_insert_before" c:identifier="g_list_insert_before">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="sibling" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_insert_sorted" c:identifier="g_list_insert_sorted">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_insert_sorted_with_data"
              c:identifier="g_list_insert_sorted_with_data">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="3">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_last" c:identifier="g_list_last">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_length" c:identifier="g_list_length">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_nth" c:identifier="g_list_nth">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_nth_data" c:identifier="g_list_nth_data">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_nth_prev" c:identifier="g_list_nth_prev">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_pop_allocator" c:identifier="g_list_pop_allocator">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="list_position" c:identifier="g_list_position">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="llink" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_prepend" c:identifier="g_list_prepend">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_push_allocator" c:identifier="g_list_push_allocator">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="allocator" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_remove" c:identifier="g_list_remove">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_remove_all" c:identifier="g_list_remove_all">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_remove_link" c:identifier="g_list_remove_link">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="llink" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_reverse" c:identifier="g_list_reverse">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_sort" c:identifier="g_list_sort">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_sort_with_data" c:identifier="g_list_sort_with_data">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="listenv" c:identifier="g_listenv">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
    </function>
    <function name="locale_from_utf8"
              c:identifier="g_locale_from_utf8"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="utf8string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="bytes_read" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="bytes_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="locale_to_utf8" c:identifier="g_locale_to_utf8" throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="opsysstring" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="bytes_read" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="bytes_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="log" c:identifier="g_log">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="log_domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="log_level" transfer-ownership="none">
          <type name="LogLevelFlags" c:type="GLogLevelFlags"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="log_default_handler" c:identifier="g_log_default_handler">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="log_domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="log_level" transfer-ownership="none">
          <type name="LogLevelFlags" c:type="GLogLevelFlags"/>
        </parameter>
        <parameter name="message" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="unused_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="log_remove_handler" c:identifier="g_log_remove_handler">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="log_domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="handler_id" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="log_set_always_fatal"
              c:identifier="g_log_set_always_fatal">
      <return-value transfer-ownership="full">
        <type name="LogLevelFlags" c:type="GLogLevelFlags"/>
      </return-value>
      <parameters>
        <parameter name="fatal_mask" transfer-ownership="none">
          <type name="LogLevelFlags" c:type="GLogLevelFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="log_set_default_handler"
              c:identifier="g_log_set_default_handler">
      <return-value transfer-ownership="full">
        <type name="LogFunc" c:type="GLogFunc"/>
      </return-value>
      <parameters>
        <parameter name="log_func" transfer-ownership="none" closure="1">
          <type name="LogFunc" c:type="GLogFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="log_set_fatal_mask" c:identifier="g_log_set_fatal_mask">
      <return-value transfer-ownership="full">
        <type name="LogLevelFlags" c:type="GLogLevelFlags"/>
      </return-value>
      <parameters>
        <parameter name="log_domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="fatal_mask" transfer-ownership="none">
          <type name="LogLevelFlags" c:type="GLogLevelFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="log_set_handler" c:identifier="g_log_set_handler">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="log_domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="log_levels" transfer-ownership="none">
          <type name="LogLevelFlags" c:type="GLogLevelFlags"/>
        </parameter>
        <parameter name="log_func" transfer-ownership="none" closure="3">
          <type name="LogFunc" c:type="GLogFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_acquire"
              c:identifier="g_main_context_acquire">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_add_poll"
              c:identifier="g_main_context_add_poll">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="fd" transfer-ownership="none">
          <type name="PollFD" c:type="GPollFD*"/>
        </parameter>
        <parameter name="priority" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_check" c:identifier="g_main_context_check">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="max_priority" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="fds" transfer-ownership="none">
          <type name="PollFD" c:type="GPollFD*"/>
        </parameter>
        <parameter name="n_fds" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_default"
              c:identifier="g_main_context_default">
      <return-value transfer-ownership="full">
        <type name="MainContext" c:type="GMainContext*"/>
      </return-value>
    </function>
    <function name="main_context_dispatch"
              c:identifier="g_main_context_dispatch">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_find_source_by_funcs_user_data"
              c:identifier="g_main_context_find_source_by_funcs_user_data">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="funcs" transfer-ownership="none">
          <type name="SourceFuncs" c:type="GSourceFuncs*"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_find_source_by_id"
              c:identifier="g_main_context_find_source_by_id">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="source_id" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_find_source_by_user_data"
              c:identifier="g_main_context_find_source_by_user_data">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_get_poll_func"
              c:identifier="g_main_context_get_poll_func">
      <return-value transfer-ownership="full">
        <type name="PollFunc" c:type="GPollFunc"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_get_thread_default"
              c:identifier="g_main_context_get_thread_default">
      <return-value transfer-ownership="full">
        <type name="MainContext" c:type="GMainContext*"/>
      </return-value>
    </function>
    <function name="main_context_is_owner"
              c:identifier="g_main_context_is_owner">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_iteration"
              c:identifier="g_main_context_iteration">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="may_block" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_new" c:identifier="g_main_context_new">
      <return-value transfer-ownership="full">
        <type name="MainContext" c:type="GMainContext*"/>
      </return-value>
    </function>
    <function name="main_context_pending"
              c:identifier="g_main_context_pending">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_pop_thread_default"
              c:identifier="g_main_context_pop_thread_default">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_prepare"
              c:identifier="g_main_context_prepare">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="priority" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_push_thread_default"
              c:identifier="g_main_context_push_thread_default">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_query" c:identifier="g_main_context_query">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="max_priority" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="timeout_" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="fds" transfer-ownership="none">
          <type name="PollFD" c:type="GPollFD*"/>
        </parameter>
        <parameter name="n_fds" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_ref" c:identifier="g_main_context_ref">
      <return-value transfer-ownership="full">
        <type name="MainContext" c:type="GMainContext*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_release"
              c:identifier="g_main_context_release">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_remove_poll"
              c:identifier="g_main_context_remove_poll">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="fd" transfer-ownership="none">
          <type name="PollFD" c:type="GPollFD*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_set_poll_func"
              c:identifier="g_main_context_set_poll_func">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="PollFunc" c:type="GPollFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_unref" c:identifier="g_main_context_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_wait" c:identifier="g_main_context_wait">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="cond" transfer-ownership="none">
          <type name="Cond" c:type="GCond*"/>
        </parameter>
        <parameter name="mutex" transfer-ownership="none">
          <type name="Mutex" c:type="GMutex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_context_wakeup" c:identifier="g_main_context_wakeup">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_current_source" c:identifier="g_main_current_source">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
    </function>
    <function name="main_depth" c:identifier="g_main_depth">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
    </function>
    <function name="main_loop_get_context"
              c:identifier="g_main_loop_get_context">
      <return-value transfer-ownership="full">
        <type name="MainContext" c:type="GMainContext*"/>
      </return-value>
      <parameters>
        <parameter name="loop" transfer-ownership="none">
          <type name="MainLoop" c:type="GMainLoop*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_loop_is_running"
              c:identifier="g_main_loop_is_running">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="loop" transfer-ownership="none">
          <type name="MainLoop" c:type="GMainLoop*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_loop_new" c:identifier="g_main_loop_new">
      <return-value transfer-ownership="full">
        <type name="MainLoop" c:type="GMainLoop*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none" allow-none="1">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
        <parameter name="is_running" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_loop_quit" c:identifier="g_main_loop_quit">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="loop" transfer-ownership="none">
          <type name="MainLoop" c:type="GMainLoop*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_loop_ref" c:identifier="g_main_loop_ref">
      <return-value transfer-ownership="full">
        <type name="MainLoop" c:type="GMainLoop*"/>
      </return-value>
      <parameters>
        <parameter name="loop" transfer-ownership="none">
          <type name="MainLoop" c:type="GMainLoop*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_loop_run" c:identifier="g_main_loop_run">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="loop" transfer-ownership="none">
          <type name="MainLoop" c:type="GMainLoop*"/>
        </parameter>
      </parameters>
    </function>
    <function name="main_loop_unref" c:identifier="g_main_loop_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="loop" transfer-ownership="none">
          <type name="MainLoop" c:type="GMainLoop*"/>
        </parameter>
      </parameters>
    </function>
    <function name="malloc" c:identifier="g_malloc">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="n_bytes" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="malloc0" c:identifier="g_malloc0">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="n_bytes" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="mapped_file_free" c:identifier="g_mapped_file_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="file" transfer-ownership="none">
          <type name="MappedFile" c:type="GMappedFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mapped_file_get_contents"
              c:identifier="g_mapped_file_get_contents">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="file" transfer-ownership="none">
          <type name="MappedFile" c:type="GMappedFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mapped_file_get_length"
              c:identifier="g_mapped_file_get_length">
      <return-value transfer-ownership="none">
        <type name="size_t" c:type="gsize"/>
      </return-value>
      <parameters>
        <parameter name="file" transfer-ownership="none">
          <type name="MappedFile" c:type="GMappedFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mapped_file_new"
              c:identifier="g_mapped_file_new"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="MappedFile" c:type="GMappedFile*"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="writable" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="mapped_file_ref" c:identifier="g_mapped_file_ref">
      <return-value transfer-ownership="full">
        <type name="MappedFile" c:type="GMappedFile*"/>
      </return-value>
      <parameters>
        <parameter name="file" transfer-ownership="none">
          <type name="MappedFile" c:type="GMappedFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mapped_file_unref" c:identifier="g_mapped_file_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="file" transfer-ownership="none">
          <type name="MappedFile" c:type="GMappedFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_collect_attributes"
              c:identifier="g_markup_collect_attributes">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="element_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="attribute_names" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="attribute_values" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="error" transfer-ownership="none">
          <type name="Error" c:type="GError**"/>
        </parameter>
        <parameter name="first_type" transfer-ownership="none">
          <type name="MarkupCollectType" c:type="GMarkupCollectType"/>
        </parameter>
        <parameter name="first_attr" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="markup_error_quark" c:identifier="g_markup_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="markup_escape_text" c:identifier="g_markup_escape_text">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="text" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_end_parse"
              c:identifier="g_markup_parse_context_end_parse"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_free"
              c:identifier="g_markup_parse_context_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_get_element"
              c:identifier="g_markup_parse_context_get_element">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_get_element_stack"
              c:identifier="g_markup_parse_context_get_element_stack">
      <return-value transfer-ownership="none">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_get_position"
              c:identifier="g_markup_parse_context_get_position">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
        </parameter>
        <parameter name="line_number"
                   direction="out"
                   transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="char_number"
                   direction="out"
                   transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_get_user_data"
              c:identifier="g_markup_parse_context_get_user_data">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_new"
              c:identifier="g_markup_parse_context_new">
      <return-value transfer-ownership="full">
        <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
      </return-value>
      <parameters>
        <parameter name="parser" transfer-ownership="none">
          <type name="MarkupParser" c:type="GMarkupParser*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="MarkupParseFlags" c:type="GMarkupParseFlags"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="user_data_dnotify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_parse"
              c:identifier="g_markup_parse_context_parse"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
        </parameter>
        <parameter name="text" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="text_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_pop"
              c:identifier="g_markup_parse_context_pop">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_parse_context_push"
              c:identifier="g_markup_parse_context_push">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="MarkupParseContext" c:type="GMarkupParseContext*"/>
        </parameter>
        <parameter name="parser" transfer-ownership="none">
          <type name="MarkupParser" c:type="GMarkupParser*"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_printf_escaped"
              c:identifier="g_markup_printf_escaped">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_expand_references"
              c:identifier="g_match_info_expand_references"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
        <parameter name="string_to_expand" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_fetch" c:identifier="g_match_info_fetch">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
        <parameter name="match_num" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_fetch_all"
              c:identifier="g_match_info_fetch_all">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_fetch_named"
              c:identifier="g_match_info_fetch_named">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_fetch_named_pos"
              c:identifier="g_match_info_fetch_named_pos">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="start_pos" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="end_pos" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_fetch_pos"
              c:identifier="g_match_info_fetch_pos">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
        <parameter name="match_num" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="start_pos" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="end_pos" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_free" c:identifier="g_match_info_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_get_match_count"
              c:identifier="g_match_info_get_match_count">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_get_regex"
              c:identifier="g_match_info_get_regex">
      <return-value transfer-ownership="full">
        <type name="Regex" c:type="GRegex*"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_get_string"
              c:identifier="g_match_info_get_string">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_is_partial_match"
              c:identifier="g_match_info_is_partial_match">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_matches" c:identifier="g_match_info_matches">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
      </parameters>
    </function>
    <function name="match_info_next"
              c:identifier="g_match_info_next"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mem_chunk_alloc" c:identifier="g_mem_chunk_alloc">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="mem_chunk" transfer-ownership="none">
          <type name="MemChunk" c:type="GMemChunk*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mem_chunk_alloc0" c:identifier="g_mem_chunk_alloc0">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="mem_chunk" transfer-ownership="none">
          <type name="MemChunk" c:type="GMemChunk*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mem_chunk_clean" c:identifier="g_mem_chunk_clean">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mem_chunk" transfer-ownership="none">
          <type name="MemChunk" c:type="GMemChunk*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mem_chunk_destroy" c:identifier="g_mem_chunk_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mem_chunk" transfer-ownership="none">
          <type name="MemChunk" c:type="GMemChunk*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mem_chunk_free" c:identifier="g_mem_chunk_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mem_chunk" transfer-ownership="none">
          <type name="MemChunk" c:type="GMemChunk*"/>
        </parameter>
        <parameter name="mem" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="mem_chunk_info" c:identifier="g_mem_chunk_info">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="mem_chunk_new" c:identifier="g_mem_chunk_new">
      <return-value transfer-ownership="full">
        <type name="MemChunk" c:type="GMemChunk*"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="atom_size" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="area_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="type" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="mem_chunk_print" c:identifier="g_mem_chunk_print">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mem_chunk" transfer-ownership="none">
          <type name="MemChunk" c:type="GMemChunk*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mem_chunk_reset" c:identifier="g_mem_chunk_reset">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mem_chunk" transfer-ownership="none">
          <type name="MemChunk" c:type="GMemChunk*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mem_is_system_malloc"
              c:identifier="g_mem_is_system_malloc">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="mem_profile" c:identifier="g_mem_profile">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="mem_set_vtable" c:identifier="g_mem_set_vtable">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="vtable" transfer-ownership="none">
          <type name="MemVTable" c:type="GMemVTable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="memdup" c:identifier="g_memdup">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="mem" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="byte_size" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="mkdir_with_parents" c:identifier="g_mkdir_with_parents">
      <return-value transfer-ownership="none">
        <type name="int" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="pathname" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="mode" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="mkstemp" c:identifier="g_mkstemp">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="tmpl" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_child_index" c:identifier="g_node_child_index">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_child_position" c:identifier="g_node_child_position">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="child" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_children_foreach"
              c:identifier="g_node_children_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="TraverseFlags" c:type="GTraverseFlags"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="3">
          <type name="NodeForeachFunc" c:type="GNodeForeachFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_copy" c:identifier="g_node_copy">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_copy_deep" c:identifier="g_node_copy_deep">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="copy_func" transfer-ownership="none" closure="2">
          <type name="CopyFunc" c:type="GCopyFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_depth" c:identifier="g_node_depth">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_destroy" c:identifier="g_node_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="root" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_find" c:identifier="g_node_find">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="root" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="order" transfer-ownership="none">
          <type name="TraverseType" c:type="GTraverseType"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="TraverseFlags" c:type="GTraverseFlags"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_find_child" c:identifier="g_node_find_child">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="TraverseFlags" c:type="GTraverseFlags"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_first_sibling" c:identifier="g_node_first_sibling">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_root" c:identifier="g_node_get_root">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_insert" c:identifier="g_node_insert">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="position" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_insert_after" c:identifier="g_node_insert_after">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="sibling" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_insert_before" c:identifier="g_node_insert_before">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="sibling" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_is_ancestor" c:identifier="g_node_is_ancestor">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="descendant" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_last_child" c:identifier="g_node_last_child">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_last_sibling" c:identifier="g_node_last_sibling">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_max_height" c:identifier="g_node_max_height">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="root" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_n_children" c:identifier="g_node_n_children">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_n_nodes" c:identifier="g_node_n_nodes">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="root" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="TraverseFlags" c:type="GTraverseFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_new" c:identifier="g_node_new">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_nth_child" c:identifier="g_node_nth_child">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_pop_allocator" c:identifier="g_node_pop_allocator">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="node_prepend" c:identifier="g_node_prepend">
      <return-value transfer-ownership="full">
        <type name="Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_push_allocator" c:identifier="g_node_push_allocator">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dummy" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_reverse_children"
              c:identifier="g_node_reverse_children">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_traverse" c:identifier="g_node_traverse">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="root" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
        <parameter name="order" transfer-ownership="none">
          <type name="TraverseType" c:type="GTraverseType"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="TraverseFlags" c:type="GTraverseFlags"/>
        </parameter>
        <parameter name="max_depth" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="5">
          <type name="NodeTraverseFunc" c:type="GNodeTraverseFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_unlink" c:identifier="g_node_unlink">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <type name="Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="nullify_pointer" c:identifier="g_nullify_pointer">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="nullify_location" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="on_error_query" c:identifier="g_on_error_query">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="prg_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="on_error_stack_trace"
              c:identifier="g_on_error_stack_trace">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="prg_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="once_impl" c:identifier="g_once_impl">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="once" transfer-ownership="none">
          <type name="Once" c:type="GOnce*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="ThreadFunc" c:type="GThreadFunc"/>
        </parameter>
        <parameter name="arg" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="once_init_enter" c:identifier="g_once_init_enter">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="value_location"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="once_init_enter_impl"
              c:identifier="g_once_init_enter_impl">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="value_location"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="once_init_leave" c:identifier="g_once_init_leave">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="value_location"
                   direction="out"
                   transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
        <parameter name="initialization_value" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_add_group"
              c:identifier="g_option_context_add_group">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_add_main_entries"
              c:identifier="g_option_context_add_main_entries">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="entries" transfer-ownership="none">
          <type name="OptionEntry" c:type="GOptionEntry*"/>
        </parameter>
        <parameter name="translation_domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_free" c:identifier="g_option_context_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_get_description"
              c:identifier="g_option_context_get_description">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_get_help"
              c:identifier="g_option_context_get_help">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="main_help" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_get_help_enabled"
              c:identifier="g_option_context_get_help_enabled">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_get_ignore_unknown_options"
              c:identifier="g_option_context_get_ignore_unknown_options">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_get_main_group"
              c:identifier="g_option_context_get_main_group">
      <return-value transfer-ownership="full">
        <type name="OptionGroup" c:type="GOptionGroup*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_get_summary"
              c:identifier="g_option_context_get_summary">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_new" c:identifier="g_option_context_new">
      <return-value transfer-ownership="full">
        <type name="OptionContext" c:type="GOptionContext*"/>
      </return-value>
      <parameters>
        <parameter name="parameter_string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_parse"
              c:identifier="g_option_context_parse"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="argc" direction="inout" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="argv"
                   direction="inout"
                   transfer-ownership="full"
                   allow-none="1">
          <array length="1" c:type="gchar***">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_set_description"
              c:identifier="g_option_context_set_description">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="description" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_set_help_enabled"
              c:identifier="g_option_context_set_help_enabled">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="help_enabled" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_set_ignore_unknown_options"
              c:identifier="g_option_context_set_ignore_unknown_options">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="ignore_unknown" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_set_main_group"
              c:identifier="g_option_context_set_main_group">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_set_summary"
              c:identifier="g_option_context_set_summary">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="summary" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_set_translate_func"
              c:identifier="g_option_context_set_translate_func">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="func"
                   transfer-ownership="none"
                   closure="2"
                   destroy="3">
          <type name="TranslateFunc" c:type="GTranslateFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="destroy_notify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_context_set_translation_domain"
              c:identifier="g_option_context_set_translation_domain">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="OptionContext" c:type="GOptionContext*"/>
        </parameter>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_error_quark" c:identifier="g_option_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="option_group_add_entries"
              c:identifier="g_option_group_add_entries">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
        <parameter name="entries" transfer-ownership="none">
          <type name="OptionEntry" c:type="GOptionEntry*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_group_free" c:identifier="g_option_group_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_group_new" c:identifier="g_option_group_new">
      <return-value transfer-ownership="full">
        <type name="OptionGroup" c:type="GOptionGroup*"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="description" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="help_description" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="destroy" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_group_set_error_hook"
              c:identifier="g_option_group_set_error_hook">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
        <parameter name="error_func" transfer-ownership="none">
          <type name="OptionErrorFunc" c:type="GOptionErrorFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_group_set_parse_hooks"
              c:identifier="g_option_group_set_parse_hooks">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
        <parameter name="pre_parse_func" transfer-ownership="none">
          <type name="OptionParseFunc" c:type="GOptionParseFunc"/>
        </parameter>
        <parameter name="post_parse_func" transfer-ownership="none">
          <type name="OptionParseFunc" c:type="GOptionParseFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_group_set_translate_func"
              c:identifier="g_option_group_set_translate_func">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
        <parameter name="func"
                   transfer-ownership="none"
                   closure="2"
                   destroy="3">
          <type name="TranslateFunc" c:type="GTranslateFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="destroy_notify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="option_group_set_translation_domain"
              c:identifier="g_option_group_set_translation_domain">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="group" transfer-ownership="none">
          <type name="OptionGroup" c:type="GOptionGroup*"/>
        </parameter>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="parse_debug_string" c:identifier="g_parse_debug_string">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="keys" transfer-ownership="none">
          <type name="DebugKey" c:type="GDebugKey*"/>
        </parameter>
        <parameter name="nkeys" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="path_get_basename" c:identifier="g_path_get_basename">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="file_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="path_get_dirname" c:identifier="g_path_get_dirname">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="file_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="path_is_absolute" c:identifier="g_path_is_absolute">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="file_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="path_skip_root" c:identifier="g_path_skip_root">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="file_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="pattern_match" c:identifier="g_pattern_match">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="pspec" transfer-ownership="none">
          <type name="PatternSpec" c:type="GPatternSpec*"/>
        </parameter>
        <parameter name="string_length" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string_reversed" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="pattern_match_simple"
              c:identifier="g_pattern_match_simple">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="pattern" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="pattern_match_string"
              c:identifier="g_pattern_match_string">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="pspec" transfer-ownership="none">
          <type name="PatternSpec" c:type="GPatternSpec*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="pattern_spec_equal" c:identifier="g_pattern_spec_equal">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="pspec1" transfer-ownership="none">
          <type name="PatternSpec" c:type="GPatternSpec*"/>
        </parameter>
        <parameter name="pspec2" transfer-ownership="none">
          <type name="PatternSpec" c:type="GPatternSpec*"/>
        </parameter>
      </parameters>
    </function>
    <function name="pattern_spec_free" c:identifier="g_pattern_spec_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pspec" transfer-ownership="none">
          <type name="PatternSpec" c:type="GPatternSpec*"/>
        </parameter>
      </parameters>
    </function>
    <function name="pattern_spec_new" c:identifier="g_pattern_spec_new">
      <return-value transfer-ownership="full">
        <type name="PatternSpec" c:type="GPatternSpec*"/>
      </return-value>
      <parameters>
        <parameter name="pattern" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="poll" c:identifier="g_poll">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="fds" transfer-ownership="none">
          <type name="PollFD" c:type="GPollFD*"/>
        </parameter>
        <parameter name="nfds" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="timeout" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="prefix_error" c:identifier="g_prefix_error">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="err" transfer-ownership="none">
          <type name="Error" c:type="GError**"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="print" c:identifier="g_print">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="printerr" c:identifier="g_printerr">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="printf" c:identifier="g_printf">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="format" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="propagate_error"
              c:identifier="g_propagate_error"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dest" transfer-ownership="none">
          <type name="Error" c:type="GError**"/>
        </parameter>
      </parameters>
    </function>
    <function name="propagate_prefixed_error"
              c:identifier="g_propagate_prefixed_error">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dest" transfer-ownership="none">
          <type name="Error" c:type="GError**"/>
        </parameter>
        <parameter name="src" transfer-ownership="none">
          <type name="Error" c:type="GError*"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_add" c:identifier="g_ptr_array_add">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_foreach" c:identifier="g_ptr_array_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="Func" c:type="GFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_free" c:identifier="g_ptr_array_free">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="free_seg" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_new" c:identifier="g_ptr_array_new">
      <return-value transfer-ownership="full">
        <type name="PtrArray" c:type="GPtrArray*"/>
      </return-value>
    </function>
    <function name="ptr_array_new_with_free_func"
              c:identifier="g_ptr_array_new_with_free_func">
      <return-value transfer-ownership="full">
        <type name="PtrArray" c:type="GPtrArray*"/>
      </return-value>
      <parameters>
        <parameter name="element_free_func" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_ref" c:identifier="g_ptr_array_ref">
      <return-value transfer-ownership="full">
        <type name="PtrArray" c:type="GPtrArray*"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_remove" c:identifier="g_ptr_array_remove">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_remove_fast"
              c:identifier="g_ptr_array_remove_fast">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_remove_index"
              c:identifier="g_ptr_array_remove_index">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_remove_index_fast"
              c:identifier="g_ptr_array_remove_index_fast">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_remove_range"
              c:identifier="g_ptr_array_remove_range">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_set_free_func"
              c:identifier="g_ptr_array_set_free_func">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="element_free_func" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_set_size" c:identifier="g_ptr_array_set_size">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_sized_new" c:identifier="g_ptr_array_sized_new">
      <return-value transfer-ownership="full">
        <type name="PtrArray" c:type="GPtrArray*"/>
      </return-value>
      <parameters>
        <parameter name="reserved_size" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_sort" c:identifier="g_ptr_array_sort">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_sort_with_data"
              c:identifier="g_ptr_array_sort_with_data">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="ptr_array_unref" c:identifier="g_ptr_array_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <type name="PtrArray" c:type="GPtrArray*"/>
        </parameter>
      </parameters>
    </function>
    <function name="qsort_with_data" c:identifier="g_qsort_with_data">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pbase" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="total_elems" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none" closure="4">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="quark_from_static_string"
              c:identifier="g_quark_from_static_string">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="quark_from_string" c:identifier="g_quark_from_string">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="quark_to_string" c:identifier="g_quark_to_string">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="quark" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
      </parameters>
    </function>
    <function name="quark_try_string" c:identifier="g_quark_try_string">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_clear" c:identifier="g_queue_clear">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_copy" c:identifier="g_queue_copy">
      <return-value transfer-ownership="full">
        <type name="Queue" c:type="GQueue*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_delete_link" c:identifier="g_queue_delete_link">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="link_" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_find" c:identifier="g_queue_find">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_find_custom" c:identifier="g_queue_find_custom">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_foreach" c:identifier="g_queue_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="Func" c:type="GFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_free" c:identifier="g_queue_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_get_length" c:identifier="g_queue_get_length">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_index" c:identifier="g_queue_index">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_init" c:identifier="g_queue_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_insert_after" c:identifier="g_queue_insert_after">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="sibling" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_insert_before" c:identifier="g_queue_insert_before">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="sibling" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_insert_sorted" c:identifier="g_queue_insert_sorted">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="3">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_is_empty" c:identifier="g_queue_is_empty">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_link_index" c:identifier="g_queue_link_index">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="link_" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_new" c:identifier="g_queue_new">
      <return-value transfer-ownership="full">
        <type name="Queue" c:type="GQueue*"/>
      </return-value>
    </function>
    <function name="queue_peek_head" c:identifier="g_queue_peek_head">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_peek_head_link"
              c:identifier="g_queue_peek_head_link">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_peek_nth" c:identifier="g_queue_peek_nth">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_peek_nth_link" c:identifier="g_queue_peek_nth_link">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_peek_tail" c:identifier="g_queue_peek_tail">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_peek_tail_link"
              c:identifier="g_queue_peek_tail_link">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_pop_head" c:identifier="g_queue_pop_head">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_pop_head_link" c:identifier="g_queue_pop_head_link">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_pop_nth" c:identifier="g_queue_pop_nth">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_pop_nth_link" c:identifier="g_queue_pop_nth_link">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_pop_tail" c:identifier="g_queue_pop_tail">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_pop_tail_link" c:identifier="g_queue_pop_tail_link">
      <return-value transfer-ownership="full">
        <type name="List" c:type="GList*"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_push_head" c:identifier="g_queue_push_head">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_push_head_link"
              c:identifier="g_queue_push_head_link">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="link_" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_push_nth" c:identifier="g_queue_push_nth">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_push_nth_link" c:identifier="g_queue_push_nth_link">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="link_" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_push_tail" c:identifier="g_queue_push_tail">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_push_tail_link"
              c:identifier="g_queue_push_tail_link">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="link_" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_remove" c:identifier="g_queue_remove">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_remove_all" c:identifier="g_queue_remove_all">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_reverse" c:identifier="g_queue_reverse">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_sort" c:identifier="g_queue_sort">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="queue_unlink" c:identifier="g_queue_unlink">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="queue" transfer-ownership="none">
          <type name="Queue" c:type="GQueue*"/>
        </parameter>
        <parameter name="link_" transfer-ownership="none">
          <type name="List" c:type="GList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_copy" c:identifier="g_rand_copy">
      <return-value transfer-ownership="full">
        <type name="Rand" c:type="GRand*"/>
      </return-value>
      <parameters>
        <parameter name="rand_" transfer-ownership="none">
          <type name="Rand" c:type="GRand*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_double" c:identifier="g_rand_double">
      <return-value transfer-ownership="none">
        <type name="double" c:type="gdouble"/>
      </return-value>
      <parameters>
        <parameter name="rand_" transfer-ownership="none">
          <type name="Rand" c:type="GRand*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_double_range" c:identifier="g_rand_double_range">
      <return-value transfer-ownership="none">
        <type name="double" c:type="gdouble"/>
      </return-value>
      <parameters>
        <parameter name="rand_" transfer-ownership="none">
          <type name="Rand" c:type="GRand*"/>
        </parameter>
        <parameter name="begin" transfer-ownership="none">
          <type name="double" c:type="gdouble"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="double" c:type="gdouble"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_free" c:identifier="g_rand_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rand_" transfer-ownership="none">
          <type name="Rand" c:type="GRand*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_int" c:identifier="g_rand_int">
      <return-value transfer-ownership="none">
        <type name="uint32" c:type="guint32"/>
      </return-value>
      <parameters>
        <parameter name="rand_" transfer-ownership="none">
          <type name="Rand" c:type="GRand*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_int_range" c:identifier="g_rand_int_range">
      <return-value transfer-ownership="none">
        <type name="int32" c:type="gint32"/>
      </return-value>
      <parameters>
        <parameter name="rand_" transfer-ownership="none">
          <type name="Rand" c:type="GRand*"/>
        </parameter>
        <parameter name="begin" transfer-ownership="none">
          <type name="int32" c:type="gint32"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="int32" c:type="gint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_new" c:identifier="g_rand_new">
      <return-value transfer-ownership="full">
        <type name="Rand" c:type="GRand*"/>
      </return-value>
    </function>
    <function name="rand_new_with_seed" c:identifier="g_rand_new_with_seed">
      <return-value transfer-ownership="full">
        <type name="Rand" c:type="GRand*"/>
      </return-value>
      <parameters>
        <parameter name="seed" transfer-ownership="none">
          <type name="uint32" c:type="guint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_new_with_seed_array"
              c:identifier="g_rand_new_with_seed_array">
      <return-value transfer-ownership="full">
        <type name="Rand" c:type="GRand*"/>
      </return-value>
      <parameters>
        <parameter name="seed" direction="out" transfer-ownership="none">
          <type name="uint32" c:type="guint32*"/>
        </parameter>
        <parameter name="seed_length" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_set_seed" c:identifier="g_rand_set_seed">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rand_" transfer-ownership="none">
          <type name="Rand" c:type="GRand*"/>
        </parameter>
        <parameter name="seed" transfer-ownership="none">
          <type name="uint32" c:type="guint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="rand_set_seed_array" c:identifier="g_rand_set_seed_array">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rand_" transfer-ownership="none">
          <type name="Rand" c:type="GRand*"/>
        </parameter>
        <parameter name="seed" direction="out" transfer-ownership="none">
          <type name="uint32" c:type="guint32*"/>
        </parameter>
        <parameter name="seed_length" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="random_double" c:identifier="g_random_double">
      <return-value transfer-ownership="none">
        <type name="double" c:type="gdouble"/>
      </return-value>
    </function>
    <function name="random_double_range" c:identifier="g_random_double_range">
      <return-value transfer-ownership="none">
        <type name="double" c:type="gdouble"/>
      </return-value>
      <parameters>
        <parameter name="begin" transfer-ownership="none">
          <type name="double" c:type="gdouble"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="double" c:type="gdouble"/>
        </parameter>
      </parameters>
    </function>
    <function name="random_int" c:identifier="g_random_int">
      <return-value transfer-ownership="none">
        <type name="uint32" c:type="guint32"/>
      </return-value>
    </function>
    <function name="random_int_range" c:identifier="g_random_int_range">
      <return-value transfer-ownership="none">
        <type name="int32" c:type="gint32"/>
      </return-value>
      <parameters>
        <parameter name="begin" transfer-ownership="none">
          <type name="int32" c:type="gint32"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="int32" c:type="gint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="random_set_seed" c:identifier="g_random_set_seed">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="seed" transfer-ownership="none">
          <type name="uint32" c:type="guint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="realloc" c:identifier="g_realloc">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="mem" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="n_bytes" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_check_replacement"
              c:identifier="g_regex_check_replacement"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="replacement" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="has_references"
                   direction="out"
                   transfer-ownership="full">
          <type name="boolean" c:type="gboolean*"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_error_quark" c:identifier="g_regex_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="regex_escape_string" c:identifier="g_regex_escape_string">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_get_capture_count"
              c:identifier="g_regex_get_capture_count">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_get_max_backref"
              c:identifier="g_regex_get_max_backref">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_get_pattern" c:identifier="g_regex_get_pattern">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_get_string_number"
              c:identifier="g_regex_get_string_number">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_match" c:identifier="g_regex_match">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo**"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_match_all" c:identifier="g_regex_match_all">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo**"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_match_all_full"
              c:identifier="g_regex_match_all_full"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="start_position" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo**"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_match_full"
              c:identifier="g_regex_match_full"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="start_position" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
        <parameter name="match_info" transfer-ownership="none">
          <type name="MatchInfo" c:type="GMatchInfo**"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_match_simple" c:identifier="g_regex_match_simple">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="pattern" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="compile_options" transfer-ownership="none">
          <type name="RegexCompileFlags" c:type="GRegexCompileFlags"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_new" c:identifier="g_regex_new" throws="1">
      <return-value transfer-ownership="full">
        <type name="Regex" c:type="GRegex*"/>
      </return-value>
      <parameters>
        <parameter name="pattern" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="compile_options" transfer-ownership="none">
          <type name="RegexCompileFlags" c:type="GRegexCompileFlags"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_ref" c:identifier="g_regex_ref">
      <return-value transfer-ownership="full">
        <type name="Regex" c:type="GRegex*"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_replace" c:identifier="g_regex_replace" throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="start_position" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="replacement" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_replace_eval"
              c:identifier="g_regex_replace_eval"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="start_position" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
        <parameter name="eval" transfer-ownership="none" closure="6">
          <type name="RegexEvalCallback" c:type="GRegexEvalCallback"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_replace_literal"
              c:identifier="g_regex_replace_literal"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="start_position" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="replacement" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_split" c:identifier="g_regex_split">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_split_full"
              c:identifier="g_regex_split_full"
              throws="1">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="start_position" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
        <parameter name="max_tokens" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_split_simple" c:identifier="g_regex_split_simple">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="pattern" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="compile_options" transfer-ownership="none">
          <type name="RegexCompileFlags" c:type="GRegexCompileFlags"/>
        </parameter>
        <parameter name="match_options" transfer-ownership="none">
          <type name="RegexMatchFlags" c:type="GRegexMatchFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_unref" c:identifier="g_regex_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="regex" transfer-ownership="none">
          <type name="Regex" c:type="GRegex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="relation_count" c:identifier="g_relation_count">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="relation" transfer-ownership="none">
          <type name="Relation" c:type="GRelation*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="field" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="relation_delete" c:identifier="g_relation_delete">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="relation" transfer-ownership="none">
          <type name="Relation" c:type="GRelation*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="field" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="relation_destroy" c:identifier="g_relation_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="relation" transfer-ownership="none">
          <type name="Relation" c:type="GRelation*"/>
        </parameter>
      </parameters>
    </function>
    <function name="relation_exists" c:identifier="g_relation_exists">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="relation" transfer-ownership="none">
          <type name="Relation" c:type="GRelation*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="relation_index" c:identifier="g_relation_index">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="relation" transfer-ownership="none">
          <type name="Relation" c:type="GRelation*"/>
        </parameter>
        <parameter name="field" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="hash_func" transfer-ownership="none">
          <type name="HashFunc" c:type="GHashFunc"/>
        </parameter>
        <parameter name="key_equal_func" transfer-ownership="none">
          <type name="EqualFunc" c:type="GEqualFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="relation_insert" c:identifier="g_relation_insert">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="relation" transfer-ownership="none">
          <type name="Relation" c:type="GRelation*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="relation_new" c:identifier="g_relation_new">
      <return-value transfer-ownership="full">
        <type name="Relation" c:type="GRelation*"/>
      </return-value>
      <parameters>
        <parameter name="fields" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="relation_print" c:identifier="g_relation_print">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="relation" transfer-ownership="none">
          <type name="Relation" c:type="GRelation*"/>
        </parameter>
      </parameters>
    </function>
    <function name="relation_select" c:identifier="g_relation_select">
      <return-value transfer-ownership="full">
        <type name="Tuples" c:type="GTuples*"/>
      </return-value>
      <parameters>
        <parameter name="relation" transfer-ownership="none">
          <type name="Relation" c:type="GRelation*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="field" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="reload_user_special_dirs_cache"
              c:identifier="g_reload_user_special_dirs_cache">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="return_if_fail_warning"
              c:identifier="g_return_if_fail_warning">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="log_domain" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="pretty_function" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="expression" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rmdir" c:identifier="g_rmdir">
      <return-value transfer-ownership="none">
        <type name="int" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_cur_line" c:identifier="g_scanner_cur_line">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_cur_position"
              c:identifier="g_scanner_cur_position">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_cur_token" c:identifier="g_scanner_cur_token">
      <return-value transfer-ownership="full">
        <type name="TokenType" c:type="GTokenType"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_cur_value" c:identifier="g_scanner_cur_value">
      <return-value transfer-ownership="full">
        <type name="TokenValue" c:type="GTokenValue"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_destroy" c:identifier="g_scanner_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_eof" c:identifier="g_scanner_eof">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_error" c:identifier="g_scanner_error">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_get_next_token"
              c:identifier="g_scanner_get_next_token">
      <return-value transfer-ownership="full">
        <type name="TokenType" c:type="GTokenType"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_input_file" c:identifier="g_scanner_input_file">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="input_fd" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_input_text" c:identifier="g_scanner_input_text">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="text" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="text_len" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_lookup_symbol"
              c:identifier="g_scanner_lookup_symbol">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="symbol" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_new" c:identifier="g_scanner_new">
      <return-value transfer-ownership="full">
        <type name="Scanner" c:type="GScanner*"/>
      </return-value>
      <parameters>
        <parameter name="config_templ" transfer-ownership="none">
          <type name="ScannerConfig" c:type="GScannerConfig*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_peek_next_token"
              c:identifier="g_scanner_peek_next_token">
      <return-value transfer-ownership="full">
        <type name="TokenType" c:type="GTokenType"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_scope_add_symbol"
              c:identifier="g_scanner_scope_add_symbol">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="scope_id" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="symbol" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_scope_foreach_symbol"
              c:identifier="g_scanner_scope_foreach_symbol">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="scope_id" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="3">
          <type name="HFunc" c:type="GHFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_scope_lookup_symbol"
              c:identifier="g_scanner_scope_lookup_symbol">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="scope_id" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="symbol" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_scope_remove_symbol"
              c:identifier="g_scanner_scope_remove_symbol">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="scope_id" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="symbol" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_set_scope" c:identifier="g_scanner_set_scope">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="scope_id" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_sync_file_offset"
              c:identifier="g_scanner_sync_file_offset">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_unexp_token" c:identifier="g_scanner_unexp_token">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="expected_token" transfer-ownership="none">
          <type name="TokenType" c:type="GTokenType"/>
        </parameter>
        <parameter name="identifier_spec" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="symbol_spec" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="symbol_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="message" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="is_error" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="scanner_warn" c:identifier="g_scanner_warn">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="scanner" transfer-ownership="none">
          <type name="Scanner" c:type="GScanner*"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_append" c:identifier="g_sequence_append">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_foreach" c:identifier="g_sequence_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="Func" c:type="GFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_foreach_range"
              c:identifier="g_sequence_foreach_range">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="begin" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="3">
          <type name="Func" c:type="GFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_free" c:identifier="g_sequence_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_get" c:identifier="g_sequence_get">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_get_begin_iter"
              c:identifier="g_sequence_get_begin_iter">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_get_end_iter"
              c:identifier="g_sequence_get_end_iter">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_get_iter_at_pos"
              c:identifier="g_sequence_get_iter_at_pos">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="pos" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_get_length" c:identifier="g_sequence_get_length">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_insert_before"
              c:identifier="g_sequence_insert_before">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_insert_sorted"
              c:identifier="g_sequence_insert_sorted">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="cmp_func" transfer-ownership="none" closure="3">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="cmp_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_insert_sorted_iter"
              c:identifier="g_sequence_insert_sorted_iter">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="iter_cmp" transfer-ownership="none" closure="3">
          <type name="SequenceIterCompareFunc"
                c:type="GSequenceIterCompareFunc"/>
        </parameter>
        <parameter name="cmp_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_iter_compare"
              c:identifier="g_sequence_iter_compare">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="a" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="b" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_iter_get_position"
              c:identifier="g_sequence_iter_get_position">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_iter_get_sequence"
              c:identifier="g_sequence_iter_get_sequence">
      <return-value transfer-ownership="full">
        <type name="Sequence" c:type="GSequence*"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_iter_is_begin"
              c:identifier="g_sequence_iter_is_begin">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_iter_is_end"
              c:identifier="g_sequence_iter_is_end">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_iter_move" c:identifier="g_sequence_iter_move">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="delta" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_iter_next" c:identifier="g_sequence_iter_next">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_iter_prev" c:identifier="g_sequence_iter_prev">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_move" c:identifier="g_sequence_move">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="dest" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_move_range" c:identifier="g_sequence_move_range">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dest" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="begin" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_new" c:identifier="g_sequence_new">
      <return-value transfer-ownership="full">
        <type name="Sequence" c:type="GSequence*"/>
      </return-value>
      <parameters>
        <parameter name="data_destroy" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_prepend" c:identifier="g_sequence_prepend">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_range_get_midpoint"
              c:identifier="g_sequence_range_get_midpoint">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="begin" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_remove" c:identifier="g_sequence_remove">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_remove_range"
              c:identifier="g_sequence_remove_range">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="begin" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_search" c:identifier="g_sequence_search">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="cmp_func" transfer-ownership="none" closure="3">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="cmp_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_search_iter"
              c:identifier="g_sequence_search_iter">
      <return-value transfer-ownership="full">
        <type name="SequenceIter" c:type="GSequenceIter*"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="iter_cmp" transfer-ownership="none" closure="3">
          <type name="SequenceIterCompareFunc"
                c:type="GSequenceIterCompareFunc"/>
        </parameter>
        <parameter name="cmp_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_set" c:identifier="g_sequence_set">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_sort" c:identifier="g_sequence_sort">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="cmp_func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="cmp_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_sort_changed"
              c:identifier="g_sequence_sort_changed">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="cmp_func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="cmp_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_sort_changed_iter"
              c:identifier="g_sequence_sort_changed_iter">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="iter" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="iter_cmp" transfer-ownership="none" closure="2">
          <type name="SequenceIterCompareFunc"
                c:type="GSequenceIterCompareFunc"/>
        </parameter>
        <parameter name="cmp_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_sort_iter" c:identifier="g_sequence_sort_iter">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="seq" transfer-ownership="none">
          <type name="Sequence" c:type="GSequence*"/>
        </parameter>
        <parameter name="cmp_func" transfer-ownership="none" closure="2">
          <type name="SequenceIterCompareFunc"
                c:type="GSequenceIterCompareFunc"/>
        </parameter>
        <parameter name="cmp_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="sequence_swap" c:identifier="g_sequence_swap">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="a" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
        <parameter name="b" transfer-ownership="none">
          <type name="SequenceIter" c:type="GSequenceIter*"/>
        </parameter>
      </parameters>
    </function>
    <function name="set_application_name"
              c:identifier="g_set_application_name">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="application_name" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="set_error" c:identifier="g_set_error">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="err" transfer-ownership="none">
          <type name="Error" c:type="GError**"/>
        </parameter>
        <parameter name="domain" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
        <parameter name="code" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="set_error_literal" c:identifier="g_set_error_literal">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="err" transfer-ownership="none">
          <type name="Error" c:type="GError**"/>
        </parameter>
        <parameter name="domain" transfer-ownership="none">
          <type name="Quark" c:type="GQuark"/>
        </parameter>
        <parameter name="code" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="message" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="set_prgname" c:identifier="g_set_prgname">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="prgname" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="set_print_handler" c:identifier="g_set_print_handler">
      <return-value transfer-ownership="full">
        <type name="PrintFunc" c:type="GPrintFunc"/>
      </return-value>
      <parameters>
        <parameter name="func" transfer-ownership="none">
          <type name="PrintFunc" c:type="GPrintFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="set_printerr_handler"
              c:identifier="g_set_printerr_handler">
      <return-value transfer-ownership="full">
        <type name="PrintFunc" c:type="GPrintFunc"/>
      </return-value>
      <parameters>
        <parameter name="func" transfer-ownership="none">
          <type name="PrintFunc" c:type="GPrintFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="setenv" c:identifier="g_setenv">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="variable" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="overwrite" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="shell_error_quark" c:identifier="g_shell_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="shell_parse_argv"
              c:identifier="g_shell_parse_argv"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="command_line" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="argcp" direction="out" transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="argvp" direction="out" transfer-ownership="full">
          <array c:type="gchar***">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="shell_quote" c:identifier="g_shell_quote">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="unquoted_string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="shell_unquote" c:identifier="g_shell_unquote" throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="quoted_string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slice_alloc" c:identifier="g_slice_alloc">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="block_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="slice_alloc0" c:identifier="g_slice_alloc0">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="block_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="slice_copy" c:identifier="g_slice_copy">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="block_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="mem_block" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slice_free1" c:identifier="g_slice_free1">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="block_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="mem_block" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slice_free_chain_with_offset"
              c:identifier="g_slice_free_chain_with_offset">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="block_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="mem_chain" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="next_offset" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="slice_get_config" c:identifier="g_slice_get_config">
      <return-value transfer-ownership="none">
        <type name="int64" c:type="gint64"/>
      </return-value>
      <parameters>
        <parameter name="ckey" transfer-ownership="none">
          <type name="SliceConfig" c:type="GSliceConfig"/>
        </parameter>
      </parameters>
    </function>
    <function name="slice_get_config_state"
              c:identifier="g_slice_get_config_state">
      <return-value transfer-ownership="full">
        <type name="int64" c:type="gint64*"/>
      </return-value>
      <parameters>
        <parameter name="ckey" transfer-ownership="none">
          <type name="SliceConfig" c:type="GSliceConfig"/>
        </parameter>
        <parameter name="address" transfer-ownership="none">
          <type name="int64" c:type="gint64"/>
        </parameter>
        <parameter name="n_values" direction="out" transfer-ownership="full">
          <type name="uint" c:type="guint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slice_set_config" c:identifier="g_slice_set_config">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="ckey" transfer-ownership="none">
          <type name="SliceConfig" c:type="GSliceConfig"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="int64" c:type="gint64"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_alloc" c:identifier="g_slist_alloc">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
    </function>
    <function name="slist_append" c:identifier="g_slist_append">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_concat" c:identifier="g_slist_concat">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list1" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="list2" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_copy" c:identifier="g_slist_copy">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_delete_link" c:identifier="g_slist_delete_link">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="link_" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_find" c:identifier="g_slist_find">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_find_custom" c:identifier="g_slist_find_custom">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_foreach" c:identifier="g_slist_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="Func" c:type="GFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_free" c:identifier="g_slist_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_free_1" c:identifier="g_slist_free_1">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_index" c:identifier="g_slist_index">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_insert" c:identifier="g_slist_insert">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="position" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_insert_before" c:identifier="g_slist_insert_before">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="slist" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="sibling" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_insert_sorted" c:identifier="g_slist_insert_sorted">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_insert_sorted_with_data"
              c:identifier="g_slist_insert_sorted_with_data">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="3">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_last" c:identifier="g_slist_last">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_length" c:identifier="g_slist_length">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_nth" c:identifier="g_slist_nth">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_nth_data" c:identifier="g_slist_nth_data">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_pop_allocator" c:identifier="g_slist_pop_allocator">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="slist_position" c:identifier="g_slist_position">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="llink" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_prepend" c:identifier="g_slist_prepend">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_push_allocator"
              c:identifier="g_slist_push_allocator">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dummy" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_remove" c:identifier="g_slist_remove">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_remove_all" c:identifier="g_slist_remove_all">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_remove_link" c:identifier="g_slist_remove_link">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="link_" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_reverse" c:identifier="g_slist_reverse">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_sort" c:identifier="g_slist_sort">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="slist_sort_with_data"
              c:identifier="g_slist_sort_with_data">
      <return-value transfer-ownership="full">
        <type name="SList" c:type="GSList*"/>
      </return-value>
      <parameters>
        <parameter name="list" transfer-ownership="none">
          <type name="SList" c:type="GSList*"/>
        </parameter>
        <parameter name="compare_func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="snprintf" c:identifier="g_snprintf">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="ulong" c:type="gulong"/>
        </parameter>
        <parameter name="format" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="source_add_poll" c:identifier="g_source_add_poll">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
        <parameter name="fd" transfer-ownership="none">
          <type name="PollFD" c:type="GPollFD*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_attach" c:identifier="g_source_attach">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
        <parameter name="context" transfer-ownership="none">
          <type name="MainContext" c:type="GMainContext*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_destroy" c:identifier="g_source_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_get_can_recurse"
              c:identifier="g_source_get_can_recurse">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_get_context" c:identifier="g_source_get_context">
      <return-value transfer-ownership="full">
        <type name="MainContext" c:type="GMainContext*"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_get_current_time"
              c:identifier="g_source_get_current_time">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
        <parameter name="timeval" transfer-ownership="none">
          <type name="TimeVal" c:type="GTimeVal*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_get_id" c:identifier="g_source_get_id">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_get_priority" c:identifier="g_source_get_priority">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_is_destroyed" c:identifier="g_source_is_destroyed">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_new" c:identifier="g_source_new">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
      <parameters>
        <parameter name="source_funcs" transfer-ownership="none">
          <type name="SourceFuncs" c:type="GSourceFuncs*"/>
        </parameter>
        <parameter name="struct_size" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_ref" c:identifier="g_source_ref">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_remove" c:identifier="g_source_remove">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="tag" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_remove_by_funcs_user_data"
              c:identifier="g_source_remove_by_funcs_user_data">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="funcs" transfer-ownership="none">
          <type name="SourceFuncs" c:type="GSourceFuncs*"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_remove_by_user_data"
              c:identifier="g_source_remove_by_user_data">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_remove_poll" c:identifier="g_source_remove_poll">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
        <parameter name="fd" transfer-ownership="none">
          <type name="PollFD" c:type="GPollFD*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_set_callback" c:identifier="g_source_set_callback">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
        <parameter name="func"
                   transfer-ownership="none"
                   closure="2"
                   destroy="3">
          <type name="SourceFunc" c:type="GSourceFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="notify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_set_callback_indirect"
              c:identifier="g_source_set_callback_indirect">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
        <parameter name="callback_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="callback_funcs" transfer-ownership="none">
          <type name="SourceCallbackFuncs" c:type="GSourceCallbackFuncs*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_set_can_recurse"
              c:identifier="g_source_set_can_recurse">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
        <parameter name="can_recurse" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_set_funcs" c:identifier="g_source_set_funcs">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
        <parameter name="funcs" transfer-ownership="none">
          <type name="SourceFuncs" c:type="GSourceFuncs*"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_set_priority" c:identifier="g_source_set_priority">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
        <parameter name="priority" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="source_unref" c:identifier="g_source_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="Source" c:type="GSource*"/>
        </parameter>
      </parameters>
    </function>
    <function name="spaced_primes_closest"
              c:identifier="g_spaced_primes_closest">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="num" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="spawn_async" c:identifier="g_spawn_async" throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="working_directory"
                   transfer-ownership="none"
                   allow-none="1">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="argv" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="envp" transfer-ownership="none" allow-none="1">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="SpawnFlags" c:type="GSpawnFlags"/>
        </parameter>
        <parameter name="child_setup"
                   transfer-ownership="none"
                   allow-none="1"
                   closure="5">
          <type name="SpawnChildSetupFunc" c:type="GSpawnChildSetupFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" allow-none="1">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="child_pid" direction="out" transfer-ownership="full">
          <type name="Pid" c:type="GPid*"/>
        </parameter>
      </parameters>
    </function>
    <function name="spawn_async_with_pipes"
              c:identifier="g_spawn_async_with_pipes"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="working_directory"
                   transfer-ownership="none"
                   allow-none="1">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="argv" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="envp" transfer-ownership="none" allow-none="1">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="SpawnFlags" c:type="GSpawnFlags"/>
        </parameter>
        <parameter name="child_setup"
                   transfer-ownership="none"
                   allow-none="1"
                   closure="5">
          <type name="SpawnChildSetupFunc" c:type="GSpawnChildSetupFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" allow-none="1">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="child_pid" direction="out" transfer-ownership="full">
          <type name="Pid" c:type="GPid*"/>
        </parameter>
        <parameter name="standard_input"
                   direction="out"
                   transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="standard_output"
                   direction="out"
                   transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
        <parameter name="standard_error"
                   direction="out"
                   transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="spawn_close_pid" c:identifier="g_spawn_close_pid">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pid" transfer-ownership="none">
          <type name="Pid" c:type="GPid"/>
        </parameter>
      </parameters>
    </function>
    <function name="spawn_command_line_async"
              c:identifier="g_spawn_command_line_async"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="command_line" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="spawn_command_line_sync"
              c:identifier="g_spawn_command_line_sync"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="command_line" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="standard_output"
                   direction="out"
                   transfer-ownership="full">
          <type name="utf8" c:type="gchar**"/>
        </parameter>
        <parameter name="standard_error"
                   direction="out"
                   transfer-ownership="full">
          <type name="utf8" c:type="gchar**"/>
        </parameter>
        <parameter name="exit_status"
                   direction="out"
                   transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="spawn_error_quark" c:identifier="g_spawn_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="spawn_sync" c:identifier="g_spawn_sync" throws="1">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="working_directory"
                   transfer-ownership="none"
                   allow-none="1">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="argv" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="envp" transfer-ownership="none" allow-none="1">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <type name="SpawnFlags" c:type="GSpawnFlags"/>
        </parameter>
        <parameter name="child_setup"
                   transfer-ownership="none"
                   allow-none="1"
                   closure="5">
          <type name="SpawnChildSetupFunc" c:type="GSpawnChildSetupFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" allow-none="1">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="standard_output"
                   direction="out"
                   transfer-ownership="full">
          <type name="utf8" c:type="gchar**"/>
        </parameter>
        <parameter name="standard_error"
                   direction="out"
                   transfer-ownership="full">
          <type name="utf8" c:type="gchar**"/>
        </parameter>
        <parameter name="exit_status"
                   direction="out"
                   transfer-ownership="full">
          <type name="int" c:type="gint*"/>
        </parameter>
      </parameters>
    </function>
    <function name="sprintf" c:identifier="g_sprintf">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="format" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="static_mutex_free" c:identifier="g_static_mutex_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="StaticMutex" c:type="GStaticMutex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_mutex_get_mutex_impl"
              c:identifier="g_static_mutex_get_mutex_impl">
      <return-value transfer-ownership="full">
        <type name="Mutex" c:type="GMutex*"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="Mutex" c:type="GMutex**"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_mutex_init" c:identifier="g_static_mutex_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="StaticMutex" c:type="GStaticMutex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_private_free" c:identifier="g_static_private_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="private_key" transfer-ownership="none">
          <type name="StaticPrivate" c:type="GStaticPrivate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_private_get" c:identifier="g_static_private_get">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="private_key" transfer-ownership="none">
          <type name="StaticPrivate" c:type="GStaticPrivate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_private_init" c:identifier="g_static_private_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="private_key" transfer-ownership="none">
          <type name="StaticPrivate" c:type="GStaticPrivate*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_private_set" c:identifier="g_static_private_set">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="private_key" transfer-ownership="none">
          <type name="StaticPrivate" c:type="GStaticPrivate*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="notify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rec_mutex_free"
              c:identifier="g_static_rec_mutex_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="StaticRecMutex" c:type="GStaticRecMutex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rec_mutex_init"
              c:identifier="g_static_rec_mutex_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="StaticRecMutex" c:type="GStaticRecMutex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rec_mutex_lock"
              c:identifier="g_static_rec_mutex_lock">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="StaticRecMutex" c:type="GStaticRecMutex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rec_mutex_lock_full"
              c:identifier="g_static_rec_mutex_lock_full">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="StaticRecMutex" c:type="GStaticRecMutex*"/>
        </parameter>
        <parameter name="depth" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rec_mutex_trylock"
              c:identifier="g_static_rec_mutex_trylock">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="StaticRecMutex" c:type="GStaticRecMutex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rec_mutex_unlock"
              c:identifier="g_static_rec_mutex_unlock">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="StaticRecMutex" c:type="GStaticRecMutex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rec_mutex_unlock_full"
              c:identifier="g_static_rec_mutex_unlock_full">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="mutex" transfer-ownership="none">
          <type name="StaticRecMutex" c:type="GStaticRecMutex*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rw_lock_free" c:identifier="g_static_rw_lock_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="lock" transfer-ownership="none">
          <type name="StaticRWLock" c:type="GStaticRWLock*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rw_lock_init" c:identifier="g_static_rw_lock_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="lock" transfer-ownership="none">
          <type name="StaticRWLock" c:type="GStaticRWLock*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rw_lock_reader_lock"
              c:identifier="g_static_rw_lock_reader_lock">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="lock" transfer-ownership="none">
          <type name="StaticRWLock" c:type="GStaticRWLock*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rw_lock_reader_trylock"
              c:identifier="g_static_rw_lock_reader_trylock">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="lock" transfer-ownership="none">
          <type name="StaticRWLock" c:type="GStaticRWLock*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rw_lock_reader_unlock"
              c:identifier="g_static_rw_lock_reader_unlock">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="lock" transfer-ownership="none">
          <type name="StaticRWLock" c:type="GStaticRWLock*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rw_lock_writer_lock"
              c:identifier="g_static_rw_lock_writer_lock">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="lock" transfer-ownership="none">
          <type name="StaticRWLock" c:type="GStaticRWLock*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rw_lock_writer_trylock"
              c:identifier="g_static_rw_lock_writer_trylock">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="lock" transfer-ownership="none">
          <type name="StaticRWLock" c:type="GStaticRWLock*"/>
        </parameter>
      </parameters>
    </function>
    <function name="static_rw_lock_writer_unlock"
              c:identifier="g_static_rw_lock_writer_unlock">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="lock" transfer-ownership="none">
          <type name="StaticRWLock" c:type="GStaticRWLock*"/>
        </parameter>
      </parameters>
    </function>
    <function name="stpcpy" c:identifier="g_stpcpy">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="dest" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="src" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="str_equal" c:identifier="g_str_equal">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="v1" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="v2" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="str_has_prefix" c:identifier="g_str_has_prefix">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="prefix" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="str_has_suffix" c:identifier="g_str_has_suffix">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="suffix" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="str_hash" c:identifier="g_str_hash">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="v" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="strcanon" c:identifier="g_strcanon">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="valid_chars" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="substitutor" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="strcasecmp" c:identifier="g_strcasecmp">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="s1" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="s2" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strchomp" c:identifier="g_strchomp">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strchug" c:identifier="g_strchug">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strcmp0" c:identifier="g_strcmp0">
      <return-value transfer-ownership="none">
        <type name="int" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="str1" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="str2" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strcompress" c:identifier="g_strcompress">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strconcat" c:identifier="g_strconcat">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string1" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="strdelimit" c:identifier="g_strdelimit">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="delimiters" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="new_delimiter" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="strdown" c:identifier="g_strdown">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strdup" c:identifier="g_strdup">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strdup_printf" c:identifier="g_strdup_printf">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="strdupv" c:identifier="g_strdupv">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="str_array" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="strerror" c:identifier="g_strerror">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="errnum" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="strescape" c:identifier="g_strescape">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="source" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="exceptions" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strfreev" c:identifier="g_strfreev">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="str_array" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="string_append" c:identifier="g_string_append">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_append_c" c:identifier="g_string_append_c">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="c" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_append_len" c:identifier="g_string_append_len">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_append_printf"
              c:identifier="g_string_append_printf">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="string_append_unichar"
              c:identifier="g_string_append_unichar">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="wc" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_append_uri_escaped"
              c:identifier="g_string_append_uri_escaped">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="unescaped" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="reserved_chars_allowed" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="allow_utf8" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_ascii_down" c:identifier="g_string_ascii_down">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_ascii_up" c:identifier="g_string_ascii_up">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_assign" c:identifier="g_string_assign">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="rval" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_chunk_clear" c:identifier="g_string_chunk_clear">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="chunk" transfer-ownership="none">
          <type name="StringChunk" c:type="GStringChunk*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_chunk_free" c:identifier="g_string_chunk_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="chunk" transfer-ownership="none">
          <type name="StringChunk" c:type="GStringChunk*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_chunk_insert" c:identifier="g_string_chunk_insert">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="chunk" transfer-ownership="none">
          <type name="StringChunk" c:type="GStringChunk*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_chunk_insert_const"
              c:identifier="g_string_chunk_insert_const">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="chunk" transfer-ownership="none">
          <type name="StringChunk" c:type="GStringChunk*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_chunk_insert_len"
              c:identifier="g_string_chunk_insert_len">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="chunk" transfer-ownership="none">
          <type name="StringChunk" c:type="GStringChunk*"/>
        </parameter>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_chunk_new" c:identifier="g_string_chunk_new">
      <return-value transfer-ownership="full">
        <type name="StringChunk" c:type="GStringChunk*"/>
      </return-value>
      <parameters>
        <parameter name="size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_down" c:identifier="g_string_down">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_equal" c:identifier="g_string_equal">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="v" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="v2" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_erase" c:identifier="g_string_erase">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="pos" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_free" c:identifier="g_string_free">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="free_segment" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_hash" c:identifier="g_string_hash">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_insert" c:identifier="g_string_insert">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="pos" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_insert_c" c:identifier="g_string_insert_c">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="pos" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="c" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_insert_len" c:identifier="g_string_insert_len">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="pos" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_insert_unichar"
              c:identifier="g_string_insert_unichar">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="pos" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="wc" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_new" c:identifier="g_string_new">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="init" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_new_len" c:identifier="g_string_new_len">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="init" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_overwrite" c:identifier="g_string_overwrite">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="pos" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_overwrite_len"
              c:identifier="g_string_overwrite_len">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="pos" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_prepend" c:identifier="g_string_prepend">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_prepend_c" c:identifier="g_string_prepend_c">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="c" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_prepend_len" c:identifier="g_string_prepend_len">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="val" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_prepend_unichar"
              c:identifier="g_string_prepend_unichar">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="wc" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_printf" c:identifier="g_string_printf">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="string_set_size" c:identifier="g_string_set_size">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_sized_new" c:identifier="g_string_sized_new">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="dfl_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_truncate" c:identifier="g_string_truncate">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="string_up" c:identifier="g_string_up">
      <return-value transfer-ownership="full">
        <type name="String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="String" c:type="GString*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strip_context" c:identifier="g_strip_context">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="msgid" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="msgval" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strjoin" c:identifier="g_strjoin">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="separator" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="strjoinv" c:identifier="g_strjoinv">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="separator" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="str_array" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="strlcat" c:identifier="g_strlcat">
      <return-value transfer-ownership="none">
        <type name="size_t" c:type="gsize"/>
      </return-value>
      <parameters>
        <parameter name="dest" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="src" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="dest_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="strlcpy" c:identifier="g_strlcpy">
      <return-value transfer-ownership="none">
        <type name="size_t" c:type="gsize"/>
      </return-value>
      <parameters>
        <parameter name="dest" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="src" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="dest_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="strncasecmp" c:identifier="g_strncasecmp">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="s1" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="s2" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="strndup" c:identifier="g_strndup">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="strnfill" c:identifier="g_strnfill">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="length" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="fill_char" transfer-ownership="none">
          <type name="int8" c:type="gchar"/>
        </parameter>
      </parameters>
    </function>
    <function name="strreverse" c:identifier="g_strreverse">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strrstr" c:identifier="g_strrstr">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="haystack" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="needle" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strrstr_len" c:identifier="g_strrstr_len">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="haystack" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="haystack_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="needle" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strsignal" c:identifier="g_strsignal">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="signum" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="strsplit" c:identifier="g_strsplit">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="delimiter" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="max_tokens" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="strsplit_set" c:identifier="g_strsplit_set">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="delimiters" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="max_tokens" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="strstr_len" c:identifier="g_strstr_len">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="haystack" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="haystack_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="needle" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strtod" c:identifier="g_strtod">
      <return-value transfer-ownership="none">
        <type name="double" c:type="gdouble"/>
      </return-value>
      <parameters>
        <parameter name="nptr" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="endptr" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="strup" c:identifier="g_strup">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="strv_length" c:identifier="g_strv_length">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="str_array" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="test_add_data_func" c:identifier="g_test_add_data_func">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="testpath" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="test_data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="test_func" transfer-ownership="none">
          <type name="any" c:type="any*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_add_func" c:identifier="g_test_add_func">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="testpath" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="test_func" transfer-ownership="none">
          <type name="any" c:type="any*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_add_vtable" c:identifier="g_test_add_vtable">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="testpath" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="data_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="test_data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="data_setup" transfer-ownership="none">
          <type name="any" c:type="any*"/>
        </parameter>
        <parameter name="data_test" transfer-ownership="none">
          <type name="any" c:type="any*"/>
        </parameter>
        <parameter name="data_teardown" transfer-ownership="none">
          <type name="any" c:type="any*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_bug" c:identifier="g_test_bug">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bug_uri_snippet" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_bug_base" c:identifier="g_test_bug_base">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="uri_pattern" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_create_case" c:identifier="g_test_create_case">
      <return-value transfer-ownership="full">
        <type name="TestCase" c:type="GTestCase*"/>
      </return-value>
      <parameters>
        <parameter name="test_name" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="data_size" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
        <parameter name="test_data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="data_setup" transfer-ownership="none">
          <type name="any" c:type="any*"/>
        </parameter>
        <parameter name="data_test" transfer-ownership="none">
          <type name="any" c:type="any*"/>
        </parameter>
        <parameter name="data_teardown" transfer-ownership="none">
          <type name="any" c:type="any*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_create_suite" c:identifier="g_test_create_suite">
      <return-value transfer-ownership="full">
        <type name="TestSuite" c:type="GTestSuite*"/>
      </return-value>
      <parameters>
        <parameter name="suite_name" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_get_root" c:identifier="g_test_get_root">
      <return-value transfer-ownership="full">
        <type name="TestSuite" c:type="GTestSuite*"/>
      </return-value>
    </function>
    <function name="test_init" c:identifier="g_test_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="argc" direction="out" transfer-ownership="full">
          <type name="int" c:type="int*"/>
        </parameter>
        <parameter name="argv" transfer-ownership="none">
          <type name="utf8" c:type="char***"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="test_log_buffer_free"
              c:identifier="g_test_log_buffer_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tbuffer" transfer-ownership="none">
          <type name="TestLogBuffer" c:type="GTestLogBuffer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_log_buffer_new" c:identifier="g_test_log_buffer_new">
      <return-value transfer-ownership="full">
        <type name="TestLogBuffer" c:type="GTestLogBuffer*"/>
      </return-value>
    </function>
    <function name="test_log_buffer_pop" c:identifier="g_test_log_buffer_pop">
      <return-value transfer-ownership="full">
        <type name="TestLogMsg" c:type="GTestLogMsg*"/>
      </return-value>
      <parameters>
        <parameter name="tbuffer" transfer-ownership="none">
          <type name="TestLogBuffer" c:type="GTestLogBuffer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_log_buffer_push"
              c:identifier="g_test_log_buffer_push">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tbuffer" transfer-ownership="none">
          <type name="TestLogBuffer" c:type="GTestLogBuffer*"/>
        </parameter>
        <parameter name="n_bytes" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="bytes" transfer-ownership="none">
          <array c:type="guint8*">
            <type name="uint8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="test_log_msg_free" c:identifier="g_test_log_msg_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tmsg" transfer-ownership="none">
          <type name="TestLogMsg" c:type="GTestLogMsg*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_log_type_name" c:identifier="g_test_log_type_name">
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="char*"/>
      </return-value>
      <parameters>
        <parameter name="log_type" transfer-ownership="none">
          <type name="TestLogType" c:type="GTestLogType"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_maximized_result"
              c:identifier="g_test_maximized_result">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="maximized_quantity" transfer-ownership="none">
          <type name="double" c:type="double"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="test_message" c:identifier="g_test_message">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="test_minimized_result"
              c:identifier="g_test_minimized_result">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="minimized_quantity" transfer-ownership="none">
          <type name="double" c:type="double"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter transfer-ownership="none">
          <varargs>
          </varargs>
        </parameter>
      </parameters>
    </function>
    <function name="test_queue_destroy" c:identifier="g_test_queue_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="destroy_func" transfer-ownership="none" closure="1">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
        <parameter name="destroy_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_queue_free" c:identifier="g_test_queue_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="gfree_pointer" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_rand_double" c:identifier="g_test_rand_double">
      <return-value transfer-ownership="none">
        <type name="double" c:type="double"/>
      </return-value>
    </function>
    <function name="test_rand_double_range"
              c:identifier="g_test_rand_double_range">
      <return-value transfer-ownership="none">
        <type name="double" c:type="double"/>
      </return-value>
      <parameters>
        <parameter name="range_start" transfer-ownership="none">
          <type name="double" c:type="double"/>
        </parameter>
        <parameter name="range_end" transfer-ownership="none">
          <type name="double" c:type="double"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_rand_int" c:identifier="g_test_rand_int">
      <return-value transfer-ownership="none">
        <type name="int32" c:type="gint32"/>
      </return-value>
    </function>
    <function name="test_rand_int_range" c:identifier="g_test_rand_int_range">
      <return-value transfer-ownership="none">
        <type name="int32" c:type="gint32"/>
      </return-value>
      <parameters>
        <parameter name="begin" transfer-ownership="none">
          <type name="int32" c:type="gint32"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="int32" c:type="gint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_run" c:identifier="g_test_run">
      <return-value transfer-ownership="none">
        <type name="int" c:type="int"/>
      </return-value>
    </function>
    <function name="test_run_suite" c:identifier="g_test_run_suite">
      <return-value transfer-ownership="none">
        <type name="int" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="suite" transfer-ownership="none">
          <type name="TestSuite" c:type="GTestSuite*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_suite_add" c:identifier="g_test_suite_add">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="suite" transfer-ownership="none">
          <type name="TestSuite" c:type="GTestSuite*"/>
        </parameter>
        <parameter name="test_case" transfer-ownership="none">
          <type name="TestCase" c:type="GTestCase*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_suite_add_suite"
              c:identifier="g_test_suite_add_suite">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="suite" transfer-ownership="none">
          <type name="TestSuite" c:type="GTestSuite*"/>
        </parameter>
        <parameter name="nestedsuite" transfer-ownership="none">
          <type name="TestSuite" c:type="GTestSuite*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_timer_elapsed" c:identifier="g_test_timer_elapsed">
      <return-value transfer-ownership="none">
        <type name="double" c:type="double"/>
      </return-value>
    </function>
    <function name="test_timer_last" c:identifier="g_test_timer_last">
      <return-value transfer-ownership="none">
        <type name="double" c:type="double"/>
      </return-value>
    </function>
    <function name="test_timer_start" c:identifier="g_test_timer_start">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="test_trap_assertions"
              c:identifier="g_test_trap_assertions">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="assertion_flags" transfer-ownership="none">
          <type name="uint64" c:type="guint64"/>
        </parameter>
        <parameter name="pattern" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_trap_fork" c:identifier="g_test_trap_fork">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="usec_timeout" transfer-ownership="none">
          <type name="uint64" c:type="guint64"/>
        </parameter>
        <parameter name="test_trap_flags" transfer-ownership="none">
          <type name="TestTrapFlags" c:type="GTestTrapFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="test_trap_has_passed"
              c:identifier="g_test_trap_has_passed">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="test_trap_reached_timeout"
              c:identifier="g_test_trap_reached_timeout">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="thread_create_full"
              c:identifier="g_thread_create_full"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="Thread" c:type="GThread*"/>
      </return-value>
      <parameters>
        <parameter name="func" transfer-ownership="none" closure="1">
          <type name="ThreadFunc" c:type="GThreadFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="stack_size" transfer-ownership="none">
          <type name="ulong" c:type="gulong"/>
        </parameter>
        <parameter name="joinable" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="bound" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="priority" transfer-ownership="none">
          <type name="ThreadPriority" c:type="GThreadPriority"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_error_quark" c:identifier="g_thread_error_quark">
      <return-value transfer-ownership="full">
        <type name="Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="thread_exit" c:identifier="g_thread_exit">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="retval" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_foreach" c:identifier="g_thread_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="thread_func" transfer-ownership="none" closure="1">
          <type name="Func" c:type="GFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_get_initialized"
              c:identifier="g_thread_get_initialized">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="thread_init" c:identifier="g_thread_init">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="vtable" transfer-ownership="none" allow-none="1">
          <type name="ThreadFunctions" c:type="GThreadFunctions*"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_init_with_errorcheck_mutexes"
              c:identifier="g_thread_init_with_errorcheck_mutexes">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="vtable" transfer-ownership="none">
          <type name="ThreadFunctions" c:type="GThreadFunctions*"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_join" c:identifier="g_thread_join">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="thread" transfer-ownership="none">
          <type name="Thread" c:type="GThread*"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_free" c:identifier="g_thread_pool_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pool" transfer-ownership="none">
          <type name="ThreadPool" c:type="GThreadPool*"/>
        </parameter>
        <parameter name="immediate" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
        <parameter name="wait_" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_get_max_idle_time"
              c:identifier="g_thread_pool_get_max_idle_time">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
    </function>
    <function name="thread_pool_get_max_threads"
              c:identifier="g_thread_pool_get_max_threads">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="pool" transfer-ownership="none">
          <type name="ThreadPool" c:type="GThreadPool*"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_get_max_unused_threads"
              c:identifier="g_thread_pool_get_max_unused_threads">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
    </function>
    <function name="thread_pool_get_num_threads"
              c:identifier="g_thread_pool_get_num_threads">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="pool" transfer-ownership="none">
          <type name="ThreadPool" c:type="GThreadPool*"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_get_num_unused_threads"
              c:identifier="g_thread_pool_get_num_unused_threads">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
    </function>
    <function name="thread_pool_new"
              c:identifier="g_thread_pool_new"
              throws="1">
      <return-value transfer-ownership="full">
        <type name="ThreadPool" c:type="GThreadPool*"/>
      </return-value>
      <parameters>
        <parameter name="func" transfer-ownership="none" closure="1">
          <type name="Func" c:type="GFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="max_threads" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="exclusive" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_push"
              c:identifier="g_thread_pool_push"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pool" transfer-ownership="none">
          <type name="ThreadPool" c:type="GThreadPool*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_set_max_idle_time"
              c:identifier="g_thread_pool_set_max_idle_time">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="interval" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_set_max_threads"
              c:identifier="g_thread_pool_set_max_threads"
              throws="1">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pool" transfer-ownership="none">
          <type name="ThreadPool" c:type="GThreadPool*"/>
        </parameter>
        <parameter name="max_threads" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_set_max_unused_threads"
              c:identifier="g_thread_pool_set_max_unused_threads">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="max_threads" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_set_sort_function"
              c:identifier="g_thread_pool_set_sort_function">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pool" transfer-ownership="none">
          <type name="ThreadPool" c:type="GThreadPool*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_pool_stop_unused_threads"
              c:identifier="g_thread_pool_stop_unused_threads">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="thread_pool_unprocessed"
              c:identifier="g_thread_pool_unprocessed">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="pool" transfer-ownership="none">
          <type name="ThreadPool" c:type="GThreadPool*"/>
        </parameter>
      </parameters>
    </function>
    <function name="thread_self" c:identifier="g_thread_self">
      <return-value transfer-ownership="full">
        <type name="Thread" c:type="GThread*"/>
      </return-value>
    </function>
    <function name="thread_set_priority" c:identifier="g_thread_set_priority">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="thread" transfer-ownership="none">
          <type name="Thread" c:type="GThread*"/>
        </parameter>
        <parameter name="priority" transfer-ownership="none">
          <type name="ThreadPriority" c:type="GThreadPriority"/>
        </parameter>
      </parameters>
    </function>
    <function name="time_val_add" c:identifier="g_time_val_add">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="time_" transfer-ownership="none">
          <type name="TimeVal" c:type="GTimeVal*"/>
        </parameter>
        <parameter name="microseconds" transfer-ownership="none">
          <type name="long" c:type="glong"/>
        </parameter>
      </parameters>
    </function>
    <function name="time_val_from_iso8601"
              c:identifier="g_time_val_from_iso8601">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="iso_date" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="time_" transfer-ownership="none">
          <type name="TimeVal" c:type="GTimeVal*"/>
        </parameter>
      </parameters>
    </function>
    <function name="time_val_to_iso8601" c:identifier="g_time_val_to_iso8601">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="time_" transfer-ownership="none">
          <type name="TimeVal" c:type="GTimeVal*"/>
        </parameter>
      </parameters>
    </function>
    <function name="timeout_add" c:identifier="g_timeout_add_full">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="priority" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="interval" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="function"
                   transfer-ownership="none"
                   scope="notified"
                   closure="3"
                   destroy="4">
          <type name="SourceFunc" c:type="GSourceFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="notify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="timeout_add_seconds"
              c:identifier="g_timeout_add_seconds_full">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="priority" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="interval" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
        <parameter name="function"
                   transfer-ownership="none"
                   scope="notified"
                   closure="3"
                   destroy="4">
          <type name="SourceFunc" c:type="GSourceFunc"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="notify" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="timeout_source_new" c:identifier="g_timeout_source_new">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
      <parameters>
        <parameter name="interval" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="timeout_source_new_seconds"
              c:identifier="g_timeout_source_new_seconds">
      <return-value transfer-ownership="full">
        <type name="Source" c:type="GSource*"/>
      </return-value>
      <parameters>
        <parameter name="interval" transfer-ownership="none">
          <type name="uint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="timer_continue" c:identifier="g_timer_continue">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="timer" transfer-ownership="none">
          <type name="Timer" c:type="GTimer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="timer_destroy" c:identifier="g_timer_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="timer" transfer-ownership="none">
          <type name="Timer" c:type="GTimer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="timer_elapsed" c:identifier="g_timer_elapsed">
      <return-value transfer-ownership="none">
        <type name="double" c:type="gdouble"/>
      </return-value>
      <parameters>
        <parameter name="timer" transfer-ownership="none">
          <type name="Timer" c:type="GTimer*"/>
        </parameter>
        <parameter name="microseconds"
                   direction="out"
                   transfer-ownership="full">
          <type name="ulong" c:type="gulong*"/>
        </parameter>
      </parameters>
    </function>
    <function name="timer_new" c:identifier="g_timer_new">
      <return-value transfer-ownership="full">
        <type name="Timer" c:type="GTimer*"/>
      </return-value>
    </function>
    <function name="timer_reset" c:identifier="g_timer_reset">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="timer" transfer-ownership="none">
          <type name="Timer" c:type="GTimer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="timer_start" c:identifier="g_timer_start">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="timer" transfer-ownership="none">
          <type name="Timer" c:type="GTimer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="timer_stop" c:identifier="g_timer_stop">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="timer" transfer-ownership="none">
          <type name="Timer" c:type="GTimer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="trash_stack_height" c:identifier="g_trash_stack_height">
      <return-value transfer-ownership="none">
        <type name="uint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="stack_p" transfer-ownership="none">
          <type name="TrashStack" c:type="GTrashStack**"/>
        </parameter>
      </parameters>
    </function>
    <function name="trash_stack_peek" c:identifier="g_trash_stack_peek">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="stack_p" transfer-ownership="none">
          <type name="TrashStack" c:type="GTrashStack**"/>
        </parameter>
      </parameters>
    </function>
    <function name="trash_stack_pop" c:identifier="g_trash_stack_pop">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="stack_p" transfer-ownership="none">
          <type name="TrashStack" c:type="GTrashStack**"/>
        </parameter>
      </parameters>
    </function>
    <function name="trash_stack_push" c:identifier="g_trash_stack_push">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="stack_p" transfer-ownership="none">
          <type name="TrashStack" c:type="GTrashStack**"/>
        </parameter>
        <parameter name="data_p" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_destroy" c:identifier="g_tree_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_foreach" c:identifier="g_tree_foreach">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
        <parameter name="func" transfer-ownership="none" closure="2">
          <type name="TraverseFunc" c:type="GTraverseFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_height" c:identifier="g_tree_height">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_insert" c:identifier="g_tree_insert">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_lookup" c:identifier="g_tree_lookup">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_lookup_extended"
              c:identifier="g_tree_lookup_extended">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
        <parameter name="lookup_key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
        <parameter name="orig_key" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer*"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_new" c:identifier="g_tree_new">
      <return-value transfer-ownership="full">
        <type name="Tree" c:type="GTree*"/>
      </return-value>
      <parameters>
        <parameter name="key_compare_func" transfer-ownership="none">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_new_full" c:identifier="g_tree_new_full">
      <return-value transfer-ownership="full">
        <type name="Tree" c:type="GTree*"/>
      </return-value>
      <parameters>
        <parameter name="key_compare_func"
                   transfer-ownership="none"
                   closure="1"
                   destroy="2">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="key_compare_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="key_destroy_func"
                   transfer-ownership="none"
                   destroy="3">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
        <parameter name="value_destroy_func" transfer-ownership="none">
          <type name="DestroyNotify" c:type="GDestroyNotify"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_new_with_data" c:identifier="g_tree_new_with_data">
      <return-value transfer-ownership="full">
        <type name="Tree" c:type="GTree*"/>
      </return-value>
      <parameters>
        <parameter name="key_compare_func"
                   transfer-ownership="none"
                   closure="1">
          <type name="CompareDataFunc" c:type="GCompareDataFunc"/>
        </parameter>
        <parameter name="key_compare_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_nnodes" c:identifier="g_tree_nnodes">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_ref" c:identifier="g_tree_ref">
      <return-value transfer-ownership="full">
        <type name="Tree" c:type="GTree*"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_remove" c:identifier="g_tree_remove">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_replace" c:identifier="g_tree_replace">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_search" c:identifier="g_tree_search">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
        <parameter name="search_func" transfer-ownership="none" closure="2">
          <type name="CompareFunc" c:type="GCompareFunc"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_steal" c:identifier="g_tree_steal">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <type name="any" c:type="gconstpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_traverse" c:identifier="g_tree_traverse">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
        <parameter name="traverse_func" transfer-ownership="none">
          <type name="TraverseFunc" c:type="GTraverseFunc"/>
        </parameter>
        <parameter name="traverse_type" transfer-ownership="none">
          <type name="TraverseType" c:type="GTraverseType"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="tree_unref" c:identifier="g_tree_unref">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tree" transfer-ownership="none">
          <type name="Tree" c:type="GTree*"/>
        </parameter>
      </parameters>
    </function>
    <function name="try_malloc" c:identifier="g_try_malloc">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="n_bytes" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="try_malloc0" c:identifier="g_try_malloc0">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="n_bytes" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="try_realloc" c:identifier="g_try_realloc">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="mem" transfer-ownership="none">
          <type name="any" c:type="gpointer"/>
        </parameter>
        <parameter name="n_bytes" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="tuples_destroy" c:identifier="g_tuples_destroy">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="tuples" transfer-ownership="none">
          <type name="Tuples" c:type="GTuples*"/>
        </parameter>
      </parameters>
    </function>
    <function name="tuples_index" c:identifier="g_tuples_index">
      <return-value transfer-ownership="none">
        <type name="any" c:type="gpointer"/>
      </return-value>
      <parameters>
        <parameter name="tuples" transfer-ownership="none">
          <type name="Tuples" c:type="GTuples*"/>
        </parameter>
        <parameter name="index_" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
        <parameter name="field" transfer-ownership="none">
          <type name="int" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="ucs4_to_utf16" c:identifier="g_ucs4_to_utf16" throws="1">
      <return-value transfer-ownership="full">
        <type name="unichar2" c:type="gunichar2*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="unichar" c:type="gunichar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="long" c:type="glong"/>
        </parameter>
        <parameter name="items_read" direction="out" transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
        <parameter name="items_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
      </parameters>
    </function>
    <function name="ucs4_to_utf8" c:identifier="g_ucs4_to_utf8" throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="unichar" c:type="gunichar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="long" c:type="glong"/>
        </parameter>
        <parameter name="items_read" direction="out" transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
        <parameter name="items_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_break_type" c:identifier="g_unichar_break_type">
      <return-value transfer-ownership="full">
        <type name="UnicodeBreakType" c:type="GUnicodeBreakType"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_combining_class"
              c:identifier="g_unichar_combining_class">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="uc" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_digit_value" c:identifier="g_unichar_digit_value">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_get_mirror_char"
              c:identifier="g_unichar_get_mirror_char">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="ch" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
        <parameter name="mirrored_ch" transfer-ownership="none">
          <type name="unichar" c:type="gunichar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_get_script" c:identifier="g_unichar_get_script">
      <return-value transfer-ownership="full">
        <type name="UnicodeScript" c:type="GUnicodeScript"/>
      </return-value>
      <parameters>
        <parameter name="ch" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_isalnum" c:identifier="g_unichar_isalnum">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_isalpha" c:identifier="g_unichar_isalpha">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_iscntrl" c:identifier="g_unichar_iscntrl">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_isdefined" c:identifier="g_unichar_isdefined">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_isdigit" c:identifier="g_unichar_isdigit">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_isgraph" c:identifier="g_unichar_isgraph">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_islower" c:identifier="g_unichar_islower">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_ismark" c:identifier="g_unichar_ismark">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_isprint" c:identifier="g_unichar_isprint">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_ispunct" c:identifier="g_unichar_ispunct">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_isspace" c:identifier="g_unichar_isspace">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_istitle" c:identifier="g_unichar_istitle">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_isupper" c:identifier="g_unichar_isupper">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_iswide" c:identifier="g_unichar_iswide">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_iswide_cjk" c:identifier="g_unichar_iswide_cjk">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_isxdigit" c:identifier="g_unichar_isxdigit">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_iszerowidth" c:identifier="g_unichar_iszerowidth">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_to_utf8" c:identifier="g_unichar_to_utf8">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
        <parameter name="outbuf" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_tolower" c:identifier="g_unichar_tolower">
      <return-value transfer-ownership="full">
        <type name="unichar" c:type="gunichar"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_totitle" c:identifier="g_unichar_totitle">
      <return-value transfer-ownership="full">
        <type name="unichar" c:type="gunichar"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_toupper" c:identifier="g_unichar_toupper">
      <return-value transfer-ownership="full">
        <type name="unichar" c:type="gunichar"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_type" c:identifier="g_unichar_type">
      <return-value transfer-ownership="full">
        <type name="UnicodeType" c:type="GUnicodeType"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_validate" c:identifier="g_unichar_validate">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="ch" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unichar_xdigit_value"
              c:identifier="g_unichar_xdigit_value">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="unicode_canonical_decomposition"
              c:identifier="g_unicode_canonical_decomposition">
      <return-value transfer-ownership="full">
        <type name="unichar" c:type="gunichar*"/>
      </return-value>
      <parameters>
        <parameter name="ch" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
        <parameter name="result_len" direction="out" transfer-ownership="full">
          <type name="size_t" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="unicode_canonical_ordering"
              c:identifier="g_unicode_canonical_ordering">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <type name="unichar" c:type="gunichar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="unlink" c:identifier="g_unlink">
      <return-value transfer-ownership="none">
        <type name="int" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="filename" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="unsetenv" c:identifier="g_unsetenv">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="variable" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="uri_escape_string" c:identifier="g_uri_escape_string">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="char*"/>
      </return-value>
      <parameters>
        <parameter name="unescaped" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="reserved_chars_allowed" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="allow_utf8" transfer-ownership="none">
          <type name="boolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="uri_list_extract_uris"
              c:identifier="g_uri_list_extract_uris">
      <return-value transfer-ownership="full">
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="uri_list" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="uri_parse_scheme" c:identifier="g_uri_parse_scheme">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="char*"/>
      </return-value>
      <parameters>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="uri_unescape_segment"
              c:identifier="g_uri_unescape_segment">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="char*"/>
      </return-value>
      <parameters>
        <parameter name="escaped_string" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="escaped_string_end" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="illegal_characters" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="uri_unescape_string" c:identifier="g_uri_unescape_string">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="char*"/>
      </return-value>
      <parameters>
        <parameter name="escaped_string" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="illegal_characters" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="usleep" c:identifier="g_usleep">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="microseconds" transfer-ownership="none">
          <type name="ulong" c:type="gulong"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf16_to_ucs4" c:identifier="g_utf16_to_ucs4" throws="1">
      <return-value transfer-ownership="full">
        <type name="unichar" c:type="gunichar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="unichar2" c:type="gunichar2*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="long" c:type="glong"/>
        </parameter>
        <parameter name="items_read" direction="out" transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
        <parameter name="items_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf16_to_utf8" c:identifier="g_utf16_to_utf8" throws="1">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="unichar2" c:type="gunichar2*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="long" c:type="glong"/>
        </parameter>
        <parameter name="items_read" direction="out" transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
        <parameter name="items_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_casefold" c:identifier="g_utf8_casefold">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_collate" c:identifier="g_utf8_collate">
      <return-value transfer-ownership="none">
        <type name="int" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="str1" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="str2" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_collate_key" c:identifier="g_utf8_collate_key">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_collate_key_for_filename"
              c:identifier="g_utf8_collate_key_for_filename">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_find_next_char" c:identifier="g_utf8_find_next_char">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="p" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_find_prev_char" c:identifier="g_utf8_find_prev_char">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="p" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_get_char" c:identifier="g_utf8_get_char">
      <return-value transfer-ownership="full">
        <type name="unichar" c:type="gunichar"/>
      </return-value>
      <parameters>
        <parameter name="p" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_get_char_validated"
              c:identifier="g_utf8_get_char_validated">
      <return-value transfer-ownership="full">
        <type name="unichar" c:type="gunichar"/>
      </return-value>
      <parameters>
        <parameter name="p" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="max_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_normalize" c:identifier="g_utf8_normalize">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="mode" transfer-ownership="none">
          <type name="NormalizeMode" c:type="GNormalizeMode"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_offset_to_pointer"
              c:identifier="g_utf8_offset_to_pointer">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="offset" transfer-ownership="none">
          <type name="long" c:type="glong"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_pointer_to_offset"
              c:identifier="g_utf8_pointer_to_offset">
      <return-value transfer-ownership="none">
        <type name="long" c:type="glong"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="pos" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_prev_char" c:identifier="g_utf8_prev_char">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="p" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_strchr" c:identifier="g_utf8_strchr">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="p" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_strdown" c:identifier="g_utf8_strdown">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_strlen" c:identifier="g_utf8_strlen">
      <return-value transfer-ownership="none">
        <type name="long" c:type="glong"/>
      </return-value>
      <parameters>
        <parameter name="p" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="max" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_strncpy" c:identifier="g_utf8_strncpy">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="dest" transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="src" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="n" transfer-ownership="none">
          <type name="size_t" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_strrchr" c:identifier="g_utf8_strrchr">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="p" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="c" transfer-ownership="none">
          <type name="unichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_strreverse" c:identifier="g_utf8_strreverse">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_strup" c:identifier="g_utf8_strup">
      <return-value transfer-ownership="full">
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_to_ucs4" c:identifier="g_utf8_to_ucs4" throws="1">
      <return-value transfer-ownership="full">
        <type name="unichar" c:type="gunichar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="long" c:type="glong"/>
        </parameter>
        <parameter name="items_read" direction="out" transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
        <parameter name="items_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_to_ucs4_fast" c:identifier="g_utf8_to_ucs4_fast">
      <return-value transfer-ownership="full">
        <type name="unichar" c:type="gunichar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="long" c:type="glong"/>
        </parameter>
        <parameter name="items_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_to_utf16" c:identifier="g_utf8_to_utf16" throws="1">
      <return-value transfer-ownership="full">
        <type name="unichar2" c:type="gunichar2*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <type name="long" c:type="glong"/>
        </parameter>
        <parameter name="items_read" direction="out" transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
        <parameter name="items_written"
                   direction="out"
                   transfer-ownership="full">
          <type name="long" c:type="glong*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utf8_validate" c:identifier="g_utf8_validate">
      <return-value transfer-ownership="none">
        <type name="boolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <type name="utf8" c:type="gchar*"/>
        </parameter>
        <parameter name="max_len" transfer-ownership="none">
          <type name="ssize_t" c:type="gssize"/>
        </parameter>
        <parameter name="end" transfer-ownership="none">
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="warn_message" c:identifier="g_warn_message">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="domain" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="int" c:type="int"/>
        </parameter>
        <parameter name="func" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="warnexpr" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>

Youez - 2016 - github.com/yon3zu
LinuXploit