./pygobject-2.20.0-i686/0000755000000000000000000000000011272037012013101 5ustar rootroot./pygobject-2.20.0-i686/usr/0000755000000000000000000000000011272036675013730 5ustar rootroot./pygobject-2.20.0-i686/usr/share/0000755000000000000000000000000011272036657015032 5ustar rootroot./pygobject-2.20.0-i686/usr/share/pygobject/0000755000000000000000000000000011272036670017013 5ustar rootroot./pygobject-2.20.0-i686/usr/share/pygobject/xsl/0000755000000000000000000000000011272036660017620 5ustar rootroot./pygobject-2.20.0-i686/usr/share/pygobject/xsl/pdf-style.xsl0000644000000000000000000000064011272036627022262 0ustar rootroot ./pygobject-2.20.0-i686/usr/share/pygobject/xsl/ref-html-style.xsl0000644000000000000000000000361211272036627023231 0ustar rootroot <ANCHOR id=" " href=" / "> ./pygobject-2.20.0-i686/usr/share/pygobject/xsl/pdf.xsl0000644000000000000000000001710511272036627021130 0ustar rootroot ]> 0.5in 1 class ( )  : &RE; ,   , , ,          = void  , def ( ) ( ) ./pygobject-2.20.0-i686/usr/share/pygobject/xsl/html.xsl0000644000000000000000000002044611272036627021325 0ustar rootroot ]> style.css
   
--  
      class 
      
      
        (
                )
      
      :&RE;

      
    
,   , , ,          = void  , def ( ) ( )
./pygobject-2.20.0-i686/usr/share/pygobject/xsl/fixxref.py0000644000000000000000000000342711272036627021656 0ustar rootroot#!/usr/bin/env python # -*- Mode: Python; py-indent-offset: 4 -*- import getopt import os import re import sys anchors = {} anchor_pat = re.compile(r'''^\s*''', re.MULTILINE | re.VERBOSE) link_pat = re.compile(r'''(.*?) ''', re.DOTALL | re.VERBOSE) def scan_index_dir(idir): for root, dirs, files in os.walk(idir): if 'index.sgml' in files: scan_index_file(os.path.join(root, 'index.sgml')) return def scan_index_file(ifile): buf = open(ifile).read() for id, href in anchor_pat.findall(buf): anchors[id] = href def fix_xrefs(hdir): for f in os.listdir(hdir): if os.path.splitext(f)[1] == '.html': fix_html_file(os.path.join(hdir, f)) def link_subst(m): id, text = m.groups() if anchors.has_key(id): return '' + text + '' return text def fix_html_file(hfile): buf = open(hfile).read() buf = link_pat.sub(link_subst, buf) open(hfile, 'w').write(buf) def usage(e=None): if e: sys.stderr.write('fixxref.py: %s\n' % e) sys.stderr.write('usage: fixxref.py [-i index-dir] html-dir\n') sys.exit(1) if __name__ == '__main__': try: opts, args = getopt.getopt(sys.argv[1:], "i:h:", ["index-dir=", "html-dir="]) except getopt.error, e: usage(e) index_dirs = [] for opt, arg in opts: if opt in ('-i', '--index-dir'): index_dirs.append(arg) if len(args) != 1: usage() for idir in index_dirs: scan_index_dir(idir) html_dir = args[0] fix_xrefs(html_dir) ./pygobject-2.20.0-i686/usr/share/pygobject/xsl/devhelp.xsl0000644000000000000000000001303311272036627022002 0ustar rootroot book .devhelp , ./pygobject-2.20.0-i686/usr/share/pygobject/xsl/common.xsl0000644000000000000000000000066611272036627021653 0ustar rootroot ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/0000755000000000000000000000000011272036706017312 5ustar rootroot./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/0000755000000000000000000000000011272036711020227 5ustar rootroot./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gfileinputstream.override0000644000000000000000000000467711272036652025374 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2009 Gian Mario Tagliaretti * * gfileinputstream.override: module overrides for GFileInputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_file_input_stream_query_info_async kwargs static PyObject * _wrap_g_file_input_stream_query_info_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; int io_priority = G_PRIORITY_DEFAULT; char *attributes; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.FileInputStream.query_info_async", kwlist, &attributes, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_input_stream_query_info_async(G_FILE_INPUT_STREAM(self->obj), attributes, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gfileenumerator.override0000644000000000000000000001244511272036652025172 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * * gfileenumerator.override: module overrides for GFileEnumerator * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override-slot GFileEnumerator.tp_iter static PyObject* _wrap_g_file_enumerator_tp_iter(PyGObject *self) { Py_INCREF (self); return (PyObject *) self; } %% override-slot GFileEnumerator.tp_iternext static PyObject* _wrap_g_file_enumerator_tp_iternext(PyGObject *iter) { GFileInfo *file_info; GError *error = NULL; if (!iter->obj) { PyErr_SetNone(PyExc_StopIteration); return NULL; } file_info = g_file_enumerator_next_file(G_FILE_ENUMERATOR(iter->obj), NULL, &error); if (pyg_error_check(&error)) { return NULL; } if (!file_info) { PyErr_SetNone(PyExc_StopIteration); return NULL; } return pygobject_new((GObject*)file_info); } %% override g_file_enumerator_next_files_async kwargs static PyObject * _wrap_g_file_enumerator_next_files_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "num_files", "callback", "io_priority", "cancellable", "user_data", NULL }; PyGIONotify *notify; int num_files; int io_priority = G_PRIORITY_DEFAULT; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iO|iOO:gio.FileEnumerator.enumerate_next_files_async", kwlist, &num_files, ¬ify->callback, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_enumerator_next_files_async(G_FILE_ENUMERATOR(self->obj), num_files, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_enumerator_next_files_finish kwargs static PyObject * _wrap_g_file_enumerator_next_files_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GList *next_files, *l; GError *error = NULL; PyObject *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:gio.FileEnumerator.next_files_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; next_files = g_file_enumerator_next_files_finish(G_FILE_ENUMERATOR(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; ret = PyList_New(0); for (l = next_files; l; l = l->next) { GFileInfo *file_info = l->data; PyObject *item = pygobject_new((GObject *)file_info); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(file_info); } g_list_free(next_files); return ret; } %% override g_file_enumerator_close_async kwargs static PyObject * _wrap_g_file_enumerator_close_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:gio.FileEnumerator.close_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_enumerator_close_async(G_FILE_ENUMERATOR(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/ginputstream.override0000644000000000000000000002446211272036653024527 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * * ginputstream.override: module overrides for GInputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% headers #define BUFSIZE 8192 %% override g_input_stream_read kwargs static PyObject * _wrap_g_input_stream_read(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "cancellable", NULL }; PyGObject *pycancellable = NULL; PyObject *v; GCancellable *cancellable; long count = -1; GError *error = NULL; size_t bytesread, buffersize, chunksize; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|lO:InputStream.read", kwlist, &count, &pycancellable)) return NULL; buffersize = (count < 0 ? BUFSIZE : count); if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; v = PyString_FromStringAndSize((char *)NULL, buffersize); if (v == NULL) return NULL; bytesread = 0; for (;;) { pyg_begin_allow_threads; errno = 0; chunksize = g_input_stream_read(G_INPUT_STREAM(self->obj), PyString_AS_STRING((PyStringObject *)v) + bytesread, buffersize - bytesread, cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) { Py_DECREF(v); return NULL; } if (chunksize == 0) { /* End of file. */ break; } bytesread += chunksize; if (bytesread < buffersize) { /* g_input_stream_read() decided to not read full buffer. We * then return early too, even if 'count' is less than 0. */ break; } if (count < 0) { buffersize += BUFSIZE; if (_PyString_Resize(&v, buffersize) < 0) return NULL; } else { /* Got what was requested. */ break; } } if (bytesread != buffersize) _PyString_Resize(&v, bytesread); return v; } %% override g_input_stream_read_all kwargs static PyObject * _wrap_g_input_stream_read_all(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "cancellable", NULL }; PyGObject *pycancellable = NULL; PyObject *v; GCancellable *cancellable; long count = -1; GError *error = NULL; size_t bytesread, buffersize, chunksize; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|lO:InputStream.read", kwlist, &count, &pycancellable)) return NULL; buffersize = (count < 0 ? BUFSIZE : count); if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; v = PyString_FromStringAndSize((char *)NULL, buffersize); if (v == NULL) return NULL; bytesread = 0; for (;;) { pyg_begin_allow_threads; errno = 0; g_input_stream_read_all(G_INPUT_STREAM(self->obj), PyString_AS_STRING((PyStringObject *)v) + bytesread, buffersize - bytesread, &chunksize, cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) { Py_DECREF(v); return NULL; } bytesread += chunksize; if (bytesread < buffersize || chunksize == 0) { /* End of file. */ break; } if (count < 0) { buffersize += BUFSIZE; if (_PyString_Resize(&v, buffersize) < 0) return NULL; } else { /* Got what was requested. */ break; } } if (bytesread != buffersize) _PyString_Resize(&v, bytesread); return v; } %% override g_input_stream_read_async kwargs static PyObject * _wrap_g_input_stream_read_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "callback", "io_priority", "cancellable", "user_data", NULL }; long count = -1; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "lO|iOO:InputStream.read_async", kwlist, &count, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; if (!pygio_notify_allocate_buffer(notify, count)) goto error; pygio_notify_reference_callback(notify); pygio_notify_attach_to_result(notify); g_input_stream_read_async(G_INPUT_STREAM(self->obj), notify->buffer, notify->buffer_size, io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_input_stream_read_finish kwargs static PyObject * _wrap_g_input_stream_read_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; Py_ssize_t bytesread; PyGIONotify *notify; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:gio.InputStream.read_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; bytesread = g_input_stream_read_finish(G_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; if (bytesread == 0) return PyString_FromString(""); notify = pygio_notify_get_attached(result); return PyString_FromStringAndSize(notify->buffer, bytesread); } %% override g_input_stream_close_async kwargs static PyObject * _wrap_g_input_stream_close_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:InputStream.close_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_input_stream_close_async(G_INPUT_STREAM(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_input_stream_skip_async kwargs static PyObject * _wrap_g_input_stream_skip_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "callback", "io_priority", "cancellable", "user_data", NULL }; long count = -1; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "lO|iOO:InputStream.skip_async", kwlist, &count, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_input_stream_skip_async(G_INPUT_STREAM(self->obj), count, io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gio.override0000644000000000000000000002254011272036652022555 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygtk- Python bindings for the GTK toolkit. * Copyright (C) 2008 Johan Dahlin * * gio.override: module wrapping the GIO library * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% modulename gio %% import gobject.GObject as PyGObject_Type %% headers #define NO_IMPORT_PYGOBJECT #include #include #include "pygio-utils.h" #include "pyglib.h" #define BUFSIZE 8192 typedef struct _PyGIONotify PyGIONotify; struct _PyGIONotify { gboolean referenced; PyObject *callback; PyObject *data; gboolean attach_self; gpointer buffer; gsize buffer_size; /* If a structure has any 'slaves', those will reference their * callbacks and be freed together with the 'master'. */ PyGIONotify *slaves; }; static GQuark pygio_notify_get_internal_quark(void) { static GQuark quark = 0; if (!quark) quark = g_quark_from_string("pygio::notify"); return quark; } static PyGIONotify * pygio_notify_new(void) { return g_slice_new0(PyGIONotify); } static PyGIONotify * pygio_notify_new_slave(PyGIONotify* master) { PyGIONotify *slave = pygio_notify_new(); while (master->slaves) master = master->slaves; master->slaves = slave; return slave; } static gboolean pygio_notify_using_optional_callback(PyGIONotify *notify) { if (notify->callback) return TRUE; else { notify->data = NULL; return FALSE; } } static gboolean pygio_notify_callback_is_valid_full(PyGIONotify *notify, const gchar *name) { if (!notify->callback) { PyErr_SetString(PyExc_RuntimeError, "internal error: callback is not set"); return FALSE; } if (!PyCallable_Check(notify->callback)) { gchar *error_message = g_strdup_printf("%s argument not callable", name); PyErr_SetString(PyExc_TypeError, error_message); g_free(error_message); return FALSE; } return TRUE; } static gboolean pygio_notify_callback_is_valid(PyGIONotify *notify) { return pygio_notify_callback_is_valid_full(notify, "callback"); } static void pygio_notify_reference_callback(PyGIONotify *notify) { if (!notify->referenced) { notify->referenced = TRUE; Py_XINCREF(notify->callback); Py_XINCREF(notify->data); if (notify->slaves) pygio_notify_reference_callback(notify->slaves); } } static void pygio_notify_copy_buffer(PyGIONotify *notify, gpointer buffer, gsize buffer_size) { if (buffer_size > 0) { notify->buffer = g_slice_copy(buffer_size, buffer); notify->buffer_size = buffer_size; } } static gboolean pygio_notify_allocate_buffer(PyGIONotify *notify, gsize buffer_size) { if (buffer_size > 0) { notify->buffer = g_slice_alloc(buffer_size); if (!notify->buffer) { PyErr_Format(PyExc_MemoryError, "failed to allocate %d bytes", buffer_size); return FALSE; } notify->buffer_size = buffer_size; } return TRUE; } static void pygio_notify_attach_to_result(PyGIONotify *notify) { notify->attach_self = TRUE; } static PyGIONotify * pygio_notify_get_attached(PyGObject *result) { return g_object_get_qdata(G_OBJECT(result->obj), pygio_notify_get_internal_quark()); } static void pygio_notify_free(PyGIONotify *notify) { if (notify) { if (notify->slaves) pygio_notify_free(notify->slaves); if (notify->referenced) { PyGILState_STATE state; state = pyg_gil_state_ensure(); Py_XDECREF(notify->callback); Py_XDECREF(notify->data); pyg_gil_state_release(state); } if (notify->buffer) g_slice_free1(notify->buffer_size, notify->buffer); g_slice_free(PyGIONotify, notify); } } static void async_result_callback_marshal(GObject *source_object, GAsyncResult *result, PyGIONotify *notify) { PyObject *ret; PyGILState_STATE state; state = pyg_gil_state_ensure(); if (!notify->referenced) g_warning("pygio_notify_reference_callback() hasn't been called before using the structure"); if (notify->attach_self) { g_object_set_qdata_full(G_OBJECT(result), pygio_notify_get_internal_quark(), notify, (GDestroyNotify) pygio_notify_free); } if (notify->data) ret = PyEval_CallFunction(notify->callback, "NNO", pygobject_new(source_object), pygobject_new((GObject *)result), notify->data); else ret = PyObject_CallFunction(notify->callback, "NN", pygobject_new(source_object), pygobject_new((GObject *)result)); if (ret == NULL) { PyErr_Print(); PyErr_Clear(); } Py_XDECREF(ret); /* Otherwise the structure is attached to 'result' and will be * freed when that object dies. */ if (!notify->attach_self) pygio_notify_free(notify); pyg_gil_state_release(state); } %% include gappinfo.override gapplaunchcontext.override gbufferedinputstream.override gdatainputstream.override gdrive.override gfile.override gfileattribute.override gfileenumerator.override gfileinfo.override gfileinputstream.override gfileoutputstream.override gicon.override gmemoryinputstream.override gmemoryoutputstream.override gmount.override ginputstream.override goutputstream.override gvolume.override gvolumemonitor.override %% ignore-glob *_get_type *free *_ref *_unref g_async_result_get_user_data g_file_new_from_commandline_arg g_file_new_from_path g_file_new_from_uri g_file_hash g_io_error_quark g_simple_async_result_new_error g_simple_async_report_error_in_idle g_simple_async_result_set_op_res_gpointer g_simple_async_result_get_op_res_gpointer g_simple_async_result_get_source_tag g_simple_async_result_run_in_thread g_simple_async_result_set_from_error g_simple_async_result_set_error g_simple_async_result_set_error_va g_io_module* g_io_scheduler_* %% override g_app_info_get_all noargs static PyObject * _wrap_g_app_info_get_all (PyGObject *self) { GList *list, *l; PyObject *ret; list = g_app_info_get_all (); ret = PyList_New(0); for (l = list; l; l = l->next) { GObject *obj = l->data; PyObject *item = pygobject_new(obj); PyList_Append(ret, item); Py_DECREF(item); } g_list_free(list); return ret; } %% override g_app_info_get_all_for_type args static PyObject * _wrap_g_app_info_get_all_for_type (PyGObject *self, PyObject *args) { GList *list, *l; PyObject *ret; gchar *type; if (!PyArg_ParseTuple (args, "s:app_info_get_all_for_type", &type)) return NULL; list = g_app_info_get_all_for_type (type); ret = PyList_New(0); for (l = list; l; l = l->next) { GObject *obj = l->data; PyObject *item = pygobject_new(obj); PyList_Append(ret, item); Py_DECREF(item); } g_list_free(list); return ret; } %% override g_content_type_guess kwargs static PyObject * _wrap_g_content_type_guess(PyGObject *self, PyObject *args, PyObject *kwargs) { char *kwlist[] = {"filename", "data", "want_uncertain", NULL}; char *filename = NULL, *data = NULL, *type; int data_size = 0; gboolean result_uncertain, want_uncertain = FALSE; PyObject *ret; if (!PyArg_ParseTupleAndKeywords (args, kwargs, "|zz#i:g_content_type_guess", kwlist, &filename, &data, &data_size, &want_uncertain)) return NULL; if (!filename && !data) { PyErr_SetString(PyExc_TypeError, "need at least one argument"); return NULL; } type = g_content_type_guess(filename, (guchar *) data, data_size, &result_uncertain); if (want_uncertain) { ret = Py_BuildValue("zN", type, PyBool_FromLong(result_uncertain)); } else { ret = PyString_FromString(type); } g_free(type); return ret; } %% override g_vfs_get_supported_uri_schemes noargs static PyObject * _wrap_g_vfs_get_supported_uri_schemes(PyGObject *self) { const char * const *names; PyObject *ret; names = g_vfs_get_supported_uri_schemes(G_VFS(self->obj)); ret = PyList_New(0); while (names && *names) { PyObject *item = PyString_FromString(names[0]); PyList_Append(ret, item); Py_DECREF(item); names++; } return ret; } %% override g_content_types_get_registered noargs static PyObject * _wrap_g_content_types_get_registered(PyObject *self) { GList *list, *l; PyObject *ret; list = g_content_types_get_registered(); ret = PyList_New(0); for (l = list; l; l = l->next) { char *content_type = l->data; PyObject *string = PyString_FromString(content_type); PyList_Append(ret, string); Py_DECREF(string); g_free(content_type); } g_list_free(list); return ret; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gvolumemonitor.override0000644000000000000000000000512611272036653025067 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * * gvolumemonitor.override: module overrides for GVolumeMonitor * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override-slot GVolumeMonitor.tp_new static PyObject * _wrap_g_volume_monitor_tp_new(PyObject *type, PyObject *args, PyObject *kwargs) { return pygobject_new(G_OBJECT(g_volume_monitor_get())); } %% override g_volume_monitor_get_connected_drives noargs static PyObject * _wrap_g_volume_monitor_get_connected_drives (PyGObject *self) { GList *list, *l; PyObject *ret; list = g_volume_monitor_get_connected_drives (G_VOLUME_MONITOR (self->obj)); ret = PyList_New(0); for (l = list; l; l = l->next) { GDrive *drive = l->data; PyObject *item = pygobject_new((GObject *)drive); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(drive); } g_list_free(list); return ret; } %% override g_volume_monitor_get_volumes noargs static PyObject * _wrap_g_volume_monitor_get_volumes (PyGObject *self) { GList *list, *l; PyObject *ret; list = g_volume_monitor_get_volumes (G_VOLUME_MONITOR (self->obj)); ret = PyList_New(0); for (l = list; l; l = l->next) { GVolume *volume = l->data; PyObject *item = pygobject_new((GObject *)volume); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(volume); } g_list_free(list); return ret; } %% override g_volume_monitor_get_mounts noargs static PyObject * _wrap_g_volume_monitor_get_mounts (PyGObject *self) { GList *list, *l; PyObject *ret; list = g_volume_monitor_get_mounts (G_VOLUME_MONITOR (self->obj)); ret = PyList_New(0); for (l = list; l; l = l->next) { GMount *mount = l->data; PyObject *item = pygobject_new((GObject *)mount); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(mount); } g_list_free(list); return ret; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gmemoryinputstream.override0000644000000000000000000000604411272036653025754 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * Copyright (C) 2009 Gian Mario Tagliaretti * * gmemoryinputstream.override: module overrides for GMemoryInputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_memory_input_stream_add_data kwargs static PyObject * _wrap_g_memory_input_stream_add_data(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", NULL }; PyObject *data; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:gio.MemoryInputStream.add_data", kwlist, &data)) return NULL; if (data != Py_None) { char *copy; int length; if (!PyString_Check(data)) { PyErr_SetString(PyExc_TypeError, "data must be a string or None"); return NULL; } length = PyString_Size(data); copy = g_malloc(length); memcpy(copy, PyString_AsString(data), length); g_memory_input_stream_add_data(G_MEMORY_INPUT_STREAM(self->obj), copy, length, (GDestroyNotify) g_free); } Py_INCREF(Py_None); return Py_None; } %% override g_memory_input_stream_new_from_data kwargs static PyObject * _wrap_g_memory_input_stream_new_from_data(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", NULL }; PyObject *data; GInputStream *stream = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:gio.memory_input_stream_new_from_data", kwlist, &data)) return NULL; if (data != Py_None) { char *copy; int length; if (!PyString_Check(data)) { PyErr_SetString(PyExc_TypeError, "data must be a string or None"); return NULL; } length = PyString_Size(data); copy = g_malloc(length); memcpy(copy, PyString_AsString(data), length); stream = g_memory_input_stream_new_from_data(copy, length, (GDestroyNotify) g_free); } return pygobject_new((GObject *)stream); } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gmemoryoutputstream.override0000644000000000000000000000320711272036653026153 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * * gmemoryoutputstream.override: module overrides for GMemoryOutputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_memory_output_stream_new noargs static int _wrap_g_memory_output_stream_new(PyGObject *self) { self->obj = (GObject *)g_memory_output_stream_new(NULL, 0, g_realloc, g_free); if (!self->obj) { PyErr_SetString(PyExc_RuntimeError, "could not create gio.MemoryOutputStream object"); return -1; } pygobject_register_wrapper((PyObject *)self); return 0; } %% override g_memory_output_stream_get_data noargs static PyObject * _wrap_g_memory_output_stream_get_data(PyGObject *self) { GMemoryOutputStream *stream = G_MEMORY_OUTPUT_STREAM(self->obj); return PyString_FromStringAndSize(g_memory_output_stream_get_data(stream), g_seekable_tell(G_SEEKABLE(stream))); } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gmount.override0000644000000000000000000002325211272036653023312 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2009 Gian Mario Tagliaretti * * gmount.override: module overrides for GMount * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_mount_guess_content_type kwargs static PyObject * _wrap_g_mount_guess_content_type(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "force_rescan", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyGObject *py_cancellable = NULL; GCancellable *cancellable; gboolean force_rescan; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "Oi|OO:Mount.guess_content_type", kwlist, ¬ify->callback, &force_rescan, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_mount_guess_content_type(G_MOUNT(self->obj), force_rescan, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_mount_guess_content_type_finish kwargs static PyObject * _wrap_g_mount_guess_content_type_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; char **ret; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:Mount.guess_content_type_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_mount_guess_content_type_finish(G_MOUNT(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; if (ret && ret[0] != NULL) { py_ret = strv_to_pylist(ret); g_strfreev (ret); } else { py_ret = Py_None; Py_INCREF(py_ret); } return py_ret; } %% override g_mount_guess_content_type_sync kwargs static PyObject * _wrap_g_mount_guess_content_type_sync(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "force_rescan", "cancellable", NULL }; gboolean force_rescan; PyGObject *py_cancellable = NULL; GCancellable *cancellable; GError *error = NULL; char **ret; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "i|O:Mount.guess_content_type_sync", kwlist, &force_rescan, &py_cancellable)) return NULL; if (!pygio_check_cancellable(py_cancellable, &cancellable)) return NULL; ret = g_mount_guess_content_type_sync(G_MOUNT(self->obj), force_rescan, cancellable, &error); if (pyg_error_check(&error)) return NULL; if (ret && ret[0] != NULL) { py_ret = strv_to_pylist(ret); g_strfreev (ret); } else { py_ret = Py_None; Py_INCREF(py_ret); } return py_ret; } %% override g_mount_remount kwargs static PyObject * _wrap_g_mount_remount(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "mount_operation", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; GMountUnmountFlags flags = G_MOUNT_UNMOUNT_NONE; PyObject *py_mount_operation = Py_None; GMountOperation *mount_operation = NULL; PyGObject *py_cancellable = NULL; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOOO:gio.Mount.remount", kwlist, ¬ify->callback, &py_flags, &py_mount_operation, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_mount_operation != Py_None) { if (!pygobject_check(py_mount_operation, &PyGMountOperation_Type)) { PyErr_SetString(PyExc_TypeError, "mount_operation must be a gio.MountOperation or None"); goto error; } mount_operation = G_MOUNT_OPERATION(pygobject_get(py_mount_operation)); } if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_UNMOUNT_FLAGS, py_flags, (gpointer) &flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); pyg_begin_allow_threads; g_mount_remount(G_MOUNT(self->obj), flags, mount_operation, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); pyg_end_allow_threads; Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_mount_unmount kwargs static PyObject * _wrap_g_mount_unmount(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *py_cancellable = NULL; GMountUnmountFlags flags = G_MOUNT_UNMOUNT_NONE; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOO:gio.Mount.unmount", kwlist, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_UNMOUNT_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); pyg_begin_allow_threads; g_mount_unmount(G_MOUNT(self->obj), flags, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); pyg_end_allow_threads; Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_mount_eject kwargs static PyObject * _wrap_g_mount_eject(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; GMountUnmountFlags flags = G_MOUNT_UNMOUNT_NONE; PyGObject *py_cancellable = NULL; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOO:gio.Mount.eject", kwlist, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_UNMOUNT_FLAGS, py_flags, (gpointer) &flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); pyg_begin_allow_threads; g_mount_eject(G_MOUNT(self->obj), flags, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); pyg_end_allow_threads; Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override-slot GMount.tp_repr static PyObject * _wrap_g_mount_tp_repr(PyGObject *self) { char *name = g_mount_get_name(G_MOUNT(self->obj)); char *uuid = g_mount_get_uuid(G_MOUNT(self->obj)); gchar *representation; PyObject *result; if (name) { if (uuid) { representation = g_strdup_printf("<%s at %p: %s (%s)>", self->ob_type->tp_name, self, name, uuid); } else { representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, name); } } else representation = g_strdup_printf("<%s at %p: UNKNOWN NAME>", self->ob_type->tp_name, self); g_free(name); g_free(uuid); result = PyString_FromString(representation); g_free(representation); return result; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gbufferedinputstream.override0000644000000000000000000000504011272036652026220 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2009 Gian Mario Tagliaretti * * gbufferedinputstream.override: module overrides for GBufferedInputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_buffered_input_stream_fill_async kwargs static PyObject * _wrap_g_buffered_input_stream_fill_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "callback", "io_priority", "cancellable", "user_data", NULL }; long count = -1; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "lO|iOO:gio.BufferedInputStream.fill_async", kwlist, &count, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_buffered_input_stream_fill_async(G_BUFFERED_INPUT_STREAM(self->obj), count, io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/unix.override0000644000000000000000000000305311272036653022761 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * * unixmodule.c: module wrapping the GIO UNIX library * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% headers #define NO_IMPORT_PYGOBJECT #include #include #include #include #include #define GIO_UNIX_MOUNT_ENTRY_TYPE (_gio_unix_mount_entry_get_type ()) static GType _gio_unix_mount_entry_get_type (void) { static GType our_type = 0; if (our_type == 0) our_type = g_pointer_type_register_static ("GUnixMountEntry"); return our_type; } %% modulename gio.unix %% import gobject.GObject as PyGObject_Type import gio.InputStream as PyGInputStream_Type import gio.OutputStream as PyGOutputStream_Type %% ignore-glob *_get_type %% ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gio.defs0000644000000000000000000037766611272036652021705 0ustar rootroot;; -*- scheme -*- ;; From gappinfo.h (define-function app_info_get_type (c-name "g_app_info_get_type") (return-type "GType") ) (define-function app_launch_context_get_type (c-name "g_app_launch_context_get_type") (return-type "GType") ) (define-function app_info_create_from_commandline (c-name "g_app_info_create_from_commandline") (is-constructor-of "GAppInfo") (return-type "GAppInfo*") (parameters '("const-char*" "commandline") '("const-char*" "application_name" (null-ok) (default "NULL")) '("GAppInfoCreateFlags" "flags" (default "G_APP_INFO_CREATE_NONE")) '("GError**" "error") ) ) (define-method dup (of-object "GAppInfo") (c-name "g_app_info_dup") (return-type "GAppInfo*") (caller-owns-return #t) ) (define-method equal (of-object "GAppInfo") (c-name "g_app_info_equal") (return-type "gboolean") (parameters '("GAppInfo*" "appinfo2") ) ) (define-method get_id (of-object "GAppInfo") (c-name "g_app_info_get_id") (return-type "const-char*") ) (define-method get_name (of-object "GAppInfo") (c-name "g_app_info_get_name") (return-type "const-char*") ) (define-method get_description (of-object "GAppInfo") (c-name "g_app_info_get_description") (return-type "const-char*") ) (define-method get_executable (of-object "GAppInfo") (c-name "g_app_info_get_executable") (return-type "const-char*") ) (define-method get_icon (of-object "GAppInfo") (c-name "g_app_info_get_icon") (return-type "GIcon*") ) ;; ;; wrapped in gappinfo.override ;; (define-method launch (docstring "launch (files=None, launch_context=None) -> gboolean\n" "\n" "Launches the application. Passes files to the launched application\n" "as arguments, using the optional launch_context to get information\n" "about the details of the launcher (like what screen it is on).\n" "On error, error will be set accordingly.\n\n" "Note that even if the launch is successful the application launched\n" "can fail to start if it runs into problems during startup.\n" "There is no way to detect this.\n\n" "Some URIs can be changed when passed through a gio.File\n" "(for instance unsupported uris with strange formats like mailto:),\n" "so if you have a textual uri you want to pass in as argument,\n" "consider using gio.AppInfo.launch_uris() instead." ) (of-object "GAppInfo") (c-name "g_app_info_launch") (return-type "gboolean") (parameters '("GList*" "files") '("GAppLaunchContext*" "launch_context") '("GError**" "error") ) ) (define-method supports_uris (of-object "GAppInfo") (c-name "g_app_info_supports_uris") (return-type "gboolean") ) (define-method supports_files (of-object "GAppInfo") (c-name "g_app_info_supports_files") (return-type "gboolean") ) ;; ;; wrapped in gappinfo.override ;; (define-method launch_uris (docstring "launch_uris (files=None, launch_context=None) -> gboolean\n" "\n" "Launches the application. Passes files to the launched application\n" "as arguments, using the optional launch_context to get information\n" "about the details of the launcher (like what screen it is on).\n" "On error, error will be set accordingly.\n\n" "Note that even if the launch is successful the application launched\n" "can fail to start if it runs into problems during startup.\n" "There is no way to detect this.\n\n" ) (of-object "GAppInfo") (c-name "g_app_info_launch_uris") (return-type "gboolean") (parameters '("GList*" "uris") '("GAppLaunchContext*" "launch_context") '("GError**" "error") ) ) (define-method should_show (of-object "GAppInfo") (c-name "g_app_info_should_show") (return-type "gboolean") ) (include "gio-types.defs") (define-method set_as_default_for_type (of-object "GAppInfo") (c-name "g_app_info_set_as_default_for_type") (return-type "gboolean") (parameters '("const-char*" "content_type") '("GError**" "error") ) ) (define-method set_as_default_for_extension (of-object "GAppInfo") (c-name "g_app_info_set_as_default_for_extension") (return-type "gboolean") (parameters '("const-char*" "extension") '("GError**" "error") ) ) (define-method add_supports_type (of-object "GAppInfo") (c-name "g_app_info_add_supports_type") (return-type "gboolean") (parameters '("const-char*" "content_type") '("GError**" "error") ) ) (define-method can_remove_supports_type (of-object "GAppInfo") (c-name "g_app_info_can_remove_supports_type") (return-type "gboolean") ) (define-method remove_supports_type (of-object "GAppInfo") (c-name "g_app_info_remove_supports_type") (return-type "gboolean") (parameters '("const-char*" "content_type") '("GError**" "error") ) ) ;; ;; wrapped in gio.override ;; (define-function app_info_get_all (c-name "g_app_info_get_all") (return-type "GList*") ) ;; ;; wrapped in gio.override ;; (define-function app_info_get_all_for_type (c-name "g_app_info_get_all_for_type") (return-type "GList*") (parameters '("const-char*" "content_type") ) ) (define-function app_info_get_default_for_type (c-name "g_app_info_get_default_for_type") (return-type "GAppInfo*") (parameters '("const-char*" "content_type") '("gboolean" "must_support_uris") ) ) (define-function app_info_get_default_for_uri_scheme (c-name "g_app_info_get_default_for_uri_scheme") (return-type "GAppInfo*") (parameters '("const-char*" "uri_scheme") ) ) (define-function app_launch_context_new (c-name "g_app_launch_context_new") (is-constructor-of "GAppLaunchContext") (return-type "GAppLaunchContext*") ) ;; ;; wrapped in gapplaunchcontext.override ;; (define-method get_display (of-object "GAppLaunchContext") (c-name "g_app_launch_context_get_display") (return-type "char*") (parameters '("GAppInfo*" "info") '("GList*" "files") ) ) ;; ;; wrapped in gapplaunchcontext.override ;; (define-method get_startup_notify_id (of-object "GAppLaunchContext") (c-name "g_app_launch_context_get_startup_notify_id") (return-type "char*") (parameters '("GAppInfo*" "info") '("GList*" "files") ) ) (define-method launch_failed (of-object "GAppLaunchContext") (c-name "g_app_launch_context_launch_failed") (return-type "none") (parameters '("const-char*" "startup_notify_id") ) ) (define-function app_info_reset_type_associations (c-name "g_app_info_reset_type_associations") (return-type "none") (parameters '("const-char*" "content_type") ) ) (define-method can_delete (of-object "GAppInfo") (c-name "g_app_info_can_delete") (return-type "gboolean") ) (define-method delete (of-object "GAppInfo") (c-name "g_app_info_delete") (return-type "gboolean") ) (define-method get_commandline (of-object "GAppInfo") (c-name "g_app_info_get_commandline") (return-type "const-char*") ) ;; From gasynchelper.h ;; From gasyncresult.h (define-function async_result_get_type (c-name "g_async_result_get_type") (return-type "GType") ) (define-method get_user_data (of-object "GAsyncResult") (c-name "g_async_result_get_user_data") (return-type "gpointer") ) (define-method get_source_object (of-object "GAsyncResult") (c-name "g_async_result_get_source_object") (return-type "GObject*") ) ;; From gbufferedinputstream.h (define-function buffered_input_stream_get_type (c-name "g_buffered_input_stream_get_type") (return-type "GType") ) (define-function buffered_input_stream_new (c-name "g_buffered_input_stream_new") (is-constructor-of "GBufferedInputStream") (return-type "GInputStream*") (properties '("base_stream") ) ) (define-function buffered_input_stream_new_sized (c-name "g_buffered_input_stream_new_sized") (return-type "GInputStream*") (parameters '("GInputStream*" "base_stream") '("gsize" "size") ) ) (define-method get_buffer_size (of-object "GBufferedInputStream") (c-name "g_buffered_input_stream_get_buffer_size") (return-type "gsize") ) (define-method set_buffer_size (of-object "GBufferedInputStream") (c-name "g_buffered_input_stream_set_buffer_size") (return-type "none") (parameters '("gsize" "size") ) ) (define-method get_available (of-object "GBufferedInputStream") (c-name "g_buffered_input_stream_get_available") (return-type "gsize") ) (define-method peek (of-object "GBufferedInputStream") (c-name "g_buffered_input_stream_peek") (return-type "gsize") (parameters '("void*" "buffer") '("gsize" "offset") '("gsize" "count") ) ) (define-method peek_buffer (of-object "GBufferedInputStream") (c-name "g_buffered_input_stream_peek_buffer") (return-type "const-void*") (parameters '("gsize*" "count") ) ) (define-method fill (of-object "GBufferedInputStream") (c-name "g_buffered_input_stream_fill") (return-type "gssize") (unblock-threads #t) (parameters '("gssize" "count") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method fill_async (of-object "GBufferedInputStream") (c-name "g_buffered_input_stream_fill_async") (return-type "none") (parameters '("gssize" "count") '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method fill_finish (of-object "GBufferedInputStream") (c-name "g_buffered_input_stream_fill_finish") (return-type "gssize") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method read_byte (of-object "GBufferedInputStream") (c-name "g_buffered_input_stream_read_byte") (return-type "int") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; From gbufferedoutputstream.h (define-function buffered_output_stream_get_type (c-name "g_buffered_output_stream_get_type") (return-type "GType") ) (define-function buffered_output_stream_new (c-name "g_buffered_output_stream_new") (is-constructor-of "GBufferedOutputStream") (return-type "GOutputStream*") (properties '("base_stream") ) ) (define-function buffered_output_stream_new_sized (c-name "g_buffered_output_stream_new_sized") (return-type "GOutputStream*") (parameters '("GOutputStream*" "base_stream") '("guint" "size") ) ) (define-method get_buffer_size (of-object "GBufferedOutputStream") (c-name "g_buffered_output_stream_get_buffer_size") (return-type "gsize") ) (define-method set_buffer_size (of-object "GBufferedOutputStream") (c-name "g_buffered_output_stream_set_buffer_size") (return-type "none") (parameters '("gsize" "size") ) ) (define-method get_auto_grow (of-object "GBufferedOutputStream") (c-name "g_buffered_output_stream_get_auto_grow") (return-type "gboolean") ) (define-method set_auto_grow (of-object "GBufferedOutputStream") (c-name "g_buffered_output_stream_set_auto_grow") (return-type "none") (parameters '("gboolean" "auto_grow") ) ) ;; From gcancellable.h (define-function cancellable_get_type (c-name "g_cancellable_get_type") (return-type "GType") ) (define-function cancellable_new (c-name "g_cancellable_new") (is-constructor-of "GCancellable") (return-type "GCancellable*") ) (define-method is_cancelled (of-object "GCancellable") (c-name "g_cancellable_is_cancelled") (return-type "gboolean") ) (define-method set_error_if_cancelled (of-object "GCancellable") (c-name "g_cancellable_set_error_if_cancelled") (return-type "gboolean") (parameters '("GError**" "error") ) ) (define-method get_fd (of-object "GCancellable") (c-name "g_cancellable_get_fd") (return-type "int") ) (define-method make_pollfd (of-object "GCancellable") (c-name "g_cancellable_make_pollfd") (return-type "none") (parameters '("GPollFD*" "pollfd") ) ) (define-function cancellable_get_current (c-name "g_cancellable_get_current") (return-type "GCancellable*") ) (define-method push_current (of-object "GCancellable") (c-name "g_cancellable_push_current") (return-type "none") ) (define-method pop_current (of-object "GCancellable") (c-name "g_cancellable_pop_current") (return-type "none") ) (define-method reset (of-object "GCancellable") (c-name "g_cancellable_reset") (return-type "none") ) (define-method cancel (of-object "GCancellable") (c-name "g_cancellable_cancel") (return-type "none") ) ;; From gcontenttype.h (define-function content_type_equals (c-name "g_content_type_equals") (return-type "gboolean") (parameters '("const-char*" "type1") '("const-char*" "type2") ) ) (define-function content_type_is_a (c-name "g_content_type_is_a") (return-type "gboolean") (parameters '("const-char*" "type") '("const-char*" "supertype") ) ) (define-function content_type_is_unknown (c-name "g_content_type_is_unknown") (return-type "gboolean") (parameters '("const-char*" "type") ) ) (define-function content_type_get_description (c-name "g_content_type_get_description") (return-type "char*") (parameters '("const-char*" "type") ) ) (define-function content_type_get_mime_type (c-name "g_content_type_get_mime_type") (return-type "char*") (parameters '("const-char*" "type") ) ) (define-function content_type_get_icon (c-name "g_content_type_get_icon") (return-type "GIcon*") (caller-owns-return #t) (parameters '("const-char*" "type") ) ) (define-function content_type_can_be_executable (c-name "g_content_type_can_be_executable") (return-type "gboolean") (parameters '("const-char*" "type") ) ) (define-function content_type_from_mime_type (c-name "g_content_type_from_mime_type") (return-type "char*") (parameters '("const-char*" "mime_type") ) ) ;; ;; wrapped in gio.override ;; (define-function content_type_guess (docstring "content_type_guess([filename, data, want_uncertain]) -> mime type\n" "\n" "Guesses the content type based on the parameters passed.\n" "Either filename or data must be specified\n" "Returns a string containing the mime type.\n" "If want_uncertain is set to True, return a tuple with the mime type and \n" "True/False if the type guess was uncertain or not.") (c-name "g_content_type_guess") (return-type "char*") (parameters '("const-char*" "filename") '("const-guchar*" "data") '("gsize" "data_size") '("gboolean*" "result_uncertain") ) ) (define-function content_type_guess_for_tree (c-name "g_content_type_guess_for_tree") (return-type "char**") (parameters '("GFile*" "root") ) ) ;; ;; wrapped in gio.override ;; (define-function content_types_get_registered (c-name "g_content_types_get_registered") (return-type "GList*") ) ;; From gdatainputstream.h (define-function data_input_stream_get_type (c-name "g_data_input_stream_get_type") (return-type "GType") ) (define-function data_input_stream_new (c-name "g_data_input_stream_new") (is-constructor-of "GDataInputStream") (return-type "GDataInputStream*") (properties '("base_stream") ) ) (define-method set_byte_order (of-object "GDataInputStream") (c-name "g_data_input_stream_set_byte_order") (return-type "none") (parameters '("GDataStreamByteOrder" "order") ) ) (define-method get_byte_order (of-object "GDataInputStream") (c-name "g_data_input_stream_get_byte_order") (return-type "GDataStreamByteOrder") ) (define-method set_newline_type (of-object "GDataInputStream") (c-name "g_data_input_stream_set_newline_type") (return-type "none") (parameters '("GDataStreamNewlineType" "type") ) ) (define-method get_newline_type (of-object "GDataInputStream") (c-name "g_data_input_stream_get_newline_type") (return-type "GDataStreamNewlineType") ) (define-method read_byte (of-object "GDataInputStream") (c-name "g_data_input_stream_read_byte") (return-type "guchar") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method read_int16 (of-object "GDataInputStream") (c-name "g_data_input_stream_read_int16") (return-type "gint16") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method read_uint16 (of-object "GDataInputStream") (c-name "g_data_input_stream_read_uint16") (return-type "guint16") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method read_int32 (of-object "GDataInputStream") (c-name "g_data_input_stream_read_int32") (return-type "gint32") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method read_uint32 (of-object "GDataInputStream") (c-name "g_data_input_stream_read_uint32") (return-type "guint32") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method read_int64 (of-object "GDataInputStream") (c-name "g_data_input_stream_read_int64") (return-type "gint64") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method read_uint64 (of-object "GDataInputStream") (c-name "g_data_input_stream_read_uint64") (return-type "guint64") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gdatainputstream.override ;; (define-method read_line (of-object "GDataInputStream") (docstring "S.read_line([cancellable]) -> str\n" "Read a line from the stream. Return value includes ending newline\n" "character.") (c-name "g_data_input_stream_read_line") (return-type "char*") (parameters '("gsize*" "length") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gdatainputstream.override ;; (define-method read_until (of-object "GDataInputStream") (docstring "S.read_until(stop_chars, [cancellable]) -> str\n" "Read characters from the string, stopping at the end or upon reading\n" "any character in stop_chars. Return value does not include the stopping\n" "character.") (c-name "g_data_input_stream_read_until") (return-type "char*") (parameters '("const-gchar*" "stop_chars") '("gsize*" "length") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method read_until_async (of-object "GDataInputStream") (c-name "g_data_input_stream_read_until_async") (return-type "none") (parameters '("const-gchar*" "stop_chars") '("gint" "io_priority") '("GCancellable*" "cancellable") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method read_until_finish (of-object "GDataInputStream") (c-name "g_data_input_stream_read_until_finish") (return-type "char*") (parameters '("GAsyncResult*" "result") '("gsize*" "length") '("GError**" "error") ) ) (define-method read_line_async (of-object "GDataInputStream") (c-name "g_data_input_stream_read_line_async") (return-type "none") (parameters '("gint" "io_priority") '("GCancellable*" "cancellable") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method read_line_finish (of-object "GDataInputStream") (c-name "g_data_input_stream_read_line_finish") (return-type "char*") (parameters '("GAsyncResult*" "result") '("gsize*" "length") '("GError**" "error") ) ) ;; From gdataoutputstream.h (define-function data_output_stream_get_type (c-name "g_data_output_stream_get_type") (return-type "GType") ) (define-function data_output_stream_new (c-name "g_data_output_stream_new") (is-constructor-of "GDataOutputStream") (return-type "GDataOutputStream*") (properties '("base_stream") ) ) (define-method set_byte_order (of-object "GDataOutputStream") (c-name "g_data_output_stream_set_byte_order") (return-type "none") (parameters '("GDataStreamByteOrder" "order") ) ) (define-method get_byte_order (of-object "GDataOutputStream") (c-name "g_data_output_stream_get_byte_order") (return-type "GDataStreamByteOrder") ) (define-method put_byte (of-object "GDataOutputStream") (c-name "g_data_output_stream_put_byte") (return-type "gboolean") (parameters '("guchar" "data") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method put_int16 (of-object "GDataOutputStream") (c-name "g_data_output_stream_put_int16") (return-type "gboolean") (parameters '("gint16" "data") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method put_uint16 (of-object "GDataOutputStream") (c-name "g_data_output_stream_put_uint16") (return-type "gboolean") (parameters '("guint16" "data") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method put_int32 (of-object "GDataOutputStream") (c-name "g_data_output_stream_put_int32") (return-type "gboolean") (parameters '("gint32" "data") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method put_uint32 (of-object "GDataOutputStream") (c-name "g_data_output_stream_put_uint32") (return-type "gboolean") (parameters '("guint32" "data") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method put_int64 (of-object "GDataOutputStream") (c-name "g_data_output_stream_put_int64") (return-type "gboolean") (parameters '("gint64" "data") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method put_uint64 (of-object "GDataOutputStream") (c-name "g_data_output_stream_put_uint64") (return-type "gboolean") (parameters '("guint64" "data") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method put_string (of-object "GDataOutputStream") (c-name "g_data_output_stream_put_string") (return-type "gboolean") (parameters '("const-char*" "str") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; From gdrive.h (define-function drive_get_type (c-name "g_drive_get_type") (return-type "GType") ) (define-method get_name (of-object "GDrive") (c-name "g_drive_get_name") (return-type "char*") ) (define-method get_icon (of-object "GDrive") (c-name "g_drive_get_icon") (return-type "GIcon*") (caller-owns-return #t) ) (define-method has_volumes (of-object "GDrive") (c-name "g_drive_has_volumes") (return-type "gboolean") ) ;; ;; wrapped in gdrive.override ;; (define-method get_volumes (of-object "GDrive") (c-name "g_drive_get_volumes") (return-type "GList*") ) (define-method is_media_removable (of-object "GDrive") (c-name "g_drive_is_media_removable") (return-type "gboolean") ) (define-method has_media (of-object "GDrive") (c-name "g_drive_has_media") (return-type "gboolean") ) (define-method is_media_check_automatic (of-object "GDrive") (c-name "g_drive_is_media_check_automatic") (return-type "gboolean") ) (define-method can_poll_for_media (of-object "GDrive") (c-name "g_drive_can_poll_for_media") (return-type "gboolean") ) (define-method can_eject (of-object "GDrive") (c-name "g_drive_can_eject") (return-type "gboolean") ) ;; ;; wrapped in gdrive.override ;; (define-method eject (of-object "GDrive") (c-name "g_drive_eject") (return-type "none") (parameters '("GMountUnmountFlags" "flags" (default "G_MOUNT_UNMOUNT_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method eject_finish (of-object "GDrive") (c-name "g_drive_eject_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; ;; wrapped in gdrive.override ;; (define-method poll_for_media (of-object "GDrive") (c-name "g_drive_poll_for_media") (return-type "none") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method poll_for_media_finish (of-object "GDrive") (c-name "g_drive_poll_for_media_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method get_identifier (of-object "GDrive") (c-name "g_drive_get_identifier") (return-type "char*") (parameters '("const-char*" "kind") ) ) ;; ;; wrapped in gdrive.override ;; (define-method enumerate_identifiers (of-object "GDrive") (c-name "g_drive_enumerate_identifiers") (return-type "char**") ) ;; From gdummyfile.h ;; From gemblemedicon.h (define-function g_emblemed_icon_get_type (c-name "g_emblemed_icon_get_type") (return-type "GType") ) (define-function g_emblemed_icon_new (c-name "g_emblemed_icon_new") (is-constructor-of "GEmblemedIcon") (return-type "GIcon*") (parameters '("GIcon*" "icon") '("GEmblem*" "emblem") ) ) (define-method get_icon (of-object "GEmblemedIcon") (c-name "g_emblemed_icon_get_icon") (return-type "GIcon*") ) (define-method get_emblems (of-object "GEmblemedIcon") (c-name "g_emblemed_icon_get_emblems") (return-type "GList*") ) (define-method add_emblem (of-object "GEmblemedIcon") (c-name "g_emblemed_icon_add_emblem") (return-type "none") (parameters '("GEmblem*" "emblem") ) ) ;; From gemblem.h (define-function g_emblem_get_type (c-name "g_emblem_get_type") (return-type "GType") ) (define-function g_emblem_new (c-name "g_emblem_new") (is-constructor-of "GEmblem") (return-type "GEmblem*") (properties '("icon") '("origin" (optional)) ) ) (define-function emblem_new_with_origin (c-name "g_emblem_new_with_origin") (return-type "GEmblem*") (parameters '("GIcon*" "icon") '("GEmblemOrigin" "origin") ) ) (define-method get_icon (of-object "GEmblem") (c-name "g_emblem_get_icon") (return-type "GIcon*") ) (define-method get_origin (of-object "GEmblem") (c-name "g_emblem_get_origin") (return-type "GEmblemOrigin") ) ;; From gfileattribute.h (define-function file_attribute_info_list_new (c-name "g_file_attribute_info_list_new") (is-constructor-of "GFileAttributeInfoList") (return-type "GFileAttributeInfoList*") ) (define-method ref (of-object "GFileAttributeInfoList") (c-name "g_file_attribute_info_list_ref") (return-type "GFileAttributeInfoList*") ) (define-method unref (of-object "GFileAttributeInfoList") (c-name "g_file_attribute_info_list_unref") (return-type "none") ) (define-method dup (of-object "GFileAttributeInfoList") (c-name "g_file_attribute_info_list_dup") (return-type "GFileAttributeInfoList*") ) (define-method lookup (of-object "GFileAttributeInfoList") (c-name "g_file_attribute_info_list_lookup") (return-type "const-GFileAttributeInfo*") (parameters '("const-char*" "name") ) ) (define-method add (of-object "GFileAttributeInfoList") (c-name "g_file_attribute_info_list_add") (return-type "none") (parameters '("const-char*" "name") '("GFileAttributeType" "type") '("GFileAttributeInfoFlags" "flags" (default "G_FILE_ATTRIBUTE_INFO_NONE")) ) ) ;; From gfileenumerator.h (define-function file_enumerator_get_type (c-name "g_file_enumerator_get_type") (return-type "GType") ) (define-method next_file (of-object "GFileEnumerator") (c-name "g_file_enumerator_next_file") (return-type "GFileInfo*") (caller-owns-return #t) (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method close (of-object "GFileEnumerator") (c-name "g_file_enumerator_close") (return-type "gboolean") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfileenumerator.override ;; (define-method next_files_async (docstring "FE.next_files_async(num_files, callback, [io_priority, cancellable,\n" " user_data])\n" "Request information for a number of files from the enumerator\n" "asynchronously. When all i/o for the operation is finished the callback\n" "will be called with the requested information.\n" "\n" "The callback can be called with less than num_files files in case of error\n" "or at the end of the enumerator. In case of a partial error the callback\n" "will be called with any succeeding items and no error, and on the next\n" "request the error will be reported. If a request is cancelled the callback\n" "will be called with gio.ERROR_CANCELLED.\n" "\n" "During an async request no other sync and async calls are allowed, and will\n" "result in gio.ERROR_PENDING errors.\n" "\n" "Any outstanding i/o request with higher priority (lower numerical value)\n" "will be executed before an outstanding request with lower priority.\n" "Default priority is gobject.PRIORITY_DEFAULT.") (of-object "GFileEnumerator") (c-name "g_file_enumerator_next_files_async") (return-type "none") (parameters '("int" "num_files") '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) ;; ;; wrapped in gfileenumerator.override ;; (define-method next_files_finish (docstring "FE.next_files_finish(result) -> a list of gio.FileInfos\n" "Finishes the asynchronous operation started with\n" "gio.FileEnumerator.next_files_async().") (of-object "GFileEnumerator") (c-name "g_file_enumerator_next_files_finish") (return-type "GList*") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; ;; wrapped in gfileenumerator.override ;; (define-method close_async (of-object "GFileEnumerator") (c-name "g_file_enumerator_close_async") (return-type "none") (parameters '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method close_finish (of-object "GFileEnumerator") (c-name "g_file_enumerator_close_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method is_closed (of-object "GFileEnumerator") (c-name "g_file_enumerator_is_closed") (return-type "gboolean") ) (define-method has_pending (of-object "GFileEnumerator") (c-name "g_file_enumerator_has_pending") (return-type "gboolean") ) (define-method set_pending (of-object "GFileEnumerator") (c-name "g_file_enumerator_set_pending") (return-type "none") (parameters '("gboolean" "pending") ) ) (define-method get_container (of-object "GFileEnumerator") (c-name "g_file_enumerator_get_container") (return-type "GFile*") ) ;; From gfile.h (define-function file_get_type (c-name "g_file_get_type") (return-type "GType") ) (define-function file_new_for_path (c-name "g_file_new_for_path") (is-constructor-of "GFile") (return-type "GFile*") (parameters '("const-char*" "path") ) ) (define-function file_new_for_uri (c-name "g_file_new_for_uri") (is-constructor-of "GFile") (return-type "GFile*") (parameters '("const-char*" "uri") ) ) (define-function file_new_for_commandline_arg (is-constructor-of "GFile") (c-name "g_file_new_for_commandline_arg") (return-type "GFile*") (parameters '("const-char*" "arg") ) ) (define-function file_parse_name (c-name "g_file_parse_name") (return-type "GFile*") (caller-owns-return #t) (parameters '("const-char*" "parse_name") ) ) (define-method dup (of-object "GFile") (c-name "g_file_dup") (return-type "GFile*") (caller-owns-return #t) ) (define-function file_hash (c-name "g_file_hash") (return-type "guint") (parameters '("gconstpointer" "file") ) ) (define-method equal (of-object "GFile") (c-name "g_file_equal") (return-type "gboolean") (parameters '("GFile*" "file2") ) ) (define-method get_basename (of-object "GFile") (c-name "g_file_get_basename") (return-type "char*") ) (define-method get_path (of-object "GFile") (c-name "g_file_get_path") (return-type "char*") ) (define-method get_uri (of-object "GFile") (c-name "g_file_get_uri") (return-type "char*") ) (define-method get_parse_name (of-object "GFile") (c-name "g_file_get_parse_name") (return-type "char*") ) (define-method get_parent (of-object "GFile") (c-name "g_file_get_parent") (return-type "GFile*") (caller-owns-return #t) ) (define-method get_child (of-object "GFile") (c-name "g_file_get_child") (return-type "GFile*") (caller-owns-return #t) (parameters '("const-char*" "name") ) ) (define-method get_child_for_display_name (of-object "GFile") (c-name "g_file_get_child_for_display_name") (return-type "GFile*") (caller-owns-return #t) (parameters '("const-char*" "display_name") '("GError**" "error") ) ) (define-method has_prefix (of-object "GFile") (c-name "g_file_has_prefix") (return-type "gboolean") (parameters '("GFile*" "descendant") ) ) (define-method get_relative_path (of-object "GFile") (c-name "g_file_get_relative_path") (return-type "char*") (parameters '("GFile*" "descendant") ) ) (define-method resolve_relative_path (of-object "GFile") (c-name "g_file_resolve_relative_path") (return-type "GFile*") (caller-owns-return #t) (parameters '("const-char*" "relative_path") ) ) (define-method is_native (of-object "GFile") (c-name "g_file_is_native") (return-type "gboolean") ) (define-method has_uri_scheme (of-object "GFile") (c-name "g_file_has_uri_scheme") (return-type "gboolean") (parameters '("const-char*" "uri_scheme") ) ) (define-method get_uri_scheme (of-object "GFile") (c-name "g_file_get_uri_scheme") (return-type "char*") ) (define-method read (of-object "GFile") (docstring "F.read([cancellable]) -> input stream\n" "Opens a file for reading. The result is a GFileInputStream that\n" "can be used to read the contents of the file.\n" "\n" "If cancellable is specified, then the operation can be cancelled\n" "by triggering the cancellable object from another thread. If the\n" "operation was cancelled, the error gio.IO_ERROR_CANCELLED will\n" "be returned. If the file does not exist, the gio.IO_ERROR_NOT_FOUND\n" "error will be returned. If the file is a directory, the\n" "gio.IO_ERROR_IS_DIRECTORY error will be returned. Other errors\n" "are possible too, and depend on what kind of filesystem the file is on." ) (c-name "g_file_read") (return-type "GFileInputStream*") (unblock-threads #t) (caller-owns-return #t) (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method read_async (of-object "GFile") (docstring "F.read_async(callback [,io_priority [,cancellable [,user_data]]])\n" "-> start read\n" "\n" "For more details, see gio.File.read() which is the synchronous\n" "version of this call. Asynchronously opens file for reading.\n" "When the operation is finished, callback will be called.\n" "You can then call g_file_read_finish() to get the result of the\n" "operation.\n" ) (c-name "g_file_read_async") (return-type "none") (parameters '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method read_finish (of-object "GFile") (c-name "g_file_read_finish") (return-type "GFileInputStream*") (caller-owns-return #t) (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) (define-method append_to (of-object "GFile") (c-name "g_file_append_to") (return-type "GFileOutputStream*") (unblock-threads #t) (caller-owns-return #t) (parameters '("GFileCreateFlags" "flags" (default "G_FILE_CREATE_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method create (of-object "GFile") (c-name "g_file_create") (return-type "GFileOutputStream*") (unblock-threads #t) (caller-owns-return #t) (parameters '("GFileCreateFlags" "flags" (default "G_FILE_CREATE_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method replace (of-object "GFile") (c-name "g_file_replace") (return-type "GFileOutputStream*") (unblock-threads #t) (caller-owns-return #t) (parameters '("const-char*" "etag") '("gboolean" "make_backup") '("GFileCreateFlags" "flags" (default "G_FILE_CREATE_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method append_to_async (docstring "F.append_to_async(callback [flags, [,io_priority [,cancellable\n" " [,user_data]]]]) -> open for append\n" "\n" "Asynchronously opens file for appending.\n" "For more details, see gio.File.append_to() which is the synchronous\n" "version of this call. When the operation is finished, callback will\n" "be called. You can then call F.append_to_finish() to get the result\n" "of the operation." ) (of-object "GFile") (c-name "g_file_append_to_async") (return-type "none") (parameters '("GFileCreateFlags" "flags" (default "G_FILE_CREATE_NONE")) '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method append_to_finish (of-object "GFile") (c-name "g_file_append_to_finish") (return-type "GFileOutputStream*") (caller-owns-return #t) (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method create_async (docstring "F.create_async(callback [flags, [,io_priority [,cancellable\n" " [,user_data]]]]) -> file created\n" "\n" "Asynchronously creates a new file and returns an output stream for\n" "writing to it. The file must not already exist.\n" "For more details, see F.create() which is the synchronous\n" "version of this call.\n" "When the operation is finished, callback will be called. You can\n" "then call F.create_finish() to get the result of the operation." ) (of-object "GFile") (c-name "g_file_create_async") (return-type "none") (parameters '("GFileCreateFlags" "flags" (default "G_FILE_CREATE_NONE")) '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method create_finish (of-object "GFile") (c-name "g_file_create_finish") (return-type "GFileOutputStream*") (caller-owns-return #t) (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method replace_async (docstring "F.replace_async(callback [etag, [make_backup, [flags, [io_priority,\n" " [cancellable, [user_data]]]]]]) -> file replace\n" "\n" "Asynchronously overwrites the file, replacing the contents, possibly\n" "creating a backup copy of the file first.\n" "For more details, see F.replace() which is the synchronous\n" "version of this call.\n" "When the operation is finished, callback will be called. You can\n" "then call F.replace_finish() to get the result of the operation." ) (of-object "GFile") (c-name "g_file_replace_async") (return-type "none") (parameters '("const-char*" "etag") '("gboolean" "make_backup") '("GFileCreateFlags" "flags" (default "G_FILE_CREATE_NONE")) '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method replace_finish (of-object "GFile") (c-name "g_file_replace_finish") (return-type "GFileOutputStream*") (caller-owns-return #t) (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) (define-method query_exists (of-object "GFile") (c-name "g_file_query_exists") (return-type "gboolean") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) ) ) (define-method query_file_type (of-object "GFile") (c-name "g_file_query_file_type") (return-type "GFileType") (parameters '("GFileQueryInfoFlags" "flags") '("GCancellable*" "cancellable") ) ) (define-method query_info (of-object "GFile") (c-name "g_file_query_info") (return-type "GFileInfo*") (unblock-threads #t) (caller-owns-return #t) (parameters '("const-char*" "attributes") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method query_info_async (docstring "F.query_info_async(attributes, callback, [flags, [io_priority,\n" " [cancellable, [user_data]]]]) -> query attributes\n" "\n" "Asynchronously gets the requested information about specified file.\n" "The result is a GFileInfo object that contains key-value attributes\n" "(such as type or size for the file).\n" "For more details, see F.query_info() which is the synchronous\n" "version of this call. \n" "When the operation is finished, callback will be called. You can\n" "then call F.query_info_finish() to get the result of the operation.\n" ) (of-object "GFile") (c-name "g_file_query_info_async") (return-type "none") (parameters '("const-char*" "attributes") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method query_info_finish (of-object "GFile") (c-name "g_file_query_info_finish") (return-type "GFileInfo*") (caller-owns-return #t) (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) (define-method query_filesystem_info (of-object "GFile") (c-name "g_file_query_filesystem_info") (return-type "GFileInfo*") (unblock-threads #t) (caller-owns-return #t) (parameters '("const-char*" "attributes") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method query_filesystem_info_async (of-object "GFile") (c-name "g_file_query_filesystem_info_async") (return-type "none") (parameters '("const-char*" "attributes") '("int" "io_priority") '("GCancellable*" "cancellable") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method query_filesystem_info_finish (of-object "GFile") (c-name "g_file_query_filesystem_info_finish") (return-type "GFileInfo*") (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) (define-method find_enclosing_mount (of-object "GFile") (c-name "g_file_find_enclosing_mount") (return-type "GMount*") (unblock-threads #t) (caller-owns-return #t) (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method find_enclosing_mount_async (of-object "GFile") (c-name "g_file_find_enclosing_mount_async") (return-type "none") (parameters '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method find_enclosing_mount_finish (of-object "GFile") (c-name "g_file_find_enclosing_mount_finish") (return-type "GMount*") (caller-owns-return #t) (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) (define-method enumerate_children (docstring "F.enumerate_children(attributes, [flags, cancellable]) -> enumerator\n" "Gets the requested information about the files in a directory.\n" "The result is a gio.FileEnumerator object that will give out gio.FileInfo\n" "objects for all the files in the directory.\n" "The attribute value is a string that specifies the file attributes that\n" "should be gathered. It is not an error if it's not possible to read a \n" "particular requested attribute from a file - it just won't be set.\n" "attribute should be a comma-separated list of attribute or attribute\n" "wildcards. The wildcard \"*\" means all attributes, and a wildcard like\n" "\"standard::*\" means all attributes in the standard namespace.\n" "An example attribute query be \"standard::*,owner::user\". The standard\n" "attributes are available as defines, like gio.FILE_ATTRIBUTE_STANDARD_NAME.\n" "\n" "If cancellable is not None, then the operation can be cancelled by\n" "triggering the cancellable object from another thread. If the operation was\n" "cancelled, the error gio.ERROR_CANCELLED will be returned.\n" "\n" "If the file does not exist, the gio.ERROR_NOT_FOUND error will be returned.\n" "If the file is not a directory, the gio.FILE_ERROR_NOTDIR error will\n" "be returned. Other errors are possible too.") (of-object "GFile") (c-name "g_file_enumerate_children") (return-type "GFileEnumerator*") (unblock-threads #t) (caller-owns-return #t) (parameters '("const-char*" "attributes") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method enumerate_children_async (docstring "F.enumerate_children_async(attributes, callback,\n" " [flags, io_priority, cancellable, user_data])\n" "Asynchronously gets the requested information about the files in a\n" "directory. The result is a GFileEnumerator object that will give out\n" "GFileInfo objects for all the files in the directory.\n" "\n" "For more details, see gio.File.enumerate_children() which is the synchronous\n" "version of this call.\n" "\n" "When the operation is finished, callback will be called. You can then call\n" "gio.File.enumerate_children_finish() to get the result of the operation.") (of-object "GFile") (c-name "g_file_enumerate_children_async") (return-type "none") (parameters '("const-char*" "attributes") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method enumerate_children_finish (of-object "GFile") (c-name "g_file_enumerate_children_finish") (return-type "GFileEnumerator*") (caller-owns-return #t) (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) (define-method set_display_name (of-object "GFile") (c-name "g_file_set_display_name") (return-type "GFile*") (unblock-threads #t) (caller-owns-return #t) (parameters '("const-char*" "display_name") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method set_display_name_async (of-object "GFile") (c-name "g_file_set_display_name_async") (return-type "none") (parameters '("const-char*" "display_name") '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method set_display_name_finish (of-object "GFile") (c-name "g_file_set_display_name_finish") (return-type "GFile*") (caller-owns-return #t) (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) (define-method delete (of-object "GFile") (c-name "g_file_delete") (return-type "gboolean") (unblock-threads #t) (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method trash (of-object "GFile") (c-name "g_file_trash") (return-type "gboolean") (unblock-threads #t) (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method copy (docstring "F.copy(destination, [callback, flags, cancellable, user_data])\n" "Copies the file source to the location specified by destination.\n" "Can not handle recursive copies of directories.\n" "\n" "If the flag gio.FILE_COPY_OVERWRITE is specified an already existing\n" "destination file is overwritten.\n" "\n" "If the flag gio.FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlink\n" "will be copied as symlinks, otherwise the target of the source symlink\n" "will be copied.\n" "\n" "If cancellable is not None, then the operation can be cancelled b\n" "triggering the cancellable object from another thread.\n" "If the operation was cancelled, the error gio.ERROR_CANCELLED\n" "will be returned.\n" "\n" "If progress_callback is not None, then the operation can be monitored\n" "by setting this to a callable. if specified progress_callback_data will\n" "be passed to this function. It is guaranteed that this callback\n" "will be called after all data has been transferred with the total number\n" "of bytes copied during the operation.\n" "\n" "If the source file does not exist then the gio.ERROR_NOT_FOUND\n" "error is returned, independent on the status of the destination.\n" "\n" "If gio.FILE_COPY_OVERWRITE is not specified and the target exists\n" "then the error gio.ERROR_EXISTS is returned.\n" "\n" "If trying to overwrite a file over a directory the gio.ERROR_IS_DIRECTORY\n" "error is returned. If trying to overwrite a directory with a directory\n" "the gio.ERROR_WOULD_MERGE error is returned.\n" "\n" "If the source is a directory and the target does not exist\n" "or gio.FILE_COPY_OVERWRITE is specified and the target is a file\n" "then the gio.ERROR_WOULD_RECURSE error is returned.\n" "\n" "If you are interested in copying the GFile object itself\n" "(not the on-disk file), see gio.File.dup().") (of-object "GFile") (c-name "g_file_copy") (unblock-threads #t) (return-type "gboolean") (parameters '("GFile*" "destination") '("GFileCopyFlags" "flags" (default "G_FILE_COPY_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GFileProgressCallback" "progress_callback") '("gpointer" "progress_callback_data") '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method copy_async (of-object "GFile") (docstring "F.copy_async(destination, callback, [flags, io_priority, user_data, cancellable, progress_callback])\n" "-> start copy\n" "\n" "For more details, see gio.File.copy() which is the synchronous\n" "version of this call. Asynchronously copies file.\n" "When the operation is finished, callback will be called.\n" "You can then call g_file_copy_finish() to get the result of the\n" "operation.\n" ) (c-name "g_file_copy_async") (return-type "none") (parameters '("GFile*" "destination") '("GFileCopyFlags" "flags" (default "G_FILE_COPY_NONE")) '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GFileProgressCallback" "progress_callback") '("gpointer" "progress_callback_data") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method copy_finish (of-object "GFile") (c-name "g_file_copy_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "res") '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method move (docstring "F.move(destination, [callback, flags, cancellable, user_data])\n" "Tries to move the file or directory source to the location\n" "specified by destination. If native move operations are\n" "supported then this is used, otherwise a copy + delete fallback\n" "is used. The native implementation may support moving directories\n" "(for instance on moves inside the same filesystem), but the \n" "fallback code does not.\n" "\n" "If the flag gio.FILE_COPY_OVERWRITE is specified an already existing\n" "destination file is overwritten.\n" "\n" "If the flag gio.FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlink\n" "will be copied as symlinks, otherwise the target of the source symlink\n" "will be copied.\n" "\n" "If cancellable is not None, then the operation can be cancelled b\n" "triggering the cancellable object from another thread.\n" "If the operation was cancelled, the error gio.ERROR_CANCELLED\n" "will be returned.\n" "\n" "If progress_callback is not None, then the operation can be monitored\n" "by setting this to a callable. if specified progress_callback_data will\n" "be passed to this function. It is guaranteed that this callback\n" "will be called after all data has been transferred with the total number\n" "of bytes copied during the operation.\n" "\n" "If the source file does not exist then the gio.ERROR_NOT_FOUND\n" "error is returned, independent on the status of the destination.\n" "\n" "If gio.FILE_COPY_OVERWRITE is not specified and the target exists\n" "then the error gio.ERROR_EXISTS is returned.\n" "\n" "If trying to overwrite a file over a directory the gio.ERROR_IS_DIRECTORY\n" "error is returned. If trying to overwrite a directory with a directory\n" "the gio.ERROR_WOULD_MERGE error is returned.\n" "\n" "If the source is a directory and the target does not exist\n" "or gio.FILE_COPY_OVERWRITE is specified and the target is a file\n" "then the gio.ERROR_WOULD_RECURSE error is returned.") (of-object "GFile") (c-name "g_file_move") (return-type "gboolean") (parameters '("GFile*" "destination") '("GFileCopyFlags" "flags" (default "G_FILE_COPY_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GFileProgressCallback" "progress_callback") '("gpointer" "progress_callback_data") '("GError**" "error") ) ) (define-method make_directory (of-object "GFile") (c-name "g_file_make_directory") (return-type "gboolean") (unblock-threads #t) (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method make_directory_with_parents (of-object "GFile") (c-name "g_file_make_directory_with_parents") (return-type "gboolean") (unblock-threads #t) (parameters '("GCancellable*" "cancellable") '("GError**" "error") ) ) (define-method make_symbolic_link (of-object "GFile") (c-name "g_file_make_symbolic_link") (return-type "gboolean") (unblock-threads #t) (parameters '("const-char*" "symlink_value") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method query_settable_attributes (docstring "F.query_settable_attributes([cancellable]) -> list\n\n" "Obtain the list of settable attributes for the file.\n" "Returns the type and full attribute name of all the attributes that\n" "can be set on this file. This doesn't mean setting it will always\n" "succeed though, you might get an access failure, or some specific\n" "file may not support a specific attribute.\n\n" "If cancellable is not None, then the operation can be cancelled by\n" "triggering the cancellable object from another thread. If the operation\n" "was cancelled, the error gio.IO_ERROR_CANCELLED will be returned." ) (of-object "GFile") (c-name "g_file_query_settable_attributes") (return-type "GFileAttributeInfoList*") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method query_writable_namespaces (docstring "F.query_writable_namespaces([cancellable]) -> list\n\n" "Obtain the list of attribute namespaces where new attributes can\n" "be created by a user. An example of this is extended attributes\n" "(in the "xattr" namespace).\n" "If cancellable is not None, then the operation can be cancelled\n" "by triggering the cancellable object from another thread. If the\n" "operation was cancelled, the error gio.IO_ERROR_CANCELLED\n" "will be returned." ) (of-object "GFile") (c-name "g_file_query_writable_namespaces") (return-type "GFileAttributeInfoList*") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method set_attribute (docstring "F.set_attribute(attribute, type, value_p [,flags [,cancellable ]])->bool\n" "\n" "Sets an attribute in the file with attribute name attribute to value_p.\n" "If cancellable is not None, then the operation can be cancelled by\n" "triggering the cancellable object from another thread. If the operation\n" "was cancelled, the error gio.IO_ERROR_CANCELLED will be returned." ) (of-object "GFile") (c-name "g_file_set_attribute") (return-type "gboolean") (parameters '("const-char*" "attribute") '("GFileAttributeType" "type") '("gpointer" "value_p") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method set_attributes_from_info (of-object "GFile") (c-name "g_file_set_attributes_from_info") (return-type "gboolean") (parameters '("GFileInfo*" "info") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method set_attributes_async (of-object "GFile") (c-name "g_file_set_attributes_async") (return-type "none") (parameters '("GFileInfo*" "info") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method set_attributes_finish (of-object "GFile") (c-name "g_file_set_attributes_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GFileInfo**" "info") '("GError**" "error") ) ) (define-method set_attribute_string (of-object "GFile") (c-name "g_file_set_attribute_string") (return-type "gboolean") (parameters '("const-char*" "attribute") '("const-char*" "value") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method set_attribute_byte_string (of-object "GFile") (c-name "g_file_set_attribute_byte_string") (return-type "gboolean") (parameters '("const-char*" "attribute") '("const-char*" "value") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method set_attribute_uint32 (of-object "GFile") (c-name "g_file_set_attribute_uint32") (return-type "gboolean") (parameters '("const-char*" "attribute") '("guint32" "value") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method set_attribute_int32 (of-object "GFile") (c-name "g_file_set_attribute_int32") (return-type "gboolean") (parameters '("const-char*" "attribute") '("gint32" "value") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method set_attribute_uint64 (of-object "GFile") (c-name "g_file_set_attribute_uint64") (return-type "gboolean") (parameters '("const-char*" "attribute") '("guint64" "value") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method set_attribute_int64 (of-object "GFile") (c-name "g_file_set_attribute_int64") (return-type "gboolean") (parameters '("const-char*" "attribute") '("gint64" "value") '("GFileQueryInfoFlags" "flags" (default "G_FILE_QUERY_INFO_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method mount_enclosing_volume (docstring "F.mount_enclosing_volume(mount_operation, callback, [cancellable,\n" " user_data])\n" "Starts a mount_operation, mounting the volume that contains\n" "the file location.\n" "\n" "When this operation has completed, callback will be called with\n" "user_user data, and the operation can be finalized with\n" "gio.File.mount_enclosing_volume_finish().\n" "\n" "If cancellable is not None, then the operation can be cancelled\n" "by triggering the cancellable object from another thread.\n" "If the operation was cancelled, the error gio.ERROR_CANCELLED\n" "will be returned.") (of-object "GFile") (c-name "g_file_mount_enclosing_volume") (return-type "none") (parameters '("GMountOperation*" "mount_operation") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method mount_enclosing_volume_finish (of-object "GFile") (c-name "g_file_mount_enclosing_volume_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method mount_mountable (docstring "F.mount_mountable(mount_operation, callback, [flags, cancellable,\n" " user_data])\n" "Mounts a file of type gio.FILE_TYPE_MOUNTABLE. Using mount_operation,\n" "you can request callbacks when, for instance, passwords are needed\n" "during authentication.\n" "\n" "If cancellable is not None, then the operation can be cancelled by\n" " triggering the cancellable object from another thread. If the\n" "operation was cancelled, the error gio.ERROR_CANCELLED will be returned.\n" "\n" "When the operation is finished, callback will be called. You can then\n" "call g_file_mount_mountable_finish() to get the result of the operation.\n") (of-object "GFile") (c-name "g_file_mount_mountable") (return-type "none") (parameters '("GMountOperation*" "mount_operation") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method mount_mountable_finish (of-object "GFile") (c-name "g_file_mount_mountable_finish") (return-type "GFile*") (caller-owns-return #t) (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method unmount_mountable (docstring "F.unmount_mountable(callback, [flags, cancellable, user_data])\n" "Unmounts a file of type gio.FILE_TYPE_MOUNTABLE.\n" "\n" "If cancellable is not None, then the operation can be cancelled by\n" "triggering the cancellable object from another thread. If the\n" "operation was cancelled, the error gio.ERROR_CANCELLED will be returned.\n" "\n" "When the operation is finished, callback will be called. You can\n" "then call gio.File.unmount_mountable_finish() to get the\n" "result of the operation.\n") (of-object "GFile") (c-name "g_file_unmount_mountable") (return-type "none") (parameters '("GMountUnmountFlags" "flags" (default "G_MOUNT_UNMOUNT_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method unmount_mountable_finish (of-object "GFile") (c-name "g_file_unmount_mountable_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method eject_mountable (of-object "GFile") (c-name "g_file_eject_mountable") (return-type "none") (parameters '("GMountUnmountFlags" "flags" (default "G_MOUNT_UNMOUNT_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method eject_mountable_finish (of-object "GFile") (c-name "g_file_eject_mountable_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method copy_attributes (of-object "GFile") (c-name "g_file_copy_attributes") (return-type "gboolean") (parameters '("GFile*" "destination") '("GFileCopyFlags" "flags" (default "G_FILE_COPY_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method monitor_directory (of-object "GFile") (c-name "g_file_monitor_directory") (return-type "GFileMonitor*") (caller-owns-return #t) (parameters '("GFileMonitorFlags" "flags" (default "G_FILE_MONITOR_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method monitor_file (of-object "GFile") (c-name "g_file_monitor_file") (return-type "GFileMonitor*") (caller-owns-return #t) (parameters '("GFileMonitorFlags" "flags" (default "G_FILE_MONITOR_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method monitor (of-object "GFile") (c-name "g_file_monitor") (return-type "GFileMonitor*") (parameters '("GFileMonitorFlags" "flags" (default "G_FILE_MONITOR_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method query_default_handler (of-object "GFile") (c-name "g_file_query_default_handler") (return-type "GAppInfo*") (caller-owns-return #t) (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method load_contents (docstring "F.load_contents([cancellable]) -> contents, length, etag_out\n\n" "Loads the content of the file into memory, returning the size of the\n" "data. The data is always zero terminated, but this is not included\n" "in the resultant length.\n" "If cancellable is not None, then the operation can be cancelled by\n" "triggering the cancellable object from another thread. If the operation\n" "was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.\n" ) (of-object "GFile") (c-name "g_file_load_contents") (return-type "gboolean") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("char**" "contents") '("gsize*" "length") '("char**" "etag_out") '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method load_contents_async (docstring "F.load_contents_async(callback, [cancellable, [user_data]])->start loading\n\n" "Starts an asynchronous load of the file's contents.\n\n" "For more details, see F.load_contents() which is the synchronous\n" "version of this call.\n\n" "When the load operation has completed, callback will be called with\n" "user data. To finish the operation, call F.load_contents_finish() with\n" "the parameter 'res' returned by the callback.\n\n" "If cancellable is not None, then the operation can be cancelled by\n" "triggering the cancellable object from another thread. If the operation\n" "was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.\n" ) (of-object "GFile") (c-name "g_file_load_contents_async") (return-type "none") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) ;; ;; wrapped in gfile.override ;; (define-method load_contents_finish (docstring "F.load_contents_finish(res) -> contents, length, etag_out\n\n" "Finishes an asynchronous load of the file's contents. The contents are\n" "placed in contents, and length is set to the size of the contents\n" "string. If etag_out is present, it will be set to the new entity\n" "tag for the file.\n" ) (of-object "GFile") (c-name "g_file_load_contents_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "res") '("char**" "contents") '("gsize*" "length") '("char**" "etag_out") '("GError**" "error") ) ) (define-method load_partial_contents_async (of-object "GFile") (c-name "g_file_load_partial_contents_async") (return-type "none") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GFileReadMoreCallback" "read_more_callback") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method load_partial_contents_finish (of-object "GFile") (c-name "g_file_load_partial_contents_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "res") '("char**" "contents") '("gsize*" "length") '("char**" "etag_out") '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method replace_contents (docstring "F.replace_contents(contents, [etag, [make_backup, [flags, [cancellable]]]])\n" "-> etag_out\n" "\n" "Replaces the content of the file, returning the new etag value for the\n" "file. If an etag is specified, any existing file must have that etag, or\n" "the error gio.IO_ERROR_WRONG_ETAG will be returned.\n" "If make_backup is True, this method will attempt to make a backup of the\n" "file. If cancellable is not None, then the operation can be cancelled by\n" "triggering the cancellable object from another thread. If the operation\n" "was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.\n" ) (of-object "GFile") (c-name "g_file_replace_contents") (return-type "gboolean") (parameters '("const-char*" "contents") '("gsize" "length") '("const-char*" "etag") '("gboolean" "make_backup") '("GFileCreateFlags" "flags" (default "G_FILE_CREATE_NONE")) '("char**" "new_etag") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gfile.override ;; (define-method replace_contents_async (docstring "F.replace_contents_async(contents, callback, [etag, [make_backup, [flags,\n" " [cancellable]]]]) -> etag_out\n" "\n" "Starts an asynchronous replacement of the file with the given contents.\n" "For more details, see F.replace_contents() which is the synchronous\n" "version of this call.\n\n" "When the load operation has completed, callback will be called with\n" "user data. To finish the operation, call F.replace_contents_finish() with\n" "the parameter 'res' returned by the callback.\n\n" "If cancellable is not None, then the operation can be cancelled by\n" "triggering the cancellable object from another thread. If the operation\n" "was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.\n" ) (of-object "GFile") (c-name "g_file_replace_contents_async") (return-type "none") (parameters '("const-char*" "contents") '("gsize" "length") '("const-char*" "etag") '("gboolean" "make_backup") '("GFileCreateFlags" "flags" (default "G_FILE_CREATE_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) ;; ;; wrapped in gfile.override ;; (define-method replace_contents_finish (docstring "F.replace_contents_finish(res) -> etag_out\n\n" "Finishes an asynchronous replacement of the file's contents.\n" "The new entity tag for the file is returned.\n" ) (of-object "GFile") (c-name "g_file_replace_contents_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "res") '("char**" "new_etag") '("GError**" "error") ) ) ;; From gfileicon.h (define-function file_icon_get_type (c-name "g_file_icon_get_type") (return-type "GType") ) (define-function file_icon_new (c-name "g_file_icon_new") (is-constructor-of "GFileIcon") (return-type "GIcon*") ;; Note: starting with GLib 2.18 we could use (properties ...) ;; instead, but I don't know if it is possible to branch on version ;; in codegen. (parameters '("GFile*" "file") ) ) (define-method get_file (of-object "GFileIcon") (c-name "g_file_icon_get_file") (return-type "GFile*") ) ;; From gfileinfo.h (define-function file_info_get_type (c-name "g_file_info_get_type") (return-type "GType") ) (define-function file_info_new (c-name "g_file_info_new") (is-constructor-of "GFileInfo") (return-type "GFileInfo*") ) (define-method dup (of-object "GFileInfo") (c-name "g_file_info_dup") (return-type "GFileInfo*") (caller-owns-return #t) ) (define-method copy_into (of-object "GFileInfo") (c-name "g_file_info_copy_into") (return-type "none") (parameters '("GFileInfo*" "dest_info") ) ) (define-method has_attribute (of-object "GFileInfo") (c-name "g_file_info_has_attribute") (return-type "gboolean") (parameters '("const-char*" "attribute") ) ) ;; ;; wrapped in gfileinfo.override (define-method list_attributes (docstring "INFO.list_attributes(name_space) -> Attribute list\n\n" "Lists the file info structure's attributes." ) (of-object "GFileInfo") (c-name "g_file_info_list_attributes") (return-type "char**") (parameters '("const-char*" "name_space") ) ) (define-method get_attribute_data (of-object "GFileInfo") (c-name "g_file_info_get_attribute_data") (return-type "gboolean") (parameters '("const-char*" "attribute") '("GFileAttributeType*" "type") '("gpointer*" "value_pp") '("GFileAttributeStatus*" "status") ) ) (define-method get_attribute_type (of-object "GFileInfo") (c-name "g_file_info_get_attribute_type") (return-type "GFileAttributeType") (parameters '("const-char*" "attribute") ) ) (define-method remove_attribute (of-object "GFileInfo") (c-name "g_file_info_remove_attribute") (return-type "none") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_status (of-object "GFileInfo") (c-name "g_file_info_get_attribute_status") (return-type "GFileAttributeStatus") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_as_string (of-object "GFileInfo") (c-name "g_file_info_get_attribute_as_string") (return-type "char*") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_string (of-object "GFileInfo") (c-name "g_file_info_get_attribute_string") (return-type "const-char*") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_byte_string (of-object "GFileInfo") (c-name "g_file_info_get_attribute_byte_string") (return-type "const-char*") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_boolean (of-object "GFileInfo") (c-name "g_file_info_get_attribute_boolean") (return-type "gboolean") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_uint32 (of-object "GFileInfo") (c-name "g_file_info_get_attribute_uint32") (return-type "guint32") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_int32 (of-object "GFileInfo") (c-name "g_file_info_get_attribute_int32") (return-type "gint32") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_uint64 (of-object "GFileInfo") (c-name "g_file_info_get_attribute_uint64") (return-type "guint64") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_int64 (of-object "GFileInfo") (c-name "g_file_info_get_attribute_int64") (return-type "gint64") (parameters '("const-char*" "attribute") ) ) (define-method get_attribute_object (of-object "GFileInfo") (c-name "g_file_info_get_attribute_object") (return-type "GObject*") (parameters '("const-char*" "attribute") ) ) (define-method set_attribute (of-object "GFileInfo") (c-name "g_file_info_set_attribute") (return-type "none") (parameters '("const-char*" "attribute") '("GFileAttributeType" "type") '("gpointer" "value_p") ) ) (define-method set_attribute_string (of-object "GFileInfo") (c-name "g_file_info_set_attribute_string") (return-type "none") (parameters '("const-char*" "attribute") '("const-char*" "attr_value") ) ) (define-method set_attribute_byte_string (of-object "GFileInfo") (c-name "g_file_info_set_attribute_byte_string") (return-type "none") (parameters '("const-char*" "attribute") '("const-char*" "attr_value") ) ) (define-method set_attribute_boolean (of-object "GFileInfo") (c-name "g_file_info_set_attribute_boolean") (return-type "none") (parameters '("const-char*" "attribute") '("gboolean" "attr_value") ) ) (define-method set_attribute_uint32 (of-object "GFileInfo") (c-name "g_file_info_set_attribute_uint32") (return-type "none") (parameters '("const-char*" "attribute") '("guint32" "attr_value") ) ) (define-method set_attribute_int32 (of-object "GFileInfo") (c-name "g_file_info_set_attribute_int32") (return-type "none") (parameters '("const-char*" "attribute") '("gint32" "attr_value") ) ) (define-method set_attribute_uint64 (of-object "GFileInfo") (c-name "g_file_info_set_attribute_uint64") (return-type "none") (parameters '("const-char*" "attribute") '("guint64" "attr_value") ) ) (define-method set_attribute_int64 (of-object "GFileInfo") (c-name "g_file_info_set_attribute_int64") (return-type "none") (parameters '("const-char*" "attribute") '("gint64" "attr_value") ) ) (define-method set_attribute_object (of-object "GFileInfo") (c-name "g_file_info_set_attribute_object") (return-type "none") (parameters '("const-char*" "attribute") '("GObject*" "attr_value") ) ) (define-method clear_status (of-object "GFileInfo") (c-name "g_file_info_clear_status") (return-type "none") ) (define-method get_file_type (of-object "GFileInfo") (c-name "g_file_info_get_file_type") (return-type "GFileType") ) (define-method get_is_hidden (of-object "GFileInfo") (c-name "g_file_info_get_is_hidden") (return-type "gboolean") ) (define-method get_is_backup (of-object "GFileInfo") (c-name "g_file_info_get_is_backup") (return-type "gboolean") ) (define-method get_is_symlink (of-object "GFileInfo") (c-name "g_file_info_get_is_symlink") (return-type "gboolean") ) (define-method get_name (of-object "GFileInfo") (c-name "g_file_info_get_name") (return-type "const-char*") ) (define-method get_display_name (of-object "GFileInfo") (c-name "g_file_info_get_display_name") (return-type "const-char*") ) (define-method get_edit_name (of-object "GFileInfo") (c-name "g_file_info_get_edit_name") (return-type "const-char*") ) (define-method get_icon (of-object "GFileInfo") (c-name "g_file_info_get_icon") (return-type "GIcon*") ) (define-method get_content_type (of-object "GFileInfo") (c-name "g_file_info_get_content_type") (return-type "const-char*") ) (define-method get_size (of-object "GFileInfo") (c-name "g_file_info_get_size") (return-type "goffset") ) ;; ;; wrapped in gfileinfo.override ;; (define-method get_modification_time (docstring "INFO.get_modification_time() -> modification time\n" "Returns the modification time, in UNIX time format\n") (of-object "GFileInfo") (c-name "g_file_info_get_modification_time") (return-type "none") (parameters '("GTimeVal*" "result") ) ) (define-method get_symlink_target (of-object "GFileInfo") (c-name "g_file_info_get_symlink_target") (return-type "const-char*") ) (define-method get_etag (of-object "GFileInfo") (c-name "g_file_info_get_etag") (return-type "const-char*") ) (define-method get_sort_order (of-object "GFileInfo") (c-name "g_file_info_get_sort_order") (return-type "gint32") ) (define-method set_attribute_mask (of-object "GFileInfo") (c-name "g_file_info_set_attribute_mask") (return-type "none") (parameters '("GFileAttributeMatcher*" "mask") ) ) (define-method unset_attribute_mask (of-object "GFileInfo") (c-name "g_file_info_unset_attribute_mask") (return-type "none") ) (define-method set_file_type (of-object "GFileInfo") (c-name "g_file_info_set_file_type") (return-type "none") (parameters '("GFileType" "type") ) ) (define-method set_is_hidden (of-object "GFileInfo") (c-name "g_file_info_set_is_hidden") (return-type "none") (parameters '("gboolean" "is_hidden") ) ) (define-method set_is_symlink (of-object "GFileInfo") (c-name "g_file_info_set_is_symlink") (return-type "none") (parameters '("gboolean" "is_symlink") ) ) (define-method set_name (of-object "GFileInfo") (c-name "g_file_info_set_name") (return-type "none") (parameters '("const-char*" "name") ) ) (define-method set_display_name (of-object "GFileInfo") (c-name "g_file_info_set_display_name") (return-type "none") (parameters '("const-char*" "display_name") ) ) (define-method set_edit_name (of-object "GFileInfo") (c-name "g_file_info_set_edit_name") (return-type "none") (parameters '("const-char*" "edit_name") ) ) (define-method set_icon (of-object "GFileInfo") (c-name "g_file_info_set_icon") (return-type "none") (parameters '("GIcon*" "icon") ) ) (define-method set_content_type (of-object "GFileInfo") (c-name "g_file_info_set_content_type") (return-type "none") (parameters '("const-char*" "content_type") ) ) (define-method set_size (of-object "GFileInfo") (c-name "g_file_info_set_size") (return-type "none") (parameters '("goffset" "size") ) ) (define-method set_modification_time (of-object "GFileInfo") (c-name "g_file_info_set_modification_time") (return-type "none") (parameters '("GTimeVal*" "mtime") ) ) (define-method set_symlink_target (of-object "GFileInfo") (c-name "g_file_info_set_symlink_target") (return-type "none") (parameters '("const-char*" "symlink_target") ) ) (define-method set_sort_order (of-object "GFileInfo") (c-name "g_file_info_set_sort_order") (return-type "none") (parameters '("gint32" "sort_order") ) ) (define-function file_attribute_matcher_new (c-name "g_file_attribute_matcher_new") (is-constructor-of "GFileAttributeMatcher") (return-type "GFileAttributeMatcher*") (parameters '("const-char*" "attributes") ) ) (define-method ref (of-object "GFileAttributeMatcher") (c-name "g_file_attribute_matcher_ref") (return-type "GFileAttributeMatcher*") ) (define-method unref (of-object "GFileAttributeMatcher") (c-name "g_file_attribute_matcher_unref") (return-type "none") ) (define-method matches (of-object "GFileAttributeMatcher") (c-name "g_file_attribute_matcher_matches") (return-type "gboolean") (parameters '("const-char*" "attribute") ) ) (define-method matches_only (of-object "GFileAttributeMatcher") (c-name "g_file_attribute_matcher_matches_only") (return-type "gboolean") (parameters '("const-char*" "attribute") ) ) (define-method enumerate_namespace (of-object "GFileAttributeMatcher") (c-name "g_file_attribute_matcher_enumerate_namespace") (return-type "gboolean") (parameters '("const-char*" "ns") ) ) (define-method enumerate_next (of-object "GFileAttributeMatcher") (c-name "g_file_attribute_matcher_enumerate_next") (return-type "const-char*") ) ;; From gfileinputstream.h (define-function file_input_stream_get_type (c-name "g_file_input_stream_get_type") (return-type "GType") ) (define-method query_info (of-object "GFileInputStream") (c-name "g_file_input_stream_query_info") (return-type "GFileInfo*") (parameters '("char*" "attributes") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method query_info_async (of-object "GFileInputStream") (c-name "g_file_input_stream_query_info_async") (return-type "none") (parameters '("char*" "attributes") '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method query_info_finish (of-object "GFileInputStream") (c-name "g_file_input_stream_query_info_finish") (return-type "GFileInfo*") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; From gfilemonitor.h (define-function file_monitor_get_type (c-name "g_file_monitor_get_type") (return-type "GType") ) (define-method cancel (of-object "GFileMonitor") (c-name "g_file_monitor_cancel") (return-type "gboolean") ) (define-method is_cancelled (of-object "GFileMonitor") (c-name "g_file_monitor_is_cancelled") (return-type "gboolean") ) (define-method set_rate_limit (of-object "GFileMonitor") (c-name "g_file_monitor_set_rate_limit") (return-type "none") (parameters '("int" "limit_msecs") ) ) (define-method emit_event (of-object "GFileMonitor") (c-name "g_file_monitor_emit_event") (return-type "none") (parameters '("GFile*" "file") '("GFile*" "other_file") '("GFileMonitorEvent" "event_type") ) ) ;; From gfilenamecompleter.h (define-function filename_completer_get_type (c-name "g_filename_completer_get_type") (return-type "GType") ) (define-function filename_completer_new (c-name "g_filename_completer_new") (is-constructor-of "GFilenameCompleter") (return-type "GFilenameCompleter*") ) (define-method get_completion_suffix (of-object "GFilenameCompleter") (c-name "g_filename_completer_get_completion_suffix") (return-type "char*") (parameters '("const-char*" "initial_text") ) ) (define-method get_completions (of-object "GFilenameCompleter") (c-name "g_filename_completer_get_completions") (return-type "char**") (parameters '("const-char*" "initial_text") ) ) (define-method set_dirs_only (of-object "GFilenameCompleter") (c-name "g_filename_completer_set_dirs_only") (return-type "none") (parameters '("gboolean" "dirs_only") ) ) ;; From gfileoutputstream.h (define-function file_output_stream_get_type (c-name "g_file_output_stream_get_type") (return-type "GType") ) (define-method query_info (of-object "GFileOutputStream") (c-name "g_file_output_stream_query_info") (return-type "GFileInfo*") (parameters '("char*" "attributes") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method query_info_async (of-object "GFileOutputStream") (c-name "g_file_output_stream_query_info_async") (return-type "none") (parameters '("char*" "attributes") '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method query_info_finish (of-object "GFileOutputStream") (c-name "g_file_output_stream_query_info_finish") (return-type "GFileInfo*") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method get_etag (of-object "GFileOutputStream") (c-name "g_file_output_stream_get_etag") (return-type "char*") ) ;; From gfilterinputstream.h (define-function filter_input_stream_get_type (c-name "g_filter_input_stream_get_type") (return-type "GType") ) (define-method get_base_stream (of-object "GFilterInputStream") (c-name "g_filter_input_stream_get_base_stream") (return-type "GInputStream*") ) (define-method get_close_base_stream (of-object "GFilterInputStream") (c-name "g_filter_input_stream_get_close_base_stream") (return-type "gboolean") ) (define-method set_close_base_stream (of-object "GFilterInputStream") (c-name "g_filter_input_stream_set_close_base_stream") (return-type "none") (parameters '("gboolean" "close_base") ) ) ;; From gfilteroutputstream.h (define-function filter_output_stream_get_type (c-name "g_filter_output_stream_get_type") (return-type "GType") ) (define-method get_base_stream (of-object "GFilterOutputStream") (c-name "g_filter_output_stream_get_base_stream") (return-type "GOutputStream*") ) (define-method get_close_base_stream (of-object "GFilterOutputStream") (c-name "g_filter_output_stream_get_close_base_stream") (return-type "gboolean") ) (define-method set_close_base_stream (of-object "GFilterOutputStream") (c-name "g_filter_output_stream_set_close_base_stream") (return-type "none") (parameters '("gboolean" "close_base") ) ) ;; From gicon.h (define-function icon_get_type (c-name "g_icon_get_type") (return-type "GType") ) (define-function icon_hash (c-name "g_icon_hash") (return-type "guint") (parameters '("gconstpointer" "icon") ) ) (define-method equal (of-object "GIcon") (c-name "g_icon_equal") (return-type "gboolean") (parameters '("GIcon*" "icon2") ) ) (define-method to_string (of-object "GIcon") (c-name "g_icon_to_string") (return-type "gchar*") ) (define-function icon_new_for_string (c-name "g_icon_new_for_string") (return-type "GIcon*") (parameters '("const-gchar*" "str") '("GError**" "error") ) ) ;; From ginputstream.h (define-function input_stream_get_type (c-name "g_input_stream_get_type") (return-type "GType") ) ;; ;; wrapped in ginputstream.override ;; ;; Note: the following two methods are renamed for consistency with ;; Python file objects' read(). I.e. g_input_stream_read_all() is ;; more like Python file.read(), so it is renamed read(). Since now ;; there is a name clash, g_input_stream_read() is renamed ;; read_part(). (define-method read_part (of-object "GInputStream") (docstring "STREAM.read_part([count, [cancellable]]) -> string\n" "\n" "Read 'count' bytes from the stream. If 'count' is not specified or is\n" "omitted, read until the end of the stream. This method is allowed to\n" "stop at any time after reading at least 1 byte from the stream. E.g.\n" "when reading over a (relatively slow) HTTP connection, it will often\n" "stop after receiving one packet. Therefore, to reliably read requested\n" "number of bytes, you need to use a loop. See also gio.InputStream.read\n" "for easier to use (though less efficient) method.\n" "\n" "Note: this method roughly corresponds to C GIO g_input_stream_read." ) (c-name "g_input_stream_read") (return-type "gssize") (parameters '("void*" "buffer") '("gsize" "count") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in ginputstream.override ;; ;; See comments before the previous method definition. (define-method read (of-object "GInputStream") (docstring "STREAM.read([count, [cancellable]]) -> string\n" "\n" "Read 'count' bytes from the stream. If 'count' is not specified or is\n" "omitted, read until the end of the stream. This method will stop only\n" "after reading requested number of bytes, reaching end of stream or\n" "triggering an I/O error. See also gio.InputStream.read_part for more\n" "efficient, but more cumbersome to use method.\n" "\n" "Note: this method roughly corresponds to C GIO g_input_stream_read_all.\n" "It was renamed for consistency with Python standard file.read." ) (c-name "g_input_stream_read_all") (return-type "gboolean") (parameters '("void*" "buffer") '("gsize" "count") '("gsize*" "bytes_read") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method skip (of-object "GInputStream") (c-name "g_input_stream_skip") (return-type "gssize") (parameters '("gsize" "count") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method close (of-object "GInputStream") (c-name "g_input_stream_close") (return-type "gboolean") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in ginputstream.override ;; (define-method read_async (of-object "GInputStream") (c-name "g_input_stream_read_async") (return-type "none") (parameters '("void*" "buffer") '("gsize" "count") '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) ;; ;; wrapped in ginputstream.override ;; (define-method read_finish (of-object "GInputStream") (c-name "g_input_stream_read_finish") (return-type "gssize") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method skip_async (of-object "GInputStream") (c-name "g_input_stream_skip_async") (return-type "none") (parameters '("gsize" "count") '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method skip_finish (of-object "GInputStream") (c-name "g_input_stream_skip_finish") (return-type "gssize") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; ;; wrapped in ginputstream.override ;; (define-method close_async (of-object "GInputStream") (c-name "g_input_stream_close_async") (return-type "none") (parameters '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method close_finish (of-object "GInputStream") (c-name "g_input_stream_close_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method is_closed (of-object "GInputStream") (c-name "g_input_stream_is_closed") (return-type "gboolean") ) (define-method has_pending (of-object "GInputStream") (c-name "g_input_stream_has_pending") (return-type "gboolean") ) (define-method set_pending (of-object "GInputStream") (c-name "g_input_stream_set_pending") (return-type "gboolean") (parameters '("GError**" "error") ) ) (define-method clear_pending (of-object "GInputStream") (c-name "g_input_stream_clear_pending") (return-type "none") ) ;; From gioalias.h ;; From gioenumtypes.h (define-function app_info_create_flags_get_type (c-name "g_app_info_create_flags_get_type") (return-type "GType") ) (define-function data_stream_byte_order_get_type (c-name "g_data_stream_byte_order_get_type") (return-type "GType") ) (define-function data_stream_newline_type_get_type (c-name "g_data_stream_newline_type_get_type") (return-type "GType") ) (define-function file_query_info_flags_get_type (c-name "g_file_query_info_flags_get_type") (return-type "GType") ) (define-function file_create_flags_get_type (c-name "g_file_create_flags_get_type") (return-type "GType") ) (define-function file_copy_flags_get_type (c-name "g_file_copy_flags_get_type") (return-type "GType") ) (define-function file_monitor_flags_get_type (c-name "g_file_monitor_flags_get_type") (return-type "GType") ) (define-function file_attribute_type_get_type (c-name "g_file_attribute_type_get_type") (return-type "GType") ) (define-function file_attribute_info_flags_get_type (c-name "g_file_attribute_info_flags_get_type") (return-type "GType") ) (define-function file_attribute_status_get_type (c-name "g_file_attribute_status_get_type") (return-type "GType") ) (define-function file_type_get_type (c-name "g_file_type_get_type") (return-type "GType") ) (define-function file_monitor_event_get_type (c-name "g_file_monitor_event_get_type") (return-type "GType") ) (define-function io_error_enum_get_type (c-name "g_io_error_enum_get_type") (return-type "GType") ) (define-function ask_password_flags_get_type (c-name "g_ask_password_flags_get_type") (return-type "GType") ) (define-function password_save_get_type (c-name "g_password_save_get_type") (return-type "GType") ) (define-function output_stream_splice_flags_get_type (c-name "g_output_stream_splice_flags_get_type") (return-type "GType") ) ;; From gioerror.h (define-function io_error_quark (c-name "g_io_error_quark") (return-type "GQuark") ) (define-function io_error_from_errno (c-name "g_io_error_from_errno") (return-type "GIOErrorEnum") (parameters '("gint" "err_no") ) ) ;; From gio.h ;; From gio-marshal.h ;; From giomodule.h (define-function io_module_get_type (c-name "g_io_module_get_type") (return-type "GType") ) (define-function io_module_new (c-name "g_io_module_new") (is-constructor-of "GIoModule") (return-type "GIOModule*") (parameters '("const-gchar*" "filename") ) ) (define-function io_modules_load_all_in_directory (c-name "g_io_modules_load_all_in_directory") (return-type "GList*") (parameters '("const-char*" "dirname") ) ) (define-method load (of-object "GIOModule") (c-name "g_io_module_load") (return-type "none") ) (define-method unload (of-object "GIOModule") (c-name "g_io_module_unload") (return-type "none") ) ;; From gioscheduler.h (define-function io_scheduler_push_job (c-name "g_io_scheduler_push_job") (return-type "none") (parameters '("GIOSchedulerJobFunc" "job_func") '("gpointer" "user_data") '("GDestroyNotify" "notify") '("gint" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) ) ) (define-function io_scheduler_cancel_all_jobs (c-name "g_io_scheduler_cancel_all_jobs") (return-type "none") ) (define-method send_to_mainloop (of-object "GIOSchedulerJob") (c-name "g_io_scheduler_job_send_to_mainloop") (return-type "gboolean") (parameters '("GSourceFunc" "func") '("gpointer" "user_data") '("GDestroyNotify" "notify") ) ) (define-method send_to_mainloop_async (of-object "GIOSchedulerJob") (c-name "g_io_scheduler_job_send_to_mainloop_async") (return-type "none") (parameters '("GSourceFunc" "func") '("gpointer" "user_data") '("GDestroyNotify" "notify") ) ) ;; From gloadableicon.h (define-function loadable_icon_get_type (c-name "g_loadable_icon_get_type") (return-type "GType") ) ;; ;; wrapped in gicon.override ;; (define-method load (of-object "GLoadableIcon") (docstring "ICON.load([size, [cancellable]]) -> input stream, type\n" "\n" "Opens a stream of icon data for reading. The result is a tuple of\n" "gio.InputStream and type (either a string or None). The stream can\n" "be read to retrieve icon data.\n" "\n" ;; Note: this is just a guess, GIO docs say nothing at the moment. "Optional size is a hint at desired icon size. Not all implementations\n" "support it and the hint will be just ignored in such cases.\n" "If cancellable is specified, then the operation can be cancelled\n" "by triggering the cancellable object from another thread. See\n" "gio.File.read for details." ) (c-name "g_loadable_icon_load") (return-type "GInputStream*") (parameters '("int" "size") '("char**" "type") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in gicon.override ;; (define-method load_async (of-object "GLoadableIcon") (docstring "ICON.load_async(callback, [size, [cancellable, [user_data]]])\n" "-> start loading\n" "\n" "For more information, see gio.LoadableIcon.load() which is the\n" "synchronous version of this call. Asynchronously opens icon data for\n" "reading. When the operation is finished, callback will be called.\n" "You can then call gio.LoadableIcon.load_finish() to get the result of\n" "the operation.\n" ) (c-name "g_loadable_icon_load_async") (return-type "none") (parameters '("int" "size") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) ;; ;; wrapped in gicon.override ;; (define-method load_finish (docstring "F.load_finish(res) -> start loading\n" "\n" "Finish asynchronous icon loading operation. Must be called from callback\n" "as specified to gio.LoadableIcon.load_async. Returns a tuple of\n" "gio.InputStream and type, just as gio.LoadableIcon.load." ) (of-object "GLoadableIcon") (c-name "g_loadable_icon_load_finish") (return-type "GInputStream*") (parameters '("GAsyncResult*" "res") '("char**" "type") '("GError**" "error") ) ) ;; From glocaldirectorymonitor.h (define-function local_directory_monitor_get_type (c-name "g_local_directory_monitor_get_type") (return-type "GType") ) ;; From glocalfileenumerator.h ;; From glocalfile.h ;; From glocalfileinfo.h ;; From glocalfileinputstream.h ;; From glocalfilemonitor.h (define-function local_file_monitor_get_type (c-name "g_local_file_monitor_get_type") (return-type "GType") ) ;; From glocalfileoutputstream.h ;; From glocalvfs.h ;; From gmemoryinputstream.h (define-function memory_input_stream_get_type (c-name "g_memory_input_stream_get_type") (return-type "GType") ) (define-function memory_input_stream_new (c-name "g_memory_input_stream_new") (is-constructor-of "GMemoryInputStream") (return-type "GInputStream*") ) (define-function memory_input_stream_new_from_data (c-name "g_memory_input_stream_new_from_data") (return-type "GInputStream*") (parameters '("const-void*" "data") '("gssize" "len") '("GDestroyNotify" "destroy") ) ) ;; ;; wrapped in ginputstream.override ;; (define-method add_data (of-object "GMemoryInputStream") (c-name "g_memory_input_stream_add_data") (return-type "none") (parameters '("const-void*" "data") '("gssize" "len") '("GDestroyNotify" "destroy") ) ) ;; From gmemoryoutputstream.h (define-function memory_output_stream_get_type (c-name "g_memory_output_stream_get_type") (return-type "GType") ) ;; ;; wrapped in goutputstream.override ;; (define-function memory_output_stream_new (c-name "g_memory_output_stream_new") (is-constructor-of "GMemoryOutputStream") (return-type "GOutputStream*") (parameters '("gpointer" "data") '("gsize" "len") '("GReallocFunc" "realloc_fn") '("GDestroyNotify" "destroy") ) ) ;; ;; wrapped in goutputstream.override ;; ;; Note: name clash with gobject.GObject.get_data; renamed. (define-method get_contents (of-object "GMemoryOutputStream") (c-name "g_memory_output_stream_get_data") (return-type "gpointer") ) (define-method get_size (of-object "GMemoryOutputStream") (c-name "g_memory_output_stream_get_size") (return-type "gsize") ) (define-method get_data_size (of-object "GMemoryOutputStream") (c-name "g_memory_output_stream_get_data_size") (return-type "gsize") ) ;; From gmount.h (define-function mount_get_type (c-name "g_mount_get_type") (return-type "GType") ) (define-method get_root (of-object "GMount") (c-name "g_mount_get_root") (return-type "GFile*") (caller-owns-return #t) ) (define-method get_name (of-object "GMount") (c-name "g_mount_get_name") (return-type "char*") ) (define-method get_icon (of-object "GMount") (c-name "g_mount_get_icon") (return-type "GIcon*") (caller-owns-return #t) ) (define-method get_uuid (of-object "GMount") (c-name "g_mount_get_uuid") (return-type "char*") ) (define-method get_volume (of-object "GMount") (c-name "g_mount_get_volume") (return-type "GVolume*") (caller-owns-return #t) ) (define-method get_drive (of-object "GMount") (c-name "g_mount_get_drive") (return-type "GDrive*") (caller-owns-return #t) ) (define-method can_unmount (of-object "GMount") (c-name "g_mount_can_unmount") (return-type "gboolean") ) (define-method can_eject (of-object "GMount") (c-name "g_mount_can_eject") (return-type "gboolean") ) ;; ;; wrapped in gio.override ;; (define-method unmount (docstring "M.unmount(callback, [flags, cancellable, user_data])\n" "Unmounts a mount. This is an asynchronous operation, and is finished\n" "by calling gio.Mount.unmount_finish() with the mount and gio.AsyncResults\n" "data returned in the callback." ) (of-object "GMount") (c-name "g_mount_unmount") (return-type "none") (parameters '("GMountUnmountFlags" "flags" (default "G_MOUNT_UNMOUNT_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method unmount_finish (of-object "GMount") (c-name "g_mount_unmount_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; ;; wrapped in gio.override ;; (define-method eject (docstring "F.eject(callback, [flags, cancellable, user_data])\n" "Ejects a volume.\n" "\n" "If cancellable is not None, then the operation can be cancelled by\n" "triggering the cancellable object from another thread. If the\n" "operation was cancelled, the error gio.ERROR_CANCELLED will be returned.\n" "\n" "When the operation is finished, callback will be called. You can\n" "then call gio.Volume.eject_finish() to get the result of the operation.\n") (of-object "GMount") (c-name "g_mount_eject") (return-type "none") (parameters '("GMountUnmountFlags" "flags" (default "G_MOUNT_UNMOUNT_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method eject_finish (of-object "GMount") (c-name "g_mount_eject_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; ;; wrapped in gio.override ;; (define-method remount (of-object "GMount") (docstring "M.remount(callback, [flags, [mount_operation, [cancellable, [user_data]]]])\n" "Remounts a mount. This is an asynchronous operation, and is finished by\n" "calling gio.Mount.remount_finish with the mount and gio.AsyncResults data\n" "returned in the callback.") (c-name "g_mount_remount") (return-type "none") (parameters '("GMountOperation*" "mount_operation") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method remount_finish (of-object "GMount") (c-name "g_mount_remount_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method guess_content_type (of-object "GMount") (c-name "g_mount_guess_content_type") (return-type "none") (parameters '("gboolean" "force_rescan") '("GCancellable*" "cancellable") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method guess_content_type_finish (of-object "GMount") (c-name "g_mount_guess_content_type_finish") (return-type "gchar**") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method guess_content_type_sync (of-object "GMount") (c-name "g_mount_guess_content_type_sync") (return-type "gchar**") (parameters '("gboolean" "force_rescan") '("GCancellable*" "cancellable") '("GError**" "error") ) ) (define-method is_shadowed (of-object "GMount") (c-name "g_mount_is_shadowed") (return-type "gboolean") ) (define-method shadow (of-object "GMount") (c-name "g_mount_shadow") (return-type "none") ) (define-method unshadow (of-object "GMount") (c-name "g_mount_unshadow") (return-type "none") ) ;; From gmountoperation.h (define-function mount_operation_get_type (c-name "g_mount_operation_get_type") (return-type "GType") ) (define-function mount_operation_new (c-name "g_mount_operation_new") (is-constructor-of "GMountOperation") (return-type "GMountOperation*") ) (define-method get_username (of-object "GMountOperation") (c-name "g_mount_operation_get_username") (return-type "const-char*") ) (define-method set_username (of-object "GMountOperation") (c-name "g_mount_operation_set_username") (return-type "none") (parameters '("const-char*" "username") ) ) (define-method get_password (of-object "GMountOperation") (c-name "g_mount_operation_get_password") (return-type "const-char*") ) (define-method set_password (of-object "GMountOperation") (c-name "g_mount_operation_set_password") (return-type "none") (parameters '("const-char*" "password") ) ) (define-method get_anonymous (of-object "GMountOperation") (c-name "g_mount_operation_get_anonymous") (return-type "gboolean") ) (define-method set_anonymous (of-object "GMountOperation") (c-name "g_mount_operation_set_anonymous") (return-type "none") (parameters '("gboolean" "anonymous") ) ) (define-method get_domain (of-object "GMountOperation") (c-name "g_mount_operation_get_domain") (return-type "const-char*") ) (define-method set_domain (of-object "GMountOperation") (c-name "g_mount_operation_set_domain") (return-type "none") (parameters '("const-char*" "domain") ) ) (define-method get_password_save (of-object "GMountOperation") (c-name "g_mount_operation_get_password_save") (return-type "GPasswordSave") ) (define-method set_password_save (of-object "GMountOperation") (c-name "g_mount_operation_set_password_save") (return-type "none") (parameters '("GPasswordSave" "save") ) ) (define-method get_choice (of-object "GMountOperation") (c-name "g_mount_operation_get_choice") (return-type "int") ) (define-method set_choice (of-object "GMountOperation") (c-name "g_mount_operation_set_choice") (return-type "none") (parameters '("int" "choice") ) ) (define-method reply (of-object "GMountOperation") (c-name "g_mount_operation_reply") (return-type "none") (parameters '("GMountOperationResult" "result") ) ) ;; From gnativevolumemonitor.h (define-function native_volume_monitor_get_type (c-name "g_native_volume_monitor_get_type") (return-type "GType") ) ;; From goutputstream.h (define-function output_stream_get_type (c-name "g_output_stream_get_type") (return-type "GType") ) ;; ;; wrapped in goutputstream.override ;; ;; Note: the following two methods are renamed for consistency with ;; Python file objects' write(). I.e. g_output_stream_write_all() is ;; more like Python file.write(), so it is renamed write(). Since now ;; there is a name clash, g_output_stream_write() is renamed ;; write_part(). (define-method write_part (of-object "GOutputStream") (docstring "STREAM.write_part(buffer, [cancellable]) -> int\n" "\n" "Write the bytes in 'buffer' to the stream. Return the number of bytes\n" "successfully written. This method is allowed to stop at any time after\n" "writing at least 1 byte. Therefore, to reliably write the whole buffer,\n" "you need to use a loop. See also gio.OutputStream.write for easier to\n" "use (though less efficient) method.\n" "\n" "Note: this method roughly corresponds to C GIO g_output_stream_write." ) (c-name "g_output_stream_write") (return-type "gssize") (parameters '("const-void*" "buffer") '("gsize" "count") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in goutputstream.override ;; ;; See comments before the previous method definition. (define-method write (of-object "GOutputStream") "STREAM.write(buffer, [cancellable]) -> int\n" "\n" "Write the bytes in 'buffer' to the stream. Return the number of bytes\n" "successfully written. This method will stop only after writing the whole\n" "buffer or triggering an I/O error. See also gio.OutputStream.write_part\n" "for more efficient, but more cumbersome to use method.\n" "\n" "Note: this method roughly corresponds to C GIO g_output_stream_write_all.\n" "It was renamed for consistency with Python standard file.write." (c-name "g_output_stream_write_all") (return-type "gboolean") (parameters '("const-void*" "buffer") '("gsize" "count") '("gsize*" "bytes_written") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method splice (of-object "GOutputStream") (c-name "g_output_stream_splice") (return-type "gssize") (parameters '("GInputStream*" "source") '("GOutputStreamSpliceFlags" "flags" (default "G_OUTPUT_STREAM_SPLICE_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method flush (of-object "GOutputStream") (c-name "g_output_stream_flush") (return-type "gboolean") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method close (of-object "GOutputStream") (c-name "g_output_stream_close") (return-type "gboolean") (parameters '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; ;; wrapped in goutputstream.override ;; (define-method write_async (of-object "GOutputStream") (docstring "S.write_async(buffer, callback [,io_priority] [,cancellable] [,user_data])\n" "\n" "Request an asynchronous write of count bytes from buffer into the stream.\n" "When the operation is finished callback will be called. You can then call\n" "gio.OutputStream.write_finish() to get the result of the operation.\n" "On success, the number of bytes written will be passed to the callback.\n" "It is not an error if this is not the same as the requested size, as it can\n" "happen e.g. on a partial I/O error, but generally tries to write as many \n" "bytes as requested.\n" "For the synchronous, blocking version of this function, see\n" "gio.OutputStream.write().\n") (c-name "g_output_stream_write_async") (return-type "none") (parameters '("const-void*" "buffer") '("gsize" "count") '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method write_finish (of-object "GOutputStream") (c-name "g_output_stream_write_finish") (return-type "gssize") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method splice_async (of-object "GOutputStream") (c-name "g_output_stream_splice_async") (return-type "none") (parameters '("GInputStream*" "source") '("GOutputStreamSpliceFlags" "flags" (default "G_OUTPUT_STREAM_SPLICE_NONE")) '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method splice_finish (of-object "GOutputStream") (c-name "g_output_stream_splice_finish") (return-type "gssize") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method flush_async (of-object "GOutputStream") (c-name "g_output_stream_flush_async") (return-type "none") (parameters '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method flush_finish (of-object "GOutputStream") (c-name "g_output_stream_flush_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; ;; wrapped in goutputstream.override ;; (define-method close_async (of-object "GOutputStream") (c-name "g_output_stream_close_async") (return-type "none") (parameters '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method close_finish (of-object "GOutputStream") (c-name "g_output_stream_close_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method is_closed (of-object "GOutputStream") (c-name "g_output_stream_is_closed") (return-type "gboolean") ) (define-method has_pending (of-object "GOutputStream") (c-name "g_output_stream_has_pending") (return-type "gboolean") ) (define-method set_pending (of-object "GOutputStream") (c-name "g_output_stream_set_pending") (return-type "gboolean") (parameters '("GError**" "error") ) ) (define-method clear_pending (of-object "GOutputStream") (c-name "g_output_stream_clear_pending") (return-type "none") ) ;; From gpollfilemonitor.h ;; From gseekable.h (define-function seekable_get_type (c-name "g_seekable_get_type") (return-type "GType") ) (define-method tell (of-object "GSeekable") (c-name "g_seekable_tell") (return-type "goffset") ) (define-method can_seek (of-object "GSeekable") (c-name "g_seekable_can_seek") (return-type "gboolean") ) (define-method seek (of-object "GSeekable") (c-name "g_seekable_seek") (return-type "gboolean") (parameters '("goffset" "offset") '("GSeekType" "type" (default "G_SEEK_SET")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) (define-method can_truncate (of-object "GSeekable") (c-name "g_seekable_can_truncate") (return-type "gboolean") ) (define-method truncate (of-object "GSeekable") (c-name "g_seekable_truncate") (return-type "gboolean") (parameters '("goffset" "offset") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GError**" "error") ) ) ;; From gsimpleasyncresult.h (define-function simple_async_result_get_type (c-name "g_simple_async_result_get_type") (return-type "GType") ) (define-function simple_async_result_new (c-name "g_simple_async_result_new") (is-constructor-of "GSimpleAsyncResult") (return-type "GSimpleAsyncResult*") (parameters '("GObject*" "source_object") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") '("gpointer" "source_tag") ) ) (define-function simple_async_result_new_error (c-name "g_simple_async_result_new_error") (return-type "GSimpleAsyncResult*") (parameters '("GObject*" "source_object") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") '("GQuark" "domain") '("gint" "code") '("const-char*" "format") ) (varargs #t) ) (define-function simple_async_result_new_from_error (c-name "g_simple_async_result_new_from_error") (return-type "GSimpleAsyncResult*") (parameters '("GObject*" "source_object") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") '("GError*" "error") ) ) (define-method set_op_res_gpointer (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_set_op_res_gpointer") (return-type "none") (parameters '("gpointer" "op_res") '("GDestroyNotify" "destroy_op_res") ) ) (define-method get_op_res_gpointer (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_get_op_res_gpointer") (return-type "gpointer") ) (define-method set_op_res_gssize (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_set_op_res_gssize") (return-type "none") (parameters '("gssize" "op_res") ) ) (define-method get_op_res_gssize (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_get_op_res_gssize") (return-type "gssize") ) (define-method set_op_res_gboolean (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_set_op_res_gboolean") (return-type "none") (parameters '("gboolean" "op_res") ) ) (define-method get_op_res_gboolean (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_get_op_res_gboolean") (return-type "gboolean") ) (define-method get_source_tag (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_get_source_tag") (return-type "gpointer") ) (define-method set_handle_cancellation (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_set_handle_cancellation") (return-type "none") (parameters '("gboolean" "handle_cancellation") ) ) (define-method complete (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_complete") (return-type "none") ) (define-method complete_in_idle (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_complete_in_idle") (return-type "none") ) (define-method run_in_thread (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_run_in_thread") (return-type "none") (parameters '("GSimpleAsyncThreadFunc" "func") '("int" "io_priority" (default "G_PRIORITY_DEFAULT")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) ) ) (define-method set_from_error (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_set_from_error") (return-type "none") (parameters '("GError*" "error") ) ) (define-method propagate_error (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_propagate_error") (return-type "gboolean") (parameters '("GError**" "dest") ) ) (define-method set_error (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_set_error") (return-type "none") (parameters '("GQuark" "domain") '("gint" "code") '("const-char*" "format") ) (varargs #t) ) (define-method set_error_va (of-object "GSimpleAsyncResult") (c-name "g_simple_async_result_set_error_va") (return-type "none") (parameters '("GQuark" "domain") '("gint" "code") '("const-char*" "format") '("va_list" "args") ) ) (define-function simple_async_report_error_in_idle (c-name "g_simple_async_report_error_in_idle") (return-type "none") (parameters '("GObject*" "object") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") '("GQuark" "domain") '("gint" "code") '("const-char*" "format") ) (varargs #t) ) (define-function simple_async_report_gerror_in_idle (c-name "g_simple_async_report_gerror_in_idle") (return-type "none") (parameters '("GObject*" "object") '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") '("GError*" "error") ) ) ;; From gthemedicon.h (define-function themed_icon_get_type (c-name "g_themed_icon_get_type") (return-type "GType") ) (define-function themed_icon_new (c-name "g_themed_icon_new") (is-constructor-of "GThemedIcon") (return-type "GIcon*") (properties '("name" (argname "iconname")) ) ) (define-function themed_icon_new_with_default_fallbacks (c-name "g_themed_icon_new_with_default_fallbacks") (return-type "GIcon*") (parameters '("const-char*" "iconname") ) ) (define-function themed_icon_new_from_names (c-name "g_themed_icon_new_from_names") (return-type "GIcon*") (parameters '("char**" "iconnames") '("int" "len") ) ) (define-method prepend_name (of-object "GThemedIcon") (c-name "g_themed_icon_prepend_name") (return-type "none") (parameters '("const-char*" "iconname") ) ) ;; ;; wrapped in gicon.override ;; (define-method get_names (c-name "g_themed_icon_get_names") (of-object "GThemedIcon") (return-type "const-gchar*-const*") ) (define-method append_name (c-name "g_themed_icon_append_name") (of-object "GThemedIcon") (return-type "none") (parameters '("char*" "iconname") ) ) ;; From gunionvolumemonitor.h ;; From gunixinputstream.h (define-function unix_input_stream_get_type (c-name "g_unix_input_stream_get_type") (return-type "GType") ) (define-function unix_input_stream_new (c-name "g_unix_input_stream_new") (is-constructor-of "GUnixInputStream") (return-type "GInputStream*") (parameters '("int" "fd") '("gboolean" "close_fd_at_close") ) ) ;; From gvfs.h (define-function vfs_get_type (c-name "g_vfs_get_type") (return-type "GType") ) (define-method is_active (of-object "GVfs") (c-name "g_vfs_is_active") (return-type "gboolean") ) (define-method get_file_for_path (of-object "GVfs") (c-name "g_vfs_get_file_for_path") (return-type "GFile*") (caller-owns-return #t) (parameters '("const-char*" "path") ) ) (define-method get_file_for_uri (of-object "GVfs") (c-name "g_vfs_get_file_for_uri") (return-type "GFile*") (caller-owns-return #t) (parameters '("const-char*" "uri") ) ) (define-method parse_name (of-object "GVfs") (c-name "g_vfs_parse_name") (return-type "GFile*") (caller-owns-return #t) (parameters '("const-char*" "parse_name") ) ) (define-function vfs_get_default (c-name "g_vfs_get_default") (return-type "GVfs*") ) (define-function vfs_get_local (c-name "g_vfs_get_local") (return-type "GVfs*") ) ;; ;; wrapped in gio.override ;; (define-method get_supported_uri_schemes (docstring "VFS.get_supported_uri_schemes() -> [uri, ..]\n" "Gets a list of URI schemes supported by vfs.") (of-object "GVfs") (c-name "g_vfs_get_supported_uri_schemes") (return-type "const-char*-const*") ) ;; From gwin32appinfo.h (define-function win32_app_info_get_type (c-name "g_win32_app_info_get_type") (return-type "GType") ) ;; From gvolume.h (define-function volume_get_type (c-name "g_volume_get_type") (return-type "GType") ) (define-method get_name (of-object "GVolume") (c-name "g_volume_get_name") (return-type "char*") ) (define-method get_icon (of-object "GVolume") (c-name "g_volume_get_icon") (return-type "GIcon*") (caller-owns-return #t) ) (define-method get_uuid (of-object "GVolume") (c-name "g_volume_get_uuid") (return-type "char*") ) (define-method get_drive (of-object "GVolume") (c-name "g_volume_get_drive") (return-type "GDrive*") (caller-owns-return #t) ) (define-method get_mount (of-object "GVolume") (c-name "g_volume_get_mount") (return-type "GMount*") (caller-owns-return #t) ) (define-method can_mount (of-object "GVolume") (c-name "g_volume_can_mount") (return-type "gboolean") ) (define-method can_eject (of-object "GVolume") (c-name "g_volume_can_eject") (return-type "gboolean") ) (define-method should_automount (of-object "GVolume") (c-name "g_volume_should_automount") (return-type "gboolean") ) ;; ;; wrapped in gvolume.override ;; (define-method mount (of-object "GVolume") (c-name "g_volume_mount") (return-type "none") (parameters '("GMountOperation*" "mount_operation") '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method mount_finish (of-object "GVolume") (c-name "g_volume_mount_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) ;; ;; wrapped in gvolume.override ;; (define-method eject (of-object "GVolume") (c-name "g_volume_eject") (return-type "none") (parameters '("GMountUnmountFlags" "flags" (default "G_MOUNT_UNMOUNT_NONE")) '("GCancellable*" "cancellable" (null-ok) (default "NULL")) '("GAsyncReadyCallback" "callback") '("gpointer" "user_data") ) ) (define-method eject_finish (of-object "GVolume") (c-name "g_volume_eject_finish") (return-type "gboolean") (parameters '("GAsyncResult*" "result") '("GError**" "error") ) ) (define-method get_identifier (of-object "GVolume") (c-name "g_volume_get_identifier") (return-type "char*") (parameters '("const-char*" "kind") ) ) ;; ;; wrapped in gvolume.override ;; (define-method enumerate_identifiers (of-object "GVolume") (c-name "g_volume_enumerate_identifiers") (return-type "char**") ) (define-method get_activation_root (of-object "GVolume") (c-name "g_volume_get_activation_root") (return-type "GFile*") ) ;; From gvolumemonitor.h (define-function volume_monitor_get_type (c-name "g_volume_monitor_get_type") (return-type "GType") ) (define-function volume_monitor_get (c-name "g_volume_monitor_get") (return-type "GVolumeMonitor*") ) ;; ;; wrapped in gvolumemonitor.override ;; (define-method get_connected_drives (of-object "GVolumeMonitor") (c-name "g_volume_monitor_get_connected_drives") (return-type "GList*") ) ;; ;; wrapped in gvolumemonitor.override ;; (define-method get_volumes (of-object "GVolumeMonitor") (c-name "g_volume_monitor_get_volumes") (return-type "GList*") ) ;; ;; wrapped in gvolumemonitor.override ;; (define-method get_mounts (of-object "GVolumeMonitor") (c-name "g_volume_monitor_get_mounts") (return-type "GList*") ) (define-method get_volume_for_uuid (of-object "GVolumeMonitor") (c-name "g_volume_monitor_get_volume_for_uuid") (return-type "GVolume*") (caller-owns-return #t) (parameters '("const-char*" "uuid") ) ) (define-method get_mount_for_uuid (of-object "GVolumeMonitor") (c-name "g_volume_monitor_get_mount_for_uuid") (return-type "GMount*") (caller-owns-return #t) (parameters '("const-char*" "uuid") ) ) (define-function volume_monitor_adopt_orphan_mount (c-name "g_volume_monitor_adopt_orphan_mount") (return-type "GVolume*") (parameters '("GMount*" "mount") ) ) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gdrive.override0000644000000000000000000001124711272036652023261 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * Copyright (C) 2009 Gian Mario Tagliaretti * * gicon.override: module overrides for GIcon and related types * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA */ %% override g_drive_get_volumes noargs static PyObject * _wrap_g_drive_get_volumes (PyGObject *self) { GList *list, *l; PyObject *ret; pyg_begin_allow_threads; list = g_drive_get_volumes (G_DRIVE (self->obj)); pyg_end_allow_threads; ret = PyList_New(0); for (l = list; l; l = l->next) { GVolume *volume = l->data; PyObject *item = pygobject_new((GObject *)volume); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(volume); } g_list_free(list); return ret; } %% override g_drive_eject kwargs static PyObject * _wrap_g_drive_eject(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; GMountUnmountFlags flags = G_MOUNT_UNMOUNT_NONE; PyGObject *py_cancellable = NULL; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOO:gio.Drive.eject", kwlist, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_UNMOUNT_FLAGS, py_flags, (gpointer) &flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_drive_eject(G_DRIVE(self->obj), flags, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_drive_poll_for_media kwargs static PyObject * _wrap_g_drive_poll_for_media(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyGObject *py_cancellable = NULL; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OO:gio.Drive.eject", kwlist, ¬ify->callback, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); pyg_begin_allow_threads; g_drive_poll_for_media(G_DRIVE(self->obj), cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); pyg_end_allow_threads; Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override-slot GDrive.tp_repr static PyObject * _wrap_g_drive_tp_repr(PyGObject *self) { char *name = g_drive_get_name(G_DRIVE(self->obj)); gchar *representation; PyObject *result; if (name) { representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, name); g_free(name); } else representation = g_strdup_printf("<%s at %p: UNKNOWN NAME>", self->ob_type->tp_name, self); result = PyString_FromString(representation); g_free(representation); return result; } %% override g_drive_enumerate_identifiers noargs static PyObject * _wrap_g_drive_enumerate_identifiers (PyGObject *self) { char **ids; PyObject *ret; pyg_begin_allow_threads; ids = g_drive_enumerate_identifiers(G_DRIVE (self->obj)); pyg_end_allow_threads; if (ids && ids[0] != NULL) { ret = strv_to_pylist(ids); g_strfreev (ids); } else { ret = Py_None; Py_INCREF(ret); } return ret; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gfile.override0000644000000000000000000013305111272036652023065 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * * gfile.override: module overrides for GInputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% headers static void file_progress_callback_marshal(goffset current_num_bytes, goffset total_num_bytes, PyGIONotify *notify) { PyObject *ret; PyGILState_STATE state; state = pyg_gil_state_ensure(); if (notify->data) ret = PyObject_CallFunction(notify->callback, "(KKO)", current_num_bytes, total_num_bytes, notify->data); else ret = PyObject_CallFunction(notify->callback, "(KK)", current_num_bytes, total_num_bytes); if (ret == NULL) { PyErr_Print(); PyErr_Clear(); } Py_XDECREF(ret); pyg_gil_state_release(state); } %% define _install_file_meta static PyObject * _wrap__install_file_meta(PyObject *self, PyObject *args) { PyObject *metaclass; if (!PyArg_ParseTuple(args, "O", &metaclass)) return NULL; Py_INCREF(metaclass); PyGFile_Type.ob_type = (PyTypeObject*)metaclass; Py_INCREF(Py_None); return Py_None; } %% define _file_init kwargs static PyObject* _wrap__file_init(PyGObject *self, PyObject *args, PyObject *kwargs) { GFile *file; Py_ssize_t n_args, n_kwargs; char *arg; PyObject *py_ret; n_args = PyTuple_Size(args); n_kwargs = kwargs != NULL ? PyDict_Size(kwargs) : 0; if (n_args == 1 && n_kwargs == 0) { if (!PyArg_ParseTuple(args, "s:gio.File.__init__", &arg)) return NULL; file = g_file_new_for_commandline_arg(arg); } else if (n_args == 0 && n_kwargs == 1) { if (PyDict_GetItemString(kwargs, "path")) { char *kwlist[] = { "path", NULL }; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s:gio.File.__init__", kwlist, &arg)) return NULL; file = g_file_new_for_path(arg); } else if (PyDict_GetItemString(kwargs, "uri")) { char *kwlist[] = { "uri", NULL }; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s:gio.File.__init__", kwlist, &arg)) return NULL; file = g_file_new_for_uri(arg); } else { PyErr_Format(PyExc_TypeError, "gio.File() got an unexpected keyword argument '%s'", "unknown"); return NULL; } } else { PyErr_Format(PyExc_TypeError, "gio.File() takes exactly 1 argument (%zd given)", n_args + n_kwargs); return NULL; } if (!file) { PyErr_SetString(PyExc_RuntimeError, "could not create GFile object"); return NULL; } py_ret = pygobject_new((GObject *)file); g_object_unref(file); return py_ret; } %% override g_file_read_async kwargs static PyObject * _wrap_g_file_read_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:File.read_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_read_async(G_FILE(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_load_contents kwargs static PyObject * _wrap_g_file_load_contents(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; gchar *contents, *etag_out; gsize length; GError *error = NULL; gboolean ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O:File.load_contents", kwlist, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; pyg_begin_allow_threads; ret = g_file_load_contents(G_FILE(self->obj), cancellable, &contents, &length, &etag_out, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; if (ret) { PyObject *pyret; pyret = Py_BuildValue("(s#ks)", contents, length, length, etag_out); g_free(contents); g_free(etag_out); return pyret; } else { Py_INCREF(Py_None); return Py_None; } } %% override g_file_load_contents_async kwargs static PyObject * _wrap_g_file_load_contents_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OO:File.load_contents_async", kwlist, ¬ify->callback, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_load_contents_async(G_FILE(self->obj), cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_load_contents_finish kwargs static PyObject * _wrap_g_file_load_contents_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; gchar *contents, *etag_out; gsize length; GError *error = NULL; gboolean ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:File.load_contents_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_load_contents_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &contents, &length, &etag_out, &error); if (pyg_error_check(&error)) return NULL; if (ret) { PyObject *pyret; pyret = Py_BuildValue("(s#ks)", contents, length, length, etag_out); g_free(contents); g_free(etag_out); return pyret; } else { Py_INCREF(Py_None); return Py_None; } } %% override g_file_enumerate_children_async kwargs static PyObject * _wrap_g_file_enumerate_children_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; PyGIONotify *notify; char *attributes; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|OiOO:gio.File.enumerate_children_async", kwlist, &attributes, ¬ify->callback, &py_flags, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_enumerate_children_async(G_FILE(self->obj), attributes, flags, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_mount_mountable kwargs static PyObject * _wrap_g_file_mount_mountable(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "mount_operation", "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *mount_operation; PyGObject *py_cancellable = NULL; GMountMountFlags flags = G_MOUNT_MOUNT_NONE; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OOO:File.mount_mountable", kwlist, &PyGMountOperation_Type, &mount_operation, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_MOUNT_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_mount_mountable(G_FILE(self->obj), flags, G_MOUNT_OPERATION(mount_operation->obj), cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_unmount_mountable kwargs static PyObject * _wrap_g_file_unmount_mountable(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *py_cancellable = NULL; GMountUnmountFlags flags = G_MOUNT_UNMOUNT_NONE; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOO:File.unmount_mountable", kwlist, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_UNMOUNT_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_unmount_mountable(G_FILE(self->obj), flags, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_mount_enclosing_volume kwargs static PyObject * _wrap_g_file_mount_enclosing_volume(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "mount_operation", "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *mount_operation; PyGObject *py_cancellable = NULL; GMountMountFlags flags = G_MOUNT_MOUNT_NONE; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OOO:File.mount_enclosing_volume", kwlist, &PyGMountOperation_Type, &mount_operation, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_MOUNT_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_mount_enclosing_volume(G_FILE(self->obj), flags, G_MOUNT_OPERATION(mount_operation->obj), cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_copy kwargs static PyObject * _wrap_g_file_copy(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "destination", "progress_callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *destination = NULL; PyGObject *py_cancellable = NULL; GFileCopyFlags flags = G_FILE_COPY_NONE; GCancellable *cancellable; int ret; GError *error = NULL; GFileProgressCallback callback = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!|OOOO:File.copy", kwlist, &PyGFile_Type, &destination, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (pygio_notify_using_optional_callback(notify)) { callback = (GFileProgressCallback)file_progress_callback_marshal; if (!pygio_notify_callback_is_valid(notify)) goto error; } if (py_flags && pyg_flags_get_value(G_TYPE_FILE_COPY_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; /* No need to reference callback here, because it will be used * only while this function is in progress. */ pyg_begin_allow_threads; ret = g_file_copy(G_FILE(self->obj), G_FILE(destination->obj), flags, cancellable, callback, notify, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) goto error; pygio_notify_free(notify); return PyBool_FromLong(ret); error: pygio_notify_free(notify); return NULL; } %% override g_file_copy_async kwargs static PyObject * _wrap_g_file_copy_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "destination", "callback", "progress_callback", "flags", "io_priority", "cancellable", "user_data", "progress_callback_data", NULL }; PyGIONotify *notify, *progress_notify; PyObject *py_flags = NULL; PyGObject *destination = NULL; PyGObject *py_cancellable = NULL; GFileCopyFlags flags = G_FILE_COPY_NONE; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; GFileProgressCallback progress_callback = NULL; /* After the creation, referencing/freeing will automatically be * done on the master and the slave. */ notify = pygio_notify_new(); progress_notify = pygio_notify_new_slave(notify); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OOiOOO:File.copy_async", kwlist, &PyGFile_Type, &destination, ¬ify->callback, &progress_notify->callback, &py_flags, &io_priority, &pycancellable, ¬ify->data, &progress_notify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; if (pygio_notify_using_optional_callback(progress_notify)) { progress_callback = (GFileProgressCallback) file_progress_callback_marshal; if (!pygio_notify_callback_is_valid_full(progress_notify, "progress_callback")) goto error; } if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_copy_async(G_FILE(self->obj), G_FILE(destination->obj), flags, io_priority, cancellable, progress_callback, progress_notify, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_move kwargs static PyObject * _wrap_g_file_move(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "destination", "progress_callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *destination = NULL; PyGObject *py_cancellable = NULL; GFileCopyFlags flags = G_FILE_COPY_NONE; GCancellable *cancellable; int ret; GError *error = NULL; GFileProgressCallback callback = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!|OOOO:File.move", kwlist, &PyGFile_Type, &destination, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (pygio_notify_using_optional_callback(notify)) { callback = (GFileProgressCallback)file_progress_callback_marshal; if (!pygio_notify_callback_is_valid(notify)) goto error; } if (py_flags && pyg_flags_get_value(G_TYPE_FILE_COPY_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; /* No need to reference callback here, because it will be used * only while this function is in progress. */ pyg_begin_allow_threads; ret = g_file_move(G_FILE(self->obj), G_FILE(destination->obj), flags, cancellable, callback, notify, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) goto error; pygio_notify_free(notify); return PyBool_FromLong(ret); error: pygio_notify_free(notify); return NULL; } %% override g_file_set_attribute kwargs static PyObject * _wrap_g_file_set_attribute(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "type", "value_p", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; int ret; GCancellable *cancellable = NULL; GError *error = NULL; char *attribute; PyObject *py_type = NULL, *py_flags = NULL, *value_p; PyGObject *pycancellable = NULL; GFileAttributeType type; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sOO|OO:gio.File.set_attribute", kwlist, &attribute, &py_type, &value_p, &py_flags, &pycancellable)) return NULL; if (pyg_enum_get_value(G_TYPE_FILE_ATTRIBUTE_TYPE, py_type, (gpointer)&type)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; ret = g_file_set_attribute(G_FILE(self->obj), attribute, type, (gpointer)value_p, flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } %% override g_file_query_settable_attributes kwargs static PyObject * _wrap_g_file_query_settable_attributes(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *pycancellable = NULL; GCancellable *cancellable = NULL; GFileAttributeInfoList *ret; GError *error = NULL; gint i, n_infos; GFileAttributeInfo *infos; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O:gio.File.query_settable_attributes", kwlist, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; ret = g_file_query_settable_attributes(G_FILE(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; n_infos = ret->n_infos; infos = ret->infos; if (n_infos > 0) { py_ret = PyList_New(n_infos); for (i = 0; i < n_infos; i++) { PyList_SetItem(py_ret, i, pyg_file_attribute_info_new(&infos[i])); } g_file_attribute_info_list_unref(ret); return py_ret; } else { Py_INCREF(Py_None); return Py_None; } } %% override g_file_query_writable_namespaces kwargs static PyObject * _wrap_g_file_query_writable_namespaces(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *pycancellable = NULL; GCancellable *cancellable = NULL; GFileAttributeInfoList *ret; GError *error = NULL; gint i, n_infos; GFileAttributeInfo *infos; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O:gio.File.query_writable_namespaces", kwlist, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; ret = g_file_query_writable_namespaces(G_FILE(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; n_infos = ret->n_infos; infos = ret->infos; if (n_infos > 0) { py_ret = PyList_New(n_infos); for (i = 0; i < n_infos; i++) { PyList_SetItem(py_ret, i, pyg_file_attribute_info_new(&infos[i])); } g_file_attribute_info_list_unref(ret); return py_ret; } else { Py_INCREF(Py_None); return Py_None; } } %% override g_file_append_to_async kwargs static PyObject * _wrap_g_file_append_to_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OiOO:File.append_to_async", kwlist, ¬ify->callback, &flags, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_append_to_async(G_FILE(self->obj), flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_create_async kwargs static PyObject * _wrap_g_file_create_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OiOO:File.create_async", kwlist, ¬ify->callback, &flags, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_create_async(G_FILE(self->obj), flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_replace_async kwargs static PyObject * _wrap_g_file_replace_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "etag", "make_backup", "flags", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; char *etag = NULL; gboolean make_backup = TRUE; PyObject *py_backup = Py_True; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|zOOiOO:File.replace_async", kwlist, ¬ify->callback, &etag, &py_backup, &flags, &io_priority, &pycancellable, ¬ify->data)) goto error; make_backup = PyObject_IsTrue(py_backup) ? TRUE : FALSE; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_replace_async(G_FILE(self->obj), etag, make_backup, flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_query_info_async kwargs static PyObject * _wrap_g_file_query_info_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; char *attributes; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|OiOO:File.query_info_async", kwlist, &attributes, ¬ify->callback, &flags, &io_priority, &pycancellable, ¬ify->data)) { /* To preserve compatibility with 2.16 we also allow swapped * 'attributes' and 'callback'. FIXME: Remove for 3.0. */ static char *old_kwlist[] = { "callback", "attributes", "flags", "io_priority", "cancellable", "user_data", NULL }; PyObject *exc_type, *exc_value, *exc_traceback; PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "Os|OiOO:File.query_info_async", old_kwlist, ¬ify->callback, &attributes, &flags, &io_priority, &pycancellable, ¬ify->data) || !pygio_notify_callback_is_valid(notify)) { /* Report the error with new parameters. */ PyErr_Restore(exc_type, exc_value, exc_traceback); goto error; } Py_XDECREF(exc_type); Py_XDECREF(exc_value); Py_XDECREF(exc_traceback); } if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_query_info_async(G_FILE(self->obj), attributes, flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_replace_contents kwargs static PyObject * _wrap_g_file_replace_contents(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "contents", "etag", "make_backup", "flags", "cancellable", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; gsize length; gboolean make_backup = FALSE; char *contents; char *etag = NULL; char *new_etag = NULL; GError *error = NULL; gboolean ret; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s#|zbOO:File.replace_contents", kwlist, &contents, &length, &etag, &make_backup, &flags, &cancellable)) { return NULL; } if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; pyg_begin_allow_threads; ret = g_file_replace_contents(G_FILE(self->obj), contents, length, etag, make_backup, flags, &new_etag, cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; if (ret) { py_ret = PyString_FromString(new_etag); } else { py_ret = Py_None; Py_INCREF(py_ret); } g_free(new_etag); return py_ret; } %% override g_file_replace_contents_finish kwargs static PyObject * _wrap_g_file_replace_contents_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *res; gchar *etag_out = NULL; GError *error = NULL; gboolean ret; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:File.replace_contents_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_replace_contents_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &etag_out, &error); if (pyg_error_check(&error)) return NULL; if (ret) { py_ret = PyString_FromString(etag_out); return py_ret; } else { py_ret = Py_None; Py_INCREF(py_ret); } g_free(etag_out); return py_ret; } %% override g_file_replace_contents_async kwargs static PyObject * _wrap_g_file_replace_contents_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "contents", "callback", "etag", "make_backup", "flags", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; PyGIONotify *notify; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; gsize length; gboolean make_backup = FALSE; char *contents; char *etag = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s#O|zbOOO:File.replace_contents_async", kwlist, &contents, &length, ¬ify->callback, &etag, &make_backup, &py_flags, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); pygio_notify_copy_buffer(notify, contents, length); g_file_replace_contents_async(G_FILE(self->obj), notify->buffer, notify->buffer_size, etag, make_backup, flags, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override-slot GFile.tp_richcompare static PyObject * _wrap_g_file_tp_richcompare(PyGObject *self, PyGObject *other, int op) { PyObject *result; if (PyObject_TypeCheck(self, &PyGFile_Type) && PyObject_TypeCheck(other, &PyGFile_Type)) { GFile *file1 = G_FILE(self->obj); GFile *file2 = G_FILE(other->obj); switch (op) { case Py_EQ: result = (g_file_equal(file1, file2) ? Py_True : Py_False); break; case Py_NE: result = (!g_file_equal(file1, file2) ? Py_True : Py_False); break; default: result = Py_NotImplemented; } } else result = Py_NotImplemented; Py_INCREF(result); return result; } %% override-slot GFile.tp_hash static long _wrap_g_file_tp_hash(PyGObject *self) { return g_file_hash(G_FILE(self->obj)); } %% override-slot GFile.tp_repr static PyObject * _wrap_g_file_tp_repr(PyGObject *self) { char *uri = g_file_get_uri(G_FILE(self->obj)); gchar *representation; PyObject *result; if (uri) { representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, uri); g_free(uri); } else representation = g_strdup_printf("<%s at %p: UNKNOWN URI>", self->ob_type->tp_name, self); result = PyString_FromString(representation); g_free(representation); return result; } %% override g_file_eject_mountable kwargs static PyObject * _wrap_g_file_eject_mountable(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOO:File.eject_mountable", kwlist, ¬ify->callback, &flags, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_eject_mountable(G_FILE(self->obj), flags, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_find_enclosing_mount_async kwargs static PyObject * _wrap_g_file_find_enclosing_mount_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:File.enclosing_mount_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_find_enclosing_mount_async(G_FILE(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_query_filesystem_info_async kwargs static PyObject * _wrap_g_file_query_filesystem_info_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "io_priority", "cancellable", "user_data", NULL }; PyGIONotify *notify; char *attributes; int io_priority = G_PRIORITY_DEFAULT; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.File.query_filesystem_info_async", kwlist, &attributes, ¬ify->callback, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_query_filesystem_info_async(G_FILE(self->obj), attributes, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_set_attributes_async kwargs static PyObject * _wrap_g_file_set_attributes_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "info", "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; PyGObject *info; PyGIONotify *notify; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; int io_priority = G_PRIORITY_DEFAULT; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OiOO:gio.File.set_attributes_async", kwlist, &PyGFileInfo_Type, &info, ¬ify->callback, &flags, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_set_attributes_async(G_FILE(self->obj), G_FILE_INFO(info->obj), flags, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_file_set_attributes_finish kwargs static PyObject * _wrap_g_file_set_attributes_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *res; GFileInfo *info = NULL; GError *error = NULL; gboolean ret; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:File.set_attributes_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_set_attributes_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &info, &error); if (pyg_error_check(&error)) return NULL; if (ret) { py_ret = pygobject_new((GObject *)info); } else { py_ret = Py_None; Py_INCREF(py_ret); } return py_ret; } %% override g_file_set_display_name_async kwargs static PyObject * _wrap_g_file_set_display_name_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "display_name", "callback", "io_priority", "cancellable", "user_data", NULL }; PyGIONotify *notify; char *display_name; int io_priority = G_PRIORITY_DEFAULT; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.File.set_display_name_async", kwlist, &display_name, ¬ify->callback, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_set_display_name_async(G_FILE(self->obj), display_name, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } /* GFile.load_partial_contents_async: No ArgType for GFileReadMoreCallback */ /* GFile.load_partial_contents_finish: No ArgType for char** */ ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gfileoutputstream.override0000644000000000000000000000470511272036653025566 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2009 Gian Mario Tagliaretti * * gfileoutputstream.override: module overrides for GFileOuputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_file_output_stream_query_info_async kwargs static PyObject * _wrap_g_file_output_stream_query_info_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; int io_priority = G_PRIORITY_DEFAULT; char *attributes; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.FileOutputStream.query_info_async", kwlist, &attributes, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_output_stream_query_info_async(G_FILE_OUTPUT_STREAM(self->obj), attributes, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gdatainputstream.override0000644000000000000000000002007111272036652025350 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * Copyright (C) 2009 Paul Pogonyshev * * gdatainputstream.override: module overrides for GDataInputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_data_input_stream_read_line kwargs static PyObject * _wrap_g_data_input_stream_read_line(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *pycancellable = NULL; GCancellable *cancellable; char *line; gsize length; PyObject *py_line; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O:gio.DataInputStream.read_line", kwlist, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; line = g_data_input_stream_read_line(G_DATA_INPUT_STREAM(self->obj), &length, cancellable, &error); if (pyg_error_check(&error)) return NULL; py_line = PyString_FromStringAndSize(line, length); g_free(line); return py_line; } %% override g_data_input_stream_read_line_async kwargs static PyObject * _wrap_g_data_input_stream_read_line_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:gio.DataInputStream.read_line_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_data_input_stream_read_line_async(G_DATA_INPUT_STREAM(self->obj), io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_data_input_stream_read_line_finish kwargs static PyObject * _wrap_g_data_input_stream_read_line_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; gchar *line; gsize length; PyObject *py_line; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:gio.DataInputStream.read_line_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; line = g_data_input_stream_read_line_finish(G_DATA_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &length, &error); if (pyg_error_check(&error)) return NULL; py_line = PyString_FromStringAndSize(line, length); g_free(line); return py_line; } %% override g_data_input_stream_read_until kwargs static PyObject * _wrap_g_data_input_stream_read_until(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "stop_chars", "cancellable", NULL }; const char *stop_chars; PyGObject *pycancellable = NULL; GCancellable *cancellable; char *line; gsize length; PyObject *py_line; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|O:gio.DataInputStream.read_line", kwlist, &stop_chars, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; line = g_data_input_stream_read_until(G_DATA_INPUT_STREAM(self->obj), stop_chars, &length, cancellable, &error); if (pyg_error_check(&error)) return NULL; py_line = PyString_FromStringAndSize(line, length); g_free(line); return py_line; } %% override g_data_input_stream_read_until_async kwargs static PyObject * _wrap_g_data_input_stream_read_until_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "stop_chars", "callback", "io_priority", "cancellable", "user_data", NULL }; const char *stop_chars; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.DataInputStream.read_until_async", kwlist, &stop_chars, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_data_input_stream_read_until_async(G_DATA_INPUT_STREAM(self->obj), stop_chars, io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_data_input_stream_read_until_finish kwargs static PyObject * _wrap_g_data_input_stream_read_until_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; gchar *line; gsize length; PyObject *py_line; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:gio.DataInputStream.read_until_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; line = g_data_input_stream_read_until_finish(G_DATA_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &length, &error); if (pyg_error_check(&error)) return NULL; py_line = PyString_FromStringAndSize(line, length); g_free(line); return py_line; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/unix.defs0000644000000000000000000001665111272036653022073 0ustar rootroot;; -*- scheme -*- (include "unix-types.defs") ;; From gdesktopappinfo.h (define-function desktop_app_info_get_type (c-name "g_desktop_app_info_get_type") (return-type "GType") ) (define-function desktop_app_info_new_from_filename (c-name "g_desktop_app_info_new_from_filename") (return-type "GDesktopAppInfo*") (parameters '("const-char*" "filename") ) ) (define-function g_desktop_app_info_new_from_keyfile (c-name "g_desktop_app_info_new_from_keyfile") (return-type "GDesktopAppInfo*") (parameters '("GKeyFile*" "key_file") ) ) (define-function desktop_app_info_new (c-name "g_desktop_app_info_new") (is-constructor-of "GDesktopAppInfo") (return-type "GDesktopAppInfo*") (parameters '("const-char*" "desktop_id") ) ) (define-method get_is_hidden (of-object "GDesktopAppInfo") (c-name "g_desktop_app_info_get_is_hidden") (return-type "gboolean") ) (define-function desktop_app_info_set_desktop_env (c-name "g_desktop_app_info_set_desktop_env") (return-type "none") (parameters '("const-char*" "desktop_env") ) ) ;; From gunixmount.h ;; From gunixmounts.h (define-function unix_mount_free (c-name "g_unix_mount_free") (return-type "none") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-method free (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_free") (return-type "none") ) (define-function unix_mount_compare (c-name "g_unix_mount_compare") (return-type "gint") (parameters '("GUnixMountEntry*" "mount1") '("GUnixMountEntry*" "mount2") ) ) (define-function unix_mount_get_mount_path (c-name "g_unix_mount_get_mount_path") (return-type "const-char*") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-function unix_mount_get_device_path (c-name "g_unix_mount_get_device_path") (return-type "const-char*") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-function unix_mount_get_fs_type (c-name "g_unix_mount_get_fs_type") (return-type "const-char*") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-function unix_mount_is_readonly (c-name "g_unix_mount_is_readonly") (return-type "gboolean") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-function unix_mount_is_system_internal (c-name "g_unix_mount_is_system_internal") (return-type "gboolean") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-function unix_mount_guess_can_eject (c-name "g_unix_mount_guess_can_eject") (return-type "gboolean") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-function unix_mount_guess_should_display (c-name "g_unix_mount_guess_should_display") (return-type "gboolean") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-function unix_mount_guess_name (c-name "g_unix_mount_guess_name") (return-type "char*") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-function unix_mount_guess_icon (c-name "g_unix_mount_guess_icon") (return-type "GIcon*") (parameters '("GUnixMountEntry*" "mount_entry") ) ) (define-method compare (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_compare") (return-type "gint") (parameters '("GUnixMountPoint*" "mount2") ) ) (define-method get_mount_path (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_get_mount_path") (return-type "const-char*") ) (define-method get_device_path (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_get_device_path") (return-type "const-char*") ) (define-method get_fs_type (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_get_fs_type") (return-type "const-char*") ) (define-method is_readonly (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_is_readonly") (return-type "gboolean") ) (define-method is_user_mountable (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_is_user_mountable") (return-type "gboolean") ) (define-method is_loopback (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_is_loopback") (return-type "gboolean") ) (define-method guess_can_eject (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_guess_can_eject") (return-type "gboolean") ) (define-method guess_name (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_guess_name") (return-type "char*") ) (define-method guess_icon (of-object "GUnixMountPoint") (c-name "g_unix_mount_point_guess_icon") (return-type "GIcon*") ) (define-function unix_mount_points_get (c-name "g_unix_mount_points_get") (return-type "GList*") (parameters '("guint64*" "time_read") ) ) (define-function unix_mounts_get (c-name "g_unix_mounts_get") (return-type "GList*") (parameters '("guint64*" "time_read") ) ) (define-function unix_mount_at (c-name "g_unix_mount_at") (return-type "GUnixMountEntry*") (parameters '("const-char*" "mount_path") '("guint64*" "time_read") ) ) (define-function unix_mounts_changed_since (c-name "g_unix_mounts_changed_since") (return-type "gboolean") (parameters '("guint64" "time") ) ) (define-function unix_mount_points_changed_since (c-name "g_unix_mount_points_changed_since") (return-type "gboolean") (parameters '("guint64" "time") ) ) (define-function unix_mount_monitor_get_type (c-name "g_unix_mount_monitor_get_type") (return-type "GType") ) (define-function unix_mount_monitor_new (c-name "g_unix_mount_monitor_new") (is-constructor-of "GUnixMountMonitor") (return-type "GUnixMountMonitor*") ) (define-method set_rate_limit (of-object "GUnixMountMonitor") (c-name "g_unix_mount_monitor_set_rate_limit") (return-type "none") (parameters '("int" "limit_msec") ) ) (define-function unix_is_mount_path_system_internal (c-name "g_unix_is_mount_path_system_internal") (return-type "gboolean") (parameters '("const-char*" "mount_path") ) ) ;; From gunixinputstream.h (define-function unix_input_stream_get_type (c-name "g_unix_input_stream_get_type") (return-type "GType") ) (define-function unix_input_stream_new (c-name "g_unix_input_stream_new") (is-constructor-of "GUnixInputStream") (return-type "GInputStream*") (parameters '("int" "fd") '("gboolean" "close_fd_at_close") ) ) (define-method set_close_fd (of-object "GUnixInputStream") (c-name "g_unix_input_stream_set_close_fd") (return-type "none") (parameters '("gboolean" "close_fd") ) ) (define-method get_close_fd (of-object "GUnixInputStream") (c-name "g_unix_input_stream_get_close_fd") (return-type "gboolean") ) (define-method get_fd (of-object "GUnixInputStream") (c-name "g_unix_input_stream_get_fd") (return-type "gint") ) ;; From gunixoutputstream.h (define-function unix_output_stream_get_type (c-name "g_unix_output_stream_get_type") (return-type "GType") ) (define-function unix_output_stream_new (c-name "g_unix_output_stream_new") (is-constructor-of "GUnixOutputStream") (return-type "GOutputStream*") (parameters '("int" "fd") '("gboolean" "close_fd_at_close") ) ) (define-method set_close_fd (of-object "GUnixOutputStream") (c-name "g_unix_output_stream_set_close_fd") (return-type "none") (parameters '("gboolean" "close_fd") ) ) (define-method get_close_fd (of-object "GUnixOutputStream") (c-name "g_unix_output_stream_get_close_fd") (return-type "gboolean") ) (define-method get_fd (of-object "GUnixOutputStream") (c-name "g_unix_output_stream_get_fd") (return-type "gint") ) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gfileattribute.override0000644000000000000000000001302511272036652025007 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Gian Mario Tagliaretti * * gfileattribute.override: module overrides for GFileAttribute* * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% headers extern PyTypeObject PyGFileAttributeInfo_Type; typedef struct { PyObject_HEAD const GFileAttributeInfo *info; } PyGFileAttributeInfo; static PyObject * pygio_file_attribute_info_tp_new(PyTypeObject *type) { PyGFileAttributeInfo *self; GFileAttributeInfo *info = NULL; self = (PyGFileAttributeInfo *) PyObject_NEW(PyGFileAttributeInfo, &PyGFileAttributeInfo_Type); self->info = info; return (PyObject *) self; } static PyMethodDef pyg_file_attribute_info_methods[] = { { NULL, 0, 0 } }; static PyObject * pyg_file_attribute_info__get_name(PyObject *self, void *closure) { const gchar *ret; ret = ((PyGFileAttributeInfo*)self)->info->name; if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * pyg_file_attribute_info__get_type(PyObject *self, void *closure) { gint ret; ret = ((PyGFileAttributeInfo*)self)->info->type; return pyg_enum_from_gtype(G_TYPE_FILE_ATTRIBUTE_TYPE, ret); } static PyObject * pyg_file_attribute_info__get_flags(PyObject *self, void *closure) { guint ret; ret = ((PyGFileAttributeInfo*)self)->info->flags; return pyg_flags_from_gtype(G_TYPE_FILE_ATTRIBUTE_INFO_FLAGS, ret); } static const PyGetSetDef pyg_file_attribute_info_getsets[] = { { "name", (getter)pyg_file_attribute_info__get_name, (setter)0 }, { "type", (getter)pyg_file_attribute_info__get_type, (setter)0 }, { "flags", (getter)pyg_file_attribute_info__get_flags, (setter)0 }, { NULL, (getter)0, (setter)0 }, }; PyTypeObject PyGFileAttributeInfo_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FileAttributeInfo", /* tp_name */ sizeof(PyGFileAttributeInfo), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ 0, /* tp_as_number */ 0, /* tp_as_sequence */ 0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ 0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT, /* tp_flags */ "Holds information about an attribute", /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ 0, /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)pyg_file_attribute_info_methods, /* tp_methods */ 0, /* tp_members */ (struct PyGetSetDef*)pyg_file_attribute_info_getsets, /* tp_getset */ (PyTypeObject *)0, /* tp_base */ (PyObject *)0, /* tp_dict */ 0, /* tp_descr_get */ 0, /* tp_descr_set */ 0, /* tp_dictoffset */ (initproc)0, /* tp_init */ 0, /* tp_alloc */ (newfunc)pygio_file_attribute_info_tp_new, /* tp_new */ 0, /* tp_free */ (inquiry)0, /* tp_is_gc */ (PyObject *)0, /* tp_bases */ }; PyObject* pyg_file_attribute_info_new(const GFileAttributeInfo *info) { PyGFileAttributeInfo *self; self = (PyGFileAttributeInfo *)PyObject_NEW(PyGFileAttributeInfo, &PyGFileAttributeInfo_Type); if (G_UNLIKELY(self == NULL)) return NULL; if (info) self->info = info; return (PyObject *)self; } %% init if (PyType_Ready(&PyGFileAttributeInfo_Type) < 0) { g_return_if_reached(); } if (PyDict_SetItemString(d, "FileAttributeInfo", (PyObject *)&PyGFileAttributeInfo_Type) < 0) { g_return_if_reached(); } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gappinfo.override0000644000000000000000000001331511272036652023602 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * Copyright (C) 2008 Gian Mario Tagliaretti * * gappinfo.override: module overrides for GInputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% define _install_app_info_meta static PyObject * _wrap__install_app_info_meta(PyObject *self, PyObject *args) { PyObject *metaclass; if (!PyArg_ParseTuple(args, "O", &metaclass)) return NULL; Py_INCREF(metaclass); PyGAppInfo_Type.ob_type = (PyTypeObject*)metaclass; Py_INCREF(Py_None); return Py_None; } %% define _app_info_init kwargs static PyObject * _wrap__app_info_init(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "commandline", "application_name", "flags", NULL }; char *commandline, *application_name = NULL; PyObject *py_flags = NULL; GAppInfo *ret; GError *error = NULL; GAppInfoCreateFlags flags = G_APP_INFO_CREATE_NONE; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|zO:gio.AppInfo", kwlist, &commandline, &application_name, &py_flags)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_APP_INFO_CREATE_FLAGS, py_flags, (gpointer)&flags)) return NULL; ret = g_app_info_create_from_commandline(commandline, application_name, flags, &error); if (pyg_error_check(&error)) return NULL; /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } %% override g_app_info_launch_uris kwargs static PyObject * _wrap_g_app_info_launch_uris(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "files", "launch_context", NULL }; GList *file_list = NULL; PyGObject *pycontext = NULL; GAppLaunchContext *ctx; PyObject *pyfile_list = Py_None; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OO:gio.AppInfo.launch_uris", kwlist, &pyfile_list, &pycontext)) return NULL; if (!pygio_check_launch_context(pycontext, &ctx)) return NULL; if (pyfile_list == Py_None) file_list = NULL; else if (PySequence_Check (pyfile_list)) file_list = pygio_pylist_to_uri_glist(pyfile_list); else { PyErr_SetString(PyExc_TypeError, "file_list should be a list of strings or None"); return NULL; } ret = g_app_info_launch_uris(G_APP_INFO(self->obj), file_list, ctx, &error); g_list_free(file_list); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } %% override g_app_info_launch kwargs static PyObject * _wrap_g_app_info_launch(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "files", "launch_context", NULL }; GList *file_list = NULL; PyGObject *pycontext = NULL; GAppLaunchContext *ctx; PyObject *pyfile_list = Py_None; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OO:gio.AppInfo.launch", kwlist, &pyfile_list, &pycontext)) return NULL; if (!pygio_check_launch_context(pycontext, &ctx)) return NULL; if (pyfile_list == Py_None) file_list = NULL; else if (PySequence_Check (pyfile_list)) file_list = pygio_pylist_to_gfile_glist(pyfile_list); else { PyErr_SetString(PyExc_TypeError, "file_list should be a list of strings or None"); return NULL; } ret = g_app_info_launch(G_APP_INFO(self->obj), file_list, ctx, &error); g_list_free(file_list); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } %% override-slot GAppInfo.tp_richcompare static PyObject * _wrap_g_app_info_tp_richcompare(PyGObject *self, PyGObject *other, int op) { PyObject *result; if (PyObject_TypeCheck(self, &PyGAppInfo_Type) && PyObject_TypeCheck(other, &PyGAppInfo_Type)) { GAppInfo *info1 = G_APP_INFO(self->obj); GAppInfo *info2 = G_APP_INFO(other->obj); switch (op) { case Py_EQ: result = (g_app_info_equal(info1, info2) ? Py_True : Py_False); break; case Py_NE: result = (!g_app_info_equal(info1, info2) ? Py_True : Py_False); break; default: result = Py_NotImplemented; } } else result = Py_NotImplemented; Py_INCREF(result); return result; } %% override-slot GAppInfo.tp_repr static PyObject * _wrap_g_app_info_tp_repr(PyGObject *self) { const char *name = g_app_info_get_name(G_APP_INFO(self->obj)); gchar *representation; PyObject *result; representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, name ? name : "UNKNOWN NAME"); result = PyString_FromString(representation); g_free(representation); return result; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gfileinfo.override0000644000000000000000000000527111272036652023743 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * 2009 Gian Mario Tagliaretti * * gfileinfo.override: module overrides for GFileInfo * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% headers #ifndef G_TYPE_FILE_ATTRIBUTE_MATCHER #define G_TYPE_FILE_ATTRIBUTE_MATCHER (_g_file_attribute_matcher_get_type ()) static GType _g_file_attribute_matcher_get_type (void) { static GType our_type = 0; if (our_type == 0) our_type = g_boxed_type_register_static ("GFileAttributeMatcher", (GBoxedCopyFunc)g_file_attribute_matcher_ref, (GBoxedFreeFunc)g_file_attribute_matcher_unref); return our_type; } #endif %% override g_file_info_list_attributes kwargs static PyObject * _wrap_g_file_info_list_attributes(PyGObject *self, PyObject *args, PyObject *kwargs) { char *kwlist[] = { "name_space", NULL}; gchar *name_space = NULL; gchar **names; gchar **n; PyObject *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|z:gio.FileInfo.list_attributes", kwlist, &name_space)) return NULL; names = g_file_info_list_attributes(G_FILE_INFO(self->obj), name_space); ret = PyList_New(0); n = names; while (n && *n) { PyObject *item = PyString_FromString(n[0]); PyList_Append(ret, item); Py_DECREF(item); n++; } g_strfreev(names); return ret; } %% override g_file_info_get_modification_time noargs static PyObject * _wrap_g_file_info_get_modification_time(PyGObject *self, PyObject *unused) { GTimeVal timeval; g_file_info_get_modification_time(G_FILE_INFO(self->obj), &timeval); return pyglib_float_from_timeval(timeval); } /* GFileInfo.get_attribute_data: No ArgType for GFileAttributeType* */ /* GFileInfo.set_attribute: No ArgType for gpointer */ /* GFileInfo.set_modification_time: No ArgType for GTimeVal* */ ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/goutputstream.override0000644000000000000000000002011511272036653024717 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * * goutputstream.override: module overrides for GOutputStream * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_output_stream_write kwargs static PyObject * _wrap_g_output_stream_write(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "buffer", "cancellable", NULL }; PyGObject *pycancellable = NULL; gchar *buffer; long count = 0; GCancellable *cancellable; GError *error = NULL; gssize written; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s#|O!:OutputStream.write", kwlist, &buffer, &count, &PyGCancellable_Type, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; pyg_begin_allow_threads; written = g_output_stream_write(G_OUTPUT_STREAM(self->obj), buffer, count, cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyInt_FromLong(written); } %% override g_output_stream_write_all kwargs static PyObject * _wrap_g_output_stream_write_all(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "buffer", "cancellable", NULL }; PyGObject *pycancellable = NULL; gchar *buffer; long count = 0; GCancellable *cancellable; GError *error = NULL; gsize written; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s#|O!:OutputStream.write", kwlist, &buffer, &count, &PyGCancellable_Type, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; pyg_begin_allow_threads; g_output_stream_write_all(G_OUTPUT_STREAM(self->obj), buffer, count, &written, cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyInt_FromLong(written); } %% override g_output_stream_write_async kwargs static PyObject * _wrap_g_output_stream_write_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "buffer", "callback", "io_priority", "cancellable", "user_data", NULL }; gchar *buffer; long count = -1; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s#O|iOO:OutputStream.write_async", kwlist, &buffer, &count, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); pygio_notify_copy_buffer(notify, buffer, count); g_output_stream_write_async(G_OUTPUT_STREAM(self->obj), notify->buffer, notify->buffer_size, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_output_stream_close_async kwargs static PyObject * _wrap_g_output_stream_close_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:OutputStream.close_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_output_stream_close_async(G_OUTPUT_STREAM(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_output_stream_flush_async kwargs static PyObject * _wrap_g_output_stream_flush_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:OutputStream.flush_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_output_stream_flush_async(G_OUTPUT_STREAM(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_output_stream_splice_async kwargs static PyObject * _wrap_g_output_stream_splice_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "source", "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; GOutputStreamSpliceFlags flags = G_OUTPUT_STREAM_SPLICE_NONE; PyObject *py_flags = NULL; PyGObject *source; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OiOO:OutputStream.splice_async", kwlist, &PyGInputStream_Type, &source, ¬ify->callback, &py_flags, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_OUTPUT_STREAM_SPLICE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_output_stream_splice_async(G_OUTPUT_STREAM(self->obj), G_INPUT_STREAM(source->obj), flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } /* GOutputStream.write_all: No ArgType for const-void* */ ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gvolume.override0000644000000000000000000001162611272036653023461 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Johan Dahlin * * gvolume.override: module overrides for GVolume * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_volume_mount kwargs static PyObject * _wrap_g_volume_mount(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "mount_operation", "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *py_mount_operation = NULL; GMountOperation *mount_operation = NULL; PyGObject *py_cancellable = NULL; GMountMountFlags flags = G_MOUNT_MOUNT_NONE; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "OO|OOO:Volume.mount", kwlist, &py_mount_operation, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if ((PyObject *)py_mount_operation == Py_None) mount_operation = NULL; else if (py_mount_operation && pygobject_check(py_mount_operation, &PyGMountOperation_Type)) mount_operation = G_MOUNT_OPERATION(py_mount_operation->obj); else if (py_mount_operation) { PyErr_SetString(PyExc_TypeError, "mount_operation should be a GMountOperation or None"); return NULL; } if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_MOUNT_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_volume_mount(G_VOLUME(self->obj), flags, mount_operation, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_volume_eject kwargs static PyObject * _wrap_g_volume_eject(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *py_cancellable = NULL; GMountUnmountFlags flags = G_MOUNT_UNMOUNT_NONE; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOO:Volume.eject", kwlist, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_UNMOUNT_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_volume_eject(G_VOLUME(self->obj), flags, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override-slot GVolume.tp_repr static PyObject * _wrap_g_volume_tp_repr(PyGObject *self) { char *name = g_volume_get_name(G_VOLUME(self->obj)); gchar *representation; PyObject *result; if (name) { representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, name); g_free(name); } else representation = g_strdup_printf("<%s at %p: UNKNOWN NAME>", self->ob_type->tp_name, self); result = PyString_FromString(representation); g_free(representation); return result; } %% override g_volume_enumerate_identifiers noargs static PyObject * _wrap_g_volume_enumerate_identifiers (PyGObject *self) { char **ids; PyObject *ret; pyg_begin_allow_threads; ids = g_volume_enumerate_identifiers(G_VOLUME (self->obj)); pyg_end_allow_threads; if (ids && ids[0] != NULL) { ret = strv_to_pylist(ids); g_strfreev (ids); } else { ret = Py_None; Py_INCREF(ret); } return ret; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gapplaunchcontext.override0000644000000000000000000000632611272036652025532 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygobject - Python bindings for GObject * Copyright (C) 2008 Gian Mario Tagliaretti * * gapplaunchcontext.override: module overrides for GAppLaunchContext * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% override g_app_launch_context_get_display kwargs static PyObject * _wrap_g_app_launch_context_get_display(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "info", "files", NULL }; GList *file_list = NULL; PyGObject *py_info; PyObject *pyfile_list; gchar *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O:gio.AppLaunchContext.get_display", kwlist, &PyGAppInfo_Type, &py_info, &pyfile_list)) return NULL; if (!PySequence_Check (pyfile_list)) { PyErr_Format (PyExc_TypeError, "argument must be a list or tuple of GFile objects"); return NULL; } file_list = pygio_pylist_to_gfile_glist(pyfile_list); ret = g_app_launch_context_get_display(G_APP_LAUNCH_CONTEXT(self->obj), G_APP_INFO(py_info->obj), file_list); g_list_free(file_list); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } %% override g_app_launch_context_get_startup_notify_id kwargs static PyObject * _wrap_g_app_launch_context_get_startup_notify_id(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "info", "files", NULL }; GList *file_list = NULL; PyGObject *py_info; PyObject *pyfile_list; gchar *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O:gio.AppLaunchContext.get_startup_notify_id", kwlist, &PyGAppInfo_Type, &py_info, &pyfile_list)) return NULL; if (!PySequence_Check (pyfile_list)) { PyErr_Format (PyExc_TypeError, "argument must be a list or tuple of GFile objects"); return NULL; } file_list = pygio_pylist_to_gfile_glist(pyfile_list); ret = g_app_launch_context_get_startup_notify_id( G_APP_LAUNCH_CONTEXT(self->obj), G_APP_INFO(py_info->obj), file_list); g_list_free(file_list); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gio-types.defs0000644000000000000000000003151511272036652023023 0ustar rootroot;; -*- scheme -*- ; interface definitions ... (define-interface AppInfo (in-module "gio") (c-name "GAppInfo") (gtype-id "G_TYPE_APP_INFO") ) (define-interface AsyncResult (in-module "gio") (c-name "GAsyncResult") (gtype-id "G_TYPE_ASYNC_RESULT") ) (define-interface Drive (in-module "gio") (c-name "GDrive") (gtype-id "G_TYPE_DRIVE") ) (define-interface File (docstring "File(arg, path=None, uri=None) -> gio.File subclass\n" "\n" "If arg is specified; creates a GFile with the given argument from the\n" "command line. The value of arg can be either a URI, an absolute path\n" "or a relative path resolved relative to the current working directory.\n" "If path is specified, create a file from an absolute or relative path.\n" "If uri is specified, create a file from a URI.\n\n" "This operation never fails, but the returned object might not \n" "support any I/O operation if arg points to a malformed path.") (in-module "gio") (c-name "GFile") (gtype-id "G_TYPE_FILE") ) (define-interface Icon (in-module "gio") (c-name "GIcon") (gtype-id "G_TYPE_ICON") ) (define-interface LoadableIcon (in-module "gio") (c-name "GLoadableIcon") (gtype-id "G_TYPE_LOADABLE_ICON") ) (define-interface Mount (in-module "gio") (c-name "GMount") (gtype-id "G_TYPE_MOUNT") ) (define-interface Seekable (in-module "gio") (c-name "GSeekable") (gtype-id "G_TYPE_SEEKABLE") ) (define-interface Volume (in-module "gio") (c-name "GVolume") (gtype-id "G_TYPE_VOLUME") ) ; boxed definitions ... (define-boxed FileAttributeMatcher (in-module "gio") (c-name "GFileAttributeMatcher") (gtype-id "G_TYPE_FILE_ATTRIBUTE_MATCHER") ) ; object definitions ... (define-object AppLaunchContext (in-module "gio") (parent "GObject") (c-name "GAppLaunchContext") (gtype-id "G_TYPE_APP_LAUNCH_CONTEXT") ) (define-object Cancellable (in-module "gio") (parent "GObject") (c-name "GCancellable") (gtype-id "G_TYPE_CANCELLABLE") ) (define-object Emblem (in-module "gio") (parent "GObject") (c-name "GEmblem") (gtype-id "G_TYPE_EMBLEM") ) (define-object EmblemedIcon (in-module "gio") (parent "GObject") (c-name "GEmblemedIcon") (gtype-id "G_TYPE_EMBLEMED_ICON") ) (define-object FileEnumerator (in-module "gio") (parent "GObject") (c-name "GFileEnumerator") (gtype-id "G_TYPE_FILE_ENUMERATOR") ) (define-object FileInfo (in-module "gio") (parent "GObject") (c-name "GFileInfo") (gtype-id "G_TYPE_FILE_INFO") ) (define-object FileMonitor (in-module "gio") (parent "GObject") (c-name "GFileMonitor") (gtype-id "G_TYPE_FILE_MONITOR") ) (define-object InputStream (in-module "gio") (parent "GObject") (c-name "GInputStream") (gtype-id "G_TYPE_INPUT_STREAM") ) (define-object FileInputStream (in-module "gio") (parent "GInputStream") (c-name "GFileInputStream") (gtype-id "G_TYPE_FILE_INPUT_STREAM") ) (define-object FilterInputStream (in-module "gio") (parent "GInputStream") (c-name "GFilterInputStream") (gtype-id "G_TYPE_FILTER_INPUT_STREAM") ) (define-object BufferedInputStream (in-module "gio") (parent "GFilterInputStream") (c-name "GBufferedInputStream") (gtype-id "G_TYPE_BUFFERED_INPUT_STREAM") ) (define-object DataInputStream (in-module "gio") (parent "GFilterInputStream") (c-name "GDataInputStream") (gtype-id "G_TYPE_DATA_INPUT_STREAM") ) (define-object MemoryInputStream (in-module "gio") (parent "GInputStream") (c-name "GMemoryInputStream") (gtype-id "G_TYPE_MEMORY_INPUT_STREAM") ) (define-object MountOperation (in-module "gio") (parent "GObject") (c-name "GMountOperation") (gtype-id "G_TYPE_MOUNT_OPERATION") ) (define-object OutputStream (in-module "gio") (parent "GObject") (c-name "GOutputStream") (gtype-id "G_TYPE_OUTPUT_STREAM") ) (define-object MemoryOutputStream (in-module "gio") (parent "GOutputStream") (c-name "GMemoryOutputStream") (gtype-id "G_TYPE_MEMORY_OUTPUT_STREAM") ) (define-object FilterOutputStream (in-module "gio") (parent "GOutputStream") (c-name "GFilterOutputStream") (gtype-id "G_TYPE_FILTER_OUTPUT_STREAM") ) (define-object BufferedOutputStream (in-module "gio") (parent "GFilterOutputStream") (c-name "GBufferedOutputStream") (gtype-id "G_TYPE_BUFFERED_OUTPUT_STREAM") ) (define-object DataOutputStream (in-module "gio") (parent "GFilterOutputStream") (c-name "GDataOutputStream") (gtype-id "G_TYPE_DATA_OUTPUT_STREAM") ) (define-object FileOutputStream (in-module "gio") (parent "GOutputStream") (c-name "GFileOutputStream") (gtype-id "G_TYPE_FILE_OUTPUT_STREAM") ) (define-object SimpleAsyncResult (in-module "gio") (parent "GObject") (c-name "GSimpleAsyncResult") (gtype-id "G_TYPE_SIMPLE_ASYNC_RESULT") ) (define-object Vfs (in-module "gio") (parent "GObject") (c-name "GVfs") (gtype-id "G_TYPE_VFS") ) (define-object VolumeMonitor (in-module "gio") (parent "GObject") (c-name "GVolumeMonitor") (gtype-id "G_TYPE_VOLUME_MONITOR") ) (define-object NativeVolumeMonitor (in-module "gio") (parent "GVolumeMonitor") (c-name "GNativeVolumeMonitor") (gtype-id "G_TYPE_NATIVE_VOLUME_MONITOR") ) (define-object FileIcon (in-module "gio") (parent "GObject") (c-name "GFileIcon") (gtype-id "G_TYPE_FILE_ICON") (implements "GIcon") (implements "GLoadableIcon") ) (define-object ThemedIcon (in-module "gio") (parent "GObject") (c-name "GThemedIcon") (gtype-id "G_TYPE_THEMED_ICON") (implements "GIcon") ) ;; Enumerations and flags ... (define-flags AppInfoCreateFlags (in-module "gio") (c-name "GAppInfoCreateFlags") (gtype-id "G_TYPE_APP_INFO_CREATE_FLAGS") (values '("one" "G_APP_INFO_CREATE_NONE") '("eeds-terminal" "G_APP_INFO_CREATE_NEEDS_TERMINAL") ) ) (define-enum DataStreamByteOrder (in-module "gio") (c-name "GDataStreamByteOrder") (gtype-id "G_TYPE_DATA_STREAM_BYTE_ORDER") (values '("big-endian" "G_DATA_STREAM_BYTE_ORDER_BIG_ENDIAN") '("little-endian" "G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN") '("host-endian" "G_DATA_STREAM_BYTE_ORDER_HOST_ENDIAN") ) ) (define-enum DataStreamNewlineType (in-module "gio") (c-name "GDataStreamNewlineType") (gtype-id "G_TYPE_DATA_STREAM_NEWLINE_TYPE") (values '("lf" "G_DATA_STREAM_NEWLINE_TYPE_LF") '("cr" "G_DATA_STREAM_NEWLINE_TYPE_CR") '("cr-lf" "G_DATA_STREAM_NEWLINE_TYPE_CR_LF") '("any" "G_DATA_STREAM_NEWLINE_TYPE_ANY") ) ) (define-enum FileAttributeType (in-module "gio") (c-name "GFileAttributeType") (gtype-id "G_TYPE_FILE_ATTRIBUTE_TYPE") (values '("invalid" "G_FILE_ATTRIBUTE_TYPE_INVALID") '("string" "G_FILE_ATTRIBUTE_TYPE_STRING") '("byte-string" "G_FILE_ATTRIBUTE_TYPE_BYTE_STRING") '("boolean" "G_FILE_ATTRIBUTE_TYPE_BOOLEAN") '("uint32" "G_FILE_ATTRIBUTE_TYPE_UINT32") '("int32" "G_FILE_ATTRIBUTE_TYPE_INT32") '("uint64" "G_FILE_ATTRIBUTE_TYPE_UINT64") '("int64" "G_FILE_ATTRIBUTE_TYPE_INT64") '("object" "G_FILE_ATTRIBUTE_TYPE_OBJECT") ) ) (define-flags FileAttributeInfoFlags (in-module "gio") (c-name "GFileAttributeInfoFlags") (gtype-id "G_TYPE_FILE_ATTRIBUTE_INFO_FLAGS") (values '("none" "G_FILE_ATTRIBUTE_INFO_NONE") '("copy-with-file" "G_FILE_ATTRIBUTE_INFO_COPY_WITH_FILE") '("copy-when-moved" "G_FILE_ATTRIBUTE_INFO_COPY_WHEN_MOVED") ) ) (define-enum FileAttributeStatus (in-module "gio") (c-name "GFileAttributeStatus") (gtype-id "G_TYPE_FILE_ATTRIBUTE_STATUS") (values '("unset" "G_FILE_ATTRIBUTE_STATUS_UNSET") '("set" "G_FILE_ATTRIBUTE_STATUS_SET") '("error-setting" "G_FILE_ATTRIBUTE_STATUS_ERROR_SETTING") ) ) (define-flags FileQueryInfoFlags (in-module "gio") (c-name "GFileQueryInfoFlags") (gtype-id "G_TYPE_FILE_QUERY_INFO_FLAGS") (values '("ne" "G_FILE_QUERY_INFO_NONE") '("follow-symlinks" "G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS") ) ) (define-flags FileCreateFlags (in-module "gio") (c-name "GFileCreateFlags") (gtype-id "G_TYPE_FILE_CREATE_FLAGS") (values '("none" "G_FILE_CREATE_NONE") '("private" "G_FILE_CREATE_PRIVATE") ) ) (define-flags MountUnmountFlags (in-module "gio") (c-name "GMountUnmountFlags") (gtype-id "G_TYPE_MOUNT_UNMOUNT_FLAGS") (values '("none" "G_MOUNT_UNMOUNT_NONE") '("force" "G_MOUNT_UNMOUNT_FORCE") ) ) (define-flags FileCopyFlags (in-module "gio") (c-name "GFileCopyFlags") (gtype-id "G_TYPE_FILE_COPY_FLAGS") (values '("none" "G_FILE_COPY_NONE") '("overwrite" "G_FILE_COPY_OVERWRITE") '("backup" "G_FILE_COPY_BACKUP") '("nofollow-symlinks" "G_FILE_COPY_NOFOLLOW_SYMLINKS") '("all-metadata" "G_FILE_COPY_ALL_METADATA") '("no-fallback-for-move" "G_FILE_COPY_NO_FALLBACK_FOR_MOVE") ) ) (define-flags FileMonitorFlags (in-module "gio") (c-name "GFileMonitorFlags") (gtype-id "G_TYPE_FILE_MONITOR_FLAGS") (values '("none" "G_FILE_MONITOR_NONE") '("watch-mounts" "G_FILE_MONITOR_WATCH_MOUNTS") ) ) (define-enum FileType (in-module "gio") (c-name "GFileType") (gtype-id "G_TYPE_FILE_TYPE") (values '("unknown" "G_FILE_TYPE_UNKNOWN") '("regular" "G_FILE_TYPE_REGULAR") '("directory" "G_FILE_TYPE_DIRECTORY") '("symbolic-link" "G_FILE_TYPE_SYMBOLIC_LINK") '("special" "G_FILE_TYPE_SPECIAL") '("shortcut" "G_FILE_TYPE_SHORTCUT") '("mountable" "G_FILE_TYPE_MOUNTABLE") ) ) (define-enum FileMonitorEvent (in-module "gio") (c-name "GFileMonitorEvent") (gtype-id "G_TYPE_FILE_MONITOR_EVENT") (values '("changed" "G_FILE_MONITOR_EVENT_CHANGED") '("changes-done-hint" "G_FILE_MONITOR_EVENT_CHANGES_DONE_HINT") '("deleted" "G_FILE_MONITOR_EVENT_DELETED") '("created" "G_FILE_MONITOR_EVENT_CREATED") '("attribute-changed" "G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED") '("pre-unmount" "G_FILE_MONITOR_EVENT_PRE_UNMOUNT") '("unmounted" "G_FILE_MONITOR_EVENT_UNMOUNTED") ) ) (define-enum ErrorEnum (in-module "gio") (c-name "GIOErrorEnum") (gtype-id "G_TYPE_IO_ERROR_ENUM") (values '("failed" "G_IO_ERROR_FAILED") '("not-found" "G_IO_ERROR_NOT_FOUND") '("exists" "G_IO_ERROR_EXISTS") '("is-directory" "G_IO_ERROR_IS_DIRECTORY") '("not-directory" "G_IO_ERROR_NOT_DIRECTORY") '("not-empty" "G_IO_ERROR_NOT_EMPTY") '("not-regular-file" "G_IO_ERROR_NOT_REGULAR_FILE") '("not-symbolic-link" "G_IO_ERROR_NOT_SYMBOLIC_LINK") '("not-mountable-file" "G_IO_ERROR_NOT_MOUNTABLE_FILE") '("filename-too-long" "G_IO_ERROR_FILENAME_TOO_LONG") '("invalid-filename" "G_IO_ERROR_INVALID_FILENAME") '("too-many-links" "G_IO_ERROR_TOO_MANY_LINKS") '("no-space" "G_IO_ERROR_NO_SPACE") '("invalid-argument" "G_IO_ERROR_INVALID_ARGUMENT") '("permission-denied" "G_IO_ERROR_PERMISSION_DENIED") '("not-supported" "G_IO_ERROR_NOT_SUPPORTED") '("not-mounted" "G_IO_ERROR_NOT_MOUNTED") '("already-mounted" "G_IO_ERROR_ALREADY_MOUNTED") '("closed" "G_IO_ERROR_CLOSED") '("cancelled" "G_IO_ERROR_CANCELLED") '("pending" "G_IO_ERROR_PENDING") '("read-only" "G_IO_ERROR_READ_ONLY") '("cant-create-backup" "G_IO_ERROR_CANT_CREATE_BACKUP") '("wrong-etag" "G_IO_ERROR_WRONG_ETAG") '("timed-out" "G_IO_ERROR_TIMED_OUT") '("would-recurse" "G_IO_ERROR_WOULD_RECURSE") '("busy" "G_IO_ERROR_BUSY") '("would-block" "G_IO_ERROR_WOULD_BLOCK") '("host-not-found" "G_IO_ERROR_HOST_NOT_FOUND") '("would-merge" "G_IO_ERROR_WOULD_MERGE") '("failed-handled" "G_IO_ERROR_FAILED_HANDLED") ) ) (define-flags AskPasswordFlags (in-module "gio") (c-name "GAskPasswordFlags") (gtype-id "G_TYPE_ASK_PASSWORD_FLAGS") (values '("need-password" "G_ASK_PASSWORD_NEED_PASSWORD") '("need-username" "G_ASK_PASSWORD_NEED_USERNAME") '("need-domain" "G_ASK_PASSWORD_NEED_DOMAIN") '("saving-supported" "G_ASK_PASSWORD_SAVING_SUPPORTED") '("anonymous-supported" "G_ASK_PASSWORD_ANONYMOUS_SUPPORTED") ) ) (define-enum PasswordSave (in-module "gio") (c-name "GPasswordSave") (gtype-id "G_TYPE_PASSWORD_SAVE") (values '("never" "G_PASSWORD_SAVE_NEVER") '("for-session" "G_PASSWORD_SAVE_FOR_SESSION") '("permanently" "G_PASSWORD_SAVE_PERMANENTLY") ) ) (define-enum MountOperationResult (in-module "gio") (c-name "GMountOperationResult") (gtype-id "G_TYPE_MOUNT_OPERATION_RESULT") (values '("handled" "G_MOUNT_OPERATION_HANDLED") '("aborted" "G_MOUNT_OPERATION_ABORTED") '("unhandled" "G_MOUNT_OPERATION_UNHANDLED") ) ) (define-flags OutputStreamSpliceFlags (in-module "gio") (c-name "GOutputStreamSpliceFlags") (gtype-id "G_TYPE_OUTPUT_STREAM_SPLICE_FLAGS") (values '("none" "G_OUTPUT_STREAM_SPLICE_NONE") '("close-source" "G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE") '("close-target" "G_OUTPUT_STREAM_SPLICE_CLOSE_TARGET") ) ) (define-enum EmblemOrigin (in-module "gio") (c-name "GEmblemOrigin") (gtype-id "G_TYPE_EMBLEM_ORIGIN") (values '("unknown" "G_EMBLEM_ORIGIN_UNKNOWN") '("device" "G_EMBLEM_ORIGIN_DEVICE") '("livemetadata" "G_EMBLEM_ORIGIN_LIVEMETADATA") '("tag" "G_EMBLEM_ORIGIN_TAG") ) ) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/unix-types.defs0000644000000000000000000000137511272036653023232 0ustar rootroot;; -*- scheme -*- (define-object DesktopAppInfo (docstring "DesktopAppInfo(desktop_id) -> gio.unix.DesktopAppInfo\n\n" "gio.Unix.DesktopAppInfo is an implementation of gio.AppInfo\n" "based on desktop files." ) (in-module "giounix") (parent "GObject") (c-name "GDesktopAppInfo") (gtype-id "G_TYPE_DESKTOP_APP_INFO") ) (define-object InputStream (in-module "giounix") (parent "GInputStream") (c-name "GUnixInputStream") (gtype-id "G_TYPE_UNIX_INPUT_STREAM") ) (define-object OutputStream (in-module "giounix") (parent "GOutputStream") (c-name "GUnixOutputStream") (gtype-id "G_TYPE_UNIX_OUTPUT_STREAM") ) (define-pointer MountEntry (in-module "giounix") (c-name "GUnixMountEntry") (gtype-id "GIO_UNIX_MOUNT_ENTRY_TYPE") ) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/defs/gicon.override0000644000000000000000000001756411272036653023111 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pygtk- Python bindings for the GTK toolkit. * Copyright (C) 2008 Johan Dahlin * * gicon.override: module overrides for GIcon and related types * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ %% ignore-glob g_icon_hash g_themed_icon_new_from_names g_themed_icon_new_with_default_fallbacks %% override-slot GIcon.tp_richcompare static PyObject * _wrap_g_icon_tp_richcompare(PyGObject *self, PyGObject *other, int op) { PyObject *result; if (PyObject_TypeCheck(self, &PyGIcon_Type) && PyObject_TypeCheck(other, &PyGIcon_Type)) { GIcon *icon1 = G_ICON(self->obj); GIcon *icon2 = G_ICON(other->obj); switch (op) { case Py_EQ: result = (g_icon_equal(icon1, icon2) ? Py_True : Py_False); break; case Py_NE: result = (!g_icon_equal(icon1, icon2) ? Py_True : Py_False); break; default: result = Py_NotImplemented; } } else result = Py_NotImplemented; Py_INCREF(result); return result; } %% override-slot GIcon.tp_hash static long _wrap_g_icon_tp_hash(PyGObject *self) { return g_icon_hash(G_ICON(self->obj)); } %% override g_loadable_icon_load kwargs static PyObject * _wrap_g_loadable_icon_load(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "size", "cancellable", NULL }; int size = 0; char *type = NULL; PyGObject *pycancellable = NULL; GCancellable *cancellable; GError *error = NULL; GInputStream *stream; PyObject *result; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|iO:gio.LoadableIcon.load", kwlist, &size, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; stream = g_loadable_icon_load(G_LOADABLE_ICON(self->obj), size, &type, cancellable, &error); if (pyg_error_check(&error)) return NULL; result = Py_BuildValue("Ns", pygobject_new((GObject *) stream), type); g_free(type); return result; } %% override g_loadable_icon_load_async kwargs static PyObject * _wrap_g_loadable_icon_load_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "size", "cancellable", "user_data", NULL }; int size = 0; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:gio.LoadableIcon.load_async", kwlist, ¬ify->callback, &size, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_loadable_icon_load_async(G_LOADABLE_ICON(self->obj), size, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } %% override g_loadable_icon_load_finish kwargs static PyObject * _wrap_g_loadable_icon_load_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; char *type = NULL; GError *error = NULL; GInputStream *stream; PyObject *result; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:gio.LoadableIcon.load_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; stream = g_loadable_icon_load_finish(G_LOADABLE_ICON(self->obj), G_ASYNC_RESULT(res->obj), &type, &error); if (pyg_error_check(&error)) return NULL; result = Py_BuildValue("Ns", pygobject_new((GObject *) stream), type); g_free(type); return result; } %% override-slot GFileIcon.tp_repr static PyObject * _wrap_g_file_icon_tp_repr(PyGObject *self) { GFile *file = g_file_icon_get_file(G_FILE_ICON(self->obj)); char *uri = (file ? g_file_get_uri(file) : NULL); gchar *representation; PyObject *result; if (uri) { representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, uri); g_free(uri); } else representation = g_strdup_printf("<%s at %p: UNKNOWN URI>", self->ob_type->tp_name, self); result = PyString_FromString(representation); g_free(representation); return result; } %% new-constructor G_TYPE_THEMED_ICON %% override g_themed_icon_new kwargs static int _wrap_g_themed_icon_new(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "name", "use_default_fallbacks", NULL }; PyObject *name; gboolean use_default_fallbacks = FALSE; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|i:gio.ThemedIcon.__init__", kwlist, &name, &use_default_fallbacks)) return -1; if (PyString_Check(name)) { pygobject_construct(self, "name", PyString_AsString(name), "use-default-fallbacks", use_default_fallbacks, NULL); return 0; } else if (PySequence_Check(name)) { PyObject *tuple = PySequence_Tuple(name); if (tuple) { int k; int length = PyTuple_Size(tuple); char **names = g_new(char *, length + 1); for (k = 0; k < length; k++) { PyObject *str = PyTuple_GetItem(tuple, k); if (str && PyString_Check(str)) names[k] = PyString_AsString(str); else { Py_DECREF(tuple); g_free(names); goto error; } } names[length] = NULL; pygobject_construct(self, "names", names, "use-default-fallbacks", use_default_fallbacks, NULL); Py_DECREF(tuple); g_free(names); return 0; } } error: if (!PyErr_Occurred()) { PyErr_SetString(PyExc_TypeError, "argument 1 of gio.ThemedIcon.__init__ " "must be either a string or a sequence of strings"); } return -1; } %% override g_themed_icon_get_names noargs static PyObject * _wrap_g_themed_icon_get_names(PyGObject *self) { const char * const *names; PyObject *ret; names = g_themed_icon_get_names(G_THEMED_ICON(self->obj)); ret = PyList_New(0); while (names && *names) { PyObject *item = PyString_FromString(names[0]); PyList_Append(ret, item); Py_DECREF(item); names++; } return ret; } %% override-slot GThemedIcon.tp_repr static PyObject * _wrap_g_themed_icon_tp_repr(PyGObject *self) { const char * const *names = g_themed_icon_get_names(G_THEMED_ICON(self->obj)); GString *representation = g_string_new(NULL); PyObject *result; g_string_append_printf(representation, "<%s at %p: ", self->ob_type->tp_name, self); if (names) { gboolean first_name = TRUE; while (*names) { if (!first_name) g_string_append(representation, ", "); else first_name = FALSE; g_string_append(representation, *names++); } } g_string_append(representation, ">"); result = PyString_FromString(representation->str); g_string_free(representation, TRUE); return result; } ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/0000755000000000000000000000000011272036673020721 5ustar rootroot./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/argtypes.py0000644000000000000000000013014611272036627023135 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- import string import keyword import struct py_ssize_t_clean = False class ArgTypeError(Exception): pass class ArgTypeNotFoundError(ArgTypeError): pass class ArgTypeConfigurationError(ArgTypeError): pass class VarList: """Nicely format a C variable list""" def __init__(self): self.vars = {} def add(self, ctype, name): if self.vars.has_key(ctype): self.vars[ctype] = self.vars[ctype] + (name,) else: self.vars[ctype] = (name,) def __str__(self): ret = [] for type in self.vars.keys(): ret.append(' ') ret.append(type) ret.append(' ') ret.append(string.join(self.vars[type], ', ')) ret.append(';\n') if ret: ret.append('\n') return string.join(ret, '') return '' class WrapperInfo: """A class that holds information about variable defs, code snippets, etcd for use in writing out the function/method wrapper.""" def __init__(self): self.varlist = VarList() self.parsestr = '' self.parselist = ['', 'kwlist'] self.codebefore = [] self.codeafter = [] self.arglist = [] self.kwlist = [] def get_parselist(self): return string.join(self.parselist, ', ') def get_codebefore(self): return string.join(self.codebefore, '') def get_codeafter(self): return string.join(self.codeafter, '') def get_arglist(self): return string.join(self.arglist, ', ') def get_varlist(self): return str(self.varlist) def get_kwlist(self): ret = ' static char *kwlist[] = { %s };\n' % \ string.join(self.kwlist + [ 'NULL' ], ', ') if not self.get_varlist(): ret = ret + '\n' return ret def add_parselist(self, codes, parseargs, keywords): self.parsestr = self.parsestr + codes for arg in parseargs: self.parselist.append(arg) for kw in keywords: if keyword.iskeyword(kw): kw = kw + '_' self.kwlist.append('"%s"' % kw) class ArgType: def write_param(self, ptype, pname, pdflt, pnull, info): """Add code to the WrapperInfo instance to handle parameter.""" raise RuntimeError, "write_param not implemented for %s" % \ self.__class__.__name__ def write_return(self, ptype, ownsreturn, info): """Adds a variable named ret of the return type to info.varlist, and add any required code to info.codeafter to convert the return value to a python object.""" raise RuntimeError, "write_return not implemented for %s" % \ self.__class__.__name__ class NoneArg(ArgType): def write_return(self, ptype, ownsreturn, info): info.codeafter.append(' Py_INCREF(Py_None);\n' + ' return Py_None;') class StringArg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt != None: if pdflt != 'NULL': pdflt = '"' + pdflt + '"' info.varlist.add('char', '*' + pname + ' = ' + pdflt) else: info.varlist.add('char', '*' + pname) info.arglist.append(pname) if pnull: info.add_parselist('z', ['&' + pname], [pname]) else: info.add_parselist('s', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): if ownsreturn: # have to free result ... info.varlist.add('gchar', '*ret') info.codeafter.append(' if (ret) {\n' + ' PyObject *py_ret = PyString_FromString(ret);\n' + ' g_free(ret);\n' + ' return py_ret;\n' + ' }\n' + ' Py_INCREF(Py_None);\n' + ' return Py_None;') else: info.varlist.add('const gchar', '*ret') info.codeafter.append(' if (ret)\n' + ' return PyString_FromString(ret);\n'+ ' Py_INCREF(Py_None);\n' + ' return Py_None;') class UCharArg(ArgType): # allows strings with embedded NULLs. def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('guchar', '*' + pname + ' = "' + pdflt + '"') else: info.varlist.add('guchar', '*' + pname) if py_ssize_t_clean: info.varlist.add('Py_ssize_t', pname + '_len') else: info.varlist.add('int', pname + '_len') info.arglist.append(pname) if pnull: info.add_parselist('z#', ['&' + pname, '&' + pname + '_len'], [pname]) else: info.add_parselist('s#', ['&' + pname, '&' + pname + '_len'], [pname]) class CharArg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('char', pname + " = '" + pdflt + "'") else: info.varlist.add('char', pname) info.arglist.append(pname) info.add_parselist('c', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('gchar', 'ret') info.codeafter.append(' return PyString_FromStringAndSize(&ret, 1);') class GUniCharArg(ArgType): ret_tmpl = ('#if !defined(Py_UNICODE_SIZE) || Py_UNICODE_SIZE == 2\n' ' if (ret > 0xffff) {\n' ' PyErr_SetString(PyExc_RuntimeError, "returned character can not be represented in 16-bit unicode");\n' ' return NULL;\n' ' }\n' '#endif\n' ' py_ret = (Py_UNICODE)ret;\n' ' return PyUnicode_FromUnicode(&py_ret, 1);\n') def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('gunichar', pname + " = '" + pdflt + "'") else: info.varlist.add('gunichar', pname) info.arglist.append(pname) info.add_parselist('O&', ['pyg_pyobj_to_unichar_conv', '&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('gunichar', 'ret') info.varlist.add('Py_UNICODE', 'py_ret') info.codeafter.append(self.ret_tmpl) class IntArg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('int', pname + ' = ' + pdflt) else: info.varlist.add('int', pname) info.arglist.append(pname) info.add_parselist('i', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('int', 'ret') info.codeafter.append(' return PyInt_FromLong(ret);') class UIntArg(ArgType): dflt = (' if (py_%(name)s) {\n' ' if (PyLong_Check(py_%(name)s))\n' ' %(name)s = PyLong_AsUnsignedLong(py_%(name)s);\n' ' else if (PyInt_Check(py_%(name)s))\n' ' %(name)s = PyInt_AsLong(py_%(name)s);\n' ' else\n' ' PyErr_SetString(PyExc_TypeError, "Parameter \'%(name)s\' must be an int or a long");\n' ' if (PyErr_Occurred())\n' ' return NULL;\n' ' }\n') before = (' if (PyLong_Check(py_%(name)s))\n' ' %(name)s = PyLong_AsUnsignedLong(py_%(name)s);\n' ' else if (PyInt_Check(py_%(name)s))\n' ' %(name)s = PyInt_AsLong(py_%(name)s);\n' ' else\n' ' PyErr_SetString(PyExc_TypeError, "Parameter \'%(name)s\' must be an int or a long");\n' ' if (PyErr_Occurred())\n' ' return NULL;\n') def write_param(self, ptype, pname, pdflt, pnull, info): if not pdflt: pdflt = '0'; info.varlist.add(ptype, pname + ' = ' + pdflt) info.codebefore.append(self.dflt % {'name':pname}) info.varlist.add('PyObject', "*py_" + pname + ' = NULL') info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add(ptype, 'ret') info.codeafter.append(' return PyLong_FromUnsignedLong(ret);') class SizeArg(ArgType): if struct.calcsize('P') <= struct.calcsize('l'): llp64 = True else: llp64 = False def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add(ptype, pname + ' = ' + pdflt) else: info.varlist.add(ptype, pname) info.arglist.append(pname) if self.llp64: info.add_parselist('k', ['&' + pname], [pname]) else: info.add_parselist('K', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add(ptype, 'ret') if self.llp64: info.codeafter.append(' return PyLong_FromUnsignedLongLong(ret);\n') else: info.codeafter.append(' return PyLong_FromUnsignedLong(ret);\n') class SSizeArg(ArgType): if struct.calcsize('P') <= struct.calcsize('l'): llp64 = True else: llp64 = False def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add(ptype, pname + ' = ' + pdflt) else: info.varlist.add(ptype, pname) info.arglist.append(pname) if self.llp64: info.add_parselist('l', ['&' + pname], [pname]) else: info.add_parselist('L', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add(ptype, 'ret') if self.llp64: info.codeafter.append(' return PyLong_FromLongLong(ret);\n') else: info.codeafter.append(' return PyLong_FromLong(ret);\n') class LongArg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add(ptype, pname + ' = ' + pdflt) else: info.varlist.add(ptype, pname) info.arglist.append(pname) info.add_parselist('l', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add(ptype, 'ret') info.codeafter.append(' return PyInt_FromLong(ret);\n') class BoolArg(IntArg): def write_return(self, ptype, ownsreturn, info): info.varlist.add('int', 'ret') info.codeafter.append(' return PyBool_FromLong(ret);\n') class TimeTArg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('time_t', pname + ' = ' + pdflt) else: info.varlist.add('time_t', pname) info.arglist.append(pname) info.add_parselist('i', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('time_t', 'ret') info.codeafter.append(' return PyInt_FromLong(ret);') class ULongArg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('unsigned long', pname + ' = ' + pdflt) else: info.varlist.add('unsigned long', pname) info.arglist.append(pname) info.add_parselist('k', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add(ptype, 'ret') info.codeafter.append(' return PyLong_FromUnsignedLong(ret);\n') class UInt32Arg(ULongArg): def write_param(self, ptype, pname, pdflt, pnull, info): ULongArg.write_param(self, ptype, pname, pdflt, pnull, info) ## if sizeof(unsigned long) > sizeof(unsigned int), we need to ## check the value is within guint32 range if struct.calcsize('L') > struct.calcsize('I'): info.codebefore.append(( ' if (%(pname)s > G_MAXUINT32) {\n' ' PyErr_SetString(PyExc_ValueError,\n' ' "Value out of range in conversion of"\n' ' " %(pname)s parameter to unsigned 32 bit integer");\n' ' return NULL;\n' ' }\n') % vars()) class Int64Arg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('gint64', pname + ' = ' + pdflt) else: info.varlist.add('gint64', pname) info.arglist.append(pname) info.add_parselist('L', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('gint64', 'ret') info.codeafter.append(' return PyLong_FromLongLong(ret);') class UInt64Arg(ArgType): dflt = ' if (py_%(name)s)\n' \ ' %(name)s = PyLong_AsUnsignedLongLong(py_%(name)s);\n' before = ' %(name)s = PyLong_AsUnsignedLongLong(py_%(name)s);\n' def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('guint64', pname + ' = ' + pdflt) info.codebefore.append(self.dflt % {'name':pname}) else: info.varlist.add('guint64', pname) info.codebefore.append(self.before % {'name':pname}) info.varlist.add('PyObject', "*py_" + pname + ' = NULL') info.arglist.append(pname) info.add_parselist('O!', ['&PyLong_Type', '&py_' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('guint64', 'ret') info.codeafter.append(' return PyLong_FromUnsignedLongLong(ret);') class DoubleArg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('double', pname + ' = ' + pdflt) else: info.varlist.add('double', pname) info.arglist.append(pname) info.add_parselist('d', ['&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('double', 'ret') info.codeafter.append(' return PyFloat_FromDouble(ret);') class FileArg(ArgType): nulldflt = (' if (py_%(name)s == Py_None)\n' ' %(name)s = NULL;\n' ' else if (py_%(name)s && PyFile_Check(py_%(name)s)\n' ' %s = PyFile_AsFile(py_%(name)s);\n' ' else if (py_%(name)s) {\n' ' PyErr_SetString(PyExc_TypeError, "%(name)s should be a file object or None");\n' ' return NULL;\n' ' }') null = (' if (py_%(name)s && PyFile_Check(py_%(name)s)\n' ' %(name)s = PyFile_AsFile(py_%(name)s);\n' ' else if (py_%(name)s != Py_None) {\n' ' PyErr_SetString(PyExc_TypeError, "%(name)s should be a file object or None");\n' ' return NULL;\n' ' }\n') dflt = (' if (py_%(name)s)\n' ' %(name)s = PyFile_AsFile(py_%(name)s);\n') def write_param(self, ptype, pname, pdflt, pnull, info): if pnull: if pdflt: info.varlist.add('FILE', '*' + pname + ' = ' + pdflt) info.varlist.add('PyObject', '*py_' + pname + ' = NULL') info.codebefore.append(self.nulldflt % {'name':pname}) else: info.varlist.add('FILE', '*' + pname + ' = NULL') info.varlist.add('PyObject', '*py_' + pname) info.codebefore.append(self.null & {'name':pname}) info.arglist.appned(pname) info.add_parselist('O', ['&py_' + pname], [pname]) else: if pdflt: info.varlist.add('FILE', '*' + pname + ' = ' + pdflt) info.varlist.add('PyObject', '*py_' + pname + ' = NULL') info.codebefore.append(self.dflt % {'name':pname}) info.arglist.append(pname) else: info.varlist.add('PyObject', '*' + pname) info.arglist.append('PyFile_AsFile(' + pname + ')') info.add_parselist('O!', ['&PyFile_Type', '&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('FILE', '*ret') info.codeafter.append(' if (ret)\n' + ' return PyFile_FromFile(ret, "", "", fclose);\n' + ' Py_INCREF(Py_None);\n' + ' return Py_None;') class EnumArg(ArgType): enum = (' if (pyg_enum_get_value(%(typecode)s, py_%(name)s, (gpointer)&%(name)s))\n' ' return NULL;\n') def __init__(self, enumname, typecode): self.enumname = enumname self.typecode = typecode def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add(self.enumname, pname + ' = ' + pdflt) else: info.varlist.add(self.enumname, pname) info.varlist.add('PyObject', '*py_' + pname + ' = NULL') info.codebefore.append(self.enum % { 'typecode': self.typecode, 'name': pname}) info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]); def write_return(self, ptype, ownsreturn, info): info.varlist.add('gint', 'ret') info.codeafter.append(' return pyg_enum_from_gtype(%s, ret);' % self.typecode) class FlagsArg(ArgType): flag = (' if (%(default)spyg_flags_get_value(%(typecode)s, py_%(name)s, (gpointer)&%(name)s))\n' ' return NULL;\n') def __init__(self, flagname, typecode): self.flagname = flagname self.typecode = typecode def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add(self.flagname, pname + ' = ' + pdflt) default = "py_%s && " % (pname,) else: info.varlist.add(self.flagname, pname) default = "" info.varlist.add('PyObject', '*py_' + pname + ' = NULL') info.codebefore.append(self.flag % {'default':default, 'typecode':self.typecode, 'name':pname}) info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('guint', 'ret') info.codeafter.append(' return pyg_flags_from_gtype(%s, ret);' % self.typecode) class ObjectArg(ArgType): # should change these checks to more typesafe versions that check # a little further down in the class heirachy. nulldflt = (' if ((PyObject *)py_%(name)s == Py_None)\n' ' %(name)s = NULL;\n' ' else if (py_%(name)s && pygobject_check(py_%(name)s, &Py%(type)s_Type))\n' ' %(name)s = %(cast)s(py_%(name)s->obj);\n' ' else if (py_%(name)s) {\n' ' PyErr_SetString(PyExc_TypeError, "%(name)s should be a %(type)s or None");\n' ' return NULL;\n' ' }\n') null = (' if (py_%(name)s && pygobject_check(py_%(name)s, &Py%(type)s_Type))\n' ' %(name)s = %(cast)s(py_%(name)s->obj);\n' ' else if ((PyObject *)py_%(name)s != Py_None) {\n' ' PyErr_SetString(PyExc_TypeError, "%(name)s should be a %(type)s or None");\n' ' return NULL;\n' ' }\n') dflt = ' if (py_%(name)s)\n' \ ' %(name)s = %(cast)s(py_%(name)s->obj);\n' def __init__(self, objname, parent, typecode): self.objname = objname self.cast = string.replace(typecode, '_TYPE_', '_', 1) self.parent = parent def write_param(self, ptype, pname, pdflt, pnull, info): if pnull: if pdflt: info.varlist.add(self.objname, '*' + pname + ' = ' + pdflt) info.varlist.add('PyGObject', '*py_' + pname + ' = NULL') info.codebefore.append(self.nulldflt % {'name':pname, 'cast':self.cast, 'type':self.objname}) else: info.varlist.add(self.objname, '*' + pname + ' = NULL') info.varlist.add('PyGObject', '*py_' + pname) info.codebefore.append(self.null % {'name':pname, 'cast':self.cast, 'type':self.objname}) if ptype.endswith('*'): typename = ptype[:-1] try: const, typename = typename.split('const-') except ValueError: const = '' if typename != ptype: info.arglist.append('(%s *) %s' % (ptype[:-1], pname)) else: info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) else: if pdflt: info.varlist.add(self.objname, '*' + pname + ' = ' + pdflt) info.varlist.add('PyGObject', '*py_' + pname + ' = NULL') info.codebefore.append(self.dflt % {'name':pname, 'cast':self.cast}) info.arglist.append(pname) info.add_parselist('O!', ['&Py%s_Type' % self.objname, '&py_' + pname], [pname]) else: info.varlist.add('PyGObject', '*' + pname) info.arglist.append('%s(%s->obj)' % (self.cast, pname)) info.add_parselist('O!', ['&Py%s_Type' % self.objname, '&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): if ptype.endswith('*'): typename = ptype[:-1] try: const, typename = typename.split('const-') except ValueError: const = '' info.varlist.add(typename, '*ret') if ownsreturn: info.varlist.add('PyObject', '*py_ret') info.codeafter.append(' py_ret = pygobject_new((GObject *)ret);\n' ' if (ret != NULL)\n' ' g_object_unref(ret);\n' ' return py_ret;') else: info.codeafter.append(' /* pygobject_new handles NULL checking */\n' + ' return pygobject_new((GObject *)ret);') class BoxedArg(ArgType): # haven't done support for default args. Is it needed? check = (' if (pyg_boxed_check(py_%(name)s, %(typecode)s))\n' ' %(name)s = pyg_boxed_get(py_%(name)s, %(typename)s);\n' ' else {\n' ' PyErr_SetString(PyExc_TypeError, "%(name)s should be a %(typename)s");\n' ' return NULL;\n' ' }\n') null = (' if (pyg_boxed_check(py_%(name)s, %(typecode)s))\n' ' %(name)s = pyg_boxed_get(py_%(name)s, %(typename)s);\n' ' else if (py_%(name)s != Py_None) {\n' ' PyErr_SetString(PyExc_TypeError, "%(name)s should be a %(typename)s or None");\n' ' return NULL;\n' ' }\n') def __init__(self, ptype, typecode): self.typename = ptype self.typecode = typecode def write_param(self, ptype, pname, pdflt, pnull, info): if pnull: info.varlist.add(self.typename, '*' + pname + ' = NULL') info.varlist.add('PyObject', '*py_' + pname + ' = Py_None') info.codebefore.append(self.null % {'name': pname, 'typename': self.typename, 'typecode': self.typecode}) else: info.varlist.add(self.typename, '*' + pname + ' = NULL') info.varlist.add('PyObject', '*py_' + pname) info.codebefore.append(self.check % {'name': pname, 'typename': self.typename, 'typecode': self.typecode}) if ptype[-1] == '*': typename = ptype[:-1] if typename[:6] == 'const-': typename = typename[6:] if typename != self.typename: info.arglist.append('(%s *)%s' % (ptype[:-1], pname)) else: info.arglist.append(pname) else: info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) ret_tmpl = ' /* pyg_boxed_new handles NULL checking */\n' \ ' return pyg_boxed_new(%(typecode)s, %(ret)s, %(copy)s, TRUE);' def write_return(self, ptype, ownsreturn, info): if ptype[-1] == '*': decl_type = self.typename ret = 'ret' if ptype[:6] == 'const-': decl_type = 'const ' + self.typename ret = '(%s*) ret' % (self.typename,) info.varlist.add(decl_type, '*ret') else: info.varlist.add(self.typename, 'ret') ret = '&ret' ownsreturn = 0 # of course it can't own a ref to a local var ... info.codeafter.append(self.ret_tmpl % { 'typecode': self.typecode, 'ret': ret, 'copy': ownsreturn and 'FALSE' or 'TRUE'}) class CustomBoxedArg(ArgType): # haven't done support for default args. Is it needed? null = (' if (%(check)s(py_%(name)s))\n' ' %(name)s = %(get)s(py_%(name)s);\n' ' else if (py_%(name)s != Py_None) {\n' ' PyErr_SetString(PyExc_TypeError, "%(name)s should be a %(type)s or None");\n' ' return NULL;\n' ' }\n') def __init__(self, ptype, pytype, getter, new): self.pytype = pytype self.getter = getter self.checker = 'Py' + ptype + '_Check' self.new = new def write_param(self, ptype, pname, pdflt, pnull, info): if pnull: info.varlist.add(ptype[:-1], '*' + pname + ' = NULL') info.varlist.add('PyObject', '*py_' + pname + ' = Py_None') info.codebefore.append(self.null % {'name': pname, 'get': self.getter, 'check': self.checker, 'type': ptype[:-1]}) info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) else: info.varlist.add('PyObject', '*' + pname) info.arglist.append(self.getter + '(' + pname + ')') info.add_parselist('O!', ['&' + self.pytype, '&' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add(ptype[:-1], '*ret') info.codeafter.append(' if (ret)\n' + ' return ' + self.new + '(ret);\n' + ' Py_INCREF(Py_None);\n' + ' return Py_None;') class PointerArg(ArgType): # haven't done support for default args. Is it needed? check = (' if (pyg_pointer_check(py_%(name)s, %(typecode)s))\n' ' %(name)s = pyg_pointer_get(py_%(name)s, %(typename)s);\n' ' else {\n' ' PyErr_SetString(PyExc_TypeError, "%(name)s should be a %(typename)s");\n' ' return NULL;\n' ' }\n') null = (' if (pyg_pointer_check(py_%(name)s, %(typecode)s))\n' ' %(name)s = pyg_pointer_get(py_%(name)s, %(typename)s);\n' ' else if (py_%(name)s != Py_None) {\n' ' PyErr_SetString(PyExc_TypeError, "%(name)s should be a %(typename)s or None");\n' ' return NULL;\n' ' }\n') def __init__(self, ptype, typecode): self.typename = ptype self.typecode = typecode def write_param(self, ptype, pname, pdflt, pnull, info): if pnull: info.varlist.add(self.typename, '*' + pname + ' = NULL') info.varlist.add('PyObject', '*py_' + pname + ' = Py_None') info.codebefore.append(self.null % {'name': pname, 'typename': self.typename, 'typecode': self.typecode}) else: info.varlist.add(self.typename, '*' + pname + ' = NULL') info.varlist.add('PyObject', '*py_' + pname) info.codebefore.append(self.check % {'name': pname, 'typename': self.typename, 'typecode': self.typecode}) info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): if ptype[-1] == '*': info.varlist.add(self.typename, '*ret') info.codeafter.append(' /* pyg_pointer_new handles NULL checking */\n' + ' return pyg_pointer_new(' + self.typecode + ', ret);') else: info.varlist.add(self.typename, 'ret') info.codeafter.append(' /* pyg_pointer_new handles NULL checking */\n' + ' return pyg_pointer_new(' + self.typecode + ', &ret);') class AtomArg(IntArg): dflt = ' if (py_%(name)s) {\n' \ ' %(name)s = pygdk_atom_from_pyobject(py_%(name)s);\n' \ ' if (PyErr_Occurred())\n' \ ' return NULL;\n' \ ' }\n' atom = (' %(name)s = pygdk_atom_from_pyobject(py_%(name)s);\n' ' if (PyErr_Occurred())\n' ' return NULL;\n') def write_param(self, ptype, pname, pdflt, pnull, info): if pdflt: info.varlist.add('GdkAtom', pname + ' = ' + pdflt) info.varlist.add('PyObject', '*py_' + pname + ' = NULL') info.codebefore.append(self.dflt % {'name': pname}) else: info.varlist.add('GdkAtom', pname) info.varlist.add('PyObject', '*py_' + pname + ' = NULL') info.codebefore.append(self.atom % {'name': pname}) info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('GdkAtom', 'ret') info.varlist.add('PyObject *', 'py_ret') info.varlist.add('gchar *', 'name') info.codeafter.append(' name = gdk_atom_name(ret);\n' ' py_ret = PyString_FromString(name);\n' ' g_free(name);\n' ' return py_ret;') class GTypeArg(ArgType): gtype = (' if ((%(name)s = pyg_type_from_object(py_%(name)s)) == 0)\n' ' return NULL;\n') def write_param(self, ptype, pname, pdflt, pnull, info): info.varlist.add('GType', pname) info.varlist.add('PyObject', '*py_' + pname + ' = NULL') info.codebefore.append(self.gtype % {'name': pname}) info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) def write_return(self, ptype, ownsreturn, info): info.varlist.add('GType', 'ret') info.codeafter.append(' return pyg_type_wrapper_new(ret);') # simple GError handler. class GErrorArg(ArgType): handleerror = (' if (pyg_error_check(&%(name)s))\n' ' return NULL;\n') def write_param(self, ptype, pname, pdflt, pnull, info): info.varlist.add('GError', '*' + pname + ' = NULL') info.arglist.append('&' + pname) info.codeafter.append(self.handleerror % { 'name': pname }) class GtkTreePathArg(ArgType): # haven't done support for default args. Is it needed? normal = (' %(name)s = pygtk_tree_path_from_pyobject(py_%(name)s);\n' ' if (!%(name)s) {\n' ' PyErr_SetString(PyExc_TypeError, "could not convert %(name)s to a GtkTreePath");\n' ' return NULL;\n' ' }\n') null = (' if (py_%(name)s != Py_None) {\n' ' %(name)s = pygtk_tree_path_from_pyobject(py_%(name)s);\n' ' if (!%(name)s) {\n' ' PyErr_SetString(PyExc_TypeError, "could not convert %(name)s to a GtkTreePath");\n' ' return NULL;\n' ' }\n' ' }\n') freepath = (' if (%(name)s)\n' ' gtk_tree_path_free(%(name)s);\n') def __init__(self): pass def write_param(self, ptype, pname, pdflt, pnull, info): if pnull: info.varlist.add('GtkTreePath', '*' + pname + ' = NULL') info.varlist.add('PyObject', '*py_' + pname + ' = Py_None') info.codebefore.append(self.null % {'name': pname}) info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) else: info.varlist.add('GtkTreePath', '*' + pname) info.varlist.add('PyObject', '*py_' + pname) info.codebefore.append(self.normal % {'name': pname}) info.arglist.append(pname) info.add_parselist('O', ['&py_' + pname], [pname]) info.codeafter.append(self.freepath % {'name': pname}) def write_return(self, ptype, ownsreturn, info): info.varlist.add('GtkTreePath', '*ret') if ownsreturn: info.codeafter.append(' if (ret) {\n' ' PyObject *py_ret = pygtk_tree_path_to_pyobject(ret);\n' ' gtk_tree_path_free(ret);\n' ' return py_ret;\n' ' }\n' ' Py_INCREF(Py_None);\n' ' return Py_None;') else: info.codeafter.append(' if (ret) {\n' ' PyObject *py_ret = pygtk_tree_path_to_pyobject(ret);\n' ' return py_ret;\n' ' }\n' ' Py_INCREF(Py_None);\n' ' return Py_None;') class GdkRectanglePtrArg(ArgType): normal = (' if (!pygdk_rectangle_from_pyobject(py_%(name)s, &%(name)s))\n' ' return NULL;\n') null = (' if (py_%(name)s == Py_None)\n' ' %(name)s = NULL;\n' ' else if (pygdk_rectangle_from_pyobject(py_%(name)s, &%(name)s_rect))\n' ' %(name)s = &%(name)s_rect;\n' ' else\n' ' return NULL;\n') def write_param(self, ptype, pname, pdflt, pnull, info): if pnull: info.varlist.add('GdkRectangle', pname + '_rect = { 0, 0, 0, 0 }') info.varlist.add('GdkRectangle', '*' + pname) info.varlist.add('PyObject', '*py_' + pname + ' = Py_None') info.add_parselist('O', ['&py_' + pname], [pname]) info.arglist.append(pname) info.codebefore.append(self.null % {'name': pname}) else: info.varlist.add('GdkRectangle', pname + ' = { 0, 0, 0, 0 }') info.varlist.add('PyObject', '*py_' + pname) info.add_parselist('O', ['&py_' + pname], [pname]) info.arglist.append('&' + pname) info.codebefore.append(self.normal % {'name': pname}) class GdkRectangleArg(ArgType): def write_return(self, ptype, ownsreturn, info): info.varlist.add('GdkRectangle', 'ret') info.codeafter.append(' return pyg_boxed_new(GDK_TYPE_RECTANGLE, &ret, TRUE, TRUE);') class PyObjectArg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): info.varlist.add('PyObject', '*' + pname) info.add_parselist('O', ['&' + pname], [pname]) info.arglist.append(pname) def write_return(self, ptype, ownsreturn, info): info.varlist.add("PyObject", "*ret") if ownsreturn: info.codeafter.append(' if (ret) {\n' ' return ret;\n' ' }\n' ' Py_INCREF(Py_None);\n' ' return Py_None;') else: info.codeafter.append(' if (!ret) ret = Py_None;\n' ' Py_INCREF(ret);\n' ' return ret;') class CairoArg(ArgType): def write_param(self, ptype, pname, pdflt, pnull, info): info.varlist.add('PycairoContext', '*' + pname) info.add_parselist('O!', ['&PycairoContext_Type', '&' + pname], [pname]) info.arglist.append('%s->ctx' % pname) def write_return(self, ptype, ownsreturn, info): info.varlist.add("cairo_t", "*ret") if ownsreturn: info.codeafter.append(' return PycairoContext_FromContext(ret, NULL, NULL);') else: info.codeafter.append(' cairo_reference(ret);\n' ' return PycairoContext_FromContext(ret, NULL, NULL);') class ArgMatcher: def __init__(self): self.argtypes = {} self.reverse_argtypes = {} self.reverse_rettypes = {} def register(self, ptype, handler, overwrite=False): if not overwrite and ptype in self.argtypes: return self.argtypes[ptype] = handler def register_reverse(self, ptype, handler): self.reverse_argtypes[ptype] = handler def register_reverse_ret(self, ptype, handler): self.reverse_rettypes[ptype] = handler def register_enum(self, ptype, typecode): if typecode is None: self.register(ptype, IntArg()) else: self.register(ptype, EnumArg(ptype, typecode)) def register_flag(self, ptype, typecode): if typecode is None: self.register(ptype, IntArg()) else: self.register(ptype, FlagsArg(ptype, typecode)) def register_object(self, ptype, parent, typecode): oa = ObjectArg(ptype, parent, typecode) self.register(ptype, oa) # in case I forget the * in the .defs self.register(ptype+'*', oa) self.register('const-'+ptype+'*', oa) if ptype == 'GdkPixmap': # hack to handle GdkBitmap synonym. self.register('GdkBitmap', oa) self.register('GdkBitmap*', oa) def register_boxed(self, ptype, typecode): if self.argtypes.has_key(ptype): return arg = BoxedArg(ptype, typecode) self.register(ptype, arg) self.register(ptype+'*', arg) self.register('const-'+ptype+'*', arg) def register_custom_boxed(self, ptype, pytype, getter, new): arg = CustomBoxedArg(ptype, pytype, getter, new) self.register(ptype+'*', arg) self.register('const-'+ptype+'*', arg) def register_pointer(self, ptype, typecode): arg = PointerArg(ptype, typecode) self.register(ptype, arg) self.register(ptype+'*', arg) self.register('const-'+ptype+'*', arg) def get(self, ptype): try: return self.argtypes[ptype] except KeyError: if ptype[:8] == 'GdkEvent' and ptype[-1] == '*': return self.argtypes['GdkEvent*'] raise ArgTypeNotFoundError("No ArgType for %s" % (ptype,)) def _get_reverse_common(self, ptype, registry): props = dict(c_type=ptype) try: return registry[ptype], props except KeyError: try: handler = self.argtypes[ptype] except KeyError: if ptype.startswith('GdkEvent') and ptype.endswith('*'): handler = self.argtypes['GdkEvent*'] else: raise ArgTypeNotFoundError("No ArgType for %s" % (ptype,)) if isinstance(handler, ObjectArg): return registry['GObject*'], props elif isinstance(handler, EnumArg): props['typecode'] = handler.typecode props['enumname'] = handler.enumname return registry['GEnum'], props elif isinstance(handler, FlagsArg): props['typecode'] = handler.typecode props['flagname'] = handler.flagname return registry['GFlags'], props elif isinstance(handler, BoxedArg): props['typecode'] = handler.typecode props['typename'] = handler.typename return registry['GBoxed'], props else: raise ArgTypeNotFoundError("No ArgType for %s" % (ptype,)) def get_reverse(self, ptype): return self._get_reverse_common(ptype, self.reverse_argtypes) def get_reverse_ret(self, ptype): ret, props = self._get_reverse_common(ptype, self.reverse_rettypes) if hasattr(ptype, 'optional') and ptype.optional: if ret.supports_optional: props['optional'] = True else: raise ArgTypeNotFoundError("Unsupported 'optional' for %s" % (ptype,)) return ret, props def object_is_a(self, otype, parent): if otype == None: return 0 if otype == parent: return 1 if not self.argtypes.has_key(otype): return 0 return self.object_is_a(self.get(otype).parent, parent) matcher = ArgMatcher() arg = NoneArg() matcher.register(None, arg) matcher.register('none', arg) arg = StringArg() matcher.register('char*', arg) matcher.register('gchar*', arg) matcher.register('const-char*', arg) matcher.register('char-const*', arg) matcher.register('const-gchar*', arg) matcher.register('gchar-const*', arg) matcher.register('string', arg) matcher.register('static_string', arg) arg = UCharArg() matcher.register('unsigned-char*', arg) matcher.register('const-guchar*', arg) matcher.register('const-guint8*', arg) matcher.register('guchar*', arg) arg = CharArg() matcher.register('char', arg) matcher.register('gchar', arg) matcher.register('guchar', arg) arg = GUniCharArg() matcher.register('gunichar', arg) arg = IntArg() matcher.register('int', arg) matcher.register('gint', arg) matcher.register('short', arg) matcher.register('gshort', arg) matcher.register('gushort', arg) matcher.register('gsize', SizeArg()) matcher.register('gssize', SSizeArg()) matcher.register('guint8', arg) matcher.register('gint8', arg) matcher.register('guint16', arg) matcher.register('gint16', arg) matcher.register('gint32', arg) matcher.register('GTime', arg) matcher.register('GSeekType', arg) # Hack, but we have no python wrapper arg = LongArg() matcher.register('long', arg) matcher.register('glong', arg) arg = UIntArg() matcher.register('guint', arg) arg = BoolArg() matcher.register('gboolean', arg) arg = TimeTArg() matcher.register('time_t', arg) matcher.register('guint32', UInt32Arg()) arg = ULongArg() matcher.register('gulong', arg) arg = Int64Arg() matcher.register('gint64', arg) matcher.register('long-long', arg) matcher.register('goffset', arg) arg = UInt64Arg() matcher.register('guint64', arg) matcher.register('unsigned-long-long', arg) arg = DoubleArg() matcher.register('double', arg) matcher.register('gdouble', arg) matcher.register('float', arg) matcher.register('gfloat', arg) arg = FileArg() matcher.register('FILE*', arg) # enums, flags, objects matcher.register('GdkAtom', AtomArg()) matcher.register('GType', GTypeArg()) matcher.register('GtkType', GTypeArg()) matcher.register('GError**', GErrorArg()) matcher.register('GtkTreePath*', GtkTreePathArg()) matcher.register('GdkRectangle*', GdkRectanglePtrArg()) matcher.register('GtkAllocation*', GdkRectanglePtrArg()) matcher.register('GdkRectangle', GdkRectangleArg()) matcher.register('PyObject*', PyObjectArg()) matcher.register('GdkNativeWindow', ULongArg()) matcher.register_object('GObject', None, 'G_TYPE_OBJECT') del arg matcher.register('cairo_t*', CairoArg()) matcher.register_boxed("GClosure", "G_TYPE_CLOSURE") ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/reversewrapper.py0000644000000000000000000010576611272036627024365 0ustar rootroot### -*- python -*- ### Code to generate "Reverse Wrappers", i.e. C->Python wrappers ### (C) 2004 Gustavo Carneiro import argtypes import os DEBUG_MODE = ('PYGTK_CODEGEN_DEBUG' in os.environ) def join_ctype_name(ctype, name): '''Joins a C type and a variable name into a single string''' if ctype[-1] != '*': return " ".join((ctype, name)) else: return "".join((ctype, name)) class CodeSink(object): def __init__(self): self.indent_level = 0 # current indent level self.indent_stack = [] # previous indent levels def _format_code(self, code): assert isinstance(code, str) l = [] for line in code.split('\n'): l.append(' '*self.indent_level + line) if l[-1]: l.append('') return '\n'.join(l) def writeln(self, line=''): raise NotImplementedError def indent(self, level=4): '''Add a certain ammount of indentation to all lines written from now on and until unindent() is called''' self.indent_stack.append(self.indent_level) self.indent_level += level def unindent(self): '''Revert indentation level to the value before last indent() call''' self.indent_level = self.indent_stack.pop() class FileCodeSink(CodeSink): def __init__(self, fp): CodeSink.__init__(self) assert isinstance(fp, file) self.fp = fp def writeln(self, line=''): self.fp.write(self._format_code(line)) class MemoryCodeSink(CodeSink): def __init__(self): CodeSink.__init__(self) self.lines = [] def writeln(self, line=''): self.lines.append(self._format_code(line)) def flush_to(self, sink): assert isinstance(sink, CodeSink) for line in self.lines: sink.writeln(line.rstrip()) self.lines = [] def flush(self): l = [] for line in self.lines: l.append(self._format_code(line)) self.lines = [] return "".join(l) class ReverseWrapper(object): '''Object that generates a C->Python wrapper''' def __init__(self, cname, is_static=True): assert isinstance(cname, str) self.cname = cname ## function object we will call, or object whose method we will call self.called_pyobj = None ## name of method of self.called_pyobj we will call self.method_name = None self.is_static = is_static self.parameters = [] self.declarations = MemoryCodeSink() self.post_return_code = MemoryCodeSink() self.body = MemoryCodeSink() self.check_exception_code = MemoryCodeSink() self.cleanup_actions = [] self.pyargv_items = [] self.pyargv_optional_items = [] self.pyret_parse_items = [] # list of (format_spec, parameter) self.code_sinks_stack = [self.body] def set_call_target(self, called_pyobj, method_name=None): assert called_pyobj is not None assert self.called_pyobj is None self.called_pyobj = called_pyobj self.method_name = method_name def set_return_type(self, return_type): assert isinstance(return_type, ReturnType) self.return_type = return_type def add_parameter(self, param): assert isinstance(param, Parameter) self.parameters.append(param) def add_declaration(self, decl_code): self.declarations.writeln(decl_code) def add_pyargv_item(self, variable, optional=False): if optional: self.pyargv_optional_items.append(variable) else: self.pyargv_items.append(variable) def add_pyret_parse_item(self, format_specifier, parameter, prepend=False): if prepend: self.pyret_parse_items.insert(0, (format_specifier, parameter)) else: self.pyret_parse_items.append((format_specifier, parameter)) def push_code_sink(self, code_sink): self.code_sinks_stack.insert(0, code_sink) def pop_code_sink(self): return self.code_sinks_stack.pop(0) def write_code(self, code, cleanup=None, failure_expression=None, failure_cleanup=None, failure_exception=None, code_sink=None): '''Add a chunk of code with cleanup and error handling This method is to be used by TypeHandlers when generating code Keywork arguments: code -- code to add cleanup -- code to cleanup any dynamic resources created by @code (except in case of failure) (default None) failure_expression -- C boolean expression to indicate if anything failed (default None) failure_cleanup -- code to cleanup any dynamic resources created by @code in case of failure (default None) failure_exception -- code to raise an exception in case of failure (which will be immediately printed and cleared), (default None) code_sink -- "code sink" to use; by default, ReverseWrapper.body is used, which writes the main body of the wrapper, before calling the python method. Alternatively, ReverseWrapper.after_pyret_parse can be used, to write code after the PyArg_ParseTuple that parses the python method return value. ''' if code_sink is None: code_sink = self.code_sinks_stack[0] if code is not None: code_sink.writeln(code) if failure_expression is not None: code_sink.writeln("if (%s) {" % (failure_expression,)) code_sink.indent() if failure_exception is None: code_sink.writeln("if (PyErr_Occurred())") code_sink.indent() code_sink.writeln("PyErr_Print();") code_sink.unindent() else: code_sink.writeln(failure_exception) code_sink.writeln("PyErr_Print();") if failure_cleanup is not None: code_sink.writeln(failure_cleanup) for cleanup_action in self.cleanup_actions: code_sink.writeln(cleanup_action) self.push_code_sink(code_sink) try: self.return_type.write_error_return() finally: self.pop_code_sink() code_sink.unindent() code_sink.writeln("}") if cleanup is not None: self.cleanup_actions.insert(0, cleanup) def generate(self, sink): '''Generate the code into a CodeSink object''' assert isinstance(sink, CodeSink) if DEBUG_MODE: self.declarations.writeln("/* begin declarations */") self.body.writeln("/* begin main body */") self.post_return_code.writeln("/* begin post-return code */") self.add_declaration("PyGILState_STATE __py_state;") self.write_code(code="__py_state = pyg_gil_state_ensure();", cleanup="pyg_gil_state_release(__py_state);") for param in self.parameters: param.convert_c2py() assert self.called_pyobj is not None,\ "Parameters failed to provide a target function or method." if self.is_static: sink.writeln('static %s' % self.return_type.get_c_type()) else: sink.writeln(self.return_type.get_c_type()) c_proto_params = map(Parameter.format_for_c_proto, self.parameters) sink.writeln("%s(%s)\n{" % (self.cname, ", ".join(c_proto_params))) self.return_type.write_decl() self.add_declaration("PyObject *py_retval;") ## Handle number of arguments if self.pyargv_items: self.add_declaration("PyObject *py_args;") py_args = "py_args" if self.pyargv_optional_items: self.add_declaration("int argc = %i;" % len(self.pyargv_items)) argc = "argc" for arg in self.pyargv_optional_items: self.body.writeln("if (%s)" % arg) self.body.indent() self.body.writeln("++argc;") self.body.unindent() else: argc = str(len(self.pyargv_items)) else: if self.pyargv_optional_items: self.add_declaration("PyObject *py_args;") py_args = "py_args" self.add_declaration("int argc = 0;") argc = "argc" for arg in self.pyargv_optional_items: self.body.writeln("if (%s)" % arg) self.body.indent() self.body.writeln("++argc;") self.body.unindent() else: py_args = "NULL" argc = None self.body.writeln() if py_args != "NULL": self.write_code("py_args = PyTuple_New(%s);" % argc, cleanup="Py_DECREF(py_args);") pos = 0 for arg in self.pyargv_items: try: # try to remove the Py_DECREF cleanup action, if we can self.cleanup_actions.remove("Py_DECREF(%s);" % arg) except ValueError: # otherwise we have to Py_INCREF.. self.body.writeln("Py_INCREF(%s);" % arg) self.body.writeln("PyTuple_SET_ITEM(%s, %i, %s);" % (py_args, pos, arg)) pos += 1 for arg in self.pyargv_optional_items: self.body.writeln("if (%s) {" % arg) self.body.indent() try: # try to remove the Py_DECREF cleanup action, if we can self.cleanup_actions.remove("Py_XDECREF(%s);" % arg) except ValueError: # otherwise we have to Py_INCREF.. self.body.writeln("Py_INCREF(%s);" % arg) self.body.writeln("PyTuple_SET_ITEM(%s, %i, %s);" % (py_args, pos, arg)) self.body.unindent() self.body.writeln("}") pos += 1 self.body.writeln() ## Call the python method if self.method_name is None: self.write_code("py_retval = PyObject_Call(%s, %s);" % (self.called_pyobj, py_args), cleanup="Py_XDECREF(py_retval);") self.check_exception_code.flush_to(self.body) self.write_code(None, failure_expression="!py_retval") else: self.add_declaration("PyObject *py_method;") self.write_code("py_method = PyObject_GetAttrString(%s, \"%s\");" % (self.called_pyobj, self.method_name), cleanup="Py_DECREF(py_method);", failure_expression="!py_method") self.write_code("py_retval = PyObject_CallObject(py_method, %s);" % (py_args,), cleanup="Py_XDECREF(py_retval);") self.check_exception_code.flush_to(self.body) self.write_code(None, failure_expression="!py_retval") ## -- Handle the return value -- ## we need to check if the return_type object is prepared to cooperate with multiple return values len_before = len(self.pyret_parse_items) self.return_type.write_conversion() len_after = len(self.pyret_parse_items) assert (self.return_type.get_c_type() == 'void' or not (len_before == len_after and len_after > 0)),\ ("Bug in reverse wrappers: return type handler %s" " is not prepared to cooperate multiple return values") % (type(self.return_type),) sink.indent() if self.pyret_parse_items == [("", "")]: ## special case when there are no return parameters self.write_code( code=None, failure_expression='py_retval != Py_None', failure_exception=('PyErr_SetString(PyExc_TypeError, ' '"virtual method should return None");')) else: if len(self.pyret_parse_items) == 1: ## if retval is one item only, pack it in a tuple so we ## can use PyArg_ParseTuple as usual.. self.write_code('py_retval = Py_BuildValue("(N)", py_retval);') if len(self.pyret_parse_items) > 0: ## Parse return values using PyArg_ParseTuple params = ["py_retval", '"%s"' % "".join([format for format, param in self.pyret_parse_items])] params.extend([param for format, param in self.pyret_parse_items if param]) self.write_code(code=None, failure_expression=( '!PyArg_ParseTuple(%s)' % (', '.join(params),))) if DEBUG_MODE: self.declarations.writeln("/* end declarations */") self.declarations.flush_to(sink) sink.writeln() if DEBUG_MODE: self.body.writeln("/* end main body */") self.body.flush_to(sink) sink.writeln() if DEBUG_MODE: self.post_return_code.writeln("/* end post-return code */") self.post_return_code.flush_to(sink) sink.writeln() for cleanup_action in self.cleanup_actions: sink.writeln(cleanup_action) if self.return_type.get_c_type() != 'void': sink.writeln() sink.writeln("return retval;") sink.unindent() sink.writeln("}") class TypeHandler(object): def __init__(self, wrapper, **props): assert isinstance(wrapper, ReverseWrapper) self.wrapper = wrapper self.props = props class ReturnType(TypeHandler): supports_optional = False def get_c_type(self): raise NotImplementedError def write_decl(self): raise NotImplementedError def write_error_return(self): '''Write "return " code in case of error''' raise NotImplementedError def write_conversion(self): '''Writes code to convert Python return value in 'py_retval' into C 'retval'. Returns a string with C boolean expression that determines if anything went wrong. ''' raise NotImplementedError class Parameter(TypeHandler): def __init__(self, wrapper, name, **props): TypeHandler.__init__(self, wrapper, **props) self.name = name def get_c_type(self): raise NotImplementedError def convert_c2py(self): '''Write some code before calling the Python method.''' pass def format_for_c_proto(self): return join_ctype_name(self.get_c_type(), self.name) ###--- class StringParam(Parameter): def get_c_type(self): return self.props.get('c_type', 'char *').replace('const-', 'const ') def convert_c2py(self): if self.props.get('optional', False): self.wrapper.add_declaration("PyObject *py_%s = NULL;" % self.name) self.wrapper.write_code(code=("if (%s)\n" " py_%s = PyString_FromString(%s);\n" % (self.name, self.name, self.name)), cleanup=("Py_XDECREF(py_%s);" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name, optional=True) else: self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code(code=("py_%s = PyString_FromString(%s);" % (self.name, self.name)), cleanup=("Py_DECREF(py_%s);" % self.name), failure_expression=("!py_%s" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) for ctype in ('char*', 'gchar*', 'const-char*', 'char-const*', 'const-gchar*', 'gchar-const*', 'string', 'static_string'): argtypes.matcher.register_reverse(ctype, StringParam) del ctype class StringReturn(ReturnType): def get_c_type(self): return self.props.get('c_type', 'char *').replace('const-', 'const ') #return "char *" def write_decl(self): self.wrapper.add_declaration("%s retval;" % self.get_c_type()) #self.wrapper.add_declaration("char *retval;") def write_error_return(self): self.wrapper.write_code("return NULL;") def write_conversion(self): self.wrapper.add_pyret_parse_item("s", "&retval", prepend=True) self.wrapper.write_code("retval = g_strdup(retval);", code_sink=self.wrapper.post_return_code) for ctype in ('char*', 'gchar*', 'const-gchar*'): argtypes.matcher.register_reverse_ret(ctype, StringReturn) del ctype class VoidReturn(ReturnType): def get_c_type(self): return "void" def write_decl(self): pass def write_error_return(self): self.wrapper.write_code("return;") def write_conversion(self): self.wrapper.add_pyret_parse_item("", "", prepend=True) argtypes.matcher.register_reverse_ret('void', VoidReturn) argtypes.matcher.register_reverse_ret('none', VoidReturn) class GObjectParam(Parameter): def get_c_type(self): return self.props.get('c_type', 'GObject *') def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s = NULL;" % self.name) self.wrapper.write_code(code=("if (%s)\n" " py_%s = pygobject_new((GObject *) %s);\n" "else {\n" " Py_INCREF(Py_None);\n" " py_%s = Py_None;\n" "}" % (self.name, self.name, self.name, self.name)), cleanup=("Py_DECREF(py_%s);" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) argtypes.matcher.register_reverse('GObject*', GObjectParam) class GObjectReturn(ReturnType): supports_optional = True def get_c_type(self): return self.props.get('c_type', 'GObject *') def write_decl(self): if not self.props.get('optional'): self.wrapper.add_declaration("%s retval;" % self.get_c_type()) else: self.wrapper.add_declaration("%s retval = NULL;" % self.get_c_type()) def write_error_return(self): self.wrapper.write_code("return NULL;") def write_conversion(self): if not self.props.get('optional'): self.wrapper.write_code( code=None, failure_expression="!PyObject_TypeCheck(py_retval, &PyGObject_Type)", failure_exception='PyErr_SetString(PyExc_TypeError, "retval should be a GObject");') self.wrapper.write_code("retval = (%s) pygobject_get(py_retval);" % self.get_c_type()) self.wrapper.write_code("g_object_ref((GObject *) retval);") else: self.wrapper.write_code( code=None, failure_expression="py_retval != Py_None && !PyObject_TypeCheck(py_retval, &PyGObject_Type)", failure_exception='PyErr_SetString(PyExc_TypeError, "retval should be None or a GObject");') self.wrapper.write_code("if (py_retval != Py_None) {\n" " retval = (%s) pygobject_get(py_retval);\n" " g_object_ref((GObject *) retval);\n" "}\n" % self.get_c_type()) argtypes.matcher.register_reverse_ret('GObject*', GObjectReturn) class IntParam(Parameter): def get_c_type(self): return self.props.get('c_type', 'int') def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code(code=("py_%s = PyInt_FromLong(%s);" % (self.name, self.name)), cleanup=("Py_DECREF(py_%s);" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) class IntReturn(ReturnType): def get_c_type(self): return self.props.get('c_type', 'int') def write_decl(self): self.wrapper.add_declaration("%s retval;" % self.get_c_type()) def write_error_return(self): self.wrapper.write_code("return -G_MAXINT;") def write_conversion(self): self.wrapper.add_pyret_parse_item("i", "&retval", prepend=True) for argtype in ('int', 'gint', 'guint', 'short', 'gshort', 'gushort', 'long', 'glong', 'gsize', 'gssize', 'guint8', 'gint8', 'guint16', 'gint16', 'gint32', 'GTime'): argtypes.matcher.register_reverse(argtype, IntParam) argtypes.matcher.register_reverse_ret(argtype, IntReturn) del argtype class IntPtrParam(Parameter): def __init__(self, wrapper, name, **props): if "direction" not in props: raise argtypes.ArgTypeConfigurationError( "cannot use int* parameter without direction") if props["direction"] not in ("out", "inout"): raise argtypes.ArgTypeConfigurationError( "cannot use int* parameter with direction '%s'" % (props["direction"],)) Parameter.__init__(self, wrapper, name, **props) def get_c_type(self): return self.props.get('c_type', 'int*') def convert_c2py(self): if self.props["direction"] == "inout": self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code(code=("py_%s = PyInt_FromLong(*%s);" % (self.name, self.name)), cleanup=("Py_DECREF(py_%s);" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) self.wrapper.add_pyret_parse_item("i", self.name) for argtype in ('int*', 'gint*'): argtypes.matcher.register_reverse(argtype, IntPtrParam) del argtype class GEnumReturn(IntReturn): def write_conversion(self): self.wrapper.write_code( code=None, failure_expression=( "pyg_enum_get_value(%s, py_retval, (gint *)&retval)" % (self.props['typecode'],))) argtypes.matcher.register_reverse_ret("GEnum", GEnumReturn) class GEnumParam(IntParam): def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code(code=("py_%s = pyg_enum_from_gtype(%s, %s);" % (self.name, self.props['typecode'], self.name)), cleanup=("Py_DECREF(py_%s);" % self.name), failure_expression=("!py_%s" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) argtypes.matcher.register_reverse("GEnum", GEnumParam) class GFlagsReturn(IntReturn): def write_conversion(self): self.wrapper.write_code( code=None, failure_expression=( "pyg_flags_get_value(%s, py_retval, (gint *)&retval)" % self.props['typecode'])) argtypes.matcher.register_reverse_ret("GFlags", GFlagsReturn) class GFlagsParam(IntParam): def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code(code=( "py_%s = pyg_flags_from_gtype(%s, %s);" % (self.name, self.props['typecode'], self.name)), cleanup=("Py_DECREF(py_%s);" % self.name), failure_expression=("!py_%s" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) argtypes.matcher.register_reverse("GFlags", GFlagsParam) class GtkTreePathParam(IntParam): def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code(code=( "py_%s = pygtk_tree_path_to_pyobject(%s);" % (self.name, self.name)), cleanup=("Py_DECREF(py_%s);" % self.name), failure_expression=("!py_%s" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) argtypes.matcher.register_reverse("GtkTreePath*", GtkTreePathParam) class GtkTreePathReturn(ReturnType): def get_c_type(self): return self.props.get('c_type', 'GtkTreePath *') def write_decl(self): self.wrapper.add_declaration("GtkTreePath * retval;") def write_error_return(self): self.wrapper.write_code("return NULL;") def write_conversion(self): self.wrapper.write_code( "retval = pygtk_tree_path_from_pyobject(py_retval);\n", failure_expression=('!retval'), failure_exception=( 'PyErr_SetString(PyExc_TypeError, "retval should be a GtkTreePath");')) argtypes.matcher.register_reverse_ret("GtkTreePath*", GtkTreePathReturn) class BooleanReturn(ReturnType): def get_c_type(self): return "gboolean" def write_decl(self): self.wrapper.add_declaration("gboolean retval;") self.wrapper.add_declaration("PyObject *py_main_retval;") def write_error_return(self): self.wrapper.write_code("return FALSE;") def write_conversion(self): self.wrapper.add_pyret_parse_item("O", "&py_main_retval", prepend=True) self.wrapper.write_code( "retval = PyObject_IsTrue(py_main_retval)? TRUE : FALSE;", code_sink=self.wrapper.post_return_code) argtypes.matcher.register_reverse_ret("gboolean", BooleanReturn) class BooleanParam(Parameter): def get_c_type(self): return "gboolean" def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code("py_%s = %s? Py_True : Py_False;" % (self.name, self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) argtypes.matcher.register_reverse("gboolean", BooleanParam) class DoubleParam(Parameter): def get_c_type(self): return self.props.get('c_type', 'gdouble') def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code(code=("py_%s = PyFloat_FromDouble(%s);" % (self.name, self.name)), cleanup=("Py_DECREF(py_%s);" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) class DoublePtrParam(Parameter): def __init__(self, wrapper, name, **props): if "direction" not in props: raise argtypes.ArgTypeConfigurationError( "cannot use double* parameter without direction") if props["direction"] not in ("out", ): # inout not yet implemented raise argtypes.ArgTypeConfigurationError( "cannot use double* parameter with direction '%s'" % (props["direction"],)) Parameter.__init__(self, wrapper, name, **props) def get_c_type(self): return self.props.get('c_type', 'double*') def convert_c2py(self): self.wrapper.add_pyret_parse_item("d", self.name) for argtype in ('double*', 'gdouble*'): argtypes.matcher.register_reverse(argtype, DoublePtrParam) del argtype class DoubleReturn(ReturnType): def get_c_type(self): return self.props.get('c_type', 'gdouble') def write_decl(self): self.wrapper.add_declaration("%s retval;" % self.get_c_type()) def write_error_return(self): self.wrapper.write_code("return -G_MAXFLOAT;") def write_conversion(self): self.wrapper.add_pyret_parse_item("d", "&retval", prepend=True) for argtype in ('float', 'double', 'gfloat', 'gdouble'): argtypes.matcher.register_reverse(argtype, DoubleParam) argtypes.matcher.register_reverse_ret(argtype, DoubleReturn) class GBoxedParam(Parameter): def get_c_type(self): return self.props.get('c_type').replace('const-', 'const ') def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s;" % self.name) ctype = self.get_c_type() if ctype.startswith('const '): ctype_no_const = ctype[len('const '):] self.wrapper.write_code( code=('py_%s = pyg_boxed_new(%s, (%s) %s, TRUE, TRUE);' % (self.name, self.props['typecode'], ctype_no_const, self.name)), cleanup=("Py_DECREF(py_%s);" % self.name)) else: self.wrapper.write_code( code=('py_%s = pyg_boxed_new(%s, %s, FALSE, FALSE);' % (self.name, self.props['typecode'], self.name)), cleanup=("Py_DECREF(py_%s);" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) argtypes.matcher.register_reverse("GBoxed", GBoxedParam) class GBoxedReturn(ReturnType): def get_c_type(self): return self.props.get('c_type') def write_decl(self): self.wrapper.add_declaration("%s retval;" % self.get_c_type()) def write_error_return(self): self.wrapper.write_code("return retval;") def write_conversion(self): self.wrapper.write_code(code = None, failure_expression=("!pyg_boxed_check(py_retval, %s)" % (self.props['typecode'],)), failure_exception=( 'PyErr_SetString(PyExc_TypeError, "retval should be a %s");' % (self.props['typename'],))) self.wrapper.write_code('retval = pyg_boxed_get(py_retval, %s);' % self.props['typename']) argtypes.matcher.register_reverse_ret("GBoxed", GBoxedReturn) class GdkRegionPtrReturn(GBoxedReturn): def write_error_return(self): self.wrapper.write_code("return gdk_region_new();") def write_conversion(self): self.props['typecode'] = 'PYGDK_TYPE_REGION' self.props['typename'] = 'GdkRegion' super(GdkRegionPtrReturn, self).write_conversion() argtypes.matcher.register_reverse_ret("GdkRegion*", GdkRegionPtrReturn) class PangoFontDescriptionReturn(GBoxedReturn): def write_error_return(self): self.wrapper.write_code("return pango_font_description_new();") def write_conversion(self): self.props['typecode'] = 'PANGO_TYPE_FONT_DESCRIPTION' self.props['typename'] = 'PangoFontDescription' super(PangoFontDescriptionReturn, self).write_conversion() argtypes.matcher.register_reverse_ret("PangoFontDescription*", PangoFontDescriptionReturn) class PangoFontMetricsReturn(GBoxedReturn): def write_error_return(self): self.wrapper.write_code("return pango_font_metrics_new();") def write_conversion(self): self.props['typecode'] = 'PANGO_TYPE_FONT_METRICS' self.props['typename'] = 'PangoFontMetrics' super(PangoFontMetricsReturn, self).write_conversion() argtypes.matcher.register_reverse_ret("PangoFontMetrics*", PangoFontMetricsReturn) class PangoLanguageReturn(GBoxedReturn): def write_error_return(self): self.wrapper.write_code("return pango_language_from_string(\"\");") def write_conversion(self): self.props['typecode'] = 'PANGO_TYPE_LANGUAGE' self.props['typename'] = 'PangoLanguage' super(PangoLanguageReturn, self).write_conversion() argtypes.matcher.register_reverse_ret("PangoLanguage*", PangoLanguageReturn) class GdkRectanglePtrParam(Parameter): def get_c_type(self): return self.props.get('c_type').replace('const-', 'const ') def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code( code=('py_%s = pyg_boxed_new(GDK_TYPE_RECTANGLE, %s, TRUE, TRUE);' % (self.name, self.name)), cleanup=("Py_DECREF(py_%s);" % self.name)) self.wrapper.add_pyargv_item("py_%s" % self.name) argtypes.matcher.register_reverse("GdkRectangle*", GdkRectanglePtrParam) argtypes.matcher.register_reverse('GtkAllocation*', GdkRectanglePtrParam) class GErrorParam(Parameter): def get_c_type(self): return self.props.get('c_type').replace('**', ' **') def convert_c2py(self): self.wrapper.write_code(code=None, failure_expression=("pyg_gerror_exception_check(%s)" % self.name), code_sink=self.wrapper.check_exception_code) argtypes.matcher.register_reverse('GError**', GErrorParam) class PyGObjectMethodParam(Parameter): def __init__(self, wrapper, name, method_name, **props): Parameter.__init__(self, wrapper, name, **props) self.method_name = method_name def get_c_type(self): return self.props.get('c_type', 'GObject *') def convert_c2py(self): self.wrapper.add_declaration("PyObject *py_%s;" % self.name) self.wrapper.write_code(code=("py_%s = pygobject_new((GObject *) %s);" % (self.name, self.name)), cleanup=("Py_DECREF(py_%s);" % self.name), failure_expression=("!py_%s" % self.name)) self.wrapper.set_call_target("py_%s" % self.name, self.method_name) class CallbackInUserDataParam(Parameter): def __init__(self, wrapper, name, free_it, **props): Parameter.__init__(self, wrapper, name, **props) self.free_it = free_it def get_c_type(self): return "gpointer" def convert_c2py(self): self.wrapper.add_declaration("PyObject **_user_data;") cleanup = self.free_it and ("g_free(%s);" % self.name) or None self.wrapper.write_code(code=("_real_user_data = (PyObject **) %s;" % self.name), cleanup=cleanup) self.wrapper.add_declaration("PyObject *py_func;") cleanup = self.free_it and "Py_DECREF(py_func);" or None self.wrapper.write_code(code="py_func = _user_data[0];", cleanup=cleanup) self.wrapper.set_call_target("py_func") self.wrapper.add_declaration("PyObject *py_user_data;") cleanup = self.free_it and "Py_XDECREF(py_user_data);" or None self.wrapper.write_code(code="py_user_data = _user_data[1];", cleanup=cleanup) self.wrapper.add_pyargv_item("py_user_data", optional=True) def _test(): import sys if 1: wrapper = ReverseWrapper("this_is_the_c_function_name", is_static=True) wrapper.set_return_type(StringReturn(wrapper)) wrapper.add_parameter(PyGObjectMethodParam(wrapper, "self", method_name="do_xxx")) wrapper.add_parameter(StringParam(wrapper, "param2", optional=True)) wrapper.add_parameter(GObjectParam(wrapper, "param3")) #wrapper.add_parameter(InoutIntParam(wrapper, "param4")) wrapper.generate(FileCodeSink(sys.stderr)) if 0: wrapper = ReverseWrapper("this_a_callback_wrapper") wrapper.set_return_type(VoidReturn(wrapper)) wrapper.add_parameter(StringParam(wrapper, "param1", optional=False)) wrapper.add_parameter(GObjectParam(wrapper, "param2")) wrapper.add_parameter(CallbackInUserDataParam(wrapper, "data", free_it=True)) wrapper.generate(FileCodeSink(sys.stderr)) if __name__ == '__main__': _test() ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/override.py0000644000000000000000000002244411272036627023117 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # this file contains code for loading up an override file. The override file # provides implementations of functions where the code generator could not # do its job correctly. import fnmatch import os import re import string import sys def class2cname(klass, method): c_name = '' for c in klass: if c.isupper(): c_name += '_' + c.lower() else: c_name += c return c_name[1:] + '_' + method # import python_type as c_name [for arg_type] # Last ('for') clause is optional. If present, the type will be # imported only if given 'arg_type' is registered. import_pat = re.compile(r'\s*import\s+(\S+)\.([^\s.]+)\s+as\s+(\S+)(\s+for\s+(\S+))?') class Overrides: def __init__(self, filename=None): self.modulename = None self.ignores = {} self.glob_ignores = [] self.type_ignores = {} self.overrides = {} self.overridden = {} self.kwargs = {} self.noargs = {} self.onearg = {} self.staticmethod = {} self.classmethod = {} self.startlines = {} self.override_attrs = {} self.override_slots = {} self.headers = '' self.body = '' self.init = '' self.imports = [] self.defines = {} self.functions = {} self.newstyle_constructors = {} self.dynamicnamespace = False if filename: self.handle_file(filename) def handle_file(self, filename): oldpath = os.getcwd() fp = open(filename, 'r') dirname = os.path.dirname(os.path.abspath(filename)) if dirname != oldpath: os.chdir(dirname) # read all the components of the file ... bufs = [] startline = 1 lines = [] line = fp.readline() linenum = 1 while line: if line == '%%\n' or line == '%%': if lines: bufs.append((string.join(lines, ''), startline)) startline = linenum + 1 lines = [] else: lines.append(line) line = fp.readline() linenum = linenum + 1 if lines: bufs.append((string.join(lines, ''), startline)) if not bufs: return for buf, startline in bufs: self.__parse_override(buf, startline, filename) os.chdir(oldpath) def __parse_override(self, buffer, startline, filename): pos = string.find(buffer, '\n') if pos >= 0: line = buffer[:pos] rest = buffer[pos+1:] else: line = buffer ; rest = '' words = string.split(line) command = words[0] if (command == 'ignore' or command == 'ignore-' + sys.platform): "ignore/ignore-platform [functions..]" for func in words[1:]: self.ignores[func] = 1 for func in string.split(rest): self.ignores[func] = 1 elif (command == 'ignore-glob' or command == 'ignore-glob-' + sys.platform): "ignore-glob/ignore-glob-platform [globs..]" for func in words[1:]: self.glob_ignores.append(func) for func in string.split(rest): self.glob_ignores.append(func) elif (command == 'ignore-type' or command == 'ignore-type-' + sys.platform): "ignore-type/ignore-type-platform [typenames..]" for typename in words[1:]: self.type_ignores[typename] = 1 for typename in string.split(rest): self.type_ignores[typename] = 1 elif command == 'override': "override function/method [kwargs|noargs|onearg] [staticmethod|classmethod]" func = words[1] if 'kwargs' in words[1:]: self.kwargs[func] = 1 elif 'noargs' in words[1:]: self.noargs[func] = 1 elif 'onearg' in words[1:]: self.onearg[func] = True if 'staticmethod' in words[1:]: self.staticmethod[func] = True elif 'classmethod' in words[1:]: self.classmethod[func] = True if func in self.overrides: raise RuntimeError("Function %s is being overridden more than once" % (func,)) self.overrides[func] = rest self.startlines[func] = (startline + 1, filename) elif command == 'override-attr': "override-slot Class.attr" attr = words[1] self.override_attrs[attr] = rest self.startlines[attr] = (startline + 1, filename) elif command == 'override-slot': "override-slot Class.slot" slot = words[1] self.override_slots[slot] = rest self.startlines[slot] = (startline + 1, filename) elif command == 'headers': "headers" self.headers = '%s\n#line %d "%s"\n%s' % \ (self.headers, startline + 1, filename, rest) elif command == 'body': "body" self.body = '%s\n#line %d "%s"\n%s' % \ (self.body, startline + 1, filename, rest) elif command == 'init': "init" self.init = '%s\n#line %d "%s"\n%s' % \ (self.init, startline + 1, filename, rest) elif command == 'modulename': "modulename name" self.modulename = words[1] elif command == 'include': "include filename" for filename in words[1:]: self.handle_file(filename) for filename in string.split(rest): self.handle_file(filename) elif command == 'import': "import module1 [\n module2, \n module3 ...]" for line in string.split(buffer, '\n'): match = import_pat.match(line) if match: module, pyname, cname, conditional, importing_for = match.groups() self.imports.append((module, pyname, cname, importing_for or None)) elif command == 'define': "define funcname [kwargs|noargs|onearg] [classmethod|staticmethod]" "define Class.method [kwargs|noargs|onearg] [classmethod|staticmethod]" func = words[1] klass = None if func.find('.') != -1: klass, func = func.split('.', 1) if not self.defines.has_key(klass): self.defines[klass] = {} self.defines[klass][func] = rest else: self.functions[func] = rest if 'kwargs' in words[1:]: self.kwargs[func] = 1 elif 'noargs' in words[1:]: self.noargs[func] = 1 elif 'onearg' in words[1:]: self.onearg[func] = 1 if 'staticmethod' in words[1:]: self.staticmethod[func] = True elif 'classmethod' in words[1:]: self.classmethod[func] = True self.startlines[func] = (startline + 1, filename) elif command == 'new-constructor': "new-constructor GType" gtype, = words[1:] self.newstyle_constructors[gtype] = True elif command == 'options': for option in words[1:]: if option == 'dynamicnamespace': self.dynamicnamespace = True def is_ignored(self, name): if self.ignores.has_key(name): return 1 for glob in self.glob_ignores: if fnmatch.fnmatchcase(name, glob): return 1 return 0 def is_type_ignored(self, name): return name in self.type_ignores def is_overriden(self, name): return self.overrides.has_key(name) def is_already_included(self, name): return self.overridden.has_key(name) def override(self, name): self.overridden[name] = 1 return self.overrides[name] def define(self, klass, name): self.overridden[class2cname(klass, name)] = 1 return self.defines[klass][name] def function(self, name): return self.functions[name] def getstartline(self, name): return self.startlines[name] def wants_kwargs(self, name): return self.kwargs.has_key(name) def wants_noargs(self, name): return self.noargs.has_key(name) def wants_onearg(self, name): return self.onearg.has_key(name) def is_staticmethod(self, name): return self.staticmethod.has_key(name) def is_classmethod(self, name): return self.classmethod.has_key(name) def attr_is_overriden(self, attr): return self.override_attrs.has_key(attr) def attr_override(self, attr): return self.override_attrs[attr] def slot_is_overriden(self, slot): return self.override_slots.has_key(slot) def slot_override(self, slot): return self.override_slots[slot] def get_headers(self): return self.headers def get_body(self): return self.body def get_init(self): return self.init def get_imports(self): return self.imports def get_defines_for(self, klass): return self.defines.get(klass, {}) def get_functions(self): return self.functions ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/docgen.py0000755000000000000000000006757711272036630022554 0ustar rootroot#!/usr/bin/env python import getopt import os import re import sys import definitions import defsparser import docextract import override class Node: def __init__(self, name, interfaces=[]): self.name = name self.interfaces = interfaces self.subclasses = [] def add_child(self, node): self.subclasses.append(node) def build_object_tree(parser): # reorder objects so that parent classes come first ... objects = parser.objects[:] pos = 0 while pos < len(objects): parent = objects[pos].parent for i in range(pos+1, len(objects)): if objects[i].c_name == parent: objects.insert(i+1, objects[pos]) del objects[pos] break else: pos = pos + 1 root = Node(None) nodes = {None: root} for obj_def in objects: parent_name = obj_def.parent if parent_name == 'GObject': parent_name = None parent_node = nodes[parent_name] node = Node(obj_def.c_name, obj_def.implements) parent_node.add_child(node) nodes[node.name] = node if parser.interfaces: interfaces = Node('gobject.GInterface') root.add_child(interfaces) nodes[interfaces.name] = interfaces for obj_def in parser.interfaces: node = Node(obj_def.c_name) interfaces.add_child(node) nodes[node.name] = node if parser.boxes: boxed = Node('gobject.GBoxed') root.add_child(boxed) nodes[boxed.name] = boxed for obj_def in parser.boxes: node = Node(obj_def.c_name) boxed.add_child(node) nodes[node.name] = node if parser.pointers: pointers = Node('gobject.GPointer') root.add_child(pointers) nodes[pointers.name] = pointers for obj_def in parser.pointers: node = Node(obj_def.c_name) pointers.add_child(node) nodes[node.name] = node return root class DocWriter: def __init__(self): self._fp = None # parse the defs file self.parser = defsparser.DefsParser(()) self.overrides = override.Overrides() self.classmap = {} self.docs = {} def add_sourcedirs(self, source_dirs): self.docs = docextract.extract(source_dirs, self.docs) def add_tmpldirs(self, tmpl_dirs): self.docs = docextract.extract_tmpl(tmpl_dirs, self.docs) def add_docs(self, defs_file, overrides_file, module_name): '''parse information about a given defs file''' self.parser.filename = defs_file self.parser.startParsing(defs_file) if overrides_file: self.overrides.handle_file(overrides_file) for obj in (self.parser.objects + self.parser.interfaces + self.parser.boxes + self.parser.pointers): if not obj.c_name in self.classmap: self.classmap[obj.c_name] = '%s.%s' % ( module_name, obj.name) def pyname(self, name): return self.classmap.get(name, name) def _compare(self, obja, objb): return cmp(self.pyname(obja.c_name), self.pyname(objb.c_name)) def output_docs(self, output_prefix): files = {} # class hierarchy hierarchy = build_object_tree(self.parser) filename = self.create_filename('hierarchy', output_prefix) self._fp = open(filename, 'w') self.write_full_hierarchy(hierarchy) self._fp.close() obj_defs = (self.parser.objects + self.parser.interfaces + self.parser.boxes + self.parser.pointers) obj_defs.sort(self._compare) for obj_def in obj_defs: filename = self.create_filename(obj_def.c_name, output_prefix) self._fp = open(filename, 'w') if isinstance(obj_def, definitions.ObjectDef): self.output_object_docs(obj_def) elif isinstance(obj_def, definitions.InterfaceDef): self.output_interface_docs(obj_def) elif isinstance(obj_def, definitions.BoxedDef): self.output_boxed_docs(obj_def) elif isinstance(obj_def, definitions.PointerDef): self.output_boxed_docs(obj_def) self._fp.close() files[os.path.basename(filename)] = obj_def if not files: return output_filename = self.create_toc_filename(output_prefix) self._fp = open(output_filename, 'w') self.output_toc(files) self._fp.close() def output_object_docs(self, obj_def): self.write_class_header(obj_def.c_name) self.write_heading('Synopsis') self.write_synopsis(obj_def) self.close_section() # construct the inheritence hierarchy ... ancestry = [(obj_def.c_name, obj_def.implements)] try: parent = obj_def.parent while parent != None: if parent == 'GObject': ancestry.append(('GObject', [])) parent = None else: parent_def = self.parser.find_object(parent) ancestry.append((parent_def.c_name, parent_def.implements)) parent = parent_def.parent except ValueError: pass ancestry.reverse() self.write_heading('Ancestry') self.write_hierarchy(obj_def.c_name, ancestry) self.close_section() constructor = self.parser.find_constructor(obj_def, self.overrides) if constructor: self.write_heading('Constructor') self.write_constructor(constructor, self.docs.get(constructor.c_name, None)) self.close_section() methods = self.parser.find_methods(obj_def) methods = filter(lambda meth, self=self: not self.overrides.is_ignored(meth.c_name), methods) if methods: self.write_heading('Methods') for method in methods: self.write_method(method, self.docs.get(method.c_name, None)) self.close_section() self.write_class_footer(obj_def.c_name) def get_methods_for_object(self, obj_def): methods = [] for method in self.parser.find_methods(obj_def): if not self.overrides.is_ignored(method.c_name): methods.append(method) return methods def output_interface_docs(self, int_def): self.write_class_header(int_def.c_name) self.write_heading('Synopsis') self.write_synopsis(int_def) self.close_section() methods = self.get_methods_for_object(int_def) if methods: self.write_heading('Methods') for method in methods: self.write_method(method, self.docs.get(method.c_name, None)) self.close_section() self.write_class_footer(int_def.c_name) def output_boxed_docs(self, box_def): self.write_class_header(box_def.c_name) self.write_heading('Synopsis') self.write_synopsis(box_def) self.close_section() constructor = self.parser.find_constructor(box_def, self.overrides) if constructor: self.write_heading('Constructor') self.write_constructor(constructor, self.docs.get(constructor.c_name, None)) self.close_section() methods = self.get_methods_for_object(box_def) if methods: self.write_heading('Methods') for method in methods: self.write_method(method, self.docs.get(method.c_name, None)) self.close_section() self.write_class_footer(box_def.c_name) def output_toc(self, files): self._fp.write('TOC\n\n') for filename in sorted(files): obj_def = files[filename] self._fp.write(obj_def.c_name + ' - ' + filename + '\n') # override the following to create a more complex output format def create_filename(self, obj_name, output_prefix): '''Create output filename for this particular object''' return output_prefix + '-' + obj_name.lower() + '.txt' def create_toc_filename(self, output_prefix): return self.create_filename(self, 'docs', output_prefix) def write_full_hierarchy(self, hierarchy): def handle_node(node, indent=''): for child in node.subclasses: self._fp.write(indent + node.name) if node.interfaces: self._fp.write(' (implements ') self._fp.write(', '.join(node.interfaces)) self._fp.write(')\n') else: self._fp.write('\n') handle_node(child, indent + ' ') handle_node(hierarchy) def serialize_params(self, func_def): params = [] for param in func_def.params: params.append(param[1]) return ', '.join(params) # these need to handle default args ... def create_constructor_prototype(self, func_def): return '%s(%s)' % (func_def.is_constructor_of, self.serialize_params(func_def)) def create_function_prototype(self, func_def): return '%s(%s)' % (func_def.name, self.serialize_params(func_def)) def create_method_prototype(self, meth_def): return '%s.%s(%s)' % (meth_def.of_object, meth_def.name, self.serialize_params(meth_def)) def write_class_header(self, obj_name): self._fp.write('Class %s\n' % obj_name) self._fp.write('======%s\n\n' % ('=' * len(obj_name))) def write_class_footer(self, obj_name): pass def write_heading(self, text): self._fp.write('\n' + text + '\n' + ('-' * len(text)) + '\n') def close_section(self): pass def write_synopsis(self, obj_def): self._fp.write('class %s' % obj_def.c_name) if isinstance(obj_def, definitions.ObjectDef): bases = [] if obj_def.parent: bases.append(obj_def.parent) bases = bases = obj_def.implements if bases: self._fp.write('(%s)' % ', '.join(bases, )) self._fp.write(':\n') constructor = self.parser.find_constructor(obj_def, self.overrides) if constructor: prototype = self.create_constructor_prototype(constructor) self._fp.write(' def %s\n' % prototype) for method in self.get_methods_for_object(obj_def): prototype = self.create_method_prototype(method) self._fp.write(' def %s\n' % prototype) def write_hierarchy(self, obj_name, ancestry): indent = '' for name, interfaces in ancestry: self._fp.write(indent + '+-- ' + name) if interfaces: self._fp.write(' (implements ') self._fp.write(', '.join(interfaces)) self._fp.write(')\n') else: self._fp.write('\n') indent = indent + ' ' self._fp.write('\n') def write_constructor(self, func_def, func_doc): prototype = self.create_constructor_prototype(func_def) self._fp.write(prototype + '\n\n') for type, name, dflt, null in func_def.params: self.write_parameter(name, func_doc) self.write_return_value(func_def, func_doc) if func_doc and func_doc.description: self._fp.write(func_doc.description) self._fp.write('\n\n\n') def write_method(self, meth_def, func_doc): prototype = self.create_method_prototype(meth_def) self._fp.write(prototype + '\n\n') for type, name, dflt, null in meth_def.params: self.write_parameter(name, func_doc) self.write_return_value(meth_def, func_doc) if func_doc and func_doc.description: self._fp.write('\n') self._fp.write(func_doc.description) self._fp.write('\n\n') def write_parameter(self, param_name, func_doc): if func_doc: descr = func_doc.get_param_description(param_name) else: descr = 'a ' + type self._fp.write(' ' + param_name + ': ' + descr + '\n') def write_return_value(self, meth_def, func_doc): if meth_def.ret and meth_def.ret != 'none': if func_doc and func_doc.ret: descr = func_doc.ret else: descr = 'a ' + meth_def.ret self._fp.write(' Returns: ' + descr + '\n') CLASS_HEADER_TEMPLATE = """ %(name)s 3 %(miscinfo)s %(name)s """ VARIABLE_TEMPLATE = """ %(parameter)s : %(description)s """ DOCBOOK_HEADER = """ """ class DocbookDocWriter(DocWriter): def __init__(self): DocWriter.__init__(self) self._function_pat = re.compile(r'(\w+)\s*\(\)') self._parameter_pat = re.compile(r'\@(\w+)') self._constant_pat = re.compile(r'\%(-?\w+)') self._symbol_pat = re.compile(r'#([\w-]+)') self._transtable = ['-'] * 256 # make string -> reference translation func for digit in '0123456789': self._transtable[ord(digit)] = digit for letter in 'abcdefghijklmnopqrstuvwxyz': self._transtable[ord(letter)] = letter self._transtable[ord(letter.upper())] = letter self._transtable = ''.join(self._transtable) def create_filename(self, obj_name, output_prefix): '''Create output filename for this particular object''' stem = output_prefix + '-' + obj_name.lower() return stem + '.xml' def create_toc_filename(self, output_prefix): return self.create_filename('classes', output_prefix) def make_class_ref(self, obj_name): return 'class-' + obj_name.translate(self._transtable) def make_method_ref(self, meth_def): return 'method-%s--%s' % ( meth_def.of_object.translate(self._transtable), meth_def.name.translate(self._transtable)) def _format_function(self, match): info = self.parser.c_name.get(match.group(1), None) if info: if isinstance(info, defsparser.FunctionDef): return self._format_funcdef(info) if isinstance(info, defsparser.MethodDef): return self._format_method(info) # fall through through return '%s()' % (match.group(1), ) def _format_funcdef(self, info): if info.is_constructor_of is not None: # should have a link here return '%s()' % ( self.pyname(info.is_constructor_of), ) else: return '%s()' % (info.name, ) def _format_param(self, match): return '%s' % (match.group(1), ) def _format_const(self, match): return '%s' % (match.group(1), ) def _format_method(self, info): return ('' '%s.%s' '') % (self.make_method_ref(info), self.pyname(info.of_object), info.name) def _format_object(self, info): return ('' '%s' '') % (self.make_class_ref(info.c_name), self.pyname(info.c_name)) def _format_symbol(self, match): info = self.parser.c_name.get(match.group(1), None) if info: if isinstance(info, defsparser.FunctionDef): return self._format_funcdef(info) elif isinstance(info, defsparser.MethodDef): return self._format_method(info) elif isinstance(info, (defsparser.ObjectDef, defsparser.InterfaceDef, defsparser.BoxedDef, defsparser.PointerDef)): return self._format_object(info) # fall through through return '%s' % (match.group(1), ) def reformat_text(self, text, singleline=0): # replace special strings ... text = self._function_pat.sub(self._format_function, text) text = self._parameter_pat.sub(self._format_param, text) text = self._constant_pat.sub(self._format_const, text) text = self._symbol_pat.sub(self._format_symbol, text) # don't bother with expansion for single line text. if singleline: return text lines = text.strip().split('\n') for index in range(len(lines)): if lines[index].strip() == '': lines[index] = '\n' continue return '%s' % ('\n'.join(lines), ) # write out hierarchy def write_full_hierarchy(self, hierarchy): def handle_node(node, indent=''): if node.name: self._fp.write('%s%s' % (indent, self.make_class_ref(node.name), self.pyname(node.name))) if node.interfaces: self._fp.write(' (implements ') for i in range(len(node.interfaces)): self._fp.write('%s' % (self.make_class_ref(node.interfaces[i]), self.pyname(node.interfaces[i]))) if i != len(node.interfaces) - 1: self._fp.write(', ') self._fp.write(')\n') else: self._fp.write('\n') indent = indent + ' ' node.subclasses.sort(lambda a, b: cmp(self.pyname(a.name), self.pyname(b.name))) for child in node.subclasses: handle_node(child, indent) self._fp.write(DOCBOOK_HEADER) self._fp.write('') handle_node(hierarchy) self._fp.write('\n') # these need to handle default args ... def create_constructor_prototype(self, func_def): xml = ['\n'] xml.append(' __init__\n') for type, name, dflt, null in func_def.params: xml.append(' ') xml.append(name) xml.append('') if dflt: xml.append('') xml.append(dflt) xml.append('') xml.append('\n') if not func_def.params: xml.append(' ') xml.append(' ') return ''.join(xml) def create_function_prototype(self, func_def): xml = ['\n \n'] xml.append(' ') xml.append(func_def.name) xml.append('\n') for type, name, dflt, null in func_def.params: xml.append(' ') xml.append(name) xml.append('') if dflt: xml.append('') xml.append(dflt) xml.append('') xml.append('\n') if not func_def.params: xml.append(' \n ') return ''.join(xml) def create_method_prototype(self, meth_def, addlink=0): xml = ['\n'] xml.append(' ') if addlink: xml.append('' % self.make_method_ref(meth_def)) xml.append(self.pyname(meth_def.name)) if addlink: xml.append('') xml.append('\n') for type, name, dflt, null in meth_def.params: xml.append(' ') xml.append(name) xml.append('') if dflt: xml.append('') xml.append(dflt) xml.append('') xml.append('\n') if not meth_def.params: xml.append(' ') xml.append(' ') return ''.join(xml) def write_class_header(self, obj_name): self._fp.write(DOCBOOK_HEADER) self._fp.write(CLASS_HEADER_TEMPLATE % dict( entryid=self.make_class_ref(obj_name), name=self.pyname(obj_name), miscinfo="PyGTK Docs")) def write_class_footer(self, obj_name): self._fp.write('\n') def write_heading(self, text): self._fp.write(' \n') self._fp.write(' ' + text + '\n\n') def close_section(self): self._fp.write(' \n') def write_synopsis(self, obj_def): self._fp.write('\n') self._fp.write(' %s\n' % self.pyname(obj_def.c_name)) if isinstance(obj_def, definitions.ObjectDef): if obj_def.parent: self._fp.write(' %s' '\n' % (self.make_class_ref(obj_def.parent), self.pyname(obj_def.parent))) for base in obj_def.implements: self._fp.write(' %s' '\n' % (self.make_class_ref(base), self.pyname(base))) elif isinstance(obj_def, definitions.InterfaceDef): self._fp.write(' gobject.GInterface' '\n') elif isinstance(obj_def, definitions.BoxedDef): self._fp.write(' gobject.GBoxed' '\n') elif isinstance(obj_def, definitions.PointerDef): self._fp.write(' gobject.GPointer' '\n') constructor = self.parser.find_constructor(obj_def, self.overrides) if constructor: self._fp.write( '%s\n' % self.create_constructor_prototype(constructor)) for method in self.get_methods_for_object(obj_def): self._fp.write( '%s\n' % self.create_method_prototype(method, addlink=1)) self._fp.write('\n\n') def write_hierarchy(self, obj_name, ancestry): self._fp.write('') indent = '' for name, interfaces in ancestry: self._fp.write( '%s+-- %s' % (indent, self.make_class_ref(name), self.pyname(name))) if interfaces: self._fp.write(' (implements ') for i in range(len(interfaces)): self._fp.write('%s' % (self.make_class_ref(interfaces[i]), self.pyname(interfaces[i]))) if i != len(interfaces) - 1: self._fp.write(', ') self._fp.write(')\n') else: self._fp.write('\n') indent = indent + ' ' self._fp.write('\n\n') def write_params(self, params, ret, func_doc): if not params and (not ret or ret == 'none'): return self._fp.write(' \n') for type, name, dflt, null in params: if func_doc: descr = func_doc.get_param_description(name).strip() else: descr = 'a ' + type self._fp.write(VARIABLE_TEMPLATE % dict( parameter=name, description=self.reformat_text(descr, singleline=1))) if ret and ret != 'none': if func_doc and func_doc.ret: descr = func_doc.ret.strip() else: descr = 'a ' + ret self._fp.write(VARIABLE_TEMPLATE % dict( parameter='Returns', description=self.reformat_text(descr, singleline=1))) self._fp.write(' \n') def write_constructor(self, func_def, func_doc): prototype = self.create_constructor_prototype(func_def) self._fp.write('%s\n' % prototype) self.write_params(func_def.params, func_def.ret, func_doc) if func_doc and func_doc.description: self._fp.write(self.reformat_text(func_doc.description)) self._fp.write('\n\n\n') def write_method(self, meth_def, func_doc): self._fp.write(' \n' % ( self.make_method_ref(meth_def), )) self._fp.write(' %s.%s\n\n' % ( self.pyname(meth_def.of_object), meth_def.name)) prototype = self.create_method_prototype(meth_def) self._fp.write('%s\n' % prototype) self.write_params(meth_def.params, meth_def.ret, func_doc) if func_doc and func_doc.description: self._fp.write(self.reformat_text(func_doc.description)) self._fp.write(' \n\n\n') def output_toc(self, files, fp=sys.stdout): self._fp.write(DOCBOOK_HEADER) #self._fp.write('\n') #self._fp.write(' Class Documentation\n') #for filename, obj_def in files: # self._fp.write('&' + # obj_def.c_name.translate(self._transtable) + ';\n') #self._fp.write('\n') self._fp.write('\n') self._fp.write(' Class Reference\n') for filename in sorted(files): self._fp.write(' \n' % filename) self._fp.write('\n') def main(args): try: opts, args = getopt.getopt(args[1:], "d:s:o:", ["defs-file=", "override=", "source-dir=", "output-prefix="]) except getopt.error, e: sys.stderr.write('docgen.py: %s\n' % e) sys.stderr.write( 'usage: docgen.py -d file.defs [-s /src/dir] [-o output-prefix]\n') return 1 defs_file = None overrides_file = None source_dirs = [] output_prefix = 'docs' for opt, arg in opts: if opt in ('-d', '--defs-file'): defs_file = arg if opt in ('--override', ): overrides_file = arg elif opt in ('-s', '--source-dir'): source_dirs.append(arg) elif opt in ('-o', '--output-prefix'): output_prefix = arg if len(args) != 0 or not defs_file: sys.stderr.write( 'usage: docgen.py -d file.defs [-s /src/dir] [-o output-prefix]\n') return 1 d = DocbookDocWriter() d.add_sourcedirs(source_dirs) d.add_docs(defs_file, overrides_file, 'gio') d.output_docs(output_prefix) return 0 if __name__ == '__main__': sys.exit(main(sys.argv)) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/code-coverage.py0000755000000000000000000000246011272036630023774 0ustar rootroot#! /usr/bin/env python from __future__ import generators import sys, os def read_symbols(file, type=None, dynamic=0): if dynamic: cmd = 'nm -D %s' % file else: cmd = 'nm %s' % file for line in os.popen(cmd, 'r'): if line[0] != ' ': # has an address as first bit of line while line[0] != ' ': line = line[1:] while line[0] == ' ': line = line[1:] # we should be up to "type symbolname" now sym_type = line[0] symbol = line[1:].strip() if not type or type == sym_type: yield symbol def main(): if len(sys.argv) != 3: sys.stderr.write('usage: coverage-check library.so wrapper.so\n') sys.exit(1) library = sys.argv[1] wrapper = sys.argv[2] # first create a dict with all referenced symbols in the wrapper # should really be a set, but a dict will do ... wrapper_symbols = {} for symbol in read_symbols(wrapper, type='U', dynamic=1): wrapper_symbols[symbol] = 1 # now go through the library looking for matches on the defined symbols: for symbol in read_symbols(library, type='T', dynamic=1): if symbol[0] == '_': continue if symbol not in wrapper_symbols: print symbol if __name__ == '__main__': main() ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/docextract.py0000644000000000000000000001450311272036627023435 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- '''Simple module for extracting GNOME style doc comments from C sources, so I can use them for other purposes.''' import sys, os, string, re __all__ = ['extract'] class FunctionDoc: def __init__(self): self.name = None self.params = [] self.description = '' self.ret = '' def set_name(self, name): self.name = name def add_param(self, name, description): if name == '...': name = 'Varargs' self.params.append((name, description)) def append_to_last_param(self, extra): self.params[-1] = (self.params[-1][0], self.params[-1][1] + extra) def append_to_named_param(self, name, extra): for i in range(len(self.params)): if self.params[i][0] == name: self.params[i] = (name, self.params[i][1] + extra) return # fall through to adding extra parameter ... self.add_param(name, extra) def append_description(self, extra): self.description = self.description + extra def append_return(self, extra): self.ret = self.ret + extra def get_param_description(self, name): for param, description in self.params: if param == name: return description else: return '' comment_start_pat = re.compile(r'^\s*/\*\*\s') comment_end_pat = re.compile(r'^\s*\*+/') comment_line_lead = re.compile(r'^\s*\*\s*') funcname_pat = re.compile(r'^(\w+)\s*:?') return_pat = re.compile(r'^(returns:|return\s+value:|returns\s*)(.*\n?)$', re.IGNORECASE) param_pat = re.compile(r'^@(\S+)\s*:(.*\n?)$') def parse_file(fp, doc_dict): line = fp.readline() in_comment_block = 0 while line: if not in_comment_block: if comment_start_pat.match(line): in_comment_block = 1 cur_doc = FunctionDoc() in_description = 0 in_return = 0 line = fp.readline() continue # we are inside a comment block ... if comment_end_pat.match(line): if not cur_doc.name: sys.stderr.write("no function name found in doc comment\n") else: doc_dict[cur_doc.name] = cur_doc in_comment_block = 0 line = fp.readline() continue # inside a comment block, and not the end of the block ... line = comment_line_lead.sub('', line) if not line: line = '\n' if not cur_doc.name: match = funcname_pat.match(line) if match: cur_doc.set_name(match.group(1)) elif in_return: match = return_pat.match(line) if match: # assume the last return statement was really part of the # description return_start = match.group(1) cur_doc.ret = match.group(2) cur_doc.description = cur_doc.description + return_start + \ cur_doc.ret else: cur_doc.append_return(line) elif in_description: if line[:12] == 'Description:': line = line[12:] match = return_pat.match(line) if match: in_return = 1 return_start = match.group(1) cur_doc.append_return(match.group(2)) else: cur_doc.append_description(line) elif line == '\n': # end of parameters in_description = 1 else: match = param_pat.match(line) if match: param = match.group(1) desc = match.group(2) if param == 'returns': cur_doc.ret = desc else: cur_doc.add_param(param, desc) else: # must be continuation try: if param == 'returns': cur_doc.append_return(line) else: cur_doc.append_to_last_param(line) except: sys.stderr.write('something weird while reading param\n') line = fp.readline() def parse_dir(dir, doc_dict): for file in os.listdir(dir): if file in ('.', '..'): continue path = os.path.join(dir, file) if os.path.isdir(path): parse_dir(path, doc_dict) if len(file) > 2 and file[-2:] == '.c': parse_file(open(path, 'r'), doc_dict) def extract(dirs, doc_dict=None): if not doc_dict: doc_dict = {} for dir in dirs: parse_dir(dir, doc_dict) return doc_dict tmpl_section_pat = re.compile(r'^$') def parse_tmpl(fp, doc_dict): cur_doc = None line = fp.readline() while line: match = tmpl_section_pat.match(line) if match: cur_doc = None # new input shouldn't affect the old doc dict sect_type = match.group(1) sect_name = match.group(2) if sect_type == 'FUNCTION': cur_doc = doc_dict.get(sect_name) if not cur_doc: cur_doc = FunctionDoc() cur_doc.set_name(sect_name) doc_dict[sect_name] = cur_doc elif line == '\n': cur_doc = None # don't worry about unused params. elif cur_doc: if line[:10] == '@Returns: ': if string.strip(line[10:]): cur_doc.append_return(line[10:]) elif line[0] == '@': pos = string.find(line, ':') if pos >= 0: cur_doc.append_to_named_param(line[1:pos], line[pos+1:]) else: cur_doc.append_description(line) else: cur_doc.append_description(line) line = fp.readline() def extract_tmpl(dirs, doc_dict=None): if not doc_dict: doc_dict = {} for dir in dirs: for file in os.listdir(dir): if file in ('.', '..'): continue path = os.path.join(dir, file) if os.path.isdir(path): continue if len(file) > 2 and file[-2:] == '.sgml': parse_tmpl(open(path, 'r'), doc_dict) return doc_dict ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/scanvirtuals.py0000755000000000000000000000356011272036630024011 0ustar rootroot#!/usr/bin/env python import re import sys def main(): rx = re.compile(r'^\s*([\w\s\*]+)\(\s*\*\s*(\w+)\s*\)\s*\(([^()]*)\);', re.DOTALL|re.MULTILINE) for f in sys.argv[1:]: #print ";; From", f buf = file(f).read() for m in rx.findall(buf): return_type = m[0].strip() if 'typedef' in return_type: continue if return_type == 'void': return_type = 'none' return_type = return_type.replace(' ', '') virtual_name = m[1] if 'reserved' in virtual_name: continue params = [] if not m[2]: print >> sys.stderr, repr(m) continue for param in map(str.strip, m[2].split(',')): if '*' in param: tokens = param.split('*') ptype = tokens[0].strip() + '*'*(len(tokens) - 1) pname = tokens[-1].strip() else: if param == 'void': continue ptype, pname = map(str.strip, param.split()) ptype = ptype.replace('const ', 'const-') while '[]' in pname: pname = pname.replace('[]', '') ptype += '[]' params.append((ptype, pname)) if not params: continue objname = params[0][0].replace('*', '') print '(define-virtual', virtual_name print ' (of-object "%s")' % objname print ' (return-type "%s")' % return_type if len(params) > 1: print ' (parameters' for param in params[1:]: print ' \'("%s" "%s")' % param print ' )' print ')' if __name__ == '__main__': main() ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/defsparser.py0000644000000000000000000001324111272036627023431 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- import os, sys import scmexpr from definitions import BoxedDef, EnumDef, FlagsDef, FunctionDef, \ InterfaceDef, MethodDef, ObjectDef, PointerDef, VirtualDef include_path = ['.'] class IncludeParser(scmexpr.Parser): """A simple parser that follows include statements automatically""" def include(self, input_filename): global include_path if os.path.isabs(input_filename): filename = input_filename # set self.filename to the include name, to handle recursive includes oldfile = self.filename self.filename = filename self.startParsing() self.filename = oldfile else: inc_path = [os.path.dirname(self.filename)] + include_path for filename in [os.path.join(path_entry, input_filename) for path_entry in inc_path]: if not os.path.exists(filename): continue # set self.filename to the include name, to handle recursive includes oldfile = self.filename self.filename = filename self.startParsing() self.filename = oldfile break else: raise IOError("%s not found in include path %s" % (input_filename, inc_path)) class DefsParser(IncludeParser): def __init__(self, arg, defines={}): IncludeParser.__init__(self, arg) self.objects = [] self.interfaces = [] self.enums = [] # enums and flags self.boxes = [] # boxed types self.pointers = [] # pointer types self.functions = [] # functions and methods self.virtuals = [] # virtual methods self.c_name = {} # hash of c names of functions self.methods = {} # hash of methods of particular objects self.defines = defines # -Dfoo=bar options, as dictionary def define_object(self, *args): odef = apply(ObjectDef, args) self.objects.append(odef) self.c_name[odef.c_name] = odef def define_interface(self, *args): idef = apply(InterfaceDef, args) self.interfaces.append(idef) self.c_name[idef.c_name] = idef def define_enum(self, *args): edef = apply(EnumDef, args) self.enums.append(edef) self.c_name[edef.c_name] = edef def define_flags(self, *args): fdef = apply(FlagsDef, args) self.enums.append(fdef) self.c_name[fdef.c_name] = fdef def define_boxed(self, *args): bdef = apply(BoxedDef, args) self.boxes.append(bdef) self.c_name[bdef.c_name] = bdef def define_pointer(self, *args): pdef = apply(PointerDef, args) self.pointers.append(pdef) self.c_name[pdef.c_name] = pdef def define_function(self, *args): fdef = apply(FunctionDef, args) self.functions.append(fdef) self.c_name[fdef.c_name] = fdef def define_method(self, *args): mdef = apply(MethodDef, args) self.functions.append(mdef) self.c_name[mdef.c_name] = mdef def define_virtual(self, *args): vdef = apply(VirtualDef, args) self.virtuals.append(vdef) def merge(self, old, parmerge): for obj in self.objects: if old.c_name.has_key(obj.c_name): obj.merge(old.c_name[obj.c_name]) for f in self.functions: if old.c_name.has_key(f.c_name): f.merge(old.c_name[f.c_name], parmerge) def printMissing(self, old): for obj in self.objects: if not old.c_name.has_key(obj.c_name): obj.write_defs() for f in self.functions: if not old.c_name.has_key(f.c_name): f.write_defs() def write_defs(self, fp=sys.stdout): for obj in self.objects: obj.write_defs(fp) for enum in self.enums: enum.write_defs(fp) for boxed in self.boxes: boxed.write_defs(fp) for pointer in self.pointers: pointer.write_defs(fp) for func in self.functions: func.write_defs(fp) def find_object(self, c_name): for obj in self.objects: if obj.c_name == c_name: return obj else: raise ValueError('object %r not found' % c_name) def find_constructor(self, obj, overrides): for func in self.functions: if isinstance(func, FunctionDef) and \ func.is_constructor_of == obj.c_name and \ not overrides.is_ignored(func.c_name): return func def find_methods(self, obj): objname = obj.c_name return filter(lambda func, on=objname: isinstance(func, MethodDef) and func.of_object == on, self.functions) def find_virtuals(self, obj): objname = obj.c_name retval = filter(lambda func, on=objname: isinstance(func, VirtualDef) and func.of_object == on, self.virtuals) return retval def find_functions(self): return filter(lambda func: isinstance(func, FunctionDef) and not func.is_constructor_of, self.functions) def ifdef(self, *args): if args[0] in self.defines: for arg in args[1:]: #print >> sys.stderr, "-----> Handling conditional definition (%s): %s" % (args[0], arg) self.handle(arg) else: pass #print >> sys.stderr, "-----> Conditional %s is not true" % (args[0],) def ifndef(self, *args): if args[0] not in self.defines: for arg in args[1:]: self.handle(arg) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/docextract_to_xml.py0000755000000000000000000000522711272036630025017 0ustar rootroot#!/usr/bin/env python # -*- Mode: Python; py-indent-offset: 4 -*- # # This litte script outputs the C doc comments to an XML format. # So far it's only used by gtkmm (The C++ bindings). Murray Cumming. # Usage example: # # ./docextract_to_xml.py -s /gnome/head/cvs/gtk+/gtk/ -s /gnome/head/cvs/gtk+/docs/reference/gtk/tmpl/ > gtk_docs.xml import getopt import re import string import sys import docextract def escape_text(unescaped_text): # Escape every "&" not part of an entity reference escaped_text = re.sub(r'&(?![A-Za-z]+;)', '&', unescaped_text) # These weird entities turn up in the output... escaped_text = string.replace(escaped_text, '—', '—') escaped_text = string.replace(escaped_text, '*', '*') escaped_text = string.replace(escaped_text, '%', '%') escaped_text = string.replace(escaped_text, '@', '@') # Escape for both tag contents and attribute values escaped_text = string.replace(escaped_text, '<', '<') escaped_text = string.replace(escaped_text, '>', '>') escaped_text = string.replace(escaped_text, '"', '"') return escaped_text if __name__ == '__main__': try: opts, args = getopt.getopt(sys.argv[1:], "d:s:o:", ["source-dir="]) except getopt.error, e: sys.stderr.write('docgen.py: %s\n' % e) sys.stderr.write( 'usage: docgen.py [-s /src/dir]\n') sys.exit(1) source_dirs = [] for opt, arg in opts: if opt in ('-s', '--source-dir'): source_dirs.append(arg) if len(args) != 0: sys.stderr.write( 'usage: docgen.py [-s /src/dir]\n') sys.exit(1) docs = docextract.extract(source_dirs); docextract.extract_tmpl(source_dirs, docs); #Try the tmpl sgml files too. # print d.docs if docs: print "" for name, value in docs.items(): print "" print "" #The value is a docextract.FunctionDoc print escape_text(value.description) print "" # Loop through the parameters: print "" for name, description in value.params: print "" print "" + escape_text(description) + "" print "" print "" # Show the return-type: print "" + escape_text(value.ret) + "" print "\n" print "" ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/__init__.py0000644000000000000000000000036711272036627023037 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- __all__ = [ 'argtypes', 'codegen', 'definitions', 'defsparser', 'docextract', 'docgen', 'h2def', 'defsgen' 'mergedefs', 'mkskel', 'override', 'scmexpr' ] ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/defsgen.py0000755000000000000000000007150411272036630022711 0ustar rootroot#!/usr/bin/env python # -*- Mode: Python; py-indent-offset: 4 -*- # # Copyright (C) 2006-2009 John Finlay. # # Scan the given public .h files of a GTK module (or module using # GTK object conventions) and generates a set of scheme defs. # # defsgen uses the ctypes module to extract information from the installed # module library (or libraries) to generate the object, interface, function, # method, virtual, enum and flags defs. defsgen uses the gobject library # g_type_* functions. defsgen will try to open the "libgobject-2.0.so" library # if one is not specified on the command line. # # Basically the operation of defsgen is: # # - open and initialize the gobject and module libraries # - read each .h file into a buffer which is scrubbed of extraneous data # - find all *_get_type() functions prototypes # - look in the module libraries for the get_type symbols # - if found run the get_type() function to retrieve the GType # - find the parent type name and save the object info # - find each function prototypes in the file and check if it has a symbol in # the module libraries - save the info if found # - extract the virtual prototypes from the Class or Iface structs and save # - write out the various defs. # # The command line options are: # # -l --modulelib Adds the given module library name to the list to be used # for finding symbols. Mor ethan one modulefile may be # specified. (required) # -L --libgobject Specifies the name of the gobject library (optional but # must be specified if "libgobject-2.0.so" is not availble) # -s --separate Create separate files for objects and function/method defs # using the given name as the base name (optional). If this # is not specified the combined object and function defs # will be output to sys.stdout. # -f --defsfile Extract defs from the given file to filter the output defs # that is don't output defs that are defined in the # defsfile. More than one deffile may be specified. # -D --defines Include portions of the defsfile defs that are conditional # on the given define, for example GDK_TARGET_X11. Only # useful with the --defsfile option # -m --modulename The prefix to be stripped from the front of function names # for the given module # -p --useprefix Use the modulename prefix as a hint to split names into # module and name for object and enum defs. Also used for # generating type codes. # --onlyenums Only produce defs for enums and flags # --onlyobjdefs Only produce defs for objects # --onlyvirtuals Only produce defs for virtuals # --genpropgetsets Experimental option to generate prop-getset annotations. # Not supported by codegen.py and friends. # # Examples: # # python defsgen.py -m pango -l libpango-1.0.so \ # /usr/local/include/pango-1.0/pango/*.h >/tmp/pango.defs # # - Outputs all defs for the pango module.using the library module # libpango-1.0.so. # # python defsgen.py -m gdk -DGDK_TARGET_X11 -l libgdk-x11-2.0.so \ # -l libgdk_pixbuf-2.0.so -s /tmp/gdk-2.10 \ # -f /usr/tmp/pygtk/gtk/gdk-base.defs \ # /usr/local/include/gtk-2.0/gdk/*.h \ # /usr/local/include/gtk-2.0/gdk-pixbuf/*.h # # - Outputs the gdk module defs that are not contained in the defs file # /usr/tmp/pygtk/gtk/gdk-base.defs. Two output files are created: # /tmp/gdk-2.10-types.defs and /tmp/gdk-2.10.defs. # # Based on the original h2def.py program by # Toby D. Reeves and # modified by James Henstridge to output stuff in # Havoc's new defs format. Info on this format can be seen at: # http://www.gnome.org/mailing-lists/archives/gtk-devel-list/2000-January/0085.shtml # Updated to be PEP-8 compatible and refactored to use OOP # Extensively modified by John Finlay to use ctypes module to extract GType # info from the given library and to create virtual defines. # import getopt import os import re, string import sys import ctypes import defsparser #------------------ utility defs ----------------- _upperstr_pat1 = re.compile(r'([^A-Z])([A-Z])') _upperstr_pat2 = re.compile(r'([A-Z][A-Z])([A-Z][0-9a-z])') _upperstr_pat3 = re.compile(r'^([A-Z])([A-Z])') def to_upper_str(name): """Converts a typename to the equivalent uppercase and underscores name. This is used to form the type conversion macros and enum/flag name variables""" name = _upperstr_pat1.sub(r'\1_\2', name) name = _upperstr_pat2.sub(r'\1_\2', name) name = _upperstr_pat3.sub(r'\1_\2', name, count=1) return name.upper() def typecode(typename, prefix, use_prefix): """create a typecode (eg. GTK_TYPE_WIDGET) from a typename""" tcode = to_upper_str(typename) if (use_prefix and prefix and tcode.lower() != prefix and tcode.lower().startswith(prefix)): l = len(prefix) tcode = tcode[:l] + '_TYPE' + tcode[l:] else: tcode = tcode.replace('_', '_TYPE_', 1) return tcode _class_iface_pat = re.compile(r'\w+(Class|Iface)') def class_iface_sub(mobj): '''Returns matched string if it matches a Class or Iface struct otherwise returns the empty string''' if not _class_iface_pat.match(mobj.group(1)): return '' return mobj.group(0) clean_patterns = [ # strip comments (re.compile(r'/\*.*?\*/', re.DOTALL), ''), # compact continued lines (re.compile(r"\\\n", re.MULTILINE), ''), # remove preprocess directives (re.compile(r"""^[#].*?$""", re.MULTILINE), ''), # strip DECLS macros and Windows DLL API macros (re.compile(r"""G_BEGIN_DECLS|BEGIN_LIBGTOP_DECLS|G_END_DECLS|[A-Z]+_API """, re.MULTILINE), ''), # remove extern "C" (re.compile(r'^\s*(extern)\s+"C"\s+{', re.MULTILINE), ''), # remove singleline typedefs of stucts (re.compile(r'^typedef\s+struct\s*[^{;\n]*;\s*$', re.MULTILINE), ''), # remove all struct definitons but those for object classes and interfaces (re.compile(r'^struct\s+(\w+)\s+{[^}]+}\s*;\s*$', re.MULTILINE), class_iface_sub), # compress multiple whitespace (re.compile(r'\s+', re.MULTILINE), ' '), # clean up line ends (re.compile(r';\s*', re.MULTILINE), '\n'), (re.compile(r'^\s*', re.MULTILINE), ''), # associate *, &, and [] with type instead of variable (re.compile(r' \s* ([*|&]+) \s* ([(\w]+)', re.VERBOSE), r'\1 \2'), (re.compile(r'\s+ (\w+) \[ \s* \]', re.VERBOSE), r'[] \1'), # make return types that are const work. (re.compile(r'\s*\*\s*G_CONST_RETURN\s*\*\s*'), '** '), (re.compile(r'G_CONST_RETURN |const '), 'const-'), # remove typedefs of callback types (re.compile(r'^typedef\s+\w+\s*\*?\s*\(\s*\*\s*\w+\)\s*\([^(]*\)\n', re.MULTILINE), ''), #strip GSEAL macros from the middle of function declarations: (re.compile(r"""GSEAL""", re.VERBOSE), '') ] def clean_buffer(buf): """Cleans out extraneous data leaving function prototypes, Class and Iface structs.""" for pat, subst in clean_patterns: buf = pat.sub(subst, buf) return buf # ------------------ utility classes ------------------------- class ObjDef(object): def __init__(self, name, type_id, parent_name, parent_type, base_name): self.name = name self.type = type_id self.parent_name = parent_name self.parent_type = parent_type self.base_name = base_name self.props = [] return def __cmp__(self, other): try: res = cmp(self.name, other.name) except AttributeError: res = cmp(id(self), id(other)) return res def set_properties(self, gobj): if self.base_name == 'GObject': self.props = self._get_gobject_properties(gobj) elif self.base_name == 'GInterface': self.props = self._get_ginterface_properties(gobj) def _get_gobject_properties(self, gobj): klass = gobj.g_type_class_ref(self.type) num = ctypes.c_uint() plist = gobj.g_object_class_list_properties(klass, ctypes.byref(num)) props = [plist[i][0].name for i in range(num.value) if self.name == gobj.g_type_name(plist[i][0].owner_type)] return props def _get_ginterface_properties(self, gobj): iface = gobj.g_type_default_interface_ref(self.type) num = ctypes.c_uint() plist = gobj.g_object_interface_list_properties(iface, ctypes.byref(num)) props = [plist[i][0].name for i in range(num.value)] return props # ------------------ Find object definitions ----------------- split_prefix_pat = re.compile('([A-Z]+[a-z]*)([A-Za-z0-9]+)') get_type_pat = re.compile(r'''^\s*(GType|GtkType)\s+ ([a-z]\w+_get_type)\s*(\(void\)|\(\)).*$''', re.VERBOSE | re.MULTILINE) defkeys = 'GBoxed GInterface GObject gpointer GEnum GFlags' def find_defs(buf, gobj, modlib, defs): """Find possible gobject, gboxed, interface, gpointer, enum and flags definitions in header files.and find parent type.""" # find all *_get_type() functions that may represent a GObject for m in get_type_pat.findall(buf): func_name = m[1] for lib in modlib: if hasattr(lib, func_name): objtype = apply(getattr(lib, func_name)) obj_name = gobj.g_type_name(objtype) parent = gobj.g_type_parent(objtype) parent_name = gobj.g_type_name(parent) base_name = gobj.g_type_name(gobj.g_type_fundamental(parent)) #if gobj.g_type_is_a(parent, gobj.GObject): # base_name = 'GObject' if base_name in defkeys: obj = ObjDef(obj_name, objtype, parent_name, parent, base_name) obj.set_properties(gobj) defs[obj.base_name].append(obj) break return # ------------------ Find function definitions ----------------- arg_split_pat = re.compile("\s*,\s*") proto_pat=re.compile(r"""^ \s*((?:-|\w|\&|\*)+) # return type \s+ # skip whitespace ([a-z]\w+)\s*[(] # match the function name until the opening ( \s*(.*?)\s*[)].* # group the function arguments $""", re.IGNORECASE|re.VERBOSE|re.MULTILINE) def find_func_defs(buf, modlib, deffile, defs, verbose): '''Find function prototypes in buf that have symbols in modlib and save in defs.''' funcs = defs['funcs'][deffile] = [] for m in proto_pat.findall(buf): ret, func, args = m if not True in [hasattr(lib, func) for lib in modlib]: if verbose: sys.stderr.write('no symbol for function: ' + func + ' from file' + deffile + '\n') else: args = arg_split_pat.split(args) args = [a.replace(' ','-', a.count(' ')-1) for a in args] funcs.append((func, ret, args)) return virtual_pat = re.compile(r'''^ \s*((?:-|\w|\&|\*)+) # return type \s* # skip whitespace \(\s*\*\s* # opening ( ([a-z]\w+)\) # match the function name until the closing ) \s*\(\s*([^)]*)\).* # group the function arguments $''', re.VERBOSE|re.MULTILINE) class_iface_struct_pat = re.compile( r'^struct\s+_(\w+)(?:Class|Iface)\s+{([^}]+)}\s*$', re.MULTILINE) def find_virt_defs(buf, deffile, defs): '''Find virtual function prototypes in buf and save in defs.''' virts = defs['virts'][deffile] = [] # get the Class or Iface structs for m in class_iface_struct_pat.findall(buf): objname, virtuals = m for v in virtual_pat.findall(virtuals): ret, func, args = v if 'reserved' in func or args == 'void': continue args = arg_split_pat.split(args) args = [a.replace(' ','-', a.count(' ')-1) for a in args] virts.append((func, ret, args, objname)) return enum_pat = re.compile(r'^\s*typedef enum\s+{\s*([^}]*)}\s*([^\s]*)$', re.MULTILINE) values_splitter = re.compile(r'\s*,\s', re.MULTILINE) def find_enums(buf, defs): for vals, name in enum_pat.findall(buf): if name != 'GdkCursorType': isflags = '<<' in vals entries = [val.split()[0] for val in values_splitter.split(vals) if val.strip()] if entries: defs['untypedenums'][name] = (isflags, entries) return # ------------------ write definitions ----------------- type_pat = re.compile(r'(?:const-)?([A-Za-z0-9]+)\*?\s+') pointer_pat = re.compile('(.*)\*$') func_new_pat = re.compile('(\w+)_new$') getset_pat = re.compile(r'^(?:get|set)_(.*)$') def split_prefix(cname, prefix, use_prefix): # use the module prefix to split the cname pre = prefix.replace('_', '') if use_prefix and cname.lower().startswith(pre): l = len(pre) module = cname[:l] name = cname[l:] else: m = split_prefix_pat.match(cname) if m: module = m.group(1) name = m.group(2) return module, name class DefsWriter: def __init__(self, defs, fp=None, prefix=None, verbose=False, defsfiles=None, defines={}, genpropgetsets=False, useprefix=False): self.defs = defs self.use_prefix = useprefix self.objnames = reduce(list.__add__, [[o.name for o in defs[base]] for base in defkeys.split()[:3]]) self.othernames = reduce(list.__add__, [[o.name for o in defs[base]] for base in defkeys.split()[3:]]) self.objifacedefs = dict(reduce(list.__add__, [[(o.name, o) for o in defs[base]] for base in defkeys.split()[1:3]])) self.fp = (fp, sys.stdout)[not fp] self.prefix = prefix self.verbose = verbose self.genpropgetsets = genpropgetsets self._c_names={} for defsfile in defsfiles: filter = defsparser.DefsParser(defsfile, defines) filter.startParsing() self._c_names.update(filter.c_name) for vdef in filter.virtuals: self._c_names[vdef.of_object + '.' + vdef.name] = None return def write_func_defs(self, deffiles, onlyvirts=False): filter = self._c_names for deffile in deffiles: self.fp.write('\n;; From %s\n\n' % os.path.basename(deffile)) if not onlyvirts: for func, ret, args in self.defs['funcs'][deffile]: if not func in filter: self._write_func(func, ret, args) for virt, ret, args, objname in self.defs['virts'][deffile]: if not objname + '.' + virt in filter: self._write_virt(objname, virt, ret, args) self.fp.write('\n') return def write_enum_defs(self, fp=None): fp = (fp, self.fp)[not fp] klassptrs = {'GEnum':ctypes.POINTER(EnumClass), 'GFlags':ctypes.POINTER(FlagsClass)} filter = self._c_names objs = self.defs['GEnum'] + self.defs ['GFlags'] #objs.sort() fp.write(';; Enumerations and Flags ...\n\n') for obj in objs: cname = name = obj.name tcode = typecode(cname, self.prefix, self.use_prefix) if cname in filter: continue if cname in self.defs['untypedenums']: if tcode not in self.defs['typedefines']: # no type define so skip and print as untyped enum continue self.defs['untypedenums'].pop(cname, None) parent_name = obj.parent_name klassptr = klassptrs[parent_name] typename = parent_name.lower()[1:] module = None module, name = split_prefix(cname, self.prefix, self.use_prefix) fp.write('(define-' + typename + ' ' + name + '\n') if module: fp.write(' (in-module "' + module + '")\n') fp.write(' (c-name "' + cname + '")\n') fp.write(' (gtype-id "' + tcode + '")\n') fp.write(' (values\n') classref = self.gobj.g_type_class_ref(obj.type) itemclass = ctypes.cast(classref, klassptr).contents for i in range(itemclass.n_values): val = itemclass.values[i] fp.write(' \'("%s" "%s")\n' % (val.value_nick, val.value_name)) fp.write(' )\n') fp.write(')\n\n') if self.defs['untypedenums']: self.write_untyped_enum_defs(fp) return def write_untyped_enum_defs(self, fp): fp.write(';; Untyped enumerations and flags ...\n\n') filter = self._c_names for cname, (isflags, entries) in self.defs['untypedenums'].items(): if filter and cname in filter: continue module, name = split_prefix(cname, self.prefix, self.use_prefix) if isflags: fp.write('(define-flags ' + name + '\n') else: fp.write('(define-enum ' + name + '\n') if module: fp.write(' (in-module "' + module + '")\n') fp.write(' (c-name "' + cname + '")\n') preindex = entries[0].rfind('_') for ent in entries[1:]: while (preindex > 0 and ent[:preindex] != entries[0][:preindex]): preindex = ent[:preindex].rfind('_') fp.write(' (values\n') for ent in entries: fp.write(' \'("%s" "%s")\n' % (ent[preindex+1:].lower().replace('_', '-'), ent)) fp.write(' )\n') fp.write(')\n\n') def _write_obj_helper(self, obj, fp): base_name = obj.base_name.lower()[1:] cmodule = None cname = name = obj.name type_id = obj.type parent_name = obj.parent_name cmodule, name = split_prefix(cname, self.prefix, self.use_prefix) fp.write('(define-' + base_name + ' ' + name + '\n') if cmodule: fp.write(' (in-module "' + cmodule + '")\n') if base_name == 'object': fp.write(' (parent "' + parent_name + '")\n') fp.write(' (c-name "' + cname + '")\n') fp.write(' (gtype-id "' + typecode(cname, self.prefix, self.use_prefix) + '")\n') n = ctypes.c_uint() ifaces = self.gobj.g_type_interfaces(type_id, ctypes.byref(n)) for i in range(n.value): iface_name = self.gobj.g_type_name(ifaces[i]) if iface_name in self.interfaces: fp.write(' (implements "%s")\n' % iface_name) if base_name == 'interface': prereq = self.gobj.g_type_interface_prerequisites(type_id, ctypes.byref(n)) for i in range(n.value): fp.write(' (prerequisite "%s")\n' % self.gobj.g_type_name(prereq[i])) # should do something about accessible fields fp.write(')\n\n') return def write_obj_defs(self, fp=None): fp = (fp, self.fp)[not fp] fp.write(';; -*- scheme -*-\n') filter = self._c_names for base in defkeys.split()[:4]: base_name = base.lower()[1:] fp.write('; %s definitions ...\n\n' % base_name) for obj in self.defs[base]: if not obj.name in filter: self._write_obj_helper(obj, fp) return def _write_func(self, name, ret, args): if len(args) >= 1: # methods must have at least one argument munged_name = name.replace('_', '') m = type_pat.match(args[0]) if m: obj = m.group(1) if munged_name.startswith(obj.lower()): if obj not in self.othernames: self._write_method(obj, name, ret, args) return fname = name if self.prefix: fname = re.sub('^'+self.prefix+'_', '', fname) # it is either a constructor or normal function self.fp.write('(define-function ' + fname + '\n') self.fp.write(' (c-name "' + name + '")\n') # Asume that a constructor function name # ends with '_new' and it returns an object pointer. m = func_new_pat.match(name) r = pointer_pat.match(ret) if m and r: cname = '' # get the type name by using the _get_type function func = m.group(1) + '_get_type' lib = [l for l in self.modlib if hasattr(l, func)] if lib: cname = self.gobj.g_type_name(apply(getattr(lib[0], func))) if cname and self.gobj.g_type_from_name(r.group(1)): self.fp.write(' (is-constructor-of "' + cname + '")\n') self._write_return(ret) self._write_arguments(args) return def _write_method(self, obj, name, ret, args): regex = ''.join([c+'_?' for c in obj.lower()]) mname, count = re.subn(regex, '', name, 1) if not count and self.prefix: mname = re.sub('^'+self.prefix+'_', '', mname) self.fp.write('(define-method ' + mname + '\n') self.fp.write(' (of-object "' + obj + '")\n') self.fp.write(' (c-name "' + name + '")\n') m = getset_pat.match(mname) if self.genpropgetsets and m and len(args[1:]) <= 1: prop = m.group(1) if obj in self.objifacedefs: oidef = self.objifacedefs[obj] if prop.replace('_', '-') in oidef.props: self.fp.write(' (prop-getset "' + prop + '")\n') self._write_return(ret) self._write_arguments(args[1:]) return def _write_virt(self, obj, name, ret, args): self.fp.write('(define-virtual ' + name + '\n') self.fp.write(' (of-object "' + obj + '")\n') self._write_return(ret) self._write_arguments(args[1:]) return def _write_return(self, ret): if ret == 'void': ret = 'none' self.fp.write(' (return-type "' + ret + '")\n') return def _write_arguments(self, args): if args and not 'void' in args: varargs = '' self.fp.write(' (parameters\n') for arg in args: if arg == '...': varargs = ' (varargs #t)\n' else: tupleArg = tuple(arg.split()) if len(tupleArg) == 2: self.fp.write(' \'("%s" "%s")\n' % tupleArg) self.fp.write(' )\n' + varargs) self.fp.write(')\n\n') # ---------- ctypes support classes for gobject library functions ---------- GType = ctypes.c_uint class GTypeClass(ctypes.Structure): _fields_ = [('g_type', GType)] class GTypeInstance(ctypes.Structure): _fields_ = [('g_class', ctypes.POINTER(GTypeClass))] class EnumValue(ctypes.Structure): _fields_ = [('value', ctypes.c_int), ('value_name', ctypes.c_char_p), ('value_nick', ctypes.c_char_p)] class FlagsValue(ctypes.Structure): _fields_ = [('value', ctypes.c_uint), ('value_name', ctypes.c_char_p), ('value_nick', ctypes.c_char_p)] class EnumClass(ctypes.Structure): _fields_ = [('g_type_class', GTypeClass), ('minimum', ctypes.c_int), ('maximum', ctypes.c_int), ('n_values', ctypes.c_uint), ('values', ctypes.POINTER(EnumValue))] class FlagsClass(ctypes.Structure): _fields_ = [('g_type_class', GTypeClass), ('mask', ctypes.c_uint), ('n_values', ctypes.c_uint), ('values', ctypes.POINTER(FlagsValue))] class GTypeInterface(ctypes.Structure): _fields_ = [('g_type', GType), ('g_instance_type', GType)] class GParamSpec(ctypes.Structure): _fields_ = [('g_type_instance', GTypeInstance), ('name', ctypes.c_char_p), ('flags', ctypes.c_uint), ('value_type', GType), ('owner_type', GType)] # ------------------ Main function ----------------- def main(args): verbose = False all = True onlyenums = False onlyobjdefs = False onlyvirtuals = False separate = False modulename = None defsfiles = [] libgobject = None modulelibs = [] defines = {} genpropgetsets = False use_prefix = False opts, args = getopt.getopt(args[1:], 'vs:m:f:D:L:l:p', ['onlyenums', 'onlyobjdefs', 'onlyvirtuals', 'modulename=', 'separate=', 'defsfile=', 'defines=', 'genpropgetsets', 'libgobject-', 'modulelib=', 'useprefix']) for o, v in opts: if o == '-v': verbose = True if o == '--onlyenums': onlyenums = True all = False if o == '--onlyvirtuals': onlyvirtuals = True all = False if o == '--onlyobjdefs': onlyobjdefs = True all = False if o in ('-p', '--useprefix'): use_prefix = True if o == '--genpropgetsets': genpropgetsets = True if o in ('-s', '--separate'): separate = v if o in ('-m', '--modulename'): modulename = v if o in ('-L', '--libgobject'): libgobject = v if o in ('-l', '--modulelib'): modulelibs.append(v) if o in ('-f', '--defsfile'): defsfiles.append(v) if o in ('-D', '--defines'): nameval = v.split('=') try: defines[nameval[0]] = nameval[1] except IndexError: defines[nameval[0]] = None if not args[0:1]: print 'Must specify at least one input file name' return -1 if not modulelibs: print 'Must specify one or more modulelib names' return -1 # load the gobject and module libraries and init the gtype system if not libgobject: if verbose: sys.stderr.write('Using "libgobject-2.0.so" as the libobject' \ 'library name by default\n') gobj = ctypes.cdll.LoadLibrary('libgobject-2.0.so') else: gobj = ctypes.cdll.LoadLibrary(libgobject) modlib = [ctypes.cdll.LoadLibrary(lib) for lib in modulelibs] gobj.g_type_init() gobj.g_type_name.restype = ctypes.c_char_p gobj.g_type_from_name.argtypes = [ctypes.c_char_p] gobj.g_type_interfaces.restype = ctypes.POINTER(ctypes.c_int) gobj.g_type_interface_prerequisites.restype = ctypes.POINTER(ctypes.c_int) gobj.g_object_class_list_properties.restype = ctypes.POINTER(ctypes.POINTER(GParamSpec)) gobj.g_object_interface_list_properties.restype = ctypes.POINTER(ctypes.POINTER(GParamSpec)) gobj.GObject = gobj.g_type_from_name('GObject') gobj.g_object_new(gobj.GObject, None) defs = {} for key in defkeys.split(): defs[key] = [] defs['funcs'] = {} defs['virts'] = {} defs['untypedenums'] = {} defs['typedefines'] = [] # read in all the object and function definitions args.sort() type_define_pat = re.compile( r'^#define\s+([A-Z]\S+_TYPE_\S+)\s+.*[a-z]\w+_get_type.*$', re.MULTILINE) for filename in args: buf = open(filename).read() defs['typedefines'] += type_define_pat.findall(buf) buf = clean_buffer(buf) find_enums(buf, defs) find_defs(buf, gobj, modlib, defs) find_func_defs(buf, modlib, filename, defs, verbose) find_virt_defs(buf, filename, defs) for key in defkeys.split(): defs[key].sort() methods = types = None if separate: methods = file(separate + '.defs', 'w') types = file(separate + '-types.defs', 'w') dw = DefsWriter(defs, methods, prefix=modulename, verbose=verbose, defsfiles=defsfiles, defines=defines, genpropgetsets=genpropgetsets, useprefix=use_prefix) dw.interfaces = [i.name for i in defs['GInterface']] dw.gobj = gobj dw.modlib = modlib if onlyobjdefs or all: dw.write_obj_defs(types) if separate: print "Wrote object defs to %s-types.defs" % separate if onlyenums or all: dw.write_enum_defs(types) if separate: print "Wrote enum and flags defs to %s-types.defs" % separate if onlyvirtuals or all: dw.write_func_defs(args, onlyvirtuals) if separate: print "Wrote function and virtual defs to %s.defs" % separate if __name__ == '__main__': sys.exit(main(sys.argv)) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/h2def.py0000755000000000000000000005242511272036630022267 0ustar rootroot#!/usr/bin/env python # -*- Mode: Python; py-indent-offset: 4 -*- # GPL'ed # Toby D. Reeves # # Modified by James Henstridge to output stuff in # Havoc's new defs format. Info on this format can be seen at: # http://mail.gnome.org/archives/gtk-devel-list/2000-January/msg00070.html # Updated to be PEP-8 compatible and refactored to use OOP # # Scan the given public .h files of a GTK module (or module using # GTK object conventions) and generates a set of scheme defs. # # h2def searches through a header file looking for function prototypes and # generates a scheme style defenition for each prototype. # Basically the operation of h2def is: # # - read each .h file into a buffer which is scrubbed of extraneous data # - find all object defenitions: # - find all structures that may represent a GtkObject # - find all structures that might represent a class # - find all structures that may represent a GtkObject subclass # - find all structures that might represent a class/Iface inherited from # GTypeInterface # - find all enum defenitions # - write out the defs # # The command line options are: # # -s --separate Create separate files for objects and function/method defs # using the given name as the base name (optional). If this # is not specified the combined object and function defs # will be output to sys.stdout. # -f --defsfilter Extract defs from the given file to filter the output defs # that is don't output defs that are defined in the # defsfile. More than one deffile may be specified. # -m --modulename The prefix to be stripped from the front of function names # for the given module # -n --namespace The module or namespace name to be used, for example # WebKit where h2def is unable to detect the module name # automatically. it also sets the gtype-id prefix. # --onlyenums Only produce defs for enums and flags # --onlyobjdefs Only produce defs for objects # -v Verbose output # # Examples: # # python h2def.py /usr/local/include/pango-1.0/pango/*.h >/tmp/pango.defs # # - Outputs all defs for the pango module. # # python h2def.py -m gdk -s /tmp/gdk-2.10 \ # -f /usr/tmp/pygtk/gtk/gdk-base.defs \ # /usr/local/include/gtk-2.0/gdk/*.h \ # /usr/local/include/gtk-2.0/gdk-pixbuf/*.h # # - Outputs the gdk module defs that are not contained in the defs file # /usr/tmp/pygtk/gtk/gdk-base.defs. Two output files are created: # /tmp/gdk-2.10-types.defs and /tmp/gdk-2.10.defs. # # python h2def.py -n WebKit /usr/incude/webkit-1.0/webkit/*.h \ # >/tmp/webkit.defs # # - Outputs all the defs for webkit module, setting the module name to WebKit # and the gtype-id prefix to WEBKIT_ which can't be detected automatically. # import getopt import os import re import string import sys import defsparser # ------------------ Create typecodes from typenames --------- _upperstr_pat1 = re.compile(r'([^A-Z])([A-Z])') _upperstr_pat2 = re.compile(r'([A-Z][A-Z])([A-Z][0-9a-z])') _upperstr_pat3 = re.compile(r'^([A-Z])([A-Z])') def to_upper_str(name): """Converts a typename to the equivalent upercase and underscores name. This is used to form the type conversion macros and enum/flag name variables""" name = _upperstr_pat1.sub(r'\1_\2', name) name = _upperstr_pat2.sub(r'\1_\2', name) name = _upperstr_pat3.sub(r'\1_\2', name, count=1) return string.upper(name) def typecode(typename, namespace=None): """create a typecode (eg. GTK_TYPE_WIDGET) from a typename""" if namespace: return string.replace(string.upper(namespace) + "_" + to_upper_str(typename[len(namespace):]), '_', '_TYPE_', 1) return string.replace(to_upper_str(typename), '_', '_TYPE_', 1) # ------------------ Find object definitions ----------------- # Strips the comments from buffer def strip_comments(buf): parts = [] lastpos = 0 while 1: pos = string.find(buf, '/*', lastpos) if pos >= 0: parts.append(buf[lastpos:pos]) pos = string.find(buf, '*/', pos) if pos >= 0: lastpos = pos + 2 else: break else: parts.append(buf[lastpos:]) break return string.join(parts, '') # Strips the dll API from buffer, for example WEBKIT_API def strip_dll_api(buf): pat = re.compile("[A-Z]*_API ") buf = pat.sub("", buf) return buf obj_name_pat = "[A-Z][a-z]*[A-Z][A-Za-z0-9]*" split_prefix_pat = re.compile('([A-Z]+[a-z]*)([A-Za-z0-9]+)') def find_obj_defs(buf, objdefs=[]): """ Try to find object definitions in header files. """ # filter out comments from buffer. buf = strip_comments(buf) # filter out dll api buf = strip_dll_api(buf) maybeobjdefs = [] # contains all possible objects from file # first find all structures that look like they may represent a GtkObject pat = re.compile("struct\s+_(" + obj_name_pat + ")\s*{\s*" + "(" + obj_name_pat + ")\s+", re.MULTILINE) pos = 0 while pos < len(buf): m = pat.search(buf, pos) if not m: break maybeobjdefs.append((m.group(1), m.group(2))) pos = m.end() # handle typedef struct { ... } style struct defs. pat = re.compile("typedef struct\s+[_\w]*\s*{\s*" + "(" + obj_name_pat + ")\s+[^}]*}\s*" + "(" + obj_name_pat + ")\s*;", re.MULTILINE) pos = 0 while pos < len(buf): m = pat.search(buf, pos) if not m: break maybeobjdefs.append((m.group(2), m.group(1))) pos = m.end() # now find all structures that look like they might represent a class: pat = re.compile("struct\s+_(" + obj_name_pat + ")Class\s*{\s*" + "(" + obj_name_pat + ")Class\s+", re.MULTILINE) pos = 0 while pos < len(buf): m = pat.search(buf, pos) if not m: break t = (m.group(1), m.group(2)) # if we find an object structure together with a corresponding # class structure, then we have probably found a GtkObject subclass. if t in maybeobjdefs: objdefs.append(t) pos = m.end() pat = re.compile("typedef struct\s+[_\w]*\s*{\s*" + "(" + obj_name_pat + ")Class\s+[^}]*}\s*" + "(" + obj_name_pat + ")Class\s*;", re.MULTILINE) pos = 0 while pos < len(buf): m = pat.search(buf, pos) if not m: break t = (m.group(2), m.group(1)) # if we find an object structure together with a corresponding # class structure, then we have probably found a GtkObject subclass. if t in maybeobjdefs: objdefs.append(t) pos = m.end() # now find all structures that look like they might represent # a class inherited from GTypeInterface: pat = re.compile("struct\s+_(" + obj_name_pat + ")Class\s*{\s*" + "GTypeInterface\s+", re.MULTILINE) pos = 0 while pos < len(buf): m = pat.search(buf, pos) if not m: break t = (m.group(1), '') t2 = (m.group(1)+'Class', 'GTypeInterface') # if we find an object structure together with a corresponding # class structure, then we have probably found a GtkObject subclass. if t2 in maybeobjdefs: objdefs.append(t) pos = m.end() # now find all structures that look like they might represent # an Iface inherited from GTypeInterface: pat = re.compile("struct\s+_(" + obj_name_pat + ")Iface\s*{\s*" + "GTypeInterface\s+", re.MULTILINE) pos = 0 while pos < len(buf): m = pat.search(buf, pos) if not m: break t = (m.group(1), '') t2 = (m.group(1)+'Iface', 'GTypeInterface') # if we find an object structure together with a corresponding # class structure, then we have probably found a GtkObject subclass. if t2 in maybeobjdefs: objdefs.append(t) pos = m.end() def sort_obj_defs(objdefs): objdefs.sort() # not strictly needed, but looks nice pos = 0 while pos < len(objdefs): klass,parent = objdefs[pos] for i in range(pos+1, len(objdefs)): # parent below subclass ... reorder if objdefs[i][0] == parent: objdefs.insert(i+1, objdefs[pos]) del objdefs[pos] break else: pos = pos + 1 return objdefs # ------------------ Find enum definitions ----------------- def find_enum_defs(buf, enums=[]): # strip comments # bulk comments buf = strip_comments(buf) # strip dll api macros buf = strip_dll_api(buf) # strip # directives pat = re.compile(r"""^[#].*?$""", re.MULTILINE) buf = pat.sub('', buf) buf = re.sub('\n', ' ', buf) enum_pat = re.compile(r'enum\s*{([^}]*)}\s*([A-Z][A-Za-z]*)(\s|;)') splitter = re.compile(r'\s*,\s', re.MULTILINE) pos = 0 while pos < len(buf): m = enum_pat.search(buf, pos) if not m: break name = m.group(2) vals = m.group(1) isflags = string.find(vals, '<<') >= 0 entries = [] for val in splitter.split(vals): if not string.strip(val): continue entries.append(string.split(val)[0]) if name != 'GdkCursorType': enums.append((name, isflags, entries)) pos = m.end() # ------------------ Find function definitions ----------------- def clean_func(buf): """ Ideally would make buf have a single prototype on each line. Actually just cuts out a good deal of junk, but leaves lines where a regex can figure prototypes out. """ # bulk comments buf = strip_comments(buf) # dll api buf = strip_dll_api(buf) # compact continued lines pat = re.compile(r"""\\\n""", re.MULTILINE) buf = pat.sub('', buf) # Preprocess directives pat = re.compile(r"""^[#].*?$""", re.MULTILINE) buf = pat.sub('', buf) #typedefs, stucts, and enums pat = re.compile(r"""^(typedef|struct|enum)(\s|.|\n)*?;\s*""", re.MULTILINE) buf = pat.sub('', buf) #strip DECLS macros pat = re.compile(r"""G_BEGIN_DECLS|BEGIN_LIBGTOP_DECLS""", re.MULTILINE) buf = pat.sub('', buf) #extern "C" pat = re.compile(r"""^\s*(extern)\s+\"C\"\s+{""", re.MULTILINE) buf = pat.sub('', buf) #multiple whitespace pat = re.compile(r"""\s+""", re.MULTILINE) buf = pat.sub(' ', buf) #clean up line ends pat = re.compile(r""";\s*""", re.MULTILINE) buf = pat.sub('\n', buf) buf = buf.lstrip() #associate *, &, and [] with type instead of variable #pat = re.compile(r'\s+([*|&]+)\s*(\w+)') pat = re.compile(r' \s* ([*|&]+) \s* (\w+)', re.VERBOSE) buf = pat.sub(r'\1 \2', buf) pat = re.compile(r'\s+ (\w+) \[ \s* \]', re.VERBOSE) buf = pat.sub(r'[] \1', buf) # make return types that are const work. buf = re.sub(r'\s*\*\s*G_CONST_RETURN\s*\*\s*', '** ', buf) buf = string.replace(buf, 'G_CONST_RETURN ', 'const-') buf = string.replace(buf, 'const ', 'const-') #strip GSEAL macros from the middle of function declarations: pat = re.compile(r"""GSEAL""", re.VERBOSE) buf = pat.sub('', buf) return buf proto_pat=re.compile(r""" (?P(-|\w|\&|\*)+\s*) # return type \s+ # skip whitespace (?P\w+)\s*[(] # match the function name until the opening ( \s*(?P.*?)\s*[)] # group the function arguments """, re.IGNORECASE|re.VERBOSE) #""" arg_split_pat = re.compile("\s*,\s*") get_type_pat = re.compile(r'(const-)?([A-Za-z0-9]+)\*?\s+') pointer_pat = re.compile('.*\*$') func_new_pat = re.compile('(\w+)_new$') class DefsWriter: def __init__(self, fp=None, prefix=None, ns=None, verbose=False, defsfilter=None): if not fp: fp = sys.stdout self.fp = fp self.prefix = prefix self.namespace = ns self.verbose = verbose self._enums = {} self._objects = {} self._functions = {} if defsfilter: filter = defsparser.DefsParser(defsfilter) filter.startParsing() for func in filter.functions + filter.methods.values(): self._functions[func.c_name] = func for obj in filter.objects + filter.boxes + filter.interfaces: self._objects[obj.c_name] = obj for obj in filter.enums: self._enums[obj.c_name] = obj def write_def(self, deffile): buf = open(deffile).read() self.fp.write('\n;; From %s\n\n' % os.path.basename(deffile)) self._define_func(buf) self.fp.write('\n') def write_enum_defs(self, enums, fp=None): if not fp: fp = self.fp fp.write(';; Enumerations and flags ...\n\n') trans = string.maketrans(string.uppercase + '_', string.lowercase + '-') filter = self._enums for cname, isflags, entries in enums: if filter: if cname in filter: continue name = cname module = None if self.namespace: module = self.namespace name = cname[len(self.namespace):] else: m = split_prefix_pat.match(cname) if m: module = m.group(1) name = m.group(2) if isflags: fp.write('(define-flags ' + name + '\n') else: fp.write('(define-enum ' + name + '\n') if module: fp.write(' (in-module "' + module + '")\n') fp.write(' (c-name "' + cname + '")\n') fp.write(' (gtype-id "' + typecode(cname, self.namespace) + '")\n') prefix = entries[0] for ent in entries: # shorten prefix til we get a match ... # and handle GDK_FONT_FONT, GDK_FONT_FONTSET case while ((len(prefix) and prefix[-1] != '_') or ent[:len(prefix)] != prefix or len(prefix) >= len(ent)): prefix = prefix[:-1] prefix_len = len(prefix) fp.write(' (values\n') for ent in entries: fp.write(' \'("%s" "%s")\n' % (string.translate(ent[prefix_len:], trans), ent)) fp.write(' )\n') fp.write(')\n\n') def write_obj_defs(self, objdefs, fp=None): if not fp: fp = self.fp fp.write(';; -*- scheme -*-\n') fp.write('; object definitions ...\n') filter = self._objects for klass, parent in objdefs: if filter: if klass in filter: continue if self.namespace: cname = klass[len(self.namespace):] cmodule = self.namespace else: m = split_prefix_pat.match(klass) cname = klass cmodule = None if m: cmodule = m.group(1) cname = m.group(2) fp.write('(define-object ' + cname + '\n') if cmodule: fp.write(' (in-module "' + cmodule + '")\n') if parent: fp.write(' (parent "' + parent + '")\n') fp.write(' (c-name "' + klass + '")\n') fp.write(' (gtype-id "' + typecode(klass, self.namespace) + '")\n') # should do something about accessible fields fp.write(')\n\n') def _define_func(self, buf): buf = clean_func(buf) buf = string.split(buf,'\n') filter = self._functions for p in buf: if not p: continue m = proto_pat.match(p) if m == None: if self.verbose: sys.stderr.write('No match:|%s|\n' % p) continue func = m.group('func') if func[0] == '_': continue if filter: if func in filter: continue ret = m.group('ret') args = m.group('args') args = arg_split_pat.split(args) for i in range(len(args)): spaces = string.count(args[i], ' ') if spaces > 1: args[i] = string.replace(args[i], ' ', '-', spaces - 1) self._write_func(func, ret, args) def _write_func(self, name, ret, args): if len(args) >= 1: # methods must have at least one argument munged_name = name.replace('_', '') m = get_type_pat.match(args[0]) if m: obj = m.group(2) if munged_name[:len(obj)] == obj.lower(): self._write_method(obj, name, ret, args) return if self.prefix: l = len(self.prefix) if name[:l] == self.prefix and name[l] == '_': fname = name[l+1:] else: fname = name else: fname = name # it is either a constructor or normal function self.fp.write('(define-function ' + fname + '\n') self.fp.write(' (c-name "' + name + '")\n') # Hmmm... Let's asume that a constructor function name # ends with '_new' and it returns a pointer. m = func_new_pat.match(name) if pointer_pat.match(ret) and m: cname = '' for s in m.group(1).split ('_'): cname += s.title() if cname != '': self.fp.write(' (is-constructor-of "' + cname + '")\n') self._write_return(ret) self._write_arguments(args) def _write_method(self, obj, name, ret, args): regex = string.join(map(lambda x: x+'_?', string.lower(obj)),'') mname = re.sub(regex, '', name, 1) if self.prefix: l = len(self.prefix) + 1 if mname[:l] == self.prefix and mname[l+1] == '_': mname = mname[l+1:] self.fp.write('(define-method ' + mname + '\n') self.fp.write(' (of-object "' + obj + '")\n') self.fp.write(' (c-name "' + name + '")\n') self._write_return(ret) self._write_arguments(args[1:]) def _write_return(self, ret): if ret != 'void': self.fp.write(' (return-type "' + ret + '")\n') else: self.fp.write(' (return-type "none")\n') def _write_arguments(self, args): is_varargs = 0 has_args = len(args) > 0 for arg in args: if arg == '...': is_varargs = 1 elif arg in ('void', 'void '): has_args = 0 if has_args: self.fp.write(' (parameters\n') for arg in args: if arg != '...': tupleArg = tuple(string.split(arg)) if len(tupleArg) == 2: self.fp.write(' \'("%s" "%s")\n' % tupleArg) self.fp.write(' )\n') if is_varargs: self.fp.write(' (varargs #t)\n') self.fp.write(')\n\n') # ------------------ Main function ----------------- def main(args): verbose = False onlyenums = False onlyobjdefs = False separate = False modulename = None namespace = None defsfilter = None opts, args = getopt.getopt(args[1:], 'vs:m:n:f:', ['onlyenums', 'onlyobjdefs', 'modulename=', 'namespace=', 'separate=', 'defsfilter=']) for o, v in opts: if o == '-v': verbose = True if o == '--onlyenums': onlyenums = True if o == '--onlyobjdefs': onlyobjdefs = True if o in ('-s', '--separate'): separate = v if o in ('-m', '--modulename'): modulename = v if o in ('-n', '--namespace'): namespace = v if o in ('-f', '--defsfilter'): defsfilter = v if not args[0:1]: print 'Must specify at least one input file name' return -1 # read all the object definitions in objdefs = [] enums = [] for filename in args: buf = open(filename).read() find_obj_defs(buf, objdefs) find_enum_defs(buf, enums) objdefs = sort_obj_defs(objdefs) if separate: methods = file(separate + '.defs', 'w') types = file(separate + '-types.defs', 'w') dw = DefsWriter(methods, prefix=modulename, ns=namespace, verbose=verbose, defsfilter=defsfilter) dw.write_obj_defs(objdefs, types) dw.write_enum_defs(enums, types) print "Wrote %s-types.defs" % separate for filename in args: dw.write_def(filename) print "Wrote %s.defs" % separate else: dw = DefsWriter(prefix=modulename, ns=namespace, verbose=verbose, defsfilter=defsfilter) if onlyenums: dw.write_enum_defs(enums) elif onlyobjdefs: dw.write_obj_defs(objdefs) else: dw.write_obj_defs(objdefs) dw.write_enum_defs(enums) for filename in args: dw.write_def(filename) if __name__ == '__main__': sys.exit(main(sys.argv)) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/mergedefs.py0000755000000000000000000000123111272036630023225 0ustar rootroot#!/usr/bin/env python # -*- Mode: Python; py-indent-offset: 4 -*- import optparse import defsparser parser = optparse.OptionParser( usage="usage: %prog [options] generated-defs old-defs") parser.add_option("-p", "--merge-parameters", help="Merge changes in function/methods parameter lists", action="store_true", dest="parmerge", default=False) (options, args) = parser.parse_args() if len(args) != 2: parser.error("wrong number of arguments") newp = defsparser.DefsParser(args[0]) oldp = defsparser.DefsParser(args[1]) newp.startParsing() oldp.startParsing() newp.merge(oldp, options.parmerge) newp.write_defs() ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/createdefs.py0000755000000000000000000000060511272036630023375 0ustar rootroot#!/usr/bin/env python import sys def main(args): output = args[1] input = args[2:] outfd = open(output, 'w') outfd.write(';; -*- scheme -*-\n') outfd.write(';; THIS FILE IS GENERATED - DO NOT EDIT\n') for filename in input: outfd.write('(include "%s")\n' % filename) outfd.close() return 0 if __name__ == '__main__': sys.exit(main(sys.argv)) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/definitions.py0000644000000000000000000005347311272036627023621 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- import copy import sys def get_valid_scheme_definitions(defs): return [x for x in defs if isinstance(x, tuple) and len(x) >= 2] def unescape(s): s = s.replace('\r\n', '\\r\\n').replace('\t', '\\t') return s.replace('\r', '\\r').replace('\n', '\\n') def make_docstring(lines): return "(char *) " + '\n'.join(['"%s"' % unescape(s) for s in lines]) # New Parameter class, wich emulates a tuple for compatibility reasons class Parameter(object): def __init__(self, ptype, pname, pdflt, pnull, pdir=None): self.ptype = ptype self.pname = pname self.pdflt = pdflt self.pnull = pnull self.pdir = pdir def __len__(self): return 4 def __getitem__(self, i): return (self.ptype, self.pname, self.pdflt, self.pnull)[i] def merge(self, old): if old.pdflt is not None: self.pdflt = old.pdflt if old.pnull is not None: self.pnull = old.pnull # We currently subclass 'str' to make impact on the rest of codegen as # little as possible. Later we can subclass 'object' instead, but # then we must find and adapt all places which expect return types to # be strings. class ReturnType(str): def __new__(cls, *args, **kwds): return str.__new__(cls, *args[:1]) def __init__(self, type_name, optional=False): str.__init__(self) self.optional = optional # Parameter for property based constructors class Property(object): def __init__(self, pname, optional, argname): self.pname = pname self.optional = optional self.argname = argname def __len__(self): return 4 def __getitem__(self, i): return ('', self.pname, self.optional, self.argname)[i] def merge(self, old): if old.optional is not None: self.optional = old.optional if old.argname is not None: self.argname = old.argname class Definition(object): docstring = "NULL" def py_name(self): return '%s.%s' % (self.module, self.name) py_name = property(py_name) def __init__(self, *args): """Create a new defs object of this type. The arguments are the components of the definition""" raise RuntimeError, "this is an abstract class" def merge(self, old): """Merge in customisations from older version of definition""" raise RuntimeError, "this is an abstract class" def write_defs(self, fp=sys.stdout): """write out this definition in defs file format""" raise RuntimeError, "this is an abstract class" def guess_return_value_ownership(self): "return 1 if caller owns return value" if getattr(self, 'is_constructor_of', False): self.caller_owns_return = True elif self.ret in ('char*', 'gchar*', 'string'): self.caller_owns_return = True else: self.caller_owns_return = False class ObjectDef(Definition): def __init__(self, name, *args): self.name = name self.module = None self.parent = None self.c_name = None self.typecode = None self.fields = [] self.implements = [] self.class_init_func = None self.has_new_constructor_api = False for arg in get_valid_scheme_definitions(args): if arg[0] == 'in-module': self.module = arg[1] elif arg[0] == 'docstring': self.docstring = make_docstring(arg[1:]) elif arg[0] == 'parent': self.parent = arg[1] elif arg[0] == 'c-name': self.c_name = arg[1] elif arg[0] == 'gtype-id': self.typecode = arg[1] elif arg[0] == 'fields': for parg in arg[1:]: self.fields.append((parg[0], parg[1])) elif arg[0] == 'implements': self.implements.append(arg[1]) def merge(self, old): # currently the .h parser doesn't try to work out what fields of # an object structure should be public, so we just copy the list # from the old version ... self.fields = old.fields self.implements = old.implements def write_defs(self, fp=sys.stdout): fp.write('(define-object ' + self.name + '\n') if self.module: fp.write(' (in-module "' + self.module + '")\n') if self.parent != (None, None): fp.write(' (parent "' + self.parent + '")\n') for interface in self.implements: fp.write(' (implements "' + interface + '")\n') if self.c_name: fp.write(' (c-name "' + self.c_name + '")\n') if self.typecode: fp.write(' (gtype-id "' + self.typecode + '")\n') if self.fields: fp.write(' (fields\n') for (ftype, fname) in self.fields: fp.write(' \'("' + ftype + '" "' + fname + '")\n') fp.write(' )\n') fp.write(')\n\n') class InterfaceDef(Definition): def __init__(self, name, *args): self.name = name self.module = None self.c_name = None self.typecode = None self.vtable = None self.fields = [] self.interface_info = None for arg in get_valid_scheme_definitions(args): if arg[0] == 'in-module': self.module = arg[1] elif arg[0] == 'docstring': self.docstring = make_docstring(arg[1:]) elif arg[0] == 'c-name': self.c_name = arg[1] elif arg[0] == 'gtype-id': self.typecode = arg[1] elif arg[0] == 'vtable': self.vtable = arg[1] if self.vtable is None: self.vtable = self.c_name + "Iface" def write_defs(self, fp=sys.stdout): fp.write('(define-interface ' + self.name + '\n') if self.module: fp.write(' (in-module "' + self.module + '")\n') if self.c_name: fp.write(' (c-name "' + self.c_name + '")\n') if self.typecode: fp.write(' (gtype-id "' + self.typecode + '")\n') fp.write(')\n\n') class EnumDef(Definition): def __init__(self, name, *args): self.deftype = 'enum' self.name = name self.in_module = None self.c_name = None self.typecode = None self.values = [] for arg in get_valid_scheme_definitions(args): if arg[0] == 'in-module': self.in_module = arg[1] elif arg[0] == 'c-name': self.c_name = arg[1] elif arg[0] == 'gtype-id': self.typecode = arg[1] elif arg[0] == 'values': for varg in arg[1:]: self.values.append((varg[0], varg[1])) def merge(self, old): pass def write_defs(self, fp=sys.stdout): fp.write('(define-' + self.deftype + ' ' + self.name + '\n') if self.in_module: fp.write(' (in-module "' + self.in_module + '")\n') fp.write(' (c-name "' + self.c_name + '")\n') fp.write(' (gtype-id "' + self.typecode + '")\n') if self.values: fp.write(' (values\n') for name, val in self.values: fp.write(' \'("' + name + '" "' + val + '")\n') fp.write(' )\n') fp.write(')\n\n') class FlagsDef(EnumDef): def __init__(self, *args): apply(EnumDef.__init__, (self,) + args) self.deftype = 'flags' class BoxedDef(Definition): def __init__(self, name, *args): self.name = name self.module = None self.c_name = None self.typecode = None self.copy = None self.release = None self.fields = [] for arg in get_valid_scheme_definitions(args): if arg[0] == 'in-module': self.module = arg[1] elif arg[0] == 'c-name': self.c_name = arg[1] elif arg[0] == 'gtype-id': self.typecode = arg[1] elif arg[0] == 'copy-func': self.copy = arg[1] elif arg[0] == 'release-func': self.release = arg[1] elif arg[0] == 'fields': for parg in arg[1:]: self.fields.append((parg[0], parg[1])) def merge(self, old): # currently the .h parser doesn't try to work out what fields of # an object structure should be public, so we just copy the list # from the old version ... self.fields = old.fields def write_defs(self, fp=sys.stdout): fp.write('(define-boxed ' + self.name + '\n') if self.module: fp.write(' (in-module "' + self.module + '")\n') if self.c_name: fp.write(' (c-name "' + self.c_name + '")\n') if self.typecode: fp.write(' (gtype-id "' + self.typecode + '")\n') if self.copy: fp.write(' (copy-func "' + self.copy + '")\n') if self.release: fp.write(' (release-func "' + self.release + '")\n') if self.fields: fp.write(' (fields\n') for (ftype, fname) in self.fields: fp.write(' \'("' + ftype + '" "' + fname + '")\n') fp.write(' )\n') fp.write(')\n\n') class PointerDef(Definition): def __init__(self, name, *args): self.name = name self.module = None self.c_name = None self.typecode = None self.fields = [] for arg in get_valid_scheme_definitions(args): if arg[0] == 'in-module': self.module = arg[1] elif arg[0] == 'c-name': self.c_name = arg[1] elif arg[0] == 'gtype-id': self.typecode = arg[1] elif arg[0] == 'fields': for parg in arg[1:]: self.fields.append((parg[0], parg[1])) def merge(self, old): # currently the .h parser doesn't try to work out what fields of # an object structure should be public, so we just copy the list # from the old version ... self.fields = old.fields def write_defs(self, fp=sys.stdout): fp.write('(define-pointer ' + self.name + '\n') if self.module: fp.write(' (in-module "' + self.module + '")\n') if self.c_name: fp.write(' (c-name "' + self.c_name + '")\n') if self.typecode: fp.write(' (gtype-id "' + self.typecode + '")\n') if self.fields: fp.write(' (fields\n') for (ftype, fname) in self.fields: fp.write(' \'("' + ftype + '" "' + fname + '")\n') fp.write(' )\n') fp.write(')\n\n') class MethodDefBase(Definition): def __init__(self, name, *args): dump = 0 self.name = name self.ret = None self.caller_owns_return = None self.unblock_threads = None self.c_name = None self.typecode = None self.of_object = None self.params = [] # of form (type, name, default, nullok) self.varargs = 0 self.deprecated = None for arg in get_valid_scheme_definitions(args): if arg[0] == 'of-object': self.of_object = arg[1] elif arg[0] == 'docstring': self.docstring = make_docstring(arg[1:]) elif arg[0] == 'c-name': self.c_name = arg[1] elif arg[0] == 'gtype-id': self.typecode = arg[1] elif arg[0] == 'return-type': type_name = arg[1] optional = False for prop in arg[2:]: if prop[0] == 'optional': optional = True self.ret = ReturnType(type_name, optional) elif arg[0] == 'caller-owns-return': self.caller_owns_return = arg[1] in ('t', '#t') elif arg[0] == 'unblock-threads': self.unblock_threads = arg[1] in ('t', '#t') elif arg[0] == 'parameters': for parg in arg[1:]: ptype = parg[0] pname = parg[1] pdflt = None pnull = 0 pdir = None for farg in parg[2:]: assert isinstance(farg, tuple) if farg[0] == 'default': pdflt = farg[1] elif farg[0] == 'null-ok': pnull = 1 elif farg[0] == 'direction': pdir = farg[1] self.params.append(Parameter(ptype, pname, pdflt, pnull, pdir)) elif arg[0] == 'varargs': self.varargs = arg[1] in ('t', '#t') elif arg[0] == 'deprecated': self.deprecated = arg[1] else: sys.stderr.write("Warning: %s argument unsupported.\n" % (arg[0])) dump = 1 if dump: self.write_defs(sys.stderr) if self.caller_owns_return is None and self.ret is not None: self.guess_return_value_ownership() def merge(self, old, parmerge): self.caller_owns_return = old.caller_owns_return self.varargs = old.varargs # here we merge extra parameter flags accross to the new object. if not parmerge: self.params = copy.deepcopy(old.params) return for i in range(len(self.params)): ptype, pname, pdflt, pnull = self.params[i] for p2 in old.params: if p2[1] == pname: self.params[i] = (ptype, pname, p2[2], p2[3]) break def _write_defs(self, fp=sys.stdout): if self.of_object != (None, None): fp.write(' (of-object "' + self.of_object + '")\n') if self.c_name: fp.write(' (c-name "' + self.c_name + '")\n') if self.typecode: fp.write(' (gtype-id "' + self.typecode + '")\n') if self.caller_owns_return: fp.write(' (caller-owns-return #t)\n') if self.unblock_threads: fp.write(' (unblock_threads #t)\n') if self.ret: fp.write(' (return-type "' + self.ret + '")\n') if self.deprecated: fp.write(' (deprecated "' + self.deprecated + '")\n') if self.params: fp.write(' (parameters\n') for ptype, pname, pdflt, pnull in self.params: fp.write(' \'("' + ptype + '" "' + pname +'"') if pdflt: fp.write(' (default "' + pdflt + '")') if pnull: fp.write(' (null-ok)') fp.write(')\n') fp.write(' )\n') if self.varargs: fp.write(' (varargs #t)\n') fp.write(')\n\n') class MethodDef(MethodDefBase): def __init__(self, name, *args): MethodDefBase.__init__(self, name, *args) for item in ('c_name', 'of_object'): if self.__dict__[item] == None: self.write_defs(sys.stderr) raise RuntimeError, "definition missing required %s" % (item,) def write_defs(self, fp=sys.stdout): fp.write('(define-method ' + self.name + '\n') self._write_defs(fp) class VirtualDef(MethodDefBase): def write_defs(self, fp=sys.stdout): fp.write('(define-virtual ' + self.name + '\n') self._write_defs(fp) class FunctionDef(Definition): def __init__(self, name, *args): dump = 0 self.name = name self.in_module = None self.is_constructor_of = None self.ret = None self.caller_owns_return = None self.unblock_threads = None self.c_name = None self.typecode = None self.params = [] # of form (type, name, default, nullok) self.varargs = 0 self.deprecated = None for arg in get_valid_scheme_definitions(args): if arg[0] == 'in-module': self.in_module = arg[1] elif arg[0] == 'docstring': self.docstring = make_docstring(arg[1:]) elif arg[0] == 'is-constructor-of': self.is_constructor_of = arg[1] elif arg[0] == 'c-name': self.c_name = arg[1] elif arg[0] == 'gtype-id': self.typecode = arg[1] elif arg[0] == 'return-type': self.ret = arg[1] elif arg[0] == 'caller-owns-return': self.caller_owns_return = arg[1] in ('t', '#t') elif arg[0] == 'unblock-threads': self.unblock_threads = arg[1] in ('t', '#t') elif arg[0] == 'parameters': for parg in arg[1:]: ptype = parg[0] pname = parg[1] pdflt = None pnull = 0 for farg in parg[2:]: if farg[0] == 'default': pdflt = farg[1] elif farg[0] == 'null-ok': pnull = 1 self.params.append(Parameter(ptype, pname, pdflt, pnull)) elif arg[0] == 'properties': if self.is_constructor_of is None: print >> sys.stderr, "Warning: (properties ...) "\ "is only valid for constructors" for prop in arg[1:]: pname = prop[0] optional = False argname = pname for farg in prop[1:]: if farg[0] == 'optional': optional = True elif farg[0] == 'argname': argname = farg[1] self.params.append(Property(pname, optional, argname)) elif arg[0] == 'varargs': self.varargs = arg[1] in ('t', '#t') elif arg[0] == 'deprecated': self.deprecated = arg[1] else: sys.stderr.write("Warning: %s argument unsupported\n" % (arg[0],)) dump = 1 if dump: self.write_defs(sys.stderr) if self.caller_owns_return is None and self.ret is not None: self.guess_return_value_ownership() for item in ('c_name',): if self.__dict__[item] == None: self.write_defs(sys.stderr) raise RuntimeError, "definition missing required %s" % (item,) _method_write_defs = MethodDef.__dict__['write_defs'] def merge(self, old, parmerge): self.caller_owns_return = old.caller_owns_return self.varargs = old.varargs if not parmerge: self.params = copy.deepcopy(old.params) return # here we merge extra parameter flags accross to the new object. def merge_param(param): for old_param in old.params: if old_param.pname == param.pname: if isinstance(old_param, Property): # h2def never scans Property's, therefore if # we have one it was manually written, so we # keep it. return copy.deepcopy(old_param) else: param.merge(old_param) return param raise RuntimeError, "could not find %s in old_parameters %r" % ( param.pname, [p.pname for p in old.params]) try: self.params = map(merge_param, self.params) except RuntimeError: # parameter names changed and we can't find a match; it's # safer to keep the old parameter list untouched. self.params = copy.deepcopy(old.params) if not self.is_constructor_of: try: self.is_constructor_of = old.is_constructor_of except AttributeError: pass if isinstance(old, MethodDef): self.name = old.name # transmogrify from function into method ... self.write_defs = self._method_write_defs self.of_object = old.of_object del self.params[0] def write_defs(self, fp=sys.stdout): fp.write('(define-function ' + self.name + '\n') if self.in_module: fp.write(' (in-module "' + self.in_module + '")\n') if self.is_constructor_of: fp.write(' (is-constructor-of "' + self.is_constructor_of +'")\n') if self.c_name: fp.write(' (c-name "' + self.c_name + '")\n') if self.typecode: fp.write(' (gtype-id "' + self.typecode + '")\n') if self.caller_owns_return: fp.write(' (caller-owns-return #t)\n') if self.unblock_threads: fp.write(' (unblock-threads #t)\n') if self.ret: fp.write(' (return-type "' + self.ret + '")\n') if self.deprecated: fp.write(' (deprecated "' + self.deprecated + '")\n') if self.params: if isinstance(self.params[0], Parameter): fp.write(' (parameters\n') for ptype, pname, pdflt, pnull in self.params: fp.write(' \'("' + ptype + '" "' + pname +'"') if pdflt: fp.write(' (default "' + pdflt + '")') if pnull: fp.write(' (null-ok)') fp.write(')\n') fp.write(' )\n') elif isinstance(self.params[0], Property): fp.write(' (properties\n') for prop in self.params: fp.write(' \'("' + prop.pname +'"') if prop.optional: fp.write(' (optional)') fp.write(')\n') fp.write(' )\n') else: assert False, "strange parameter list %r" % self.params[0] if self.varargs: fp.write(' (varargs #t)\n') fp.write(')\n\n') ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/scmexpr.py0000755000000000000000000001144311272036630022753 0ustar rootroot#!/usr/bin/env python # -*- Mode: Python; py-indent-offset: 4 -*- from __future__ import generators import string from cStringIO import StringIO class error(Exception): def __init__(self, filename, lineno, msg): Exception.__init__(self, msg) self.filename = filename self.lineno = lineno self.msg = msg def __str__(self): return '%s:%d: error: %s' % (self.filename, self.lineno, self.msg) trans = [' '] * 256 for i in range(256): if chr(i) in string.letters + string.digits + '_': trans[i] = chr(i) else: trans[i] = '_' trans = string.join(trans, '') def parse(filename): if isinstance(filename, str): fp = open(filename, 'r') else: # if not string, assume it is some kind of iterator fp = filename filename = getattr(fp, 'name', '') whitespace = ' \t\n\r\x0b\x0c' nonsymbol = whitespace + '();\'"' stack = [] openlines = [] lineno = 0 for line in fp: pos = 0 lineno += 1 while pos < len(line): if line[pos] in whitespace: # ignore whitespace pass elif line[pos] == ';': # comment break elif line[pos:pos+2] == "'(": pass # the open parenthesis will be handled next iteration elif line[pos] == '(': stack.append(()) openlines.append(lineno) elif line[pos] == ')': if len(stack) == 0: raise error(filename, lineno, 'close parenthesis found when none open') closed = stack[-1] del stack[-1] del openlines[-1] if stack: stack[-1] += (closed,) else: yield closed elif line[pos] == '"': # quoted string if not stack: raise error(filename, lineno, 'string found outside of s-expression') endpos = pos + 1 chars = [] while endpos < len(line): if endpos+1 < len(line) and line[endpos] == '\\': endpos += 1 if line[endpos] == 'n': chars.append('\n') elif line[endpos] == 'r': chars.append('\r') elif line[endpos] == 't': chars.append('\t') else: chars.append('\\') chars.append(line[endpos]) elif line[endpos] == '"': break else: chars.append(line[endpos]) endpos += 1 if endpos >= len(line): raise error(filename, lineno, "unclosed quoted string") pos = endpos stack[-1] += (''.join(chars),) else: # symbol/number if not stack: raise error(filename, lineno, 'identifier found outside of s-expression') endpos = pos while endpos < len(line) and line[endpos] not in nonsymbol: endpos += 1 symbol = line[pos:endpos] pos = max(pos, endpos-1) try: symbol = int(symbol) except ValueError: try: symbol = float(symbol) except ValueError: pass stack[-1] += (symbol,) pos += 1 if len(stack) != 0: msg = '%d unclosed parentheses found at end of ' \ 'file (opened on line(s) %s)' % (len(stack), ', '.join(map(str, openlines))) raise error(filename, lineno, msg) class Parser: def __init__(self, filename): """Argument is either a string, a parse tree, or file object""" self.filename = filename def startParsing(self, filename=None): statements = parse(filename or self.filename) for statement in statements: self.handle(statement) def handle(self, tup): cmd = string.translate(tup[0], trans) if hasattr(self, cmd): getattr(self, cmd)(*tup[1:]) else: self.unknown(tup) def unknown(self, tup): pass _testString = """; a scheme file (define-func gdk_font_load ; a comment at end of line GdkFont ((string name))) (define-boxed GdkEvent gdk_event_copy gdk_event_free "sizeof(GdkEvent)") """ if __name__ == '__main__': import sys if sys.argv[1:]: fp = open(sys.argv[1]) else: fp = StringIO(_testString) statements = parse(fp) for s in statements: print `s` ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/missingdefs.py0000755000000000000000000000054611272036630023607 0ustar rootroot#!/usr/bin/env python # -*- Mode: Python; py-indent-offset: 4 -*- import sys import defsparser if len(sys.argv) < 3: sys.stderr.write("Usage: missingdefs.py generated-defs old-defs\n") sys.exit(1) newp = defsparser.DefsParser(sys.argv[1]) oldp = defsparser.DefsParser(sys.argv[2]) newp.startParsing() oldp.startParsing() newp.printMissing(oldp) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/defsconvert.py0000755000000000000000000001210111272036630023604 0ustar rootroot#! /usr/bin/env python import sys import string, re # ------------------ Create typecodes from typenames --------- _upperstr_pat1 = re.compile(r'([^A-Z])([A-Z])') _upperstr_pat2 = re.compile(r'([A-Z][A-Z])([A-Z][0-9a-z])') _upperstr_pat3 = re.compile(r'^([A-Z])([A-Z])') def to_upper_str(name): """Converts a typename to the equivalent upercase and underscores name. This is used to form the type conversion macros and enum/flag name variables""" name = _upperstr_pat1.sub(r'\1_\2', name) name = _upperstr_pat2.sub(r'\1_\2', name) name = _upperstr_pat3.sub(r'\1_\2', name, count=1) return string.upper(name) def typecode(typename): """create a typecode (eg. GTK_TYPE_WIDGET) from a typename""" return string.replace(to_upper_str(typename), '_', '_TYPE_', 1) STATE_START = 0 STATE_OBJECT = 1 STATE_INTERFACE = 2 STATE_BOXED = 3 STATE_ENUM = 4 STATE_FLAGS = 5 STATE_METHOD = 6 STATE_FUNCTION = 7 def convert(infp=sys.stdin, outfp=sys.stdout): state = STATE_START seen_params = 0 line = infp.readline() while line: if line[:8] == '(object ': state = STATE_OBJECT seen_params = 0 outfp.write('(define-object ' + line[8:]) elif line[:11] == '(interface ': state = STATE_INTERFACE seen_params = 0 outfp.write('(define-interface ' + line[11:]) elif line[:7] == '(boxed ': state = STATE_BOXED seen_params = 0 outfp.write('(define-boxed ' + line[7:]) elif line[:6] == '(enum ': state = STATE_ENUM seen_params = 0 outfp.write('(define-enum ' + line[6:]) elif line[:7] == '(flags ': state = STATE_FLAGS seen_params = 0 outfp.write('(define-flags ' + line[7:]) elif line[:8] == '(method ': state = STATE_METHOD seen_params = 0 outfp.write('(define-method ' + line[8:]) elif line[:10] == '(function ': state = STATE_FUNCTION seen_params = 0 outfp.write('(define-function ' + line[10:]) elif line[:13] == ' (in-module ': outfp.write(re.sub(r'^(\s+\(in-module\s+)(\w+)(.*)$', r'\1"\2"\3', line)) elif line[:10] == ' (parent ': outfp.write(re.sub(r'^(\s+\(parent\s+)(\w+)(\s+\((\w+)\))?(.*)$', r'\1"\4\2"\5', line)) elif line[:14] == ' (implements ': outfp.write(re.sub(r'^(\s+\(implements\s+)([^\s]+)(\s*\))$', r'\1"\2"\3', line)) elif line[:13] == ' (of-object ': outfp.write(re.sub(r'^(\s+\(of-object\s+)(\w+)(\s+\((\w+)\))?(.*)$', r'\1"\4\2"\5', line)) elif line[:10] == ' (c-name ': outfp.write(re.sub(r'^(\s+\(c-name\s+)([^\s]+)(\s*\))$', r'\1"\2"\3', line)) if state in (STATE_OBJECT, STATE_INTERFACE, STATE_BOXED, STATE_ENUM, STATE_FLAGS): c_name = re.match(r'^\s+\(c-name\s+([^\s]+)\s*\)$', line).group(1) outfp.write(' (gtype-id "%s")\n' % typecode(c_name)) elif line[:15] == ' (return-type ': outfp.write(re.sub(r'^(\s+\(return-type\s+)([^\s]+)(\s*\))$', r'\1"\2"\3', line)) elif line[:13] == ' (copy-func ': outfp.write(re.sub(r'^(\s+\(copy-func\s+)(\w+)(.*)$', r'\1"\2"\3', line)) elif line[:16] == ' (release-func ': outfp.write(re.sub(r'^(\s+\(release-func\s+)(\w+)(.*)$', r'\1"\2"\3', line)) elif line[:9] == ' (field ': if not seen_params: outfp.write(' (fields\n') seen_params = 1 outfp.write(re.sub(r'^\s+\(field\s+\(type-and-name\s+([^\s]+)\s+([^\s]+)\s*\)\s*\)$', ' \'("\\1" "\\2")', line)) elif line[:9] == ' (value ': if not seen_params: outfp.write(' (values\n') seen_params = 1 outfp.write(re.sub(r'^\s+\(value\s+\(name\s+([^\s]+)\)\s+\(c-name\s+([^\s]+)\s*\)\s*\)$', ' \'("\\1" "\\2")', line)) elif line[:13] == ' (parameter ': if not seen_params: outfp.write(' (parameters\n') seen_params = 1 outfp.write(re.sub(r'^\s+\(parameter\s+\(type-and-name\s+([^\s]+)\s+([^\s]+)\s*\)(\s*.*)\)$', ' \'("\\1" "\\2"\\3)', line)) elif line[:11] == ' (varargs ': if seen_params: outfp.write(' )\n') seen_params = 0 outfp.write(' (varargs #t)\n') elif line[0] == ')': if seen_params: outfp.write(' )\n') seen_params = 0 state = STATE_START outfp.write(line) else: outfp.write(line) line = infp.readline() if __name__ == '__main__': convert() ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/mkskel.py0000755000000000000000000000536311272036630022564 0ustar rootroot#!/usr/bin/env python # -*- Mode: Python; py-indent-offset: 4 -*- import sys, os, getopt module_init_template = \ '/* -*- Mode: C; c-basic-offset: 4 -*- */\n' + \ '#ifdef HAVE_CONFIG_H\n' + \ '# include "config.h"\n' + \ '#endif\n' + \ '#include \n' + \ '#include \n' + \ '\n' + \ '/* include any extra headers needed here */\n' + \ '\n' + \ 'void %(prefix)s_register_classes(PyObject *d);\n' + \ 'extern PyMethodDef %(prefix)s_functions[];\n' + \ '\n' + \ 'DL_EXPORT(void)\n' + \ 'init%(module)s(void)\n' + \ '{\n' + \ ' PyObject *m, *d;\n' + \ '\n' + \ ' /* perform any initialisation required by the library here */\n' + \ '\n' + \ ' m = Py_InitModule("%(module)s", %(prefix)s_functions);\n' + \ ' d = PyModule_GetDict(m);\n' + \ '\n' + \ ' init_pygtk();\n' + \ '\n' + \ ' %(prefix)s_register_classes(d);\n' + \ '\n' + \ ' /* add anything else to the module dictionary (such as constants) */\n' +\ '\n' + \ ' if (PyErr_Occurred())\n' + \ ' Py_FatalError("could not initialise module %(module)s");\n' + \ '}\n' override_template = \ '/* -*- Mode: C; c-basic-offset: 4 -*- */\n' + \ '%%%%\n' + \ 'headers\n' + \ '/* include any required headers here */\n' + \ '%%%%\n' + \ 'init\n' + \ ' /* include any code here that needs to be executed before the\n' + \ ' * extension classes get initialised */\n' + \ '%%%%\n' + \ '\n' + \ '/* you should add appropriate ignore, ignore-glob and\n' + \ ' * override sections here */\n' def open_with_backup(file): if os.path.exists(file): try: os.rename(file, file+'~') except OSError: # fail silently if we can't make a backup pass return open(file, 'w') def write_skels(fileprefix, prefix, module): fp = open_with_backup(fileprefix+'module.c') fp.write(module_init_template % { 'prefix': prefix, 'module': module }) fp.close() fp = open_with_backup(fileprefix+'.override') fp.write(override_template % { 'prefix': prefix, 'module': module }) fp.close() if __name__ == '__main__': opts, args = getopt.getopt(sys.argv[1:], 'f:p:m:h', ['file-prefix=', 'prefix=', 'module=', 'help']) fileprefix = None prefix = None module = None for opt, arg in opts: if opt in ('-f', '--file-prefix'): fileprefix = arg elif opt in ('-p', '--prefix'): prefix = arg elif opt in ('-m', '--module'): module = arg elif opt in ('-h', '--help'): print 'usage: mkskel.py -f fileprefix -p prefix -m module' sys.exit(0) if not fileprefix or not prefix or not module: print 'usage: mkskel.py -f fileprefix -p prefix -m module' sys.exit(1) write_skels(fileprefix, prefix, module) ./pygobject-2.20.0-i686/usr/share/pygobject/2.0/codegen/codegen.py0000755000000000000000000021001411272036630022671 0ustar rootroot#! /usr/bin/env python import getopt import keyword import os import string import sys import argtypes import definitions import defsparser import override import reversewrapper import warnings class Coverage(object): def __init__(self, name): self.name = name self.wrapped = 0 self.not_wrapped = 0 def declare_wrapped(self): self.wrapped += 1 def declare_not_wrapped(self): self.not_wrapped += 1 def printstats(self): total = self.wrapped + self.not_wrapped fd = sys.stderr if total: fd.write("***INFO*** The coverage of %s is %.2f%% (%i/%i)\n" % (self.name, float(self.wrapped*100)/total, self.wrapped, total)) else: fd.write("***INFO*** There are no declared %s.\n" % self.name) functions_coverage = Coverage("global functions") methods_coverage = Coverage("methods") vproxies_coverage = Coverage("virtual proxies") vaccessors_coverage = Coverage("virtual accessors") iproxies_coverage = Coverage("interface proxies") def exc_info(): warnings.warn("deprecated", DeprecationWarning, stacklevel=2) #traceback.print_exc() etype, value, tb = sys.exc_info() ret = "" try: sval = str(value) if etype == argtypes.ArgTypeError: ret = "No ArgType for %s" % (sval,) else: ret = sval finally: del etype, value, tb return ret def fixname(name): if keyword.iskeyword(name): return name + '_' return name class FileOutput: '''Simple wrapper for file object, that makes writing #line statements easier.''' # " def __init__(self, fp, filename=None): self.fp = fp self.lineno = 1 if filename: self.filename = filename else: self.filename = self.fp.name # handle writing to the file, and keep track of the line number ... def write(self, str): self.fp.write(str) self.lineno = self.lineno + string.count(str, '\n') def writelines(self, sequence): for line in sequence: self.write(line) def close(self): self.fp.close() def flush(self): self.fp.flush() def setline(self, linenum, filename): '''writes out a #line statement, for use by the C preprocessor.''' # " self.write('#line %d "%s"\n' % (linenum, filename)) def resetline(self): '''resets line numbering to the original file''' self.setline(self.lineno + 1, self.filename) class Wrapper: type_tmpl = ( 'PyTypeObject G_GNUC_INTERNAL Py%(typename)s_Type = {\n' ' PyObject_HEAD_INIT(NULL)\n' ' 0, /* ob_size */\n' ' "%(classname)s", /* tp_name */\n' ' sizeof(%(tp_basicsize)s), /* tp_basicsize */\n' ' 0, /* tp_itemsize */\n' ' /* methods */\n' ' (destructor)%(tp_dealloc)s, /* tp_dealloc */\n' ' (printfunc)0, /* tp_print */\n' ' (getattrfunc)%(tp_getattr)s, /* tp_getattr */\n' ' (setattrfunc)%(tp_setattr)s, /* tp_setattr */\n' ' (cmpfunc)%(tp_compare)s, /* tp_compare */\n' ' (reprfunc)%(tp_repr)s, /* tp_repr */\n' ' (PyNumberMethods*)%(tp_as_number)s, /* tp_as_number */\n' ' (PySequenceMethods*)%(tp_as_sequence)s, /* tp_as_sequence */\n' ' (PyMappingMethods*)%(tp_as_mapping)s, /* tp_as_mapping */\n' ' (hashfunc)%(tp_hash)s, /* tp_hash */\n' ' (ternaryfunc)%(tp_call)s, /* tp_call */\n' ' (reprfunc)%(tp_str)s, /* tp_str */\n' ' (getattrofunc)%(tp_getattro)s, /* tp_getattro */\n' ' (setattrofunc)%(tp_setattro)s, /* tp_setattro */\n' ' (PyBufferProcs*)%(tp_as_buffer)s, /* tp_as_buffer */\n' ' %(tp_flags)s, /* tp_flags */\n' ' %(tp_doc)s, /* Documentation string */\n' ' (traverseproc)%(tp_traverse)s, /* tp_traverse */\n' ' (inquiry)%(tp_clear)s, /* tp_clear */\n' ' (richcmpfunc)%(tp_richcompare)s, /* tp_richcompare */\n' ' %(tp_weaklistoffset)s, /* tp_weaklistoffset */\n' ' (getiterfunc)%(tp_iter)s, /* tp_iter */\n' ' (iternextfunc)%(tp_iternext)s, /* tp_iternext */\n' ' (struct PyMethodDef*)%(tp_methods)s, /* tp_methods */\n' ' (struct PyMemberDef*)0, /* tp_members */\n' ' (struct PyGetSetDef*)%(tp_getset)s, /* tp_getset */\n' ' NULL, /* tp_base */\n' ' NULL, /* tp_dict */\n' ' (descrgetfunc)%(tp_descr_get)s, /* tp_descr_get */\n' ' (descrsetfunc)%(tp_descr_set)s, /* tp_descr_set */\n' ' %(tp_dictoffset)s, /* tp_dictoffset */\n' ' (initproc)%(tp_init)s, /* tp_init */\n' ' (allocfunc)%(tp_alloc)s, /* tp_alloc */\n' ' (newfunc)%(tp_new)s, /* tp_new */\n' ' (freefunc)%(tp_free)s, /* tp_free */\n' ' (inquiry)%(tp_is_gc)s /* tp_is_gc */\n' '};\n\n' ) slots_list = [ 'tp_getattr', 'tp_setattr', 'tp_getattro', 'tp_setattro', 'tp_compare', 'tp_repr', 'tp_as_number', 'tp_as_sequence', 'tp_as_mapping', 'tp_hash', 'tp_call', 'tp_str', 'tp_as_buffer', 'tp_richcompare', 'tp_iter', 'tp_iternext', 'tp_descr_get', 'tp_descr_set', 'tp_init', 'tp_alloc', 'tp_new', 'tp_free', 'tp_is_gc', 'tp_traverse', 'tp_clear', 'tp_dealloc', 'tp_flags', 'tp_doc' ] getter_tmpl = ( 'static PyObject *\n' '%(funcname)s(PyObject *self, void *closure)\n' '{\n' '%(varlist)s' ' ret = %(field)s;\n' '%(codeafter)s\n' '}\n\n' ) parse_tmpl = ( ' if (!PyArg_ParseTupleAndKeywords(args, kwargs,' '"%(typecodes)s:%(name)s"%(parselist)s))\n' ' return %(errorreturn)s;\n' ) deprecated_tmpl = ( ' if (PyErr_Warn(PyExc_DeprecationWarning, ' '"%(deprecationmsg)s") < 0)\n' ' return %(errorreturn)s;\n' ) methdef_tmpl = ( ' { "%(name)s", (PyCFunction)%(cname)s, %(flags)s,\n' ' %(docstring)s },\n' ) noconstructor = ( 'static int\n' 'pygobject_no_constructor(PyObject *self, PyObject *args, ' 'PyObject *kwargs)\n' '{\n' ' gchar buf[512];\n' '\n' ' g_snprintf(buf, sizeof(buf), "%s is an abstract widget", ' 'self->ob_type->tp_name);\n' ' PyErr_SetString(PyExc_NotImplementedError, buf);\n' ' return -1;\n' '}\n\n' ) function_tmpl = ( 'static PyObject *\n' '_wrap_%(cname)s(PyObject *self%(extraparams)s)\n' '{\n' '%(varlist)s' '%(parseargs)s' '%(codebefore)s' ' %(begin_allow_threads)s\n' ' %(setreturn)s%(cname)s(%(arglist)s);\n' ' %(end_allow_threads)s\n' '%(codeafter)s\n' '}\n\n' ) virtual_accessor_tmpl = ( 'static PyObject *\n' '_wrap_%(cname)s(PyObject *cls%(extraparams)s)\n' '{\n' ' gpointer klass;\n' '%(varlist)s' '%(parseargs)s' '%(codebefore)s' ' klass = g_type_class_ref(pyg_type_from_object(cls));\n' ' if (%(class_cast_macro)s(klass)->%(virtual)s)\n' ' %(setreturn)s%(class_cast_macro)s(klass)->' '%(virtual)s(%(arglist)s);\n' ' else {\n' ' PyErr_SetString(PyExc_NotImplementedError, ' '"virtual method %(name)s not implemented");\n' ' g_type_class_unref(klass);\n' ' return NULL;\n' ' }\n' ' g_type_class_unref(klass);\n' '%(codeafter)s\n' '}\n\n' ) # template for method calls constructor_tmpl = None method_tmpl = None def __init__(self, parser, objinfo, overrides, fp=FileOutput(sys.stdout)): self.parser = parser self.objinfo = objinfo self.overrides = overrides self.fp = fp def get_lower_name(self): return string.lower(string.replace(self.objinfo.typecode, '_TYPE_', '_', 1)) def get_field_accessor(self, fieldname): raise NotImplementedError def get_initial_class_substdict(self): return {} def get_initial_constructor_substdict(self, constructor): return { 'name': '%s.__init__' % self.objinfo.py_name, 'errorreturn': '-1' } def get_initial_method_substdict(self, method): substdict = { 'name': '%s.%s' % (self.objinfo.py_name, method.name) } if method.unblock_threads: substdict['begin_allow_threads'] = 'pyg_begin_allow_threads;' substdict['end_allow_threads'] = 'pyg_end_allow_threads;' else: substdict['begin_allow_threads'] = '' substdict['end_allow_threads'] = '' return substdict def write_class(self): if self.overrides.is_type_ignored(self.objinfo.c_name): return self.fp.write('\n/* ----------- %s ----------- */\n\n' % self.objinfo.c_name) substdict = self.get_initial_class_substdict() if not substdict.has_key('tp_flags'): substdict['tp_flags'] = 'Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE' substdict['typename'] = self.objinfo.c_name if self.overrides.modulename: substdict['classname'] = '%s.%s' % (self.overrides.modulename, self.objinfo.name) else: substdict['classname'] = self.objinfo.name substdict['tp_doc'] = self.objinfo.docstring # Maybe this could be done in a nicer way, but I'll leave it as it is # for now: -- Johan if not self.overrides.slot_is_overriden('%s.tp_init' % self.objinfo.c_name): substdict['tp_init'] = self.write_constructor() substdict['tp_methods'] = self.write_methods() substdict['tp_getset'] = self.write_getsets() # handle slots ... for slot in self.slots_list: slotname = '%s.%s' % (self.objinfo.c_name, slot) slotfunc = '_wrap_%s_%s' % (self.get_lower_name(), slot) if slot[:6] == 'tp_as_': slotfunc = '&' + slotfunc if self.overrides.slot_is_overriden(slotname): data = self.overrides.slot_override(slotname) self.write_function(slotname, data) substdict[slot] = slotfunc else: if not substdict.has_key(slot): substdict[slot] = '0' self.fp.write(self.type_tmpl % substdict) self.write_virtuals() def write_function_wrapper(self, function_obj, template, handle_return=0, is_method=0, kwargs_needed=0, substdict=None): '''This function is the guts of all functions that generate wrappers for functions, methods and constructors.''' if not substdict: substdict = {} info = argtypes.WrapperInfo() substdict.setdefault('errorreturn', 'NULL') # for methods, we want the leading comma if is_method: info.arglist.append('') if function_obj.varargs: raise argtypes.ArgTypeNotFoundError("varargs functions not supported") for param in function_obj.params: if param.pdflt != None and '|' not in info.parsestr: info.add_parselist('|', [], []) handler = argtypes.matcher.get(param.ptype) handler.write_param(param.ptype, param.pname, param.pdflt, param.pnull, info) substdict['setreturn'] = '' if handle_return: if function_obj.ret not in ('none', None): substdict['setreturn'] = 'ret = ' handler = argtypes.matcher.get(function_obj.ret) handler.write_return(function_obj.ret, function_obj.caller_owns_return, info) if function_obj.deprecated != None: deprecated = self.deprecated_tmpl % { 'deprecationmsg': function_obj.deprecated, 'errorreturn': substdict['errorreturn'] } else: deprecated = '' # if name isn't set, set it to function_obj.name substdict.setdefault('name', function_obj.name) if function_obj.unblock_threads: substdict['begin_allow_threads'] = 'pyg_begin_allow_threads;' substdict['end_allow_threads'] = 'pyg_end_allow_threads;' else: substdict['begin_allow_threads'] = '' substdict['end_allow_threads'] = '' if self.objinfo: substdict['typename'] = self.objinfo.c_name substdict.setdefault('cname', function_obj.c_name) substdict['varlist'] = info.get_varlist() substdict['typecodes'] = info.parsestr substdict['parselist'] = info.get_parselist() substdict['arglist'] = info.get_arglist() substdict['codebefore'] = deprecated + ( string.replace(info.get_codebefore(), 'return NULL', 'return ' + substdict['errorreturn']) ) substdict['codeafter'] = ( string.replace(info.get_codeafter(), 'return NULL', 'return ' + substdict['errorreturn'])) if info.parsestr or kwargs_needed: substdict['parseargs'] = self.parse_tmpl % substdict substdict['extraparams'] = ', PyObject *args, PyObject *kwargs' flags = 'METH_VARARGS|METH_KEYWORDS' # prepend the keyword list to the variable list substdict['varlist'] = info.get_kwlist() + substdict['varlist'] else: substdict['parseargs'] = '' substdict['extraparams'] = '' flags = 'METH_NOARGS' return template % substdict, flags def write_constructor(self): initfunc = '0' constructor = self.parser.find_constructor(self.objinfo,self.overrides) if not constructor: return self.write_default_constructor() funcname = constructor.c_name try: if self.overrides.is_overriden(funcname): data = self.overrides.override(funcname) self.write_function(funcname, data) self.objinfo.has_new_constructor_api = ( self.objinfo.typecode in self.overrides.newstyle_constructors) else: # ok, a hack to determine if we should use # new-style constructores :P property_based = getattr(self, 'write_property_based_constructor', None) if property_based: if (len(constructor.params) == 0 or isinstance(constructor.params[0], definitions.Property)): # write_property_based_constructor is only # implemented in GObjectWrapper return self.write_property_based_constructor( constructor) else: sys.stderr.write( "Warning: generating old-style constructor for:" + constructor.c_name + '\n') # write constructor from template ... code = self.write_function_wrapper(constructor, self.constructor_tmpl, handle_return=0, is_method=0, kwargs_needed=1, substdict=self.get_initial_constructor_substdict( constructor))[0] self.fp.write(code) initfunc = '_wrap_' + funcname except argtypes.ArgTypeError, ex: sys.stderr.write('Could not write constructor for %s: %s\n' % (self.objinfo.c_name, str(ex))) initfunc = self.write_noconstructor() return initfunc def write_noconstructor(self): # this is a hack ... if not hasattr(self.overrides, 'no_constructor_written'): self.fp.write(self.noconstructor) self.overrides.no_constructor_written = 1 initfunc = 'pygobject_no_constructor' return initfunc def write_default_constructor(self): return self.write_noconstructor() def get_methflags(self, funcname): if self.overrides.wants_kwargs(funcname): flags = 'METH_VARARGS|METH_KEYWORDS' elif self.overrides.wants_noargs(funcname): flags = 'METH_NOARGS' elif self.overrides.wants_onearg(funcname): flags = 'METH_O' else: flags = 'METH_VARARGS' if self.overrides.is_staticmethod(funcname): flags += '|METH_STATIC' elif self.overrides.is_classmethod(funcname): flags += '|METH_CLASS' return flags def write_function(self, funcname, data): lineno, filename = self.overrides.getstartline(funcname) self.fp.setline(lineno, filename) self.fp.write(data) self.fp.resetline() self.fp.write('\n\n') def _get_class_virtual_substdict(self, meth, cname, parent): substdict = self.get_initial_method_substdict(meth) substdict['virtual'] = meth.name substdict['cname'] = cname substdict['class_cast_macro'] = parent.typecode.replace( '_TYPE_', '_', 1) + "_CLASS" substdict['typecode'] = self.objinfo.typecode substdict['cast'] = string.replace(parent.typecode, '_TYPE_', '_', 1) return substdict def write_methods(self): methods = [] klass = self.objinfo.c_name # First, get methods from the defs files for meth in self.parser.find_methods(self.objinfo): method_name = meth.c_name if self.overrides.is_ignored(method_name): continue try: if self.overrides.is_overriden(method_name): if not self.overrides.is_already_included(method_name): data = self.overrides.override(method_name) self.write_function(method_name, data) methflags = self.get_methflags(method_name) else: # write constructor from template ... code, methflags = self.write_function_wrapper(meth, self.method_tmpl, handle_return=1, is_method=1, substdict=self.get_initial_method_substdict(meth)) self.fp.write(code) methods.append(self.methdef_tmpl % { 'name': fixname(meth.name), 'cname': '_wrap_' + method_name, 'flags': methflags, 'docstring': meth.docstring }) methods_coverage.declare_wrapped() except argtypes.ArgTypeError, ex: methods_coverage.declare_not_wrapped() sys.stderr.write('Could not write method %s.%s: %s\n' % (klass, meth.name, str(ex))) # Now try to see if there are any defined in the override for method_name in self.overrides.get_defines_for(klass): c_name = override.class2cname(klass, method_name) if self.overrides.is_already_included(method_name): continue try: data = self.overrides.define(klass, method_name) self.write_function(method_name, data) methflags = self.get_methflags(method_name) methods.append(self.methdef_tmpl % { 'name': method_name, 'cname': '_wrap_' + c_name, 'flags': methflags, 'docstring': 'NULL' }) methods_coverage.declare_wrapped() except argtypes.ArgTypeError, ex: methods_coverage.declare_not_wrapped() sys.stderr.write('Could not write method %s.%s: %s\n' % (klass, method_name, str(ex))) # Add GObject virtual method accessors, for chaining to parent # virtuals from subclasses methods += self.write_virtual_accessors() if methods: methoddefs = '_Py%s_methods' % self.objinfo.c_name # write the PyMethodDef structure methods.append(' { NULL, NULL, 0, NULL }\n') self.fp.write('static const PyMethodDef %s[] = {\n' % methoddefs) self.fp.write(string.join(methods, '')) self.fp.write('};\n\n') else: methoddefs = 'NULL' return methoddefs def write_virtual_accessors(self): klass = self.objinfo.c_name methods = [] for meth in self.parser.find_virtuals(self.objinfo): method_name = self.objinfo.c_name + "__do_" + meth.name if self.overrides.is_ignored(method_name): continue try: if self.overrides.is_overriden(method_name): if not self.overrides.is_already_included(method_name): data = self.overrides.override(method_name) self.write_function(method_name, data) methflags = self.get_methflags(method_name) else: # temporarily add a 'self' parameter as first argument meth.params.insert(0, definitions.Parameter( ptype=(self.objinfo.c_name + '*'), pname='self', pdflt=None, pnull=None)) try: # write method from template ... code, methflags = self.write_function_wrapper( meth, self.virtual_accessor_tmpl, handle_return=True, is_method=False, substdict=self._get_class_virtual_substdict( meth, method_name, self.objinfo)) self.fp.write(code) finally: del meth.params[0] methods.append(self.methdef_tmpl % { 'name': "do_" + fixname(meth.name), 'cname': '_wrap_' + method_name, 'flags': methflags + '|METH_CLASS', 'docstring': 'NULL'}) vaccessors_coverage.declare_wrapped() except argtypes.ArgTypeError, ex: vaccessors_coverage.declare_not_wrapped() sys.stderr.write( 'Could not write virtual accessor method %s.%s: %s\n' % (klass, meth.name, str(ex))) return methods def write_virtuals(self): ''' Write _wrap_FooBar__proxy_do_zbr() reverse wrapers for GObject virtuals ''' klass = self.objinfo.c_name virtuals = [] for meth in self.parser.find_virtuals(self.objinfo): method_name = self.objinfo.c_name + "__proxy_do_" + meth.name if self.overrides.is_ignored(method_name): continue try: if self.overrides.is_overriden(method_name): if not self.overrides.is_already_included(method_name): data = self.overrides.override(method_name) self.write_function(method_name, data) else: # write virtual proxy ... ret, props = argtypes.matcher.get_reverse_ret(meth.ret) wrapper = reversewrapper.ReverseWrapper( '_wrap_' + method_name, is_static=True) wrapper.set_return_type(ret(wrapper, **props)) wrapper.add_parameter(reversewrapper.PyGObjectMethodParam( wrapper, "self", method_name="do_" + meth.name, c_type=(klass + ' *'))) for param in meth.params: handler, props = argtypes.matcher.get_reverse( param.ptype) props["direction"] = param.pdir wrapper.add_parameter(handler(wrapper, param.pname, **props)) buf = reversewrapper.MemoryCodeSink() wrapper.generate(buf) self.fp.write(buf.flush()) virtuals.append((fixname(meth.name), '_wrap_' + method_name)) vproxies_coverage.declare_wrapped() except argtypes.ArgTypeError, ex: vproxies_coverage.declare_not_wrapped() virtuals.append((fixname(meth.name), None)) sys.stderr.write('Could not write virtual proxy %s.%s: %s\n' % (klass, meth.name, str(ex))) if virtuals: # Write a 'pygtk class init' function for this object, # except when the object type is explicitly ignored (like # GtkPlug and GtkSocket on win32). if self.overrides.is_ignored(self.objinfo.typecode): return class_cast_macro = self.objinfo.typecode.replace( '_TYPE_', '_', 1) + "_CLASS" cast_macro = self.objinfo.typecode.replace('_TYPE_', '_', 1) funcname = "__%s_class_init" % klass self.objinfo.class_init_func = funcname have_implemented_virtuals = not not [True for name, cname in virtuals if cname is not None] self.fp.write( ('\nstatic int\n' '%(funcname)s(gpointer gclass, PyTypeObject *pyclass)\n' '{\n') % vars()) if have_implemented_virtuals: self.fp.write(' PyObject *o;\n') self.fp.write( ' %(klass)sClass *klass = ' '%(class_cast_macro)s(gclass);\n' ' PyObject *gsignals = ' 'PyDict_GetItemString(pyclass->tp_dict, "__gsignals__");\n' % vars()) for name, cname in virtuals: do_name = 'do_' + name if cname is None: self.fp.write('\n /* overriding %(do_name)s ' 'is currently not supported */\n' % vars()) else: self.fp.write(''' o = PyObject_GetAttrString((PyObject *) pyclass, "%(do_name)s"); if (o == NULL) PyErr_Clear(); else { if (!PyObject_TypeCheck(o, &PyCFunction_Type) && !(gsignals && PyDict_GetItemString(gsignals, "%(name)s"))) klass->%(name)s = %(cname)s; Py_DECREF(o); } ''' % vars()) self.fp.write(' return 0;\n}\n') def write_getsets(self): lower_name = self.get_lower_name() getsets_name = lower_name + '_getsets' getterprefix = '_wrap_' + lower_name + '__get_' setterprefix = '_wrap_' + lower_name + '__set_' # no overrides for the whole function. If no fields, # don't write a func if not self.objinfo.fields: return '0' getsets = [] for ftype, cfname in self.objinfo.fields: fname = cfname.replace('.', '_') gettername = '0' settername = '0' attrname = self.objinfo.c_name + '.' + fname if self.overrides.attr_is_overriden(attrname): code = self.overrides.attr_override(attrname) self.write_function(attrname, code) if string.find(code, getterprefix + fname) >= 0: gettername = getterprefix + fname if string.find(code, setterprefix + fname) >= 0: settername = setterprefix + fname if gettername == '0': try: funcname = getterprefix + fname info = argtypes.WrapperInfo() handler = argtypes.matcher.get(ftype) # for attributes, we don't own the "return value" handler.write_return(ftype, 0, info) self.fp.write(self.getter_tmpl % { 'funcname': funcname, 'varlist': info.varlist, 'field': self.get_field_accessor(cfname), 'codeafter': info.get_codeafter() }) gettername = funcname except argtypes.ArgTypeError, ex: sys.stderr.write( "Could not write getter for %s.%s: %s\n" % (self.objinfo.c_name, fname, str(ex))) if gettername != '0' or settername != '0': getsets.append(' { "%s", (getter)%s, (setter)%s },\n' % (fixname(fname), gettername, settername)) if not getsets: return '0' self.fp.write('static const PyGetSetDef %s[] = {\n' % getsets_name) for getset in getsets: self.fp.write(getset) self.fp.write(' { NULL, (getter)0, (setter)0 },\n') self.fp.write('};\n\n') return getsets_name def _write_get_symbol_names(self, writer, functions): self.fp.write("""static PyObject * _wrap__get_symbol_names(PyObject *self) { PyObject *pylist = PyList_New(0); """) for obj, bases in writer.get_classes(): self.fp.write(' PyList_Append(pylist, ' 'PyString_FromString("%s"));\n' % (obj.name)) for name, cname, flags, docstring in functions: self.fp.write(' PyList_Append(pylist, ' 'PyString_FromString("%s"));\n' % (name)) for enum in writer.get_enums(): self.fp.write(' PyList_Append(pylist, ' 'PyString_FromString("%s"));\n' % (enum.name)) for nick, value in enum.values: name = value[len(self.overrides.modulename)+1:] self.fp.write(' PyList_Append(pylist, ' 'PyString_FromString("%s"));\n' % (name)) self.fp.write(" return pylist;\n}\n\n"); def _write_get_symbol(self, writer, functions): self.fp.write("""static PyObject * _wrap__get_symbol(PyObject *self, PyObject *args) { PyObject *d; char *name; static PyObject *modulename = NULL; static PyObject *module = NULL; static char *strip_prefix = "%s"; if (!PyArg_ParseTuple(args, "Os", &d, &name)) return NULL; if (!modulename) modulename = PyString_FromString("%s"); if (!module) module = PyDict_GetItemString(d, "__module__"); """ % (self.overrides.modulename.upper() + '_', self.overrides.modulename)) first = True # Classes / GObjects for obj, bases in writer.get_classes(): if first: self.fp.write(' if (!strcmp(name, "%s")) {\n' % obj.name) first = False else: self.fp.write(' } else if (!strcmp(name, "%s")) {\n' % obj.name) self.fp.write( ' return (PyObject*)pygobject_lookup_class(%s);\n' % obj.typecode) self.fp.write(' }\n') # Functions for name, cname, flags, docstring in functions: self.fp.write(' else if (!strcmp(name, "%s")) {\n' % name) self.fp.write(' static PyMethodDef ml = { ' '"%s", (PyCFunction)%s, %s, "%s"};\n' % ( name, cname, flags, docstring)) self.fp.write(' return PyCFunction_NewEx(&ml, NULL, modulename);\n') self.fp.write(' }\n') # Enums def write_enum(enum, returnobj=False): if returnobj: ret = 'return ' else: ret = '' if enum.deftype == 'enum': self.fp.write( ' %spyg_enum_add(module, "%s", strip_prefix, %s);\n' % (ret, enum.name, enum.typecode)) else: self.fp.write( ' %spyg_flags_add(module, "%s", strip_prefix, %s);\n' % (ret, enum.name, enum.typecode)) strip_len = len(self.overrides.modulename)+1 # GTK_ for enum in writer.get_enums(): # XXX: Implement without typecodes self.fp.write(' else if (!strcmp(name, "%s")) {\n' % enum.name) write_enum(enum, returnobj=True) self.fp.write(' }\n') for nick, value in enum.values: value = value[strip_len:] self.fp.write(' else if (!strcmp(name, "%s")) {\n' % value) write_enum(enum) self.fp.write(' return PyObject_GetAttrString(module, "%s");\n' % value) self.fp.write(' }\n') self.fp.write(' return Py_None;\n}\n\n'); def _write_function_bodies(self): functions = [] # First, get methods from the defs files for func in self.parser.find_functions(): funcname = func.c_name if self.overrides.is_ignored(funcname): continue try: if self.overrides.is_overriden(funcname): data = self.overrides.override(funcname) self.write_function(funcname, data) methflags = self.get_methflags(funcname) else: # write constructor from template ... code, methflags = self.write_function_wrapper(func, self.function_tmpl, handle_return=1, is_method=0) self.fp.write(code) functions.append((func.name, '_wrap_' + funcname, methflags, func.docstring)) functions_coverage.declare_wrapped() except argtypes.ArgTypeError, ex: functions_coverage.declare_not_wrapped() sys.stderr.write('Could not write function %s: %s\n' % (func.name, str(ex))) # Now try to see if there are any defined in the override for funcname in self.overrides.get_functions(): try: data = self.overrides.function(funcname) self.write_function(funcname, data) methflags = self.get_methflags(funcname) functions.append((funcname, '_wrap_' + funcname, methflags, 'NULL')) functions_coverage.declare_wrapped() except argtypes.ArgTypeError, ex: functions_coverage.declare_not_wrapped() sys.stderr.write('Could not write function %s: %s\n' % (funcname, str(ex))) return functions def write_functions(self, writer, prefix): self.fp.write('\n/* ----------- functions ----------- */\n\n') functions = [] func_infos = self._write_function_bodies() # If we have a dynamic namespace, write symbol and attribute getter if self.overrides.dynamicnamespace: self._write_get_symbol_names(writer, func_infos) self._write_get_symbol(writer, func_infos) for obj, bases in writer.get_classes(): self.fp.write("""static PyTypeObject * %s_register_type(const gchar *name, PyObject *unused) { PyObject *m = PyImport_ImportModule("gtk"); PyObject *d = PyModule_GetDict(m); """ % obj.c_name) writer.write_class(obj, bases, indent=1) self.fp.write( ' return (%s)PyDict_GetItemString(d, "%s");\n' % ( 'PyTypeObject*', obj.name)) self.fp.write("}\n") functions.append(' { "_get_symbol_names", ' '(PyCFunction)_wrap__get_symbol_names, ' 'METH_NOARGS, NULL },\n') functions.append(' { "_get_symbol", ' '(PyCFunction)_wrap__get_symbol, ' 'METH_VARARGS, NULL },\n') else: for name, cname, flags, docstring in func_infos: functions.append(self.methdef_tmpl % dict(name=name, cname=cname, flags=flags, docstring=docstring)) # write the PyMethodDef structure functions.append(' { NULL, NULL, 0, NULL }\n') self.fp.write('const PyMethodDef ' + prefix + '_functions[] = {\n') self.fp.write(string.join(functions, '')) self.fp.write('};\n\n') class GObjectWrapper(Wrapper): constructor_tmpl = ( 'static int\n' '_wrap_%(cname)s(PyGObject *self%(extraparams)s)\n' '{\n' '%(varlist)s' '%(parseargs)s' '%(codebefore)s' ' self->obj = (GObject *)%(cname)s(%(arglist)s);\n' '%(codeafter)s\n' ' if (!self->obj) {\n' ' PyErr_SetString(PyExc_RuntimeError, ' '"could not create %(typename)s object");\n' ' return -1;\n' ' }\n' '%(aftercreate)s' ' pygobject_register_wrapper((PyObject *)self);\n' ' return 0;\n' '}\n\n' ) method_tmpl = ( 'static PyObject *\n' '_wrap_%(cname)s(PyGObject *self%(extraparams)s)\n' '{\n' '%(varlist)s' '%(parseargs)s' '%(codebefore)s' ' %(begin_allow_threads)s\n' ' %(setreturn)s%(cname)s(%(cast)s(self->obj)%(arglist)s);\n' ' %(end_allow_threads)s\n' '%(codeafter)s\n' '}\n\n' ) def __init__(self, parser, objinfo, overrides, fp=FileOutput(sys.stdout)): Wrapper.__init__(self, parser, objinfo, overrides, fp) if self.objinfo: self.castmacro = string.replace(self.objinfo.typecode, '_TYPE_', '_', 1) def get_initial_class_substdict(self): return { 'tp_basicsize' : 'PyGObject', 'tp_weaklistoffset' : 'offsetof(PyGObject, weakreflist)', 'tp_dictoffset' : 'offsetof(PyGObject, inst_dict)' } def get_field_accessor(self, fieldname): castmacro = string.replace(self.objinfo.typecode, '_TYPE_', '_', 1) return '%s(pygobject_get(self))->%s' % (castmacro, fieldname) def get_initial_constructor_substdict(self, constructor): substdict = Wrapper.get_initial_constructor_substdict(self, constructor) if not constructor.caller_owns_return: substdict['aftercreate'] = " g_object_ref(self->obj);\n" else: substdict['aftercreate'] = '' return substdict def get_initial_method_substdict(self, method): substdict = Wrapper.get_initial_method_substdict(self, method) substdict['cast'] = string.replace(self.objinfo.typecode, '_TYPE_', '_', 1) return substdict def write_default_constructor(self): try: parent = self.parser.find_object(self.objinfo.parent) except ValueError: parent = None if parent is not None: ## just like the constructor is inheritted, we should # inherit the new API compatibility flag self.objinfo.has_new_constructor_api = ( parent.has_new_constructor_api) elif self.objinfo.parent == 'GObject': self.objinfo.has_new_constructor_api = True return '0' def write_property_based_constructor(self, constructor): self.objinfo.has_new_constructor_api = True out = self.fp print >> out, "static int" print >> out, '_wrap_%s(PyGObject *self, PyObject *args,' \ ' PyObject *kwargs)\n{' % constructor.c_name if constructor.params: s = " GType obj_type = pyg_type_from_object((PyObject *) self);" print >> out, s def py_str_list_to_c(arg): if arg: return "{" + ", ".join( map(lambda s: '"' + s + '"', arg)) + ", NULL }" else: return "{ NULL }" classname = '%s.%s' % (self.overrides.modulename, self.objinfo.name) if constructor.params: mandatory_arguments = [param for param in constructor.params if not param.optional] optional_arguments = [param for param in constructor.params if param.optional] arg_names = py_str_list_to_c( [param.argname for param in mandatory_arguments + optional_arguments]) prop_names = py_str_list_to_c( [param.pname for param in mandatory_arguments + optional_arguments]) print >> out, " GParameter params[%i];" % \ len(constructor.params) print >> out, " PyObject *parsed_args[%i] = {NULL, };" % \ len(constructor.params) print >> out, " char *arg_names[] = %s;" % arg_names print >> out, " char *prop_names[] = %s;" % prop_names print >> out, " guint nparams, i;" print >> out if constructor.deprecated is not None: out.write( ' if (PyErr_Warn(PyExc_DeprecationWarning, ' '"%s") < 0)\n' % constructor.deprecated) print >> out, ' return -1;' print >> out out.write(" if (!PyArg_ParseTupleAndKeywords(args, kwargs, ") template = '"' if mandatory_arguments: template += "O"*len(mandatory_arguments) if optional_arguments: template += "|" + "O"*len(optional_arguments) template += ':%s.__init__"' % classname print >> out, template, ", arg_names", for i in range(len(constructor.params)): print >> out, ", &parsed_args[%i]" % i, out.write( "))\n" " return -1;\n" "\n" " memset(params, 0, sizeof(GParameter)*%i);\n" " if (!pyg_parse_constructor_args(obj_type, arg_names,\n" " prop_names, params, \n" " &nparams, parsed_args))\n" " return -1;\n" " pygobject_constructv(self, nparams, params);\n" " for (i = 0; i < nparams; ++i)\n" " g_value_unset(¶ms[i].value);\n" % len(constructor.params)) else: out.write( " static char* kwlist[] = { NULL };\n" "\n") if constructor.deprecated is not None: out.write( ' if (PyErr_Warn(PyExc_DeprecationWarning, "%s") < 0)\n' ' return -1;\n' '\n' % constructor.deprecated) out.write( ' if (!PyArg_ParseTupleAndKeywords(args, kwargs,\n' ' ":%s.__init__",\n' ' kwlist))\n' ' return -1;\n' '\n' ' pygobject_constructv(self, 0, NULL);\n' % classname) out.write( ' if (!self->obj) {\n' ' PyErr_SetString(\n' ' PyExc_RuntimeError, \n' ' "could not create %s object");\n' ' return -1;\n' ' }\n' % classname) if not constructor.caller_owns_return: print >> out, " g_object_ref(self->obj);\n" out.write( ' return 0;\n' '}\n\n') return "_wrap_%s" % constructor.c_name class GInterfaceWrapper(GObjectWrapper): virtual_accessor_tmpl = ( 'static PyObject *\n' '_wrap_%(cname)s(PyObject *cls%(extraparams)s)\n' '{\n' ' %(vtable)s *iface;\n' '%(varlist)s' '%(parseargs)s' '%(codebefore)s' ' iface = g_type_interface_peek(' 'g_type_class_peek(pyg_type_from_object(cls)), %(typecode)s);\n' ' if (iface->%(virtual)s)\n' ' %(setreturn)siface->%(virtual)s(%(arglist)s);\n' ' else {\n' ' PyErr_SetString(PyExc_NotImplementedError, ' '"interface method %(name)s not implemented");\n' ' return NULL;\n' ' }\n' '%(codeafter)s\n' '}\n\n' ) def get_initial_class_substdict(self): return { 'tp_basicsize' : 'PyObject', 'tp_weaklistoffset' : '0', 'tp_dictoffset' : '0'} def write_constructor(self): # interfaces have no constructors ... return '0' def write_getsets(self): # interfaces have no fields ... return '0' def _get_class_virtual_substdict(self, meth, cname, parent): substdict = self.get_initial_method_substdict(meth) substdict['virtual'] = meth.name substdict['cname'] = cname substdict['typecode'] = self.objinfo.typecode substdict['vtable'] = self.objinfo.vtable return substdict def write_virtuals(self): ## Now write reverse method wrappers, which let python code ## implement interface methods. # First, get methods from the defs files klass = self.objinfo.c_name proxies = [] for meth in self.parser.find_virtuals(self.objinfo): method_name = self.objinfo.c_name + "__proxy_do_" + meth.name if self.overrides.is_ignored(method_name): continue try: if self.overrides.is_overriden(method_name): if not self.overrides.is_already_included(method_name): data = self.overrides.override(method_name) self.write_function(method_name, data) else: # write proxy ... ret, props = argtypes.matcher.get_reverse_ret(meth.ret) wrapper = reversewrapper.ReverseWrapper( '_wrap_' + method_name, is_static=True) wrapper.set_return_type(ret(wrapper, **props)) wrapper.add_parameter(reversewrapper.PyGObjectMethodParam( wrapper, "self", method_name="do_" + meth.name, c_type=(klass + ' *'))) for param in meth.params: handler, props = argtypes.matcher.get_reverse( param.ptype) props["direction"] = param.pdir wrapper.add_parameter( handler(wrapper, param.pname, **props)) buf = reversewrapper.MemoryCodeSink() wrapper.generate(buf) self.fp.write(buf.flush()) proxies.append((fixname(meth.name), '_wrap_' + method_name)) iproxies_coverage.declare_wrapped() except argtypes.ArgTypeError, ex: iproxies_coverage.declare_not_wrapped() proxies.append((fixname(meth.name), None)) sys.stderr.write('Could not write interface proxy %s.%s: %s\n' % (klass, meth.name, str(ex))) if not proxies or not [cname for name, cname in proxies if cname]: return ## Write an interface init function for this object funcname = "__%s__interface_init" % klass vtable = self.objinfo.vtable self.fp.write( '\nstatic void\n' '%(funcname)s(%(vtable)s *iface, PyTypeObject *pytype)\n' '{\n' ' %(vtable)s *parent_iface = ' 'g_type_interface_peek_parent(iface);\n' ' PyObject *py_method;\n' '\n' % vars()) for name, cname in proxies: do_name = 'do_' + name if cname is None: continue self.fp.write(( ' py_method = pytype? PyObject_GetAttrString(' '(PyObject *) pytype, "%(do_name)s") : NULL;\n' ' if (py_method && !PyObject_TypeCheck(py_method, ' '&PyCFunction_Type)) {\n' ' iface->%(name)s = %(cname)s;\n' ' } else {\n' ' PyErr_Clear();\n' ' if (parent_iface) {\n' ' iface->%(name)s = parent_iface->%(name)s;\n' ' }\n' ' Py_XDECREF(py_method);\n' ' }\n' ) % vars()) self.fp.write('}\n\n') interface_info = "__%s__iinfo" % klass self.fp.write(''' static const GInterfaceInfo %s = { (GInterfaceInitFunc) %s, NULL, NULL }; ''' % (interface_info, funcname)) self.objinfo.interface_info = interface_info class GBoxedWrapper(Wrapper): constructor_tmpl = ( 'static int\n' '_wrap_%(cname)s(PyGBoxed *self%(extraparams)s)\n' '{\n' '%(varlist)s' '%(parseargs)s' '%(codebefore)s' ' self->gtype = %(typecode)s;\n' ' self->free_on_dealloc = FALSE;\n' ' self->boxed = %(cname)s(%(arglist)s);\n' '%(codeafter)s\n' ' if (!self->boxed) {\n' ' PyErr_SetString(PyExc_RuntimeError, ' '"could not create %(typename)s object");\n' ' return -1;\n' ' }\n' ' self->free_on_dealloc = TRUE;\n' ' return 0;\n' '}\n\n' ) method_tmpl = ( 'static PyObject *\n' '_wrap_%(cname)s(PyObject *self%(extraparams)s)\n' '{\n' '%(varlist)s' '%(parseargs)s' '%(codebefore)s' ' %(begin_allow_threads)s\n' ' %(setreturn)s%(cname)s(pyg_boxed_get(self, ' '%(typename)s)%(arglist)s);\n' ' %(end_allow_threads)s\n' '%(codeafter)s\n' '}\n\n' ) def get_initial_class_substdict(self): return { 'tp_basicsize' : 'PyGBoxed', 'tp_weaklistoffset' : '0', 'tp_dictoffset' : '0' } def get_field_accessor(self, fieldname): return 'pyg_boxed_get(self, %s)->%s' % (self.objinfo.c_name, fieldname) def get_initial_constructor_substdict(self, constructor): substdict = Wrapper.get_initial_constructor_substdict( self, constructor) substdict['typecode'] = self.objinfo.typecode return substdict class GPointerWrapper(GBoxedWrapper): constructor_tmpl = ( 'static int\n' '_wrap_%(cname)s(PyGPointer *self%(extraparams)s)\n' '{\n' '%(varlist)s' '%(parseargs)s' '%(codebefore)s' ' self->gtype = %(typecode)s;\n' ' self->pointer = %(cname)s(%(arglist)s);\n' '%(codeafter)s\n' ' if (!self->pointer) {\n' ' PyErr_SetString(PyExc_RuntimeError, ' '"could not create %(typename)s object");\n' ' return -1;\n' ' }\n' ' return 0;\n' '}\n\n' ) method_tmpl = ( 'static PyObject *\n' '_wrap_%(cname)s(PyObject *self%(extraparams)s)\n' '{\n' '%(varlist)s' '%(parseargs)s' '%(codebefore)s' ' %(setreturn)s%(cname)s(pyg_pointer_get(self, ' '%(typename)s)%(arglist)s);\n' '%(codeafter)s\n' '}\n\n' ) def get_initial_class_substdict(self): return { 'tp_basicsize' : 'PyGPointer', 'tp_weaklistoffset' : '0', 'tp_dictoffset' : '0' } def get_field_accessor(self, fieldname): return 'pyg_pointer_get(self, %s)->%s' % (self.objinfo.c_name, fieldname) def get_initial_constructor_substdict(self, constructor): substdict = Wrapper.get_initial_constructor_substdict( self, constructor) substdict['typecode'] = self.objinfo.typecode return substdict class SourceWriter: def __init__(self, parser, overrides, prefix, fp=FileOutput(sys.stdout)): self.parser = parser self.overrides = overrides self.prefix = prefix self.fp = fp def write(self, py_ssize_t_clean=False): argtypes.py_ssize_t_clean = py_ssize_t_clean self.write_headers(py_ssize_t_clean) self.write_imports() self.write_type_declarations() self.write_body() self.write_classes() wrapper = Wrapper(self.parser, None, self.overrides, self.fp) wrapper.write_functions(self, self.prefix) if not self.overrides.dynamicnamespace: self.write_enums() self.write_extension_init() self.write_registers() argtypes.py_ssize_t_clean = False def write_headers(self, py_ssize_t_clean): self.fp.write('/* -- THIS FILE IS GENERATED - DO NOT EDIT */') self.fp.write('/* -*- Mode: C; c-basic-offset: 4 -*- */\n\n') if py_ssize_t_clean: self.fp.write('#define PY_SSIZE_T_CLEAN\n') self.fp.write('#include \n\n\n') if py_ssize_t_clean: self.fp.write(''' #if PY_VERSION_HEX < 0x02050000 typedef int Py_ssize_t; #define PY_SSIZE_T_MAX INT_MAX #define PY_SSIZE_T_MIN INT_MIN typedef inquiry lenfunc; typedef intargfunc ssizeargfunc; typedef intobjargproc ssizeobjargproc; #endif ''') self.fp.write(self.overrides.get_headers()) self.fp.resetline() self.fp.write('\n\n') def write_imports(self): self.fp.write('/* ---------- types from other modules ---------- */\n') for module, pyname, cname, importing_for in self.overrides.get_imports(): if importing_for is None or is_registered_object(importing_for): self.fp.write('static PyTypeObject *_%s;\n' % cname) self.fp.write('#define %s (*_%s)\n' % (cname, cname)) self.fp.write('\n\n') def write_type_declarations(self): #todo use 'static' if used only in one file self.fp.write('/* ---------- forward type declarations ---------- */\n') for obj in self.parser.boxes: if not self.overrides.is_type_ignored(obj.c_name): self.fp.write('PyTypeObject G_GNUC_INTERNAL Py' + obj.c_name + '_Type;\n') for obj in self.parser.objects: if not self.overrides.is_type_ignored(obj.c_name): self.fp.write('PyTypeObject G_GNUC_INTERNAL Py' + obj.c_name + '_Type;\n') for interface in self.parser.interfaces: if not self.overrides.is_type_ignored(interface.c_name): self.fp.write('PyTypeObject G_GNUC_INTERNAL Py' + interface.c_name + '_Type;\n') self.fp.write('\n') def write_body(self): self.fp.write(self.overrides.get_body()) self.fp.resetline() self.fp.write('\n\n') def _sort_parent_children(self, objects): objects = list(objects) modified = True while modified: modified = False parent_index = None child_index = None for i, obj in enumerate(objects): if obj.parent == 'GObject': continue if obj.parent not in [info.c_name for info in objects[:i]]: for j, info in enumerate(objects[i+1:]): if info.c_name == obj.parent: parent_index = i + 1 + j child_index = i break else: continue break if child_index is not None and parent_index is not None: if child_index != parent_index: objects.insert(child_index, objects.pop(parent_index)) modified = True return objects def write_classes(self): ## Sort the objects, so that we generate code for the parent types ## before their children. objects = self._sort_parent_children(self.parser.objects) for klass, items in ((GBoxedWrapper, self.parser.boxes), (GPointerWrapper, self.parser.pointers), (GObjectWrapper, objects), (GInterfaceWrapper, self.parser.interfaces)): for item in items: instance = klass(self.parser, item, self.overrides, self.fp) instance.write_class() self.fp.write('\n') def get_enums(self): enums = [] for enum in self.parser.enums: if self.overrides.is_type_ignored(enum.c_name): continue enums.append(enum) return enums def write_enums(self): if not self.parser.enums: return self.fp.write('\n/* ----------- enums and flags ----------- */\n\n') self.fp.write( 'void\n' + self.prefix + '_add_constants(PyObject *module, const gchar *strip_prefix)\n{\n') self.fp.write( '#ifdef VERSION\n' ' PyModule_AddStringConstant(module, "__version__", VERSION);\n' '#endif\n') for enum in self.get_enums(): if enum.typecode is None: for nick, value in enum.values: self.fp.write( ' PyModule_AddIntConstant(module, ' '(char *) pyg_constant_strip_prefix("%s", strip_prefix), %s);\n' % (value, value)) else: if enum.deftype == 'enum': self.fp.write(' pyg_enum_add(module, "%s", strip_prefix, %s);\n' % (enum.name, enum.typecode)) else: self.fp.write(' pyg_flags_add(module, "%s", strip_prefix, %s);\n' % (enum.name, enum.typecode)) self.fp.write('\n') self.fp.write(' if (PyErr_Occurred())\n') self.fp.write(' PyErr_Print();\n') self.fp.write('}\n\n') def write_object_imports(self, retval=''): imports = self.overrides.get_imports()[:] if not imports: return bymod = {} for module, pyname, cname, importing_for in imports: if importing_for is None or is_registered_object(importing_for): bymod.setdefault(module, []).append((pyname, cname)) self.fp.write(' PyObject *module;\n\n') for module in bymod: self.fp.write( ' if ((module = PyImport_ImportModule("%s")) != NULL) {\n' % module) #self.fp.write( # ' PyObject *moddict = PyModule_GetDict(module);\n\n') for pyname, cname in bymod[module]: #self.fp.write( # ' _%s = (PyTypeObject *)PyDict_GetItemString(' # 'moddict, "%s");\n' % (cname, pyname)) self.fp.write( ' _%s = (PyTypeObject *)PyObject_GetAttrString(' 'module, "%s");\n' % (cname, pyname)) self.fp.write(' if (_%s == NULL) {\n' % cname) self.fp.write(' PyErr_SetString(PyExc_ImportError,\n') self.fp.write(' "cannot import name %s from %s");\n' % (pyname, module)) self.fp.write(' return %s;\n' % retval) self.fp.write(' }\n') self.fp.write(' } else {\n') self.fp.write(' PyErr_SetString(PyExc_ImportError,\n') self.fp.write(' "could not import %s");\n' % module) self.fp.write(' return %s;\n' % retval) self.fp.write(' }\n') self.fp.write('\n') def write_extension_init(self): self.fp.write('/* initialise stuff extension classes */\n') self.fp.write('void\n' + self.prefix + '_register_classes(PyObject *d)\n{\n') self.write_object_imports() self.fp.write(self.overrides.get_init() + '\n') self.fp.resetline() def get_classes(self): objects = self.parser.objects[:] pos = 0 while pos < len(objects): parent = objects[pos].parent for i in range(pos+1, len(objects)): if objects[i].c_name == parent: objects.insert(i+1, objects[pos]) del objects[pos] break else: pos = pos + 1 retval = [] for obj in objects: if self.overrides.is_type_ignored(obj.c_name): continue bases = [] if obj.parent != None: bases.append(obj.parent) bases = bases + obj.implements retval.append((obj, bases)) return retval def write_registers(self): for boxed in self.parser.boxes: if not self.overrides.is_type_ignored(boxed.c_name): self.fp.write(' pyg_register_boxed(d, "' + boxed.name + '", ' + boxed.typecode + ', &Py' + boxed.c_name + '_Type);\n') for pointer in self.parser.pointers: if not self.overrides.is_type_ignored(pointer.c_name): self.fp.write(' pyg_register_pointer(d, "' + pointer.name + '", ' + pointer.typecode + ', &Py' + pointer.c_name + '_Type);\n') for interface in self.parser.interfaces: if not self.overrides.is_type_ignored(interface.c_name): self.fp.write(' pyg_register_interface(d, "' + interface.name + '", '+ interface.typecode + ', &Py' + interface.c_name + '_Type);\n') if interface.interface_info is not None: self.fp.write(' pyg_register_interface_info(%s, &%s);\n' % (interface.typecode, interface.interface_info)) if not self.overrides.dynamicnamespace: for obj, bases in self.get_classes(): self.write_class(obj, bases) else: for obj, bases in self.get_classes(): self.fp.write( ' pyg_type_register_custom_callback("%s", ' '(PyGTypeRegistrationFunction)%s_register_type, d);\n' % (obj.c_name, obj.c_name)) self.fp.write('}\n') def _can_direct_ref(self, base): if not self.overrides.dynamicnamespace: return True if base == 'GObject': return True obj = get_object_by_name(base) if obj.module.lower() != self.overrides.modulename: return True return False def write_class(self, obj, bases, indent=1): indent_str = ' ' * (indent * 4) if bases: bases_str = 'Py_BuildValue("(%s)"' % (len(bases) * 'O') for base in bases: if self._can_direct_ref(base): bases_str += ', &Py%s_Type' % base else: baseobj = get_object_by_name(base) bases_str += ', PyObject_GetAttrString(m, "%s")' % baseobj.name bases_str += ')' else: bases_str = 'NULL' self.fp.write( '%(indent)spygobject_register_class(d, "%(c_name)s", %(typecode)s, &Py%(c_name)s_Type, %(bases)s);\n' % dict(indent=indent_str, c_name=obj.c_name, typecode=obj.typecode, bases=bases_str)) if obj.has_new_constructor_api: self.fp.write( indent_str + 'pyg_set_object_has_new_constructor(%s);\n' % obj.typecode) else: print >> sys.stderr, ( "Warning: Constructor for %s needs to be updated to new API\n" " See http://live.gnome.org/PyGTK_2fWhatsNew28" "#update-constructors") % obj.c_name if obj.class_init_func is not None: self.fp.write( indent_str + 'pyg_register_class_init(%s, %s);\n' % (obj.typecode, obj.class_init_func)) _objects = {} def is_registered_object(c_name): return c_name in _objects def get_object_by_name(c_name): global _objects return _objects[c_name] def register_types(parser): global _objects for boxed in parser.boxes: argtypes.matcher.register_boxed(boxed.c_name, boxed.typecode) _objects[boxed.c_name] = boxed for pointer in parser.pointers: argtypes.matcher.register_pointer(pointer.c_name, pointer.typecode) for obj in parser.objects: argtypes.matcher.register_object(obj.c_name, obj.parent, obj.typecode) _objects[obj.c_name] = obj for iface in parser.interfaces: argtypes.matcher.register_object(iface.c_name, None, iface.typecode) _objects[iface.c_name] = iface for enum in parser.enums: if enum.deftype == 'flags': argtypes.matcher.register_flag(enum.c_name, enum.typecode) else: argtypes.matcher.register_enum(enum.c_name, enum.typecode) usage = 'usage: codegen.py [-o overridesfile] [-p prefix] defsfile' def main(argv): o = override.Overrides() prefix = 'pygtk' outfilename = None errorfilename = None opts, args = getopt.getopt(argv[1:], "o:p:r:t:D:I:", ["override=", "prefix=", "register=", "outfilename=", "load-types=", "errorfilename=", "py_ssize_t-clean"]) defines = {} # -Dkey[=val] options py_ssize_t_clean = False for opt, arg in opts: if opt in ('-o', '--override'): o = override.Overrides(arg) elif opt in ('-p', '--prefix'): prefix = arg elif opt in ('-r', '--register'): # Warning: user has to make sure all -D options appear before -r p = defsparser.DefsParser(arg, defines) p.startParsing() register_types(p) del p elif opt == '--outfilename': outfilename = arg elif opt == '--errorfilename': errorfilename = arg elif opt in ('-t', '--load-types'): globals = {} execfile(arg, globals) elif opt == '-D': nameval = arg.split('=') try: defines[nameval[0]] = nameval[1] except IndexError: defines[nameval[0]] = None elif opt == '-I': defsparser.include_path.insert(0, arg) elif opt == '--py_ssize_t-clean': py_ssize_t_clean = True if len(args) < 1: print >> sys.stderr, usage return 1 if errorfilename: sys.stderr = open(errorfilename, "w") p = defsparser.DefsParser(args[0], defines) if not outfilename: outfilename = os.path.splitext(args[0])[0] + '.c' p.startParsing() register_types(p) sw = SourceWriter(p, o, prefix, FileOutput(sys.stdout, outfilename)) sw.write(py_ssize_t_clean) functions_coverage.printstats() methods_coverage.printstats() vproxies_coverage.printstats() vaccessors_coverage.printstats() iproxies_coverage.printstats() if __name__ == '__main__': sys.exit(main(sys.argv)) ./pygobject-2.20.0-i686/usr/share/gtk-doc/0000755000000000000000000000000011272036657016362 5ustar rootroot./pygobject-2.20.0-i686/usr/share/gtk-doc/html/0000755000000000000000000000000011272036657017326 5ustar rootroot./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/0000755000000000000000000000000011272036670021307 5ustar rootroot./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/style.css0000644000000000000000000000020511272036627023160 0ustar rootroot.programlisting { font: monospace; background-color: #E0E0E0; padding: 5; } pre.synopsis { background-color: #E0E0E0; padding: 5; } ./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gioappinfo.html0000644000000000000000000012664411272036627025452 0ustar rootrootgio.AppInfo

gio.AppInfo

gio.AppInfo — Information about an installed application and methods to launch it (with file arguments).

Synopsis

class gio.AppInfo(gobject.GInterface):
    gio.AppInfo(commandline, application_name=None, flags=gio.APP_INFO_CREATE_NONE)
def add_supports_type(content_type)
def can_delete()
def can_remove_supports_type()
def delete()
def dup()
def equal(appinfo2)
def get_commandline()
def get_description()
def get_executable()
def get_icon()
def get_id()
def get_name()
def launch(files, launch_context)
def launch_uris(uris, launch_context)
def remove_supports_type(content_type)
def set_as_default_for_extension(extension)
def set_as_default_for_type(content_type)
def should_show()
def supports_files()
def supports_uris()
Functions
 
    def gio.app_info_get_all()
def gio.app_info_get_all_for_type(content_type)
def gio.app_info_get_default_for_type(content_type, must_support_uris)
def gio.app_info_get_default_for_uri_scheme(uri_scheme)
def gio.app_info_reset_type_association(content_type)

Known Implementation

gio.AppInfo is implemented by gio.DesktopAppInfo

Description

gio.AppInfo and gio.AppLaunchContext are used for describing and launching applications installed on the system.

As of GLib 2.20, URIs will always be converted to POSIX paths (using gio.File.get_path()) when using gio.AppInfo.launch() even if the application requested an URI and not a POSIX path. For example for an desktop-file based application with Exec key totem %U and a single URI, sftp://foo/file.avi, then /home/user/.gvfs/sftp on foo/file.avi will be passed. This will only work if a set of suitable GIO extensions (such as gvfs 2.26 compiled with FUSE support), is available and operational; if this is not the case, the URI will be passed unmodified to the application. Some URIs, such as mailto:, of course cannot be mapped to a POSIX path (in gvfs there's no FUSE mount for it); such URIs will be passed unmodified to the application.

Specifically for gvfs 2.26 and later, the POSIX URI will be mapped back to the GIO URI in the gio.File constructors (since gvfs implements the GVfs extension point). As such, if the application needs to examine the URI, it needs to use gio.File.get_uri() or similar on gio.File. In other words, an application cannot assume that the URI passed to e.g. gio.File() constructor is equal to the result of gio.File.get_uri().

Constructor

    gio.AppInfo(commandline, application_name=None, flags=gio.APP_INFO_CREATE_NONE)

commandline :

the commandline to use

application_name :

the application name, or None to use commandline.

flags :

flags that can specify details of the created, from Gio AppInfo Create Flags Constants

Returns :

a new gio.AppInfo for given command.

Creates a new gio.AppInfo from the given information.

Methods

gio.AppInfo.add_supports_type

    def add_supports_type(content_type)

content_type :

A string.

The add_supports_type() method adds a content type to the application information to indicate the application is capable of opening files with the given content type.

gio.AppInfo.can_delete

    def can_delete()

Returns :

True if appinfo can be deleted.

The can_delete() method obtains the information whether the gio.AppInfo can be deleted. See gio.AppInfo.delete().

gio.AppInfo.can_remove_supports_type

    def can_remove_supports_type()

Returns :

True if it is possible to remove supported content types from a given appinfo, False if not.

The can_remove_supports_type() method checks if a supported content type can be removed from an application.

gio.AppInfo.delete

    def delete()

Returns :

True if appinfo has been deleted.

The delete() method tries to delete an gio.AppInfo.

On some platforms, there may be a difference between user-defined gio.AppInfos which can be deleted, and system-wide ones which cannot. See gio.AppInfo.can_delete().

gio.AppInfo.dup

    def dup()

Returns :

A duplicate of appinfo.

The dup() method creates a duplicate of a gio.AppInfo.

gio.AppInfo.equal

    def equal(icon2)

appinfo2 :

the second gio.AppInfo

Returns :

True if appinfo1 is equal to appinfo2. False otherwise.

The equal() method checks if two gio.AppInfos are equal.

gio.AppInfo.get_commandline

    def get_commandline()

Returns :

a string containing the appinfo's commandline, or None if this information is not available.

The get_commandline() method gets the commandline with which the application will be started.

gio.AppInfo.get_description

    def get_description()

Returns :

A string containing a description of the application appinfo, or None if none.

The get_description() method gets a human-readable description of an installed application.

gio.AppInfo.get_executable

    def get_executable()

Returns :

a string containing the appinfo's application binary's name.

The get_description() method gets the executable's name for the installed application.

gio.AppInfo.get_icon

    def get_icon()

Returns :

the default gio.Icon for appinfo.

The get_icon() method gets the icon for the application.

gio.AppInfo.get_id

    def get_id()

Returns :

a string containing the application's ID.

The get_id() method gets the ID of an application. An id is a string that identifies the application. The exact format of the id is platform dependent. For instance, on Unix this is the desktop file id from the xdg menu specification.

Note that the returned ID may be None, depending on how the appinfo has been constructed.

gio.AppInfo.get_name

    def get_name()

Returns :

the name of the application for appinfo.

The get_name() method gets the installed name of the application.

gio.AppInfo.launch

    def launch(files, launch_context)

files :

a list of gio.File objects.

launch_context :

a gio.AppLaunchContext or None.

Returns :

True on successful launch, False otherwise.

The launch() method launches the application. Passes files to the launched application as arguments, using the optional launch_context to get information about the details of the launcher (like what screen it is on). On error, error will be set accordingly.

To lauch the application without arguments pass a None for files list.

Note that even if the launch is successful the application launched can fail to start if it runs into problems during startup. There is no way to detect this.

Some URIs can be changed when passed through a gio.File (for instance unsupported uris with strange formats like mailto:), so if you have a textual uri you want to pass in as argument, consider using gio.File.launch_uris() instead.

gio.AppInfo.launch_uris

    def launch_uris(uris, launch_context)

uris :

a list containing URIs to launch.

launch_context :

a gio.AppLaunchContext or None.

Returns :

True on successful launch, False otherwise.

The launch_uris() method launches the application. Passes uris to the launched application as arguments, using the optional launch_context to get information about the details of the launcher (like what screen it is on). On error, error will be set accordingly.

To lauch the application without arguments pass a None for files list.

Note that even if the launch is successful the application launched can fail to start if it runs into problems during startup. There is no way to detect this.

gio.AppInfo.remove_supports_type

    def remove_supports_type(content_type)

content_type :

A string.

The remove_supports_type() method removes a supported type from an application, if possible.

gio.AppInfo.set_as_default_for_extension

    def set_as_default_for_extension(extension)

extension :

A string containing the file extension (without the dot).

The set_as_default_for_extension() method sets the application as the default handler for the given file extention.

gio.AppInfo.set_as_default_for_type

    def set_as_default_for_type(content_type)

content_type :

The content type.

The set_as_default_for_type() method sets the application as the default handler for a given type.

gio.AppInfo.should_show

    def should_show()

Returns :

True if the appinfo should be shown, False otherwise.

The should_show() method checks if the application info should be shown in menus that list available applications.

gio.AppInfo.supports_files

    def supports_files()

Returns :

True if the appinfo supports files.

The supports_files() method checks if the application accepts files as arguments.

gio.AppInfo.supports_uris

    def supports_uris()

Returns :

True if the appinfo supports uris.

The supports_uris() method checks if the application accepts uris as arguments.

Functions

gio.app_info_get_all

    def app_info_get_all()

Returns :

A list of gio.AppInfos.

The app_info_get_all() function gets a list of all of the applications currently registered on this system.

For desktop files, this includes applications that have NoDisplay=true set or are excluded from display by means of OnlyShowIn or NotShowIn. See gio.AppInfo.should_show(). The returned list does not include applications which have the Hidden key set.

gio.app_info_get_all_for_type

    def app_info_get_all_for_type(content_type)

content_type :

the content type to find a gio.AppInfo for.

Returns :

A list of gio.AppInfos for a given content type or None on error.

The app_info_get_all_for_type() function gets a list of all gio.AppInfos for a given content type.

gio.app_info_get_default_for_type

    def app_info_get_default_for_type(content_type, must_support_uris)

content_type :

the content type to find a gio.AppInfo for.

must_support_uris :

if True, the gio.AppInfo is expected to support URIs

Returns :

gio.AppInfo for given content_type or None on error.

The app_info_get_default_for_type() function gets the gio.AppInfo that correspond to a given content type.

gio.app_info_get_default_for_uri_scheme

    def app_info_get_default_for_uri_scheme(uri_scheme)

uri_scheme :

a string containing a URI scheme.

Returns :

gio.AppInfo for given uri_scheme or None on error.

The app_info_get_default_for_uri_scheme() function gets the default application for launching applications using this URI scheme. A URI scheme is the initial part of the URI, up to but not including the ':', e.g. "http", "ftp" or "sip".

gio.app_info_reset_type_association

    def app_info_reset_type_association(content_type)

content_type :

a content type

The app_info_reset_type_association() function removes all changes to the type associations done by set_as_default_for_type(), set_as_default_for_extension(), add_supports_type() or remove_supports_type().

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofileinputstream.html0000644000000000000000000003307411272036627027223 0ustar rootrootgio.FileInputStream

gio.FileInputStream

gio.FileInputStream — Base class for implementing streaming input

Synopsis

class gio.FileInputStream(gio.InputStream):
    def query_info(attributes, cancellable=None)
def query_info_async(attributes, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def query_info_finish(result)

Implemented Interfaces

gio.FileInputStream implements gio.Seekable

Description

gio.FileInputStream provides input streams that take their content from a file.

gio.FileInputStream implements gio.Seekable, which allows the input stream to jump to arbitrary positions in the file, provided the filesystem of the file allows it. In addition to the generic g_seekable_ API, gio.FileInputStream has its own API for seeking and positioning. To find the position of a file input stream, use gio.Seekable.tell(). To find out if a file input stream supports seeking, use gio.Seekable.can_seek(). To position a file input stream, use gio.Seekable.seek().

Methods

gio.FileInputStream.query_info

    def query_info(attributes, cancellable=None)

attributes :

a file attribute query string.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileInfo, or None on error.

The query_info() method queries a file input stream the given attributes. This function blocks while querying the stream. For the asynchronous (non-blocking) version of this function, see gio.FileInputStream.query_info_async(). While the stream is blocked, the stream will set the pending flag internally, and any other operations on the stream will fail with gio.ERROR_PENDING.

gio.FileInputStream.query_info_async

    def query_info_async(attributes, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

attributes :

a file attribute query string.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The query_info_async() method queries the stream information asynchronously. When the operation is finished callback will be called. You can then call gio.FileInputStream.query_info_finish() to get the result of the operation.

For the synchronous version of this function, see gio.FileInputStream.query_info().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be set

gio.FileInputStream.query_info_finish

    def query_info_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.FileInfo, or None on error.

The query_info_finish() method finishes an asynchronous file append operation started with gio.FileInputStream.query_info_async().

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/glib-class-reference.html0000644000000000000000000000512011272036627026151 0ustar rootrootPyGlibClass Reference

PyGlibClass Reference

Table of Contents

glib.MainContext — an object representing a set of event sources to be handled in a glib.MainLoop.
glib.MainLoop — an object representing the main event loop of a PyGTK application.
glib Functions — miscellaneous functions
glib Constants — the built-in constants of the glib module
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-glibmaincontext.html0000644000000000000000000001626511272036627026503 0ustar rootrootglib.MainContext

glib.MainContext

glib.MainContext — an object representing a set of event sources to be handled in a glib.MainLoop.

Synopsis

class glib.MainContext:
    glib.MainContext()
def iteration(may_block)
def pending()

Ancestry

+-- glib.MainContext

Description

A glib.MainContext represents a set of event sources that can be run in a single thread. File descriptors (plain files, pipes or sockets) and timeouts are the standard event sources for GTK and PyGTK though others can be added. Each event source is assigned a priority. The default priority, glib.PRIORITY_DEFAULT, is 0. Values less than 0 denote higher priorities. Values greater than 0 denote lower priorities. Events from high priority sources are always processed before events from lower priority sources. Single iterations of a glib.MainContext can be run with the iteration() method.

Constructor

    glib.MainContext()

Returns :

a new glib.MainContext object.

Creates a new glib.MainContext object.

Methods

glib.MainContext.iteration

    def iteration()

may_block :

if TRUE the call may block waiting for an event.

Returns :

TRUE if events were dispatched.

The iteration() method runs a single iteration. This involves:

  • checking to see if any associated event sources are ready to be processed;
  • then if no events sources are ready and may_block is TRUE, waiting for a source to become ready;
  • and finally, dispatching the highest priority events sources that are ready

Note that even when may_block is TRUE, it is still possible for iteration() to return FALSE, since the the wait may be interrupted for other reasons than an event source becoming ready.

glib.MainContext.pending

    def pending()

Returns :

TRUE if events are pending.

The pending() method checks if any associated sources have pending events.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/glib-functions.html0000644000000000000000000015107511272036627025133 0ustar rootrootglib Functions

glib Functions

glib Functions — miscellaneous functions

Synopsis

    def glib.idle_add(callback, ...)
def glib.timeout_add(interval, callback, ...)
def glib.timeout_add_seconds(interval, callback, ...)
def glib.io_add_watch(fd, condition, callback, ...)
def glib.source_remove(tag)
def glib.main_context_default()
def glib.markup_escape_text(text)
def glib.child_watch_add(pid, function, data=None, priority=glib.PRIORITY_DEFAULT)
def glib.spawn_async(argv, envp=None, working_directory=None, flags=0, child_setup=None, user_data=None, standard_input=None, standard_output=None, standard_error=None)
def glib.get_current_time()
def glib.get_user_cache_dir()
def glib.get_user_config_dir()
def glib.get_user_data_dir()
def glib.get_user_special_dir(directory)
def glib.main_depth()
def glib.threads_init()
def glib.filename_display_name(filename)
def glib.filename_display_basename(filename)
def glib.filename_from_utf8(utf8string)

Description

These functions are part of the PyGObject glib module but are not directly associated with a specific class.

Functions

glib.idle_add

    def glib.idle_add(callback, ...)

callback :

a function to call when PyGTK is idle

... :

optionals arguments to be passed to callback

Returns :

an integer ID

The glib.idle_add() function adds a function (specified by callback) to be called whenever there are no higher priority events pending to the default main loop. The function is given the default idle priority, glib.PRIORITY_DEFAULT_IDLE. Additional arguments to pass to callback can be specified after callback. The idle priority can be specified as a keyword-value pair with the keyword "priority". If callback returns FALSE it is automatically removed from the list of event sources and will not be called again.

glib.timeout_add

    def glib.timeout_add(interval, callback, ...)

interval :

the time between calls to the function, in milliseconds

callback :

the function to call

... :

zero or more arguments that will be passed to callback

Returns :

an integer ID of the event source

The glib.timeout_add() function sets a function (specified by callback) to be called at regular intervals (specified by interval, with the default priority, glib.PRIORITY_DEFAULT. Additional arguments to pass to callback can be specified after callback. The idle priority may be specified as a keyword-value pair with the keyword "priority".

The function is called repeatedly until it returns FALSE, at which point the timeout is automatically destroyed and the function will not be called again. The first call to the function will be at the end of the first interval. Note that timeout functions may be delayed, due to the processing of other event sources. Thus they should not be relied on for precise timing. After each call to the timeout function, the time of the next timeout is recalculated based on the current time and the given interval (it does not try to 'catch up' time lost in delays).

glib.timeout_add_seconds

    def glib.timeout_add_seconds(interval, callback, ...)

interval :

the time between calls to the function, in seconds

callback :

the function to call

... :

zero or more arguments that will be passed to callback

Returns :

an integer ID of the event source

The glib.timeout_add_seconds() is similar to glib.timeout_add() except that interval must be specified in seconds, not milliseconds, and the function should cause less CPU wakeups, which is important for laptops' batteries.

Unlike glib.timeout_add(), this function operates at whole second granularity. The initial starting point of the timer is determined by the implementation and the implementation is expected to group multiple timers together so that they fire all at the same time. To allow this grouping, the interval to the first timer is rounded and can deviate up to one second from the specified interval. Subsequent timer iterations will generally run at the specified interval.

Note that timeout functions may be delayed, due to the processing of other event sources. Thus they should not be relied on for precise timing. After each call to the timeout function, the time of the next timeout is recalculated based on the current time and the given interval.

The grouping of timers to fire at the same time results in a more power and CPU efficient behavior so if your timer is in multiples of seconds and you don't require the first timer exactly one second from now, the use of glib.timeout_add_seconds() is preferred over glib.timeout_add().

glib.io_add_watch

    def glib.io_add_watch(fd, condition, callback, ...)

fd :

a Python file object or an integer file descriptor ID

condition :

a condition mask

callback :

a function to call

... :

additional arguments to pass to callback

Returns :

an integer ID of the event source

The glib.io_add_watch() function arranges for the file (specified by fd) to be monitored by the main loop for the specified condition. fd may be a Python file object or an integer file descriptor. The value of condition is a combination of:

glib.IO_IN

There is data to read.

glib.IO_OUT

Data can be written (without blocking).

glib.IO_PRI

There is urgent data to read.

glib.IO_ERR

Error condition.

glib.IO_HUP

Hung up (the connection has been broken, usually for pipes and sockets).

Additional arguments to pass to callback can be specified after callback. The idle priority may be specified as a keyword-value pair with the keyword "priority". The signature of the callback function is:

  def callback(source, cb_condition, ...)

where source is fd, the file descriptor; cb_condition is the condition that triggered the signal; and, ... are the zero or more arguments that were passed to the glib.io_add_watch() function.

If the callback function returns FALSE it will be automatically removed from the list of event sources and will not be called again. If it returns TRUE it will be called again when the condition is matched.

glib.source_remove

    def glib.source_remove(tag)

tag :

an integer ID

Returns :

TRUE if the event source was removed

The glib.source_remove() function removes the event source specified by tag (as returned by the glib.idle_add(), glib.timeout_add() and glib.io_add_watch() functions)

glib.main_context_default

    def glib.main_context_default()

Returns :

the default glib.MainContext object

The glib.main_context_default() function returns the default glib.MainContext object.

glib.markup_escape_text

    def glib.markup_escape_text(text)

text :

the UTF-8 string to be escaped

Returns :

the escaped text

Note

This function is available in PyGTK 2.8 and above.

The glib.markup_escape_text() function escapes the string specified by text so that the markup parser will parse it verbatim. Less than, greater than, ampersand, etc. are replaced with the corresponding entities. This function would typically be used when writing out a file to be parsed with the markup parser.

Note that this function doesn't protect whitespace and line endings from being processed according to the XML rules for normalization of line endings and attribute values.

glib.child_watch_add

    def glib.child_watch_add(pid, function, data=None, priority=glib.PRIORITY_DEFAULT)

pid :

process id of a child process to watch

function :

the function to call

data :

the optional data to pass to function

priority :

the priority of the idle source - one of the Glib Priority Constants

Returns :

the id of event source.

Note

This function is available in PyGTK 2.6 and above.

The glib.child_watch_add() function sets the function specified by function to be called with the user data specified by data when the child indicated by pid exits. The signature for the callback is:

def callback(pid, condition, user_data)

where pid is is the child process id, condition is the status information about the child process and user_data is data PyGTK supports only a single callback per process id.

glib.spawn_async

    def glib.spawn_async(argv, envp=None, working_directory=None, flags=0, child_setup=None, user_data=None, standard_input=None, standard_output=None, standard_error=None)

argv :

a sequence of strings containing the arguments of the child process

envp :

the child's environment or None to inherit the parent's environment.

working_directory :

the child's current working directory, or None to inherit parent's

flags :

flags from the Glib Spawn Flag Constants.

child_setup :

a function to run in the child just before calling exec()

user_data :

the user data for the child_setup function

standard_input :

if TRUE return the file descriptor for the child's stdin

standard_output :

if TRUE return the file descriptor for the child's stdout

standard_error :

if TRUE return the file descriptor for the child's stderr

Returns :

a 4-tuple containing the child's process id and the stdin, stdout and stderr file descriptor integers.

Note

This function is available in PyGTK 2.6 and above.

The glib.spawn_async() function executes a child program asynchronously (your program will not block waiting for the child to exit). The child program is specified by the only argument that must be provided, argv. argv should be a sequence of strings, to be passed as the argument vector for the child. The first string in argv is of course the name of the program to execute. By default, the name of the program must be a full path; the PATH shell variable will only be searched if you pass the glib.SPAWN_SEARCH_PATH flag in flags. The function returns a 4-tuple containing the child's process id and the file descriptors for the child's stdin, stdout and stderr. The stdin, stdout and stderr file descriptors are returned only ofthe corresponding standard_input, standard_output or standard_error params are TRUE.

On Windows, the low-level child process creation API (CreateProcess()) doesn't use argument vectors, but a command line. The C runtime library's spawn*() family of functions (which glib.spawn_async() eventually calls) paste the argument vector elements into a command line, and the C runtime startup code does a corresponding reconstruction of an argument vector from the command line, to be passed to main(). Complications arise when you have argument vector elements that contain spaces of double quotes. The spawn*() functions don't do any quoting or escaping, but on the other hand the startup code does do unquoting and unescaping in order to enable receiving arguments with embedded spaces or double quotes. To work around this asymmetry, the glib.spawn_async() function will do quoting and escaping on argument vector elements that need it before calling the C runtime spawn() function.

envp is a sequence of strings, where each string has the form KEY=VALUE. This will become the child's environment. If envp is None or not specified, the child inherits its parent's environment.

flags should be the bitwise OR of the Glib Spawn Flag Constants you want to affect the function's behaviour. The glib.SPAWN_DO_NOT_REAP_CHILD flag means that the child will not automatically be reaped; you must use a GChildWatch source to be notified about the death of the child process. Eventually you must call g_spawn_close_pid() on the child_pid, in order to free resources which may be associated with the child process. (On Unix, using a GChildWatch source is equivalent to calling waitpid() or handling the SIGCHLD signal manually. On Windows, calling g_spawn_close_pid() is equivalent to calling CloseHandle() on the process handle returned).

glib.SPAWN_LEAVE_DESCRIPTORS_OPEN means that the parent's open file descriptors will be inherited by the child; otherwise all descriptors except stdin/stdout/stderr will be closed before calling exec() in the child. glib.SPAWN_SEARCH_PATH means that argv[0] need not be an absolute path, it will be looked for in the user's PATH. glib.SPAWN_STDOUT_TO_DEV_NULL means that the child's standard output will be discarded, instead of going to the same location as the parent's standard output. If you use this flag, standard_output must be None. glib.SPAWN_STDERR_TO_DEV_NULL means that the child's standard error will be discarded, instead of going to the same location as the parent's standard error. If you use this flag, standard_error must be None. glib.SPAWN_CHILD_INHERITS_STDIN means that the child will inherit the parent's standard input (by default, the child's standard input is attached to /dev/null). If you use this flag, standard_input must be None. glib.SPAWN_FILE_AND_ARGV_ZERO means that the first element of argv is the file to execute, while the remaining elements are the actual argument vector to pass to the file. Normally the glib.spawn_async() function uses argv[0] as the file to execute, and passes all of argv to the child.

child_setup and user_data are a function and user data. On POSIX platforms, the function is called in the child after GLib has performed all the setup it plans to perform (including creating pipes, closing file descriptors, etc.) but before calling exec(). That is, child_setup is called just before calling exec() in the child. Obviously actions taken in this function will only affect the child, not the parent. On Windows, there is no separate fork() and exec() functionality. Child processes are created and run right away with one API call, CreateProcess(). child_setup is called in the parent process just before creating the child process. You should carefully consider what you do in child_setup if you intend your software to be portable to Windows.

The returned child process id can be used to send signals to the child, or to wait for the child if you specified the glib.SPAWN_DO_NOT_REAP_CHILD flag. On Windows, child pid will be returned only if you specified the glib.SPAWN_DO_NOT_REAP_CHILD flag.

The caller of the glib.spawn_async() must close any returned file descriptors when they are no longer in use.

If standard_input is None, the child's standard input is attached to /dev/null unless glib.SPAWN_CHILD_INHERITS_STDIN is set.

If standard_error is None, the child's standard error goes to the same location as the parent's standard error unless glib.SPAWN_STDERR_TO_DEV_NULL is set.

If standard_output is None, the child's standard output goes to the same location as the parent's standard output unless glib.SPAWN_STDOUT_TO_DEV_NULL is set.

If an error occurs, the glib.GError exception will be raised.

glib.get_current_time

    def glib.get_current_time()

Returns :

the current time as the number of seconds and microseconds from the epoch.

Note

This function is available in PyGTK 2.8 and above.

The glib.get_current_time() function reurns the current time of day as the number of seconds and microseconds from the epoch.

glib.get_user_cache_dir

    def glib.get_user_cache_dir()

Returns :

a strings with a path to user's cache directory.

Note

This function is available in PyGObject 2.18 and above.

Returns a base directory in which to store non-essential, cached data specific to particular user.

On UNIX platforms this is determined using the mechanisms described in the XDG Base Directory Specification.

glib.get_user_config_dir

    def glib.get_user_config_dir()

Returns :

a strings with a path to user's configuration directory.

Note

This function is available in PyGObject 2.18 and above.

Returns a base directory in which to store user-specific application configuration information such as user preferences and settings.

On UNIX platforms this is determined using the mechanisms described in the XDG Base Directory Specification.

glib.get_user_data_dir

    def glib.get_user_data_dir()

Returns :

a strings with a path to user's data directory.

Note

This function is available in PyGObject 2.18 and above.

Returns a base directory in which to access application data such as icons that is customized for a particular user

On UNIX platforms this is determined using the mechanisms described in the XDG Base Directory Specification.

glib.get_user_special_dir

    def glib.get_user_special_dir(directory)

directory :

the logical id of special directory, see User Directory constants for the list of supported values

Returns :

a strings with a path to the requested directory.

Note

This function is available in PyGObject 2.18 and above.

Returns the full path of a special directory using its logical id.

On Unix this is done using the XDG special user directories. For compatibility with existing practise, glib.USER_DIRECTORY_DESKTOP falls back to $HOME/Desktop when XDG special user directories have not been set up.

Depending on the platform, the user might be able to change the path of the special directory without requiring the session to restart; GLib will not reflect any change once the special directories are loaded.

glib.main_depth

    def glib.main_depth()

Returns :

the depth of the stack of calls to the main context.

Note

This function is available in PyGTK 2.8 and above.

The main_depth() function returns the depth of the stack of calls in the main context. That is, when called from the toplevel, it gives 0. When called from within a callback from the glib.MainContext.iteration() method (or the glib.MainLoop.run() method, etc.) it returns 1. When called from within a callback to a recursive call to the glib.MainContext.iteration() method), it returns 2. And so forth.

glib.threads_init

    def glib.threads_init()

Returns :

Note

This function is available in PyGTK 2.4 and above.

The threads_init() function initializes the the use of Python threading in the glib module. This function is different than the gtk.gdk.threads_init() function as that function also initializes the gdk threads.

glib.signal_accumulator_true_handled

    def glib.signal_accumulator_true_handled()

Note

This function is available in PyGTK 2.8 and above.

The signal_accumulator_true_handled() function is only used as accumulator argument when registering signals.

glib.filename_display_name

    def glib.filename_display_name(filename)

filename :

a pathname in the file name encoding

Returns :

an UTF8 rendition of filename.

Note

This function is available in PyGTK 2.10 and above.

The filename_display_name() function converts a filename into a valid UTF-8 string. The conversion is not necessarily reversible, so you should keep the original around and use the return value of this function only for display purposes. Unlike g_filename_to_utf8(), the result is guaranteed to be non-None even if the filename actually isn't in the file name encoding.

If you know the whole pathname of the file you should use the glib.filename_display_basename() function, since that allows location-based translation of filenames.

glib.filename_display_basename

    def glib.filename_display_basename(filename)

filename :

an absolute pathname in the file name encoding

Returns :

an UTF8 rendition of filename.

Note

This function is available in PyGTK 2.10 and above.

The filename_display_basename() function returns the display basename for the particular filename, guaranteed to be valid UTF-8. The display name might not be identical to the filename, for instance there might be problems converting it to UTF-8, and some files can be translated in the display.

You must pass the whole absolute pathname to this functions so that translation of well known locations can be done.

This function is preferred over the glib.filename_display_name() function if you know the whole path, as it allows translation.

glib.filename_from_utf8

    def glib.filename_from_utf8(utf8string)

utf8string :

a UTF-8 encoded string.

Returns :

a filename encoded in the GLib filename encoding.

Note

This function is available in PyGTK 2.10 and above.

The filename_from_utf8() function converts a string from UTF-8 to the encoding GLib uses for filenames. Note that on Windows GLib uses UTF-8 for filenames.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofileenumerator.html0000644000000000000000000006442511272036627027035 0ustar rootrootgio.FileEnumerator

gio.FileEnumerator

gio.FileEnumerator — Enumerated Files Routines.

Synopsis

class gio.FileEnumerator(gobject.GObject):
    def close(cancellable=None)
def close_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def close_finish(result)
def get_container()
def has_pending()
def is_closed()
def next_file(cancellable=None)
def next_files_async(num_files, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def next_files_finish(result)
def set_pending(pending)

gio.FileEnumerator Properties

"container"Write - Construct onlyThe container that is being enumerated.

Description

The gio.FileEnumerator allows you to operate on a set of gio.Files returning a gio.FileInfo structure for each file enumerated (e.g. gio.File.enumerate_children() will return a The gio.FileEnumerator for each of the children within a directory).

To get the next file's information from a The gio.FileEnumerator use gio.FileEnumerator.next_file() or its asynchronous version, gio.FileEnumerator.next_files_async(). Note that the asynchronous version will return a list of gio.FileInfos, whereas the synchronous will only return the next file in the enumerator.

To close a gio.FileEnumerator use close, or its asynchronous version, close_async. Once a gio.FileEnumerator is closed, no further actions may be performed on it.

Methods

gio.FileEnumerator.close

    def close(cancellable=None)

cancellable :

Optional gio.Cancellable object, None to ignore.

Returns :

True on success or False on error.

The close() method releases all resources used by this enumerator, making the Gio Error Constants return gio.ERROR_CLOSED on all calls.

This will be automatically called when the last reference is dropped, but you might want to call this function to make sure resources are released as early as possible.

gio.FileEnumerator.close_async

    def close_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

callback :

A GAsyncReadyCallback to call when the request is satisfied.

io_priority :

The Glib Priority Constants of the request.

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The close_async() method asynchronously closes the file enumerator.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned in gio.FileEnumerator.close_finish().

gio.FileEnumerator.close_finish

    def close_finish(result)

result :

a GAsyncResult.

Returns :

True if the close operation has finished successfully.

The close_finish() method finishes closing a file enumerator, started from gio.FileEnumerator.close_async().

If the file enumerator was already closed when gio.FileEnumerator.close_async() was called, then this function will report gio.ERROR_CLOSED in error, and return False. If the file enumerator had pending operation when the close operation was started, then this function will report gio.ERROR_PENDING, and return False. If cancellable was not None, then the operation may have been cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be set, and False will be returned.

gio.FileEnumerator.get_container

    def get_container()

Returns :

the gio.File which is being enumerated.

The get_container() method gets the gio.File container which is being enumerated.

gio.FileEnumerator.has_pending

    def has_pending()

Returns :

True if the enumerator has pending operations.

The has_pending() method checks if the file enumerator has pending operations.

gio.FileEnumerator.is_closed

    def is_closed()

Returns :

True if the enumerator is closed.

The is_closed() method checks if the file enumerator has been closed.

gio.FileEnumerator.next_file

    def next_file(cancellable=None)

cancellable :

Optional gio.Cancellable object, None to ignore.

Returns :

A gio.FileInfo or None on error or end of enumerator.

The next_file() method returns information for the next file in the enumerated object. Will block until the information is available. The gio.FileInfo returned from this function will contain attributes that match the attribute string that was passed when the GFileEnumerator was created.

On error, returns None and sets error to the error. If the enumerator is at the end, None will be returned and error will be unset.

gio.FileEnumerator.next_files_async

    def next_files_async(num_files, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

num_files :

The number of file info objects to request.

callback :

A GAsyncReadyCallback to call when the request is satisfied.

io_priority :

The Glib Priority Constants of the request.

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The next_files_async() method requests information for a number of files from the enumerator asynchronously. When all i/o for the operation is finished the callback will be called with the requested information.

The callback can be called with less than num_files files in case of error or at the end of the enumerator. In case of a partial error the callback will be called with any succeeding items and no error, and on the next request the error will be reported. If a request is cancelled the callback will be called with gio.ERROR_CANCELLED.

During an async request no other sync and async calls are allowed, and will result in gio.ERROR_PENDING errors.

Any outstanding i/o request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. Default priority is glib.PRIORITY_DEFAULT.

gio.FileEnumerator.next_files_finish

    def next_files_finish(result)

result :

a GAsyncResult.

Returns :

A list of gio.FileInfos.

The next_files_finish() method finishes the asynchronous operation started with gio.FileEnumerator.next_files_async().

gio.FileEnumerator.set_pending

    def set_pending(pending)

pending :

A boolean value.

The push_current() method sets the file enumerator as having pending operations.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gioinputstream.html0000644000000000000000000011616011272036627026361 0ustar rootrootgio.InputStream

gio.InputStream

gio.InputStream — Base class for implementing streaming input

Synopsis

class gio.InputStream(gobject.GObject):
    def clear_pending()
def close(cancellable=None)
def close_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def close_finish(result)
def has_pending()
def is_closed()
def read(count=-1, cancellable=None)
def read_async(count, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def read_finish(result)
def read_part(count=-1, cancellable=None)
def set_pending()
def skip(count, cancellable=None)
def skip_async(count, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def skip_finish(result)

Description

gio.InputStream has functions to read from a stream ( gio.InputStream.read() ), to close a stream ( gio.InputStream.close() ) and to skip some content ( gio.InputStream.skip() ).

To copy the content of an input stream to an output stream without manually handling the reads and writes, use gio.OutputStream.splice().

All of these functions have async variants too.

Methods

gio.InputStream.clear_pending

    def clear_pending()

The clear_pending() method clears the pending flag on stream.

gio.InputStream.close

    def close(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True on success False on failure.

The close() method closes the stream, releasing resources related to it.

Once the stream is closed, all other operations will return gio.IO_ERROR_CLOSED. Closing a stream multiple times will not return an error.

Streams will be automatically closed when the last reference is dropped, but you might want to call this function to make sure resources are released as early as possible.

Some streams might keep the backing store of the stream (e.g. a file descriptor) open after the stream is closed. See the documentation for the individual stream for details.

On failure the first error that happened will be reported, but the close operation will finish as much as possible. A stream that failed to close will still return gio.IO_ERROR_CLOSED for all operations. Still, it is important to check and report the error to the user.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned. Cancelling a close will still leave the stream closed, but some streams can use a faster close that doesn't block to e.g. check errors.

gio.InputStream.close_async

    def close_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The close_async() method asynchronously requests an asynchronous closes of the stream, releasing resources related to it.

For more details, see gio.InputStream.close() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.InputStream.close_finish() to get the result of the operation.

gio.InputStream.close_finish

    def close_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the stream was closed successfully.

The close_finish() method finishes an asynchronous file append operation started with gio.InputStream.close_async().

gio.InputStream.has_pending

    def has_pending()

Returns :

True if stream has pending actions.

The has_pending() method checks if an input stream has pending actions.

gio.InputStream.is_closed

    def is_closed()

Returns :

True if the stream is closed.

The is_closed() method checks if an input stream is closed.

gio.InputStream.read

    def read(count=-1, cancellable=None)

count :

optionally the number of bytes that will be read from the stream.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

The number of bytes read, or -1 on error.

The read() method tries to read count bytes from the stream into the buffer starting at buffer. Will block during this read.

This function is similar to gio.InputStream.read_part(), except it tries to read as many bytes as requested, only stopping on an error or end of stream.

On a successful read of count bytes, or if we reached the end of the stream, True is returned, and bytes_read is set to the number of bytes read into buffer.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned. Cancelling a close will still leave the stream closed, but some streams can use a faster close that doesn't block to e.g. check errors.

If there is an error during the operation False is returned and error is set to indicate the error status, bytes_read is updated to contain the number of bytes read into buffer before the error occurred.

gio.InputStream.read_async

    def read_async(count, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

count :

the number of bytes that will be read from the stream.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The read_async() method requests an asynchronous read of count bytes from the stream into the buffer.

For more details, see gio.InputStream.read() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.InputStream.read_finish() to get the result of the operation.

During an async request no other sync and async calls are allowed, and will result in gio.IO_ERROR_PENDING errors.

A value of count larger than G_MAXSSIZE will cause a gio.IO_ERROR_INVALID_ARGUMENT error.

On success, the number of bytes read into the buffer will be passed to the callback. It is not an error if this is not the same as the requested size, as it can happen e.g. near the end of a file, but generally we try to read as many bytes as requested. Zero is returned on end of file (or if count is zero), but never otherwise.

Any outstanding i/o request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. Default priority is glib.PRIORITY_DEFAULT.

The asyncronous methods have a default fallback that uses threads to implement asynchronicity, so they are optional for inheriting classes. However, if you override one you must override all.

gio.InputStream.read_finish

    def read_finish(result)

result :

a gio.AsyncResult.

Returns :

The number of bytes read in, or -1 on error.

The read_finish() method finishes an asynchronous stream read operation started by gio.InputStream.read_async().

gio.InputStream.read_part

    def read_part(count=-1, cancellable=None)

count :

optionally the number of bytes that will be read from the stream.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

The number of bytes read, or -1 on error.

The read_part() method tries to read count bytes from the stream into the buffer starting at buffer. Will block during this read.

If count is zero returns zero and does nothing. A value of count larger than G_MAXSSIZE will cause a gio.IO_ERROR_INVALID_ARGUMENT error.

On success, the number of bytes read into the buffer is returned. It is not an error if this is not the same as the requested size, as it can happen e.g. near the end of a file. Zero is returned on end of file (or if count is zero), but never otherwise.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned. Cancelling a close will still leave the stream closed, but some streams can use a faster close that doesn't block to e.g. check errors.

On error -1 is returned and error is set accordingly.

Note

This method roughly corresponds to C GIO g_input_stream_read.

gio.InputStream.set_pending

    def set_pending()

Returns :

True if pending was previously unset and is now set.

The set_pending() method sets stream to have actions pending. If the pending flag is already set or stream is closed, it will return False and set error.

gio.InputStream.skip

    def skip(count, cancellable=None)

count :

the number of bytes that will be skipped from the stream.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

The number of bytes skipped, or -1 on error

The skip() method tries to skip count bytes from the stream. Will block during the operation.

This is identical to read(), from a behaviour standpoint, but the bytes that are skipped are not returned to the user. Some streams have an implementation that is more efficient than reading the data.

This function is optional for inherited classes, as the default implementation emulates it using read.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thskip. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned. Cancelling a close will still leave the stream closed, but some streams can use a faster close that doesn't block to e.g. check errors.

gio.InputStream.skip_async

    def skip_async(count, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

count :

the number of bytes that will be skipped from the stream.

callback :

a GAsyncskipyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The skip_async() method request an asynchronous skip of count bytes from the stream.

For more details, see gio.InputStream.skip() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.InputStream.skip_finish() to get the result of the operation.

During an async request no other sync and async calls are allowed, and will result in gio.IO_ERROR_PENDING errors.

A value of count larger than G_MAXSSIZE will cause a gio.IO_ERROR_INVALID_ARGUMENT error.

On success, the number of bytes skipped will be passed to the callback. It is not an error if this is not the same as the requested size, as it can happen e.g. near the end of a file, but generally we try to skip as many bytes as requested. Zero is returned on end of file (or if count is zero), but never otherwise.

Any outstanding i/o request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. Default priority is glib.PRIORITY_DEFAULT.

The asyncronous methods have a default fallback that uses thskips to implement asynchronicity, so they are optional for inheriting classes. However, if you override one you must override all.

gio.InputStream.skip_finish

    def skip_finish(result)

result :

a gio.AsyncResult.

Returns :

The number of bytes skipped in, or -1 on error.

The skip_finish() method finishes an asynchronous stream skip operation started by gio.InputStream.skip_async().

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giovolumemonitor.html0000644000000000000000000012453111272036627026726 0ustar rootrootgio.VolumeMonitor

gio.VolumeMonitor

gio.VolumeMonitor — Volume Monitor.

gio.VolumeMonitor Signal Prototypes

gobject.GObject Signal Prototypes

"drive-changed"

def callback(volume_monitor, drive, user_param1, ...)

"drive-connected"

def callback(volume_monitor, drive, user_param1, ...)

"drive-disconnected"

def callback(volume_monitor, drive, user_param1, ...)

"drive-eject-button"

def callback(volume_monitor, drive, user_param1, ...)

"mount-added"

def callback(volume_monitor, mount, user_param1, ...)

"mount-changed"

def callback(volume_monitor, mount, user_param1, ...)

"mount-pre-unmount"

def callback(volume_monitor, mount, user_param1, ...)

"mount-removed"

def callback(volume_monitor, mount, user_param1, ...)

"volume-added"

def callback(volume_monitor, volume, user_param1, ...)

"volume-changed"

def callback(volume_monitor, volume, user_param1, ...)

"volume-removed"

def callback(volume_monitor, volume, user_param1, ...)

Description

The gio.VolumeMonitor is for listing the user interesting devices and volumes on the computer. In other words, what a file selector or file manager would show in a sidebar.

Methods

gio.VolumeMonitor.get_connected_drives

    def get_connected_drives()

Returns :

a list of connected gio.Drive objects.

The get_connected_drives() method gets a list of drives connected to the system.

gio.VolumeMonitor.get_mount_for_uuid

    def get_mount_for_uuid(uuid)

uuid :

The UUID to look for.

Returns :

A gio.Mount or None if no such mount is available.

The get_mount_for_uuid() method finds a gio.Mount object by it's UUID (see gio.Mount.get_uuid())

gio.VolumeMonitor.get_mounts

    def get_mounts()

Returns :

A list of gio.Mount objects.

The get_mounts() method gets a list of the mounts on the system.

gio.VolumeMonitor.get_volume_for_uuid

    def get_volume_for_uuid(uuid)

uuid :

The UUID to look for.

Returns :

A gio.Volume or None if no such volume is available.

The get_mount_for_uuid() method finds a gio.Mount object by it's UUID (see gio.Mount.get_uuid())

gio.VolumeMonitor.get_volumes

    def get_volumes()

Returns :

A list of gio.Volume objects.

The get_volumes() method gets a list of the volumes on the system.

Functions

gio.volume_monitor_adopt_orphan_mount

    def volume_monitor_adopt_orphan_mount()

Returns :

The gio.Volume object that is the parent for mount or None if no wants to adopt the gio.Mount.

Warning

This method will be deprecated starting from GIO 2.20

The volume_monitor_adopt_orphan_mount() function should be called by any gio.VolumeMonitor implementation when a new gio.Mount object is created that is not associated with a gio.Volume object. It must be called just before emitting the mount_added signal.

If the return value is not None, the caller must associate the returned gio.Volume object with the gio.Mount. This involves returning it in it's gio.Mount.get_volumes() implementation. The caller must also listen for the "removed" signal on the returned object and give up it's reference when handling that signal

Similary, if implementing gio.volume_monitor_adopt_orphan_mount(), the implementor must take a reference to mount and return it in it's gio.Volume.get_mount() implemented. Also, the implementor must listen for the "unmounted" signal on mount and give up it's reference upon handling that signal.

There are two main use cases for this function.

One is when implementing a user space file system driver that reads blocks of a block device that is already represented by the native volume monitor (for example a CD Audio file system driver). Such a driver will generate it's own gio.Mount object that needs to be assoicated with the gio.Volume object that represents the volume.

The other is for implementing a gio.VolumeMonitor whose sole purpose is to return gio.Volume objects representing entries in the users "favorite servers" list or similar.

gio.volume_monitor_get

    def volume_monitor_get()

Returns :

A reference to the gio.VolumeMonitor used by gio.

The volume_monitor_get() function gets the volume monitor used by gio.

Signals

The "drive-changed" gio.Volume Signal

    def callback(volume_monitor, drive, user_param1, ...)

volume_monitor :

the volume monitor

drive :

the drive that changed

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when a drive changes.

The "drive-connected" gio.Volume Signal

    def callback(volume_monitor, drive, user_param1, ...)

volume_monitor :

the volume monitor

drive :

the drive that was connected

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when a drive is connected to the system.

The "drive-disconnected" gio.Volume Signal

    def callback(volume_monitor, drive, user_param1, ...)

volume_monitor :

the volume monitor

drive :

the drive that was disconnected

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when a drive is disconnected from the system.

The "drive-eject-button" gio.Volume Signal

    def callback(volume_monitor, drive, user_param1, ...)

volume_monitor :

the volume monitor

drive :

the drive where the eject button was pressed

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when the eject button is pressed on drive.

The "mount-added" gio.Volume Signal

    def callback(volume, mount, user_param1, ...)

volume_monitor :

the volume monitor

mount :

a Mount that was added.

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when a mount is added.

The "mount-changed" gio.Volume Signal

    def callback(volume_monitor, mount, user_param1, ...)

volume_monitor :

the volume monitor

mount :

the Mount that changed.

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when a mount changes.

The "mount-pre-unmount" gio.Volume Signal

    def callback(volume_monitor, mount, user_param1, ...)

volume_monitor :

the volume monitor

mount :

the Mount that is being unmounted.

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when a mount is about to be removed.

The "mount-removed" gio.Volume Signal

    def callback(volume_monitor, mount, user_param1, ...)

volume_monitor :

the volume monitor

mount :

the Mount that was removed.

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when a mount is removed.

The "volume-added" gio.Volume Signal

    def callback(volume_monitor, volume, user_param1, ...)

volume_monitor :

the volume monitor

volume :

a Volume that was added.

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when a mountable volume is added to the system.

The "volume-changed" gio.Volume Signal

    def callback(volume_monitor, volume, user_param1, ...)

volume_monitor :

the volume monitor

volume :

a Volume that changed.

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when mountable volume is changed.

The "volume-removed" gio.Volume Signal

    def callback(volume_monitor, volume, user_param1, ...)

volume_monitor :

the volume monitor

volume :

a Volume that was removed.

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when a mountable volume is removed from the system.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/pygobject.devhelp0000644000000000000000000016060511272036627024660 0ustar rootroot ./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofileinfo.html0000644000000000000000000005602211272036627025601 0ustar rootrootgio.FileInfo

gio.FileInfo

gio.FileInfo — File Information and Attributes

Synopsis

class gio.FileInfo(gobject.GObject):
    gio.FileInfo()
def clear_status()
def copy_into()
def dup()
def get_attribute_as_string(attribute)
def get_attribute_boolean(attribute)
def get_attribute_byte_string(attribute)
def get_attribute_data(attribute)
def get_attribute_int32(attribute)
def get_attribute_int64(attribute)
def get_attribute_object(attribute)
def get_attribute_status(attribute)
def get_attribute_string(attribute)
def get_attribute_type(attribute)
def get_attribute_uint32(attribute)
def get_attribute_uint64(attribute)
def get_content_type()
def get_display_name()
def get_edit_name()
def get_etag()
def get_file_type()
def get_icon()
def get_is_backup()
def get_is_hidden()
def get_is_symlink()
def get_modification_time()
def get_name()
def get_size()
def get_sort_order()
def get_symlink_target()
def has_attribute(attribute)
def list_attributes(name_space)
def remove_attribute(attribute)
def set_attribute(attribute, type, value_p)
def set_attribute_boolean(attribute, attr_value)
def set_attribute_byte_string(attribute, attr_value)
def set_attribute_data(attribute, attr_value)
def set_attribute_int32(attribute, attr_value)
def set_attribute_int64(attribute, attr_value)
def set_attribute_mask(mask)
def set_attribute_object(attribute, attr_value)
def set_attribute_status(attribute, attr_value)
def set_attribute_string(attribute, attr_value)
def set_attribute_uint32(attribute)
def set_attribute_uint64(attribute)
def set_content_type(content_type)
def set_display_name(display_name)
def set_edit_name(edit_name)
def set_file_type(type)
def set_icon(icon)
def set_is_hidden(is_hidden)
def set_is_symlink(is_symlink)
def set_modification_time(mtime)
def set_name(name)
def set_size(size)
def set_sort_order(sort_order)
def set_symlink_tarset(symlink_target)
def unset_attribute_mask()

Ancestry

+-- gobject.GObject
  +-- gio.FileInfo

Description

Functionality for manipulating basic metadata for files. gio.FileInfo implements methods for getting information that all files should contain, and allows for manipulation of extended attributes.

See gio.FileAttribute for more information on how GIO handles file attributes.

To obtain a gio.FileInfo for a gio.File, use gio.File.query_info() (or its async variant). To obtain a gio.FileInfo for a file input or output stream, use gio.FileInputStream.query_info() or gio.FileOutputStream.query_info() (or their async variants).

To change the actual attributes of a file, you should then set the attribute in the gio.FileInfo and call gio.File.set_attributes_from_info() or gio.File.set_attributes_async() on a gio.File.

However, not all attributes can be changed in the file. For instance, the actual size of a file cannot be changed via gio.FileInfo.set_size(). You may call gio.File.query_settable_attributes() and gio.File.query_writable_namespace() to discover the settable attributes of a particular file at runtime.

gio.FileAttributeMatcher allows for searching through a GFileInfo for attributes.

Constructor

    gio.FileInfo()

Returns :

a new gio.FileInfo

Creates a new gio.FileInfo

Methods

Unfinished section, you may want to see the relevant C API docs for methods descriptions.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giomemoryoutputstream.html0000644000000000000000000002104111272036627030004 0ustar rootrootgio.MemoryOutputStream

gio.MemoryOutputStream

gio.MemoryOutputStream — Streaming output operations on memory chunks

Synopsis

class gio.MemoryOutputStream(gio.OutputStream):
    gio.MemoryOutputStream()
def get_contents()
def get_data_size()
def get_size()

Implemented Interfaces

gio.MemoryOutputStream implements gio.Seekable

Description

gio.MemoryOutputStream is a class for using arbitrary memory chunks as output for GIO streaming output operations.

Constructor

    gio.MemoryOutputStream()

Returns :

a new gio.MemoryOutputStream.

Creates a new gio.MemoryOutputStream.

Methods

gio.MemoryOutputStream.get_contents

    def get_contents()

Returns :

the stream's data

The get_contents() method gets any loaded data from the ostream.

Note that the returned data may become invalid on the next write or truncate operation on the stream.

gio.MemoryOutputStream.get_data_size

    def get_data_size()

Returns :

the number of bytes written to the stream

The get_data_size() method returns the number of bytes from the start up to including the last byte written in the stream that has not been truncated away.

gio.MemoryOutputStream.get_size

    def get_size()

Returns :

the number of bytes allocated for the data buffer

The get_size() method gets the size of the currently allocated data area (availible from gio.MemoryOutputStream.get_contents() ).

Note that for growable streams the returned size may become invalid on the next write or truncate operation on the stream.

If you want the number of bytes currently written to the stream, use gio.MemoryOutputStream.get_data_size().

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofilteroutputstream.html0000644000000000000000000001625411272036627027773 0ustar rootrootgio.FilterOutputStream

gio.FilterOutputStream

gio.FilterOutputStream — Filter Output Stream

Synopsis

class gio.FilterOutputStream(gio.OutputStream):
    def get_base_stream()
def get_close_base_stream()
def set_close_base_stream(close_base)

gio.FilterOutputStream Properties

"base-stream"Read - Write - Construct onlyThe underlying base stream on which the io ops will be done.
"close-base-stream"Read - Write - Construct onlyIf the base stream should be closed when the filter stream is closed. Default value: True.

Description

Filter Output Stream.

Methods

gio.FilterOutputStream.get_base_stream

    def get_base_stream()

Returns :

A gio.OutputStream

The get_base_stream() method gets the base stream for the filter stream.

gio.FilterOutputStream.get_close_base_stream

    def get_close_base_stream()

Returns :

True if the base stream will be closed.

The get_close_base_stream() method returns whether the base stream will be closed when stream is closed.

gio.FilterOutputStream.set_close_base_stream

    def set_close_base_stream(close_base)

close_base :

True to close the base stream.

The set_close_base_stream() method sets whether the base stream will be closed when stream is closed.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giounixoutputstream.html0000644000000000000000000002252611272036627027470 0ustar rootrootgio.unix.OutputStream

gio.unix.OutputStream

gio.unix.OutputStream — Streaming output operations for UNIX file descriptors.

Synopsis

class gio.unix.OutputStream(gio.OutputStream):
    gio.unix.OutputStream(fd, close_fd)
def get_close_fd()
def get_fd()
def set_close_fd(close_fd)

gio.unix.OutputStream Properties

"close-fd"Read - WriteWhether to close the file descriptor when the stream is closed. Default value: True.
"fd"Read - Write - Construct onlyThe file descriptor that the stream writes to. Default value: -1.

Description

gio.unix.OutputStream implements gio.OutputStream for writing to a UNIX file descriptor, including asynchronous operations. The file descriptor must be selectable, so it doesn't work with opened files.

Note that gio.unix.OutputStream belongs to the UNIX-specific GIO interfaces, thus you have to use the gio-unix-2.0.pc pkg-config file when using it.

Constructor

    gio.unix.OutputStream(fd, close_fd)

fd :

a UNIX file descriptor.

close_fd :

True to close the file descriptor when done

Returns :

a new gio.unix.OutputStream

Creates a new gio.unix.OutputStream from the given fd.

If close_fd is True, the file descriptor will be closed when the stream is closed.

Methods

gio.unix.OutputStream.get_close_fd

    def get_close_fd()

Returns :

True if the file descriptor is closed when done.

The get_close_fd() method returns whether the file descriptor of stream will be closed when the stream is closed.

gio.unix.OutputStream.get_fd

    def get_fd()

Returns :

The file descriptor of stream.

The get_fd() method return the UNIX file descriptor that the stream reads from.

gio.unix.OutputStream.set_close_fd

    def set_close_fd(close_fd)

close_fd :

True to close the file descriptor when done .

The set_close_fd() method sets whether the file descriptor of stream shall be closed when the stream is closed.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gioseekable.html0000644000000000000000000003037511272036627025564 0ustar rootrootgio.Seekable

gio.Seekable

gio.Seekable — Stream seeking interface.

Synopsis

class gio.Seekable(gobject.GInterface):
    def tell()
def can_seek()
def seek(offset, type=0, cancellable=None)
def can_truncate()
def truncate(offset, cancellable=None)

Description

gio.Seekable is implemented by streams (implementations of gio.InputStream or gio.OutputStream) that support seeking.

Methods

gio.Seekable.tell

    def tell()

Returns :

the offset from the beginning of the buffer

Tells the current position within the stream.

gio.Seekable.can_seek

    def can_seek()

Returns :

True if this gio.Seekable can be seeked with the seek() method, False if not.

The can_seek() method checks if the seek() can be used on this gio.Seekable.

gio.Seekable.seek

    def seek(offset, type=0, cancellable=None)

offset :

the offset that is added to the position determined by the type parameter.

type :

0=current position, 1=start of the file, 2=end of the file.

cancellable :

a gio.Cancellable or None.

Returns :

True on successful seek, False otherwise.

Seeks in the stream by the given offset, modified by type.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread.

gio.Seekable.can_truncate

    def can_truncate()

Returns :

True if this gio.Seekable can be truncated with the truncate() method, False if not.

The can_truncate() method checks if the truncate() can be used on this gio.Seekable.

gio.Seekable.truncate

    def truncate(offset, cancellable=None)

offset :

the offset at which the stream should be truncated

cancellable :

a gio.Cancellable or None.

Returns :

True if successful, False otherwise.

Truncates a stream with a given offset.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread.

If an operation was partially finished when the operation was cancelled the partial result will be returned, without an error.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/giounix-class-reference.html0000644000000000000000000000423411272036627026723 0ustar rootrootPyGio Unix Class Reference

PyGio Unix Class Reference

Table of Contents

gio.unix.InputStream — Streaming input operations for UNIX file descriptors.
gio.unix.OutputStream — Streaming output operations for UNIX file descriptors.
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gobjectginterface.html0000644000000000000000000000511011272036627026744 0ustar rootrootgobject.GInterface

gobject.GInterface

gobject.GInterface — an object representing a GInterface

Synopsis

class gobject.GInterface:

Ancestry

+-- gobject.GInterface

Description

gobject.GInterface is an abstract base class that encapsulates a GInterface.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giodatainputstream.html0000644000000000000000000012647611272036627027226 0ustar rootrootgio.DataInputStream

gio.DataInputStream

gio.DataInputStream — Data Input Stream

Synopsis

class gio.DataInputStream(gio.BufferedInputStream):
    gio.DataInputStream(base_stream)
def get_byte_order()
def get_newline_type()
def read_byte(cancellable=None)
def read_int16(cancellable=None)
def read_int32(cancellable=None)
def read_int64(cancellable=None)
def read_line(cancellable=None)
def read_line_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def read_line_finish(result)
def read_uint16(cancellable=None)
def read_uint32(cancellable=None)
def read_uint64(cancellable=None)
def read_until(stop_chars, cancellable=None)
def read_until_async(stop_chars, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def read_until_finish(result)
def set_byte_order(order)
def set_newline_type(type)

gio.DataInputStream Properties

"byte-order"Read - WriteThe byte order. Default value: gio.DATA_STREAM_BYTE_ORDER_BIG_ENDIAN.
"newline-type"Read - WriteThe accepted types of line ending. Default value: gio.DATA_STREAM_NEWLINE_TYPE_LF.

Description

gio.DataInputStream implements gio.InputStream and includes functions for reading structured data directly from a binary input stream.

Constructor

    gio.DataInputStream(base_stream)

base_stream :

a gio.InputStream.

Returns :

a new gio.DataInputStream

Creates a new gio.DataInputStream from the given base_stream.

Methods

gio.DataInputStream.get_byte_order

    def get_byte_order()

Returns :

the stream's current Gio Data Stream Byte Order Constants.

The get_byte_order() method gets the byte order for the data input stream.

gio.DataInputStream.get_newline_type

    def get_newline_type()

Returns :

Gio Data Stream Newline Type Constants for the given stream.

The get_newline_type() method gets the current newline type for the stream.

gio.DataInputStream.read_byte

    def read_byte(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

an unsigned 8-bit/1-byte value read from the stream or 0 if an error occurred.

The read_byte() method reads an unsigned 8-bit/1-byte value from stream.

gio.DataInputStream.read_int16

    def read_int16(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a signed 16-bit/2-byte value read from stream or 0 if an error occurred.

The read_int16() method reads a 16-bit/2-byte value from stream.

In order to get the correct byte order for this read operation, see gio.DataInputStream.get_byte_order() and gio.DataInputStream.set_byte_order().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataInputStream.read_int32

    def read_int32(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a signed 32-bit/4-byte value read from the stream or 0 if an error occurred.

The read_int32() method reads a signed 32-bit/4-byte value from stream.

In order to get the correct byte order for this read operation, see gio.DataInputStream.get_byte_order() and gio.DataInputStream.set_byte_order().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataInputStream.read_int64

    def read_int64(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a signed 64-bit/8-byte value read from the stream or 0 if an error occurred.

The read_int64() method reads a signed 64-bit/8-byte value from stream.

In order to get the correct byte order for this read operation, see gio.DataInputStream.get_byte_order() and gio.DataInputStream.set_byte_order().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataInputStream.read_line

    def read_line(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a string with the line that was read in (without the newlines). Set length to a gsize to get the length of the read line. On an error, it will return None and error will be set. If there's no content to read, it will still return None, but error won't be set.

The read_line() reads a line from the data input stream.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned. If an operation was partially finished when the operation was cancelled the partial result will be returned, without an error.

gio.DataInputStream.read_line_async

    def read_line_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The read_line_async() method is the asynchronous version of gio.DataInputStream.read_line(). It is an error to have two outstanding calls to this function.

For the synchronous version of this function, see gio.DataInputStream.read_line().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be set

gio.DataInputStream.read_line_finish

    def read_line_finish(result)

result :

a gio.AsyncResult.

Returns :

a string with the line that was read in (without the newlines). On an error, it will return None and error will be set. If there's no content to read, it will still return None, but error won't be set.

The read_line_finish() method finishes an asynchronous file append operation started with gio.DataInputStream.read_line_async().

gio.DataInputStream.read_uint16

    def read_uint16(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a signed 16-bit/2-byte value read from stream or 0 if an error occurred.

The read_uint16() method reads a 16-bit/2-byte value from stream.

In order to get the correct byte order for this read operation, see gio.DataInputStream.get_byte_order() and gio.DataInputStream.set_byte_order().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataInputStream.read_uint32

    def read_uint32(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a signed 32-bit/4-byte value read from the stream or 0 if an error occurred.

The read_uint32() method reads a signed 32-bit/4-byte value from stream.

In order to get the correct byte order for this read operation, see gio.DataInputStream.get_byte_order() and gio.DataInputStream.set_byte_order().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataInputStream.read_uint64

    def read_uint64(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a signed 64-bit/8-byte value read from the stream or 0 if an error occurred.

The read_uint64() method reads a signed 64-bit/8-byte value from stream.

In order to get the correct byte order for this read operation, see gio.DataInputStream.get_byte_order() and gio.DataInputStream.set_byte_order().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataInputStream.read_until

    def read_until(stop_chars, cancellable=None)

stop_chars :

characters to terminate the read.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a string with the data that was read before encountering any of the stop characters. This function will return NULL on an error.

The read_until() reads a string from the data input stream, up to the first occurrence of any of the stop characters.

gio.DataInputStream.read_until_async

    def read_until_async(stop_chars, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

stop_chars :

characters to terminate the read.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The read_until_async() method it's the asynchronous version of gio.DataInputStream.read_until(). It is an error to have two outstanding calls to this function.

For the synchronous version of this function, see gio.DataInputStream.read_until().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be set

When the operation is finished, callback will be called. You can then call gio.DataInputStream.read_until_finish() to get the result of the operation.

gio.DataInputStream.read_until_finish

    def read_until_finish(result)

result :

a gio.AsyncResult.

Returns :

a string with the data that was read before encountering any of the stop characters. This function will return None on an error.

The read_until_finish() method finishes an asynchronous file append operation started with gio.DataInputStream.read_until_async().

gio.DataInputStream.set_byte_order

    def set_byte_order(order)

order :

a Gio Data Stream Byte Order Constants to set.

The set_byte_order() method sets the byte order for the given stream. All subsequent reads from the stream will be read in the given order.

gio.DataInputStream.set_newline_type

    def set_newline_type(type)

type :

a Gio Data Stream Newline Type Constants to set.

The set_newline_type() method sets the newline type for the stream.

Note

Note that using gio.DATA_STREAM_NEWLINE_TYPE_ANY is slightly unsafe. If a read chunk ends in "CR" we must read an additional byte to know if this is "CR" or "CR LF", and this might block if there is no more data availible.
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/gio-constants.html0000644000000000000000000017315311272036627025001 0ustar rootrootgio Constants

gio Constants

gio Constants — the built-in constants of the gio module

Description

Gio Ask Password Flags Constants

Flags that are used to request specific information from the user, or to notify the user of their choices in an authentication situation.

gio.ASK_PASSWORD_ANONYMOUS_SUPPORTED

operation supports anonymous users.

gio.ASK_PASSWORD_NEED_DOMAIN

operation requires a domain.

gio.ASK_PASSWORD_NEED_PASSWORD

operation requires a password.

gio.ASK_PASSWORD_NEED_USERNAME

operation requires a username.

gio.ASK_PASSWORD_SAVING_SUPPORTED

operation supports saving settings.

Gio AppInfo Create Flags Constants

Flags used when creating a gio.AppInfo

gio.APP_INFO_CREATE_NONE

No flags.

gio.APP_INFO_CREATE_NEEDS_TERMINAL

Application opens in a terminal window.

gio.APP_INFO_CREATE_SUPPORTS_URIS

Application supports URI arguments.

Gio Data Stream Byte Order Constants

Used to ensure proper endianness of streaming data sources across various machine architectures.

gio.DATA_STREAM_BYTE_ORDER_BIG_ENDIAN

Selects Big Endian byte order.

gio.DATA_STREAM_BYTE_ORDER_HOST_ENDIAN

Selects endianness based on host machine's architecture.

gio.DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN

Selects Little Endian byte order.

Gio Data Stream Newline Type Constants

Used when checking for or setting the line endings for a given file.

gio.DATA_STREAM_NEWLINE_TYPE_LF

Selects "LF" line endings, common on most modern UNIX platforms.

gio.DATA_STREAM_NEWLINE_TYPE_CR

Selects "CR" line endings.

gio.DATA_STREAM_NEWLINE_TYPE_CR_LF

Selects "CR, LF" line ending, common on Microsoft Windows.

gio.DATA_STREAM_NEWLINE_TYPE_ANY

Automatically try to handle any line ending type.

Gio Emblem Origin Constants

GEmblemOrigin is used to add information about the origin of the emblem to GEmblem.

gio.EMBLEM_ORIGIN_DEVICE

Embleme adds device-specific information.

gio.EMBLEM_ORIGIN_LIVEMETADATA

Emblem depicts live metadata, such as "readonly".

gio.EMBLEM_ORIGIN_TAG

Emblem comes from a user-defined tag, e.g. set by nautilus (in the future).

gio.EMBLEM_ORIGIN_UNKNOWN

Emblem of unknown origin.

Gio Error Constants

GIOError Error codes returned by GIO functions.

gio.ERROR_ALREADY_MOUNTED

File is already mounted.

gio.ERROR_BUSY

File is busy.

gio.ERROR_CANCELLED

Operation was cancelled. See gio.Cancellable.

gio.ERROR_CANT_CREATE_BACKUP

Backup couldn't be created.

gio.ERROR_CLOSED

File was closed.

gio.ERROR_EXISTS

File already exists error.

gio.ERROR_FAILED

Generic error condition for when any operation fails.

gio.ERROR_FAILED_HANDLED

Operation failed and a helper program has already interacted with the user. Do not display any error dialog.

gio.ERROR_FILENAME_TOO_LONG

Filename is too many characters.

gio.ERROR_HOST_NOT_FOUND

Host couldn't be found (remote operations).

gio.ERROR_INVALID_ARGUMENT

Invalid argument.

gio.ERROR_INVALID_FILENAME

Filename is invalid or contains invalid characters.

gio.ERROR_IS_DIRECTORY

File is a directory error.

gio.ERROR_NOT_DIRECTORY

File is not a directory.

gio.ERROR_NOT_EMPTY

File is a directory that isn't empty.

gio.ERROR_NOT_FOUND

File not found error.

gio.ERROR_NOT_MOUNTABLE_FILE

File cannot be mounted.

gio.ERROR_NOT_MOUNTED

File isn't mounted.

gio.ERROR_NOT_REGULAR_FILE

File is not a regular file.

gio.ERROR_NOT_SUPPORTED

Operation not supported for the current backend.

gio.ERROR_NOT_SYMBOLIC_LINK

File is not a symbolic link.

gio.ERROR_NO_SPACE

No space left on drive.

gio.ERROR_PENDING

Operations are still pending.

gio.ERROR_PERMISSION_DENIED

Permission denied.

gio.ERROR_READ_ONLY

File is read only.

gio.ERROR_TIMED_OUT

Operation timed out.

gio.ERROR_TOO_MANY_LINKS

File contains too many symbolic links.

gio.ERROR_TOO_MANY_OPEN_FILES

The current process has too many files open and can't open any more. Duplicate descriptors do count toward this limit. Since 2.20

gio.ERROR_WOULD_BLOCK

Operation would block.

gio.ERROR_WOULD_MERGE

Operation would merge files.

gio.ERROR_WOULD_RECURSE

Operation would be recursive.

gio.ERROR_WRONG_ETAG

File's Entity Tag was incorrect.

Gio File Attribute Constants

The file attributes.

gio.FILE_ATTRIBUTE_STANDARD_TYPE

"standard::type" A key in the "standard" namespace for storing file types. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32. The value for this key should contain a Gio File Type Constants

gio.FILE_ATTRIBUTE_STANDARD_IS_HIDDEN

"standard::is-hidden" A key in the "standard" namespace for checking if a file is hidden. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_STANDARD_IS_BACKUP

"standard::is-backup" A key in the "standard" namespace for checking if a file is a backup file. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_STANDARD_IS_SYMLINK

"standard::is-symlink" A key in the "standard" namespace for checking if the file is a symlink. Typically the actual type is something else, if we followed the symlink to get the type. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL

"standard::is-virtual" A key in the "standard" namespace for checking if a file is virtual. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_STANDARD_NAME

"standard::name" A key in the "standard" namespace for getting the name of the file. The name is the on-disk filename which may not be in any known encoding, and can thus not be generally displayed as is. Use gio.FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME if you need to display the name in a user interface. Corresponding GFileAttributeType is gio.FILE_ATTRIBUTE_TYPE_BYTE_STRING.

gio.FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME

"standard::display-name" A key in the "standard" namespace for getting the display name of the file. A display name is guaranteed to be in UTF8 and can thus be displayed in the UI. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_STANDARD_EDIT_NAME

"standard::edit-name" A key in the "standard" namespace for edit name of the file. An edit name is similar to the display name, but it is meant to be used when you want to rename the file in the UI. The display name might contain information you don't want in the new filename (such as "(invalid unicode)" if the filename was in an invalid encoding). Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_STANDARD_COPY_NAME

"standard::copy-name" A key in the "standard" namespace for getting the copy name of the file. The copy name is an optional version of the name. If available it's always in UTF8, and corresponds directly to the original filename (only transcoded to UTF8). This is useful if you want to copy the file to another filesystem that might have a different encoding. If the filename is not a valid string in the encoding selected for the filesystem it is in then the copy name will not be set. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_STANDARD_ICON

"standard::icon" A key in the "standard" namespace for getting the icon for the file. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_OBJECT. The value for this key should contain a gio.Icon.

gio.FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE

"standard::content-type" A key in the "standard" namespace for getting the content type of the file. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_STRING. The value for this key should contain a valid content type.

gio.FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE

"standard::fast-content-type" A key in the "standard" namespace for getting the fast content type. The fast content type isn't as reliable as the regular one, as it only uses the filename to guess it, but it is faster to calculate than the regular content type. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_STANDARD_SIZE

"standard::size" A key in the "standard" namespace for getting the file's size (in bytes). Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT64.

gio.FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET

"standard::symlink-target" A key in the "standard" namespace for getting the target URI for the file, in the case of gio.FILE_TYPE_SHORTCUT or gio.FILE_TYPE_MOUNTABLE files. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_STANDARD_SORT_ORDER

"standard::sort-order" A key in the "standard" namespace for setting the sort order of a file. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_INT32. An example use would be in file managers, which would use this key to set the order files are displayed. Files with smaller sort order should be sorted first, and files without sort order as if sort order was zero.

gio.FILE_ATTRIBUTE_ETAG_VALUE

"etag::value" A key in the "etag" namespace for getting the value of the file's entity tag. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_ID_FILE

"id::file" A key in the "id" namespace for getting a file identifier. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_STRING. An example use would be during listing files, to avoid recursive directory scanning.

gio.FILE_ATTRIBUTE_ID_FILESYSTEM

"id::filesystem" A key in the "id" namespace for getting the file system identifier. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_STRING. An example use would be during drag and drop to see if the source and target are on the same filesystem (default to move) or not (default to copy).

gio.FILE_ATTRIBUTE_ACCESS_CAN_READ

"access::can-read" A key in the "access" namespace for getting read privileges. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_BOOLEAN. This attribute will be True if the user is able to read the file.

gio.FILE_ATTRIBUTE_ACCESS_CAN_WRITE

"access::can-write" A key in the "access" namespace for getting write privileges.Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN. This attribute will be True if the user is able to write to the file.

gio.FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE

"access::can-execute" A key in the "access" namespace for getting execution privileges. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN. This attribute will be True if the user is able to execute the file.

gio.FILE_ATTRIBUTE_ACCESS_CAN_DELETE

"access::can-delete" A key in the "access" namespace for checking deletion privileges. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN. This attribute will be True if the user is able to delete the file.

gio.FILE_ATTRIBUTE_ACCESS_CAN_TRASH

"access::can-trash" A key in the "access" namespace for checking trashing privileges. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN. This attribute will be True if the user is able to move the file to the trash.

gio.FILE_ATTRIBUTE_ACCESS_CAN_RENAME

"access::can-rename" A key in the "access" namespace for checking renaming privileges. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_BOOLEAN. This attribute will be True if the user is able to rename the file.

gio.FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT

"mountable::can-mount" A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) is mountable. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT

"mountable::can-unmount" A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) is unmountable. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT

"mountable::can-eject" A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be ejected. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE

"mountable::unix-device" A key in the "mountable" namespace for getting the unix device. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI

"mountable::hal-udi" A key in the "mountable" namespace for getting the HAL UDI for the mountable file. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_TIME_MODIFIED

"time::modified" A key in the "time" namespace for getting the time the file was last modified. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT64, and contains the UNIX time since the file was modified.

gio.FILE_ATTRIBUTE_TIME_MODIFIED_USEC

"time::modified-usec" A key in the "time" namespace for getting the miliseconds of the time the file was last modified. This should be used in conjunction with G_FILE_ATTRIBUTE_TIME_MODIFIED. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_TIME_ACCESS

"time::access" A key in the "time" namespace for getting the time the file was last accessed. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT64, and contains the UNIX time since the file was last accessed.

gio.FILE_ATTRIBUTE_TIME_ACCESS_USEC

"time::access-usec" A key in the "time" namespace for getting the microseconds of the time the file was last accessed. This should be used in conjunction with G_FILE_ATTRIBUTE_TIME_ACCESS. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_TIME_CHANGED

"time::changed" A key in the "time" namespace for getting the time the file was last changed. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT64, and contains the UNIX time since the file was last changed. This corresponds to the traditional UNIX ctime.

gio.FILE_ATTRIBUTE_TIME_CHANGED_USEC

"time::changed-usec" A key in the "time" namespace for getting the microseconds of the time the file was last changed. This should be used in conjunction with G_FILE_ATTRIBUTE_TIME_CHANGED. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_TIME_CREATED

"time::created" A key in the "time" namespace for getting the time the file was created. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT64, and contains the UNIX time since the file was created. This corresponds to the NTFS ctime.

gio.FILE_ATTRIBUTE_TIME_CREATED_USEC

"time::created-usec" A key in the "time" namespace for getting the microseconds of the time the file was created. This should be used in conjunction with G_FILE_ATTRIBUTE_TIME_CREATED. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_UNIX_DEVICE

"unix::device" A key in the "unix" namespace for getting the device id of the device the file is located on (see stat() documentation). This attribute is only available for UNIX file systems. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_UNIX_INODE

"unix::inode" A key in the "unix" namespace for getting the inode of the file. This attribute is only available for UNIX file systems. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_UINT64.

gio.FILE_ATTRIBUTE_UNIX_MODE

"unix::mode" A key in the "unix" namespace for getting the mode of the file (e.g. whether the file is a regular file, symlink, etc). See lstat() documentation. This attribute is only available for UNIX file systems. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_UNIX_NLINK

"unix::nlink" A key in the "unix" namespace for getting the number of hard links for a file. See lstat() documentation. This attribute is only available for UNIX file systems. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_UNIX_UID

"unix::uid" A key in the "unix" namespace for getting the user ID for the file. This attribute is only available for UNIX file systems. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_UNIX_GID

"unix::gid" A key in the "unix" namespace for getting the group ID for the file. This attribute is only available for UNIX file systems. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_UNIX_RDEV

"unix::rdev" A key in the "unix" namespace for getting the device ID for the file (if it is a special file). See lstat() documentation. This attribute is only available for UNIX file systems. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_UNIX_BLOCK_SIZE

"unix::block-size" A key in the "unix" namespace for getting the block size for the file system. This attribute is only available for UNIX file systems. Corresponding Gio File Attribute Type Constants is gio.FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_UNIX_BLOCKS

"unix::blocks" A key in the "unix" namespace for getting the number of blocks allocated for the file. This attribute is only available for UNIX file systems. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_UINT64.

gio.FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT

"unix::is-mountpoint" A key in the "unix" namespace for checking if the file represents a UNIX mount point. This attribute is True if the file is a UNIX mount point. This attribute is only available for UNIX file systems. Corresponding GFileAttributeType is gio.FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_DOS_IS_ARCHIVE

"dos::is-archive" A key in the "dos" namespace for checking if the file's archive flag is set. This attribute is True if the archive flag is set. This attribute is only available for DOS file systems. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_DOS_IS_SYSTEM

"dos::is-system" A key in the "dos" namespace for checking if the file's backup flag is set. This attribute is True if the backup flag is set. This attribute is only available for DOS file systems. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_OWNER_USER

"owner::user" A key in the "owner" namespace for getting the user name of the file's owner. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_OWNER_USER_REAL

"owner::user-real" A key in the "owner" namespace for getting the real name of the user that owns the file. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_OWNER_GROUP

"owner::group" A key in the "owner" namespace for getting the file owner's group. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_THUMBNAIL_PATH

"thumbnail::path" A key in the "thumbnail" namespace for getting the path to the thumbnail image. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_BYTE_STRING.

gio.FILE_ATTRIBUTE_THUMBNAILING_FAILED

"thumbnail::failed" A key in the "thumbnail" namespace for checking if thumbnailing failed. This attribute is True if thumbnailing failed. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_PREVIEW_ICON

"preview::icon" A key in the "preview" namespace for getting a gio.Icon that can be used to get preview of the file. For example, it may be a low resolution thumbnail without metadata. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_OBJECT. The value for this key should contain a GIcon.

gio.FILE_ATTRIBUTE_FILESYSTEM_SIZE

"filesystem::size" A key in the "filesystem" namespace for getting the total size (in bytes) of the file system, used in query_filesystem_info(). Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_UINT64.

gio.FILE_ATTRIBUTE_FILESYSTEM_FREE

"filesystem::free" A key in the "filesystem" namespace for getting the number of bytes of free space left on the file system. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_UINT64.

gio.FILE_ATTRIBUTE_FILESYSTEM_TYPE

"filesystem::type" A key in the "filesystem" namespace for getting the file system's type. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_FILESYSTEM_READONLY

"filesystem::readonly" A key in the "filesystem" namespace for checking if the file system is read only. Is set to True if the file system is read only. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_BOOLEAN.

gio.FILE_ATTRIBUTE_GVFS_BACKEND

"gvfs::backend" A key in the "gvfs" namespace that gets the name of the current GVFS backend in use. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_STRING.

gio.FILE_ATTRIBUTE_SELINUX_CONTEXT

"selinux::context" A key in the "selinux" namespace for getting the file's SELinux context. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_STRING. Note that this attribute is only available if GLib has been built with SELinux support.

gio.FILE_ATTRIBUTE_TRASH_ITEM_COUNT

"trash::item-count" A key in the "trash" namespace. When requested against "trash:///" returns the number of (toplevel) items in the trash folder. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_UINT32.

gio.FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW

"filesystem::use-preview" A key in the "filesystem" namespace for hinting a file manager application whether it should preview (e.g. thumbnail) files on the file system. The value for this key contain a GFilesystemPreviewType.

gio.FILE_ATTRIBUTE_STANDARD_DESCRIPTION

"standard::description" A key in the "standard" namespace for getting the description of the file. The description is a utf8 string that describes the file, generally containing the filename, but can also contain furter information. Example descriptions could be "filename (on hostname)" for a remote file or "filename (in trash)" for a file in the trash. This is useful for instance as the window title when displaying a directory or for a bookmarks menu. Corresponding Gio File Attribute Type Constants is G_FILE_ATTRIBUTE_TYPE_STRING.

Gio File Attribute Type Constants

The data types for file attributes.

gio.FILE_ATTRIBUTE_TYPE_BOOLEAN

a boolean value.

gio.FILE_ATTRIBUTE_TYPE_BYTE_STRING

a zero terminated string of non-zero bytes.

gio.FILE_ATTRIBUTE_TYPE_INT32

a signed 4-byte/32-bit integer.

gio.FILE_ATTRIBUTE_TYPE_INT64

a signed 8-byte/64-bit integer.

gio.FILE_ATTRIBUTE_TYPE_INVALID

indicates an invalid or uninitalized type.

gio.FILE_ATTRIBUTE_TYPE_OBJECT

a gobject.GObject.

gio.FILE_ATTRIBUTE_TYPE_STRING

a null terminated UTF8 string.

gio.FILE_ATTRIBUTE_TYPE_UINT32

an unsigned 4-byte/32-bit integer.

gio.FILE_ATTRIBUTE_TYPE_UINT64

an unsigned 8-byte/64-bit integer.

Gio File Attribute Flags Constants

Flags specifying the behaviour of an attribute.

gio.FILE_ATTRIBUTE_INFO_NONE

no flags set.

gio.FILE_ATTRIBUTE_INFO_COPY_WITH_FILE

copy the attribute values when the file is copied.

gio.FILE_ATTRIBUTE_INFO_COPY_WHEN_MOVED

copy the attribute values when the file is moved.

Gio File Create Flags Constants

Flags used when an operation may create a file.

gio.FILE_CREATE_NONE

No flags set.

gio.FILE_CREATE_PRIVATE

Create a file that can only be accessed by the current user.

gio.FILE_CREATE_REPLACE_DESTINATION

Replace the destination as if it didn't exist before. Don't try to keep any old permissions, replace instead of following links. This is generally useful if you're doing a "copy over" rather than a "save new version of" replace operation. You can think of it as "unlink destination" before writing to it, although the implementation may not be exactly like that.

Gio File Copy Flags Constants

Flags used when copying or moving files.

gio.FILE_COPY_NONE

No flags set.

gio.FILE_COPY_OVERWRITE

Overwrite any existing files.

gio.FILE_COPY_BACKUP

Make a backup of any existing files.

gio.FILE_COPY_NOFOLLOW_SYMLINKS

Don't follow symlinks.

gio.FILE_COPY_ALL_METADATA

Copy all file metadata instead of just default set used for copy (see gio.FileInfo).

gio.FILE_COPY_NO_FALLBACK_FOR_MOVE

Don't use copy and delete fallback if native move not supported.

gio.FILE_COPY_TARGET_DEFAULT_PERMS

Leaves target file with default perms, instead of setting the source file perms.

Gio File Monitor Flags Constants

Flags used to set what a gio.FileMonitor will watch for.

gio.FILE_MONITOR_NONE

No flags set.

gio.FILE_MONITOR_WATCH_MOUNTS

Watch for mount events.

Gio File Query Info Flags Constants

Flags used when querying a gio.FileInfo.

gio.FILE_QUERY_INFO_NONE

No flags set.

gio.FILE_QUERY_INFO_NOFOLLOW_SYMLINKS

Don't follow symlinks.

Gio File Type Constants

Indicates the file's on-disk type.

gio.FILE_TYPE_DIRECTORY

File handle represents a directory.

gio.FILE_TYPE_MOUNTABLE

File is a mountable location.

gio.FILE_TYPE_REGULAR

File handle represents a regular file.

gio.FILE_TYPE_SHORTCUT

File is a shortcut (Windows systems).

gio.FILE_TYPE_SPECIAL

File is a "special" file, such as a socket, fifo, block device, or character device.

gio.FILE_TYPE_SYMBOLIC_LINK

File handle represents a symbolic link (Unix systems).

gio.FILE_TYPE_UNKNOWN

File's type is unknown.

Gio Mount Mount Flags Constants

Flags used when mounting a mount.

gio.MOUNT_MOUNT_NONE

No flags set.

Gio Mount Unmount Flags Constants

Flags used when unmounting a mount.

gio.MOUNT_UNMOUNT_NONE

No flags set.

gio.MOUNT_UNMOUNT_FORCE

Unmount even if there are outstanding file operations on the mount.

Gio Mount Operation Result Constants

returned as a result when a request for information is send by the mounting operation.

gio.MOUNT_OPERATION_HANDLED

The request was fulfilled and the user specified data is now available.

gio.MOUNT_OPERATION_ABORTED

The user requested the mount operation to be aborted.

gio.MOUNT_OPERATION_UNHANDLED

The request was unhandled (i.e. not implemented).

Gio Password Save Constants

is used to indicate the lifespan of a saved password.

Gvfs stores passwords in the Gnome keyring when this flag allows it to, and later retrieves it again from there.

gio.PASSWORD_SAVE_FOR_SESSION

save a password for the session.

gio.PASSWORD_SAVE_NEVER

never save a password.

gio.PASSWORD_SAVE_PERMANENTLY

save a password permanently.
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofilterinputstream.html0000644000000000000000000001631011272036627027563 0ustar rootrootgio.FilterInputStream

gio.FilterInputStream

gio.FilterInputStream — Filter Input Stream

Synopsis

class gio.FilterInputStream(gio.InputStream):
    def get_base_stream()
def get_close_base_stream()
def set_close_base_stream(close_base)

gio.FilterInputStream Properties

"base-stream"Read - Write - Construct onlyThe underlying base stream on which the io ops will be done.
"close-base-stream"Read - Write - Construct onlyIf the base stream should be closed when the filter stream is closed. Default value: True.

Description

Filter Input Stream.

Methods

gio.FilterInputStream.get_base_stream

    def get_base_stream()

Returns :

A gio.InputStream

The get_base_stream() method gets the base stream for the filter stream.

gio.FilterInputStream.get_close_base_stream

    def get_close_base_stream()

Returns :

True if the base stream will be closed.

The get_close_base_stream() method returns whether the base stream will be closed when stream is closed.

gio.FilterInputStream.set_close_base_stream

    def set_close_base_stream(close_base)

close_base :

True to close the base stream.

The set_close_base_stream() method sets whether the base stream will be closed when stream is closed.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giomount.html0000644000000000000000000014146311272036627025154 0ustar rootrootgio.Mount

gio.Mount

gio.Mount — Mount management

Synopsis

class gio.Mount(gobject.GInterface):
    def can_eject()
def can_unmount()
def eject(callback, flags=gio.MOUNT_UNMOUNT_NONE, cancellable=None, user_data=None)
def eject_finish(result)
def get_drive()
def get_icon()
def get_name()
def get_root()
def get_uuid()
def get_volume()
def guess_content_type(callback, force_rescan, cancellable=None, user_data=None)
def guess_content_type_finish(result)
def guess_content_type_sync(force_rescan, cancellable=None)
def is_shadowed()
def remount(callback, flags=gio.MOUNT_UNMOUNT_NONE, mount_operation=None, cancellable=None, user_data=None)
def remount_finish(result)
def shadow()
def unmount(callback, flags=gio.MOUNT_UNMOUNT_NONE, cancellable=None, user_data=None)
def unmount_finish(result)
def unshadow()

Ancestry

+-- gobject.GInterface
  +-- gio.Mount

Prerequisites

gio.Mount requires gobject.GObject

gio.Mount Signal Prototypes

gobject.GObject Signal Prototypes

"aborted"

def callback(mount, user_param1, ...)

"changed"

def callback(mount, user_param1, ...)

"unmounted"

def callback(mount, user_param1, ...)

Description

The gio.Mount interface represents user-visible mounts. Note, when porting from GnomeVFS, gio.Mount is the moral equivalent of GnomeVFSVolume.

gio.Mount is a "mounted" filesystem that you can access. Mounted is in quotes because it's not the same as a unix mount, it might be a gvfs mount, but you can still access the files on it if you use GIO. Might or might not be related to a volume object.

Unmounting a GMount instance is an asynchronous operation. For more information about asynchronous operations, see GAsyncReady and GSimpleAsyncReady. To unmount a gio.Mount instance, first call g_mount_unmount() with (at least) the GMount instance and a GAsyncReadyCallback. The callback will be fired when the operation has resolved (either with success or failure), and a GAsyncReady structure will be passed to the callback. That callback should then call g_mount_unmount_finish() with the GMount and the GAsyncReady data to see if the operation was completed successfully. If an error is present when g_mount_unmount_finish() is called, then it will be filled with any error information.

Methods

gio.Mount.can_eject

    def can_eject()

Returns :

True if the mount can be ejected, False otherwise.

The can_eject() method checks if a mount can be ejected.

gio.Mount.can_unmount

    def can_unmount()

Returns :

True if the mount can be unmounted, False otherwise.

The can_eject() method checks if a mount can be unmounted.

gio.Mount.eject

    def eject(callback, flags=gio.MOUNT_UNMOUNT_NONE, cancellable=None, user_data=None)

callback :

A GAsyncReadyCallback to call when the request is satisfied.

flags :

flags affecting the unmount if required for eject Gio Mount Unmount Flags Constants.

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The eject() method asynchronously ejects a mount.

When the operation is finished, callback will be called. You can then call gio.Mount.eject_finish() to obtain the result of the operation.

gio.Mount.eject_finish

    def eject_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the mount has been ejected successfully, False otherwise.

The eject_finish() method finishes ejecting a mount.

gio.Mount.get_drive

    def get_drive()

Returns :

gio.Drive or None if mount is not associated with a volume or a drive.

The get_drive() method gets the drive for the mount.

This is a convenience method for getting the gio.Volume and then using that object to get the gio.Drive.

gio.Mount.get_icon

    def get_icon()

Returns :

gio.Icon for the mount.

The get_icon() method gets the icon for mount.

gio.Mount.get_name

    def get_name()

Returns :

the name for the given mount.

The get_name() method gets the name of mount.

gio.Mount.get_root

    def get_root()

Returns :

a gio.File.

The get_root() method gets the root directory on mount.

gio.Mount.get_uuid

    def get_uuid()

Returns :

the UUID for mount or None if no UUID can be computed.

The get_uuid() method gets the UUID for the mount. The reference is typically based on the file system UUID for the mount in question and should be considered an opaque string. Returns None if there is no UUID available

gio.Mount.get_volume

    def get_volume()

Returns :

a gio.Volume or None if mount is not associated with a volume.

The get_volume() method gets the volume for the mount.

gio.Mount.guess_content_type

    def guess_content_type(callback, force_rescan, cancellable=None, user_data=None)

callback :

A GAsyncReadyCallback to call when the request is satisfied.

force_rescan :

Whether to force a rescan of the content. Otherwise a cached result will be used if available.

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The guess_content_type() method asynchronously tries to guess the type of content stored on mount. Returns one or more textual identifiers of well-known content types (typically prefixed with "x-content/"), e.g. x-content/image-dcf for camera memory cards. See the shared-mime-info specification for more on x-content types.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

When the operation is finished, callback will be called. You can then call gio.Mount.guess_content_type_finish() to obtain the result of the operation.

gio.Mount.guess_content_type_finish

    def guess_content_type_finish(result)

result :

a gio.AsyncResult.

Returns :

A list of types or None on error.

The guess_content_type_finish() method finishes guessing content types of mount. If any errors occured during the operation, error will be set to contain the errors and FALSE will be returned. In particular, you may get an gio.IO_ERROR_NOT_SUPPORTED if the mount does not support content guessing.

gio.Mount.guess_content_type_sync

    def guess_content_type_sync(force_rescan, cancellable=None)

force_rescan :

Whether to force a rescan of the content. Otherwise a cached result will be used if available.

cancellable :

Optional gio.Cancellable object, None to ignore.

The guess_content_type_sync() method tries to guess the type of content stored on mount. Returns one or more textual identifiers of well-known content types (typically prefixed with "x-content/"), e.g. x-content/image-dcf for camera memory cards. See the shared-mime-info specification for more on x-content types.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

This is an synchronous operation and as such may block doing IO; see gio.Mount.guess_content_type() for the asynchronous version.

gio.Mount.is_shadowed

    def is_shadowed()

Returns :

True if mount is shadowed.

The is_shadowed() method determines if mount is shadowed. Applications or libraries should avoid displaying mount in the user interface if it is shadowed.

A mount is said to be shadowed if there exists one or more user visible objects (currently gio.Mount objects) with a root that is inside the root of mount.

One application of shadow mounts is when exposing a single file system that is used to address several logical volumes. In this situation, a gio.VolumeMonitor implementation would create two gio.Volume objects (for example, one for the camera functionality of the device and one for a SD card reader on the device) with activation URIs gphoto2://[usb:001,002]/store1/ and gphoto2://[usb:001,002]/store2/. When the underlying mount (with root gphoto2://[usb:001,002]/) is mounted, said gio.VolumeMonitor implementation would create two gio.Mount objects (each with their root matching the corresponding volume activation root) that would shadow the original mount.

The proxy monitor in GVfs 2.26 and later, automatically creates and manage shadow mounts (and shadows the underlying mount) if the activation root on a gio.Volume is set.

gio.Mount.remount

    def remount(callback, flags=gio.MOUNT_UNMOUNT_NONE, mount_operation=None, cancellable=None, user_data=None)

callback :

A GAsyncReadyCallback to call when the request is satisfied.

flags :

flags affecting the unmount if required for eject Gio Mount Unmount Flags Constants.

mount_operation :

a gio.MountOperation or None to avoid user interaction.

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The remount() method asynchronously remounts a mount.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

When the operation is finished, callback will be called. You can then call gio.Mount.remount_finish() to obtain the result of the operation.

gio.Mount.remount_finish

    def remount_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the mount has been remounted successfully, False otherwise.

The remount_finish() method finishes remounting a mount.

gio.Mount.shadow

    def shadow()

The shadow() method increments the shadow count on mount. Usually used by gio.VolumeMonitor implementations when creating a shadow mount for mount, see gio.Mount.is_shadowed() for more information. The caller will need to emit the "changed" signal on mount manually.

gio.Mount.unmount

    def unmount(callback, flags=gio.MOUNT_UNMOUNT_NONE, cancellable=None, user_data=None)

callback :

A GAsyncReadyCallback to call when the request is satisfied.

flags :

flags affecting the unmount if required for eject Gio Mount Unmount Flags Constants.

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The unmount() method asynchronously unmounts a mount.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

When the operation is finished, callback will be called. You can then call gio.Mount.unmount_finish() to obtain the result of the operation.

gio.Mount.unmount_finish

    def unmount_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the mount has been unmounted successfully, False otherwise.

The unmount_finish() method finishes unmounting a mount.

gio.Mount.unshadow

    def unshadow()

The unshadow() method decrements the shadow count on mount. Usually used by gio.VolumeMonitor implementations when destroying a shadow mount for mount, see gio.Mount.is_shadowed() for more information. The caller will need to emit the "changed" signal on mount manually.

Signals

The "aborted" gio.Mount Signal

    def callback(mount, user_param1, ...)

mount :

the mount

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted by the backend when e.g. a device becomes unavailable while a mount operation is in progress.

Implementations of gio.MountOperation should handle this signal by dismissing open password dialogs.

The "changed" gio.Mount Signal

    def callback(mount, user_param1, ...)

mount :

the mount

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when the mount has been changed.

The "unmounted" gio.Mount Signal

    def callback(mount, user_param1, ...)

mount :

the mount

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

This signal is emitted when the gio.Mount have been unmounted.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/gio-functions.html0000644000000000000000000004511011272036627024764 0ustar rootrootgio Functions

gio Functions

gio Functions

Description

These functions are part of the PyGObject gio module but are not directly associated with a specific class

Functions

gio.content_type_can_be_executable

    def content_type_can_be_executable(type)

type :

a content type string.

Returns :

True if the file type corresponds to a type that can be executable, False otherwise.

The content_type_can_be_executable() function checks if a content type can be executable. Note that for instance things like text files can be executables (i.e. scripts and batch files).

gio.content_type_equals

    def content_type_equals(type1, type2)

type1 :

a content type string.

type2 :

a content type string.

Returns :

True if the two strings are identical or equivalent, False otherwise.

The content_type_equals() function compares two content types for equality.

gio.content_type_from_mime_type

    def content_type_from_mime_type(mime_type)

mime_type :

a mime type string.

Returns :

The content type or None when does not know.

The content_type_from_mime_type() function tries to find a content type based on the mime type name.

gio.content_type_get_description

    def content_type_get_description(type)

type :

a content type string.

Returns :

a short description of the content type type.

The content_type_get_description() function gets the human readable description of the content type.

gio.content_type_get_icon

    def content_type_get_icon(type)

type :

a content type string.

Returns :

A gio.Icon corresponding to the content type.

The content_type_get_icon() function gets the icon for a content type.

gio.content_type_get_mime_type

    def content_type_get_mime_type(type)

type :

a content type string.

Returns :

the registered mime-type for the given type, or None if unknown.

The content_type_get_mime_type() function gets the mime-type for the content type. If one is registered

gio.content_type_guess

    def content_type_guess(filename, data, want_uncertain)

filename :

a string, or None.

data :

a stream of data, or None.

want_uncertain :

a flag indicating the certainty of the result.

Returns :

a string indicating a guessed content type for the given data.

The content_type_guess() function guesses the content type based on example data. If the function is uncertain, result_uncertain will be set to True. Either filename or data may be None, in which case the guess will be based solely on the other argument.

gio.content_type_is_a

    def content_type_is_a(type, supertype)

type :

a content type string.

supertype :

a string.

Returns :

True if type is a kind of supertype, False otherwise.

The content_type_is_a() function determines if type is a subset of supertype.

gio.content_type_is_unknown

    def content_type_is_unknown(type)

type :

a content type string.

Returns :

True if the type is the unknown type.

The content_type_is_unknown() function checks if the content type is the generic "unknown" type. On unix this is the "application/octet-stream" mimetype, while on win32 it is "*".

gio.content_types_get_registered

    def content_types_get_registered()

Returns :

a list of the registered content types.

The content_types_get_registered() function gets a list of strings containing all the registered content types known to the system.

gio.io_error_from_errno

    def io_error_from_errno(err_no)

err_no :

Error number.

Returns :

a Gio Error Constants

The io_error_from_errno() function converts error codes into GIO error codes.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giodataoutputstream.html0000644000000000000000000006241411272036627027416 0ustar rootrootgio.DataOutputStream

gio.DataOutputStream

gio.DataOutputStream — Data Output Stream

Synopsis

class gio.DataOutputStream(gio.BufferedOutputStream):
    gio.DataOutputStream(base_stream)
def get_byte_order()
def put_byte(cancellable=None)
def put_int16(cancellable=None)
def put_int32(cancellable=None)
def put_int64(cancellable=None)
def put_string(cancellable=None)
def put_uint16(cancellable=None)
def put_uint32(cancellable=None)
def put_uint64(cancellable=None)
def set_byte_order(order)

gio.DataOutputStream Properties

"byte-order"Read - WriteDetermines the byte ordering that is used when writing multi-byte entities (such as integers) to the stream. Default value: gio.DATA_STREAM_BYTE_ORDER_BIG_ENDIAN.

Description

gio.DataOutputStream implements gio.InputStream and includes functions for writing data directly to an output stream.

Constructor

    gio.DataOutputStream(base_stream)

base_stream :

a gio.OutputStream.

Returns :

a new gio.DataOutputStream

Creates a new gio.DataOutputStream from the given base_stream.

Methods

gio.DataOutputStream.get_byte_order

    def get_byte_order()

Returns :

the stream's current Gio Data Stream Byte Order Constants.

The get_byte_order() method gets the byte order for the stream.

gio.DataOutputStream.put_byte

    def put_byte(data, cancellable=None)

data :

a char.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if data was successfully added to the stream.

The put_byte() method puts a byte into the output stream.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataOutputStream.put_int16

    def put_int16(data, cancellable=None)

data :

a gint16.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if data was successfully added to the stream.

The put_int16() method puts a signed 16-bit integer into the output stream.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataOutputStream.put_int32

    def put_int32(data, cancellable=None)

data :

a gint32.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if data was successfully added to the stream.

The put_int32() method puts a signed 32-bit integer into the output stream.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataOutputStream.put_int64

    def put_int64(data, cancellable=None)

data :

a gint64.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if data was successfully added to the stream.

The put_int64() method puts a signed 64-bit integer into the output stream.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataOutputStream.put_string

    def put_string(str, cancellable=None)

str :

a string.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if string was successfully added to the stream.

The put_string() method puts a string into the output stream.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataOutputStream.put_uint16

    def put_uint16(data, cancellable=None)

data :

a guint16.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if data was successfully added to the stream.

The put_uint16() method puts an unsigned 16-bit integer into the output stream.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataOutputStream.put_uint32

    def put_uint32(data, cancellable=None)

data :

a guint32.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if data was successfully added to the stream.

The put_uint32() method puts an unsigned 32-bit integer into the output stream.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataOutputStream.put_uint64

    def put_uint64(data, cancellable=None)

data :

a guint64.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if data was successfully added to the stream.

The put_uint64() method puts an unsigned 64-bit integer into the output stream.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.DataOutputStream.set_byte_order

    def set_byte_order(order)

order :

a Gio Data Stream Byte Order Constants to set.

The set_byte_order() method sets the byte order for the given stream. All subsequent reads from the stream will be read in the given order.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gioicon.html0000644000000000000000000002700311272036627024733 0ustar rootrootgio.Icon

gio.Icon

gio.Icon — Interface for icons.

Synopsis

class gio.Icon(gobject.GInterface):
    def equal(icon2)
def to_string()
Functions
 
    def gio.icon_new_from_string()

Ancestry

+-- gobject.GInterface
  +-- gio.Icon

Known Derived Interfaces

gio.Icon is required by gio.LoadableIcon.

Known Implementation

gio.Icon is implemented by gio.ThemedIcon, gio.FileIcon, gio.Emblem, gio.EmblemedIcon.

Description

gio.Icon is a very minimal interface for icons. It provides functions for checking the equality of two icons, hashing of icons and serializing an icon to and from strings.

gio.Icon does not provide the actual pixmap for the icon as this is out of GIO's scope, however implementations of gio.Icon may contain the name of an icon (see gio.ThemedIcon), or the path to an icon (see gio.LoadableIcon).

To check if two GIcons are equal, see gio.Icon.equal().

For serializing a gio.Icon, use gio.Icon.to_string() and gio.Icon.new_from_string().

If your application or library provides one or more gio.Icon implementations you need to ensure that each GType is registered with the type system prior to calling gio.icon_new_from_string().

Methods

gio.Icon.equal

    def equal(icon2)

icon2 :

the second gio.Icon

The equal() method checks if two icons are equal.

gio.Icon.to_string

    def to_string()

Returns :

An UTF8 string or None if icon can't be serialized.

The to_string() method generates a textual representation of icon that can be used for serialization such as when passing icon to a different process or saving it to persistent storage. Use gio.icon_new_from_string() to get icon back from the returned string.

The encoding of the returned string is proprietary to GIcon except in the following two cases

If icon is a gio.FileIcon, the returned string is a native path (such as /path/to/my icon.png) without escaping if the gio.File for icon is a native file. If the file is not native, the returned string is the result of gio.File.get_uri() (such as sftp://path/to/my%20icon.png).

If icon is a gio.ThemedIcon with exactly one name, the encoding is simply the name (such as network-server).

Functions

gio.icon_new_from_string

    def icon_new_from_string(str)

str :

A string obtained via gio.Icon.to_string().

Returns :

An object implementing the gio.Icon interface or None if error is set.

The icon_new_from_string() function generate a gio.Icon instance from str. This function can fail if str is not valid - see gio.Icon.to_string() for discussion.

If your application or library provides one or more GIcon implementations you need to ensure that each GType is registered with the type system prior to calling gio.icon_new_from_string().

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giooutputstream.html0000644000000000000000000002532711272036627026566 0ustar rootrootgio.OutputStream

gio.OutputStream

gio.OutputStream — Base class for implementing streaming input

Synopsis

class gio.OutputStream(gobject.GObject):
    def clear_pending()
def close(cancellable=None)
def close_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def close_finish(result)
def flush(cancellable=None)
def flush_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def flush_finish(result)
def has_pending()
def is_closed()
def set_pending()
def splice(cancellable=None, flags=gio.OUTPUT_STREAM_SPLICE_NONE)
def splice_async(source, callback, flags=gio.OUTPUT_STREAM_SPLICE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def splice_finish(result)
def write(buffer, cancellable=None)
def write_async(buffer, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def write_finish(result)

Description

gio.OutputStream has functions to write from a stream ( gio.OutputStream.write() ), to close a stream ( gio.OutputStream.close() ) and to flush pending writes ( gio.OutputStream.flush() ).

To copy the content of an input stream to an output stream without manually handling the reads and writes, use gio.OutputStream.splice().

All of these functions have async variants too.

Methods

Unfinished section, you may want to see the relevant C API docs for methods descriptions.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gioemblemedicon.html0000644000000000000000000002046511272036627026433 0ustar rootrootgio.EmblemedIcon

gio.EmblemedIcon

gio.EmblemedIcon — Icon with emblems.

Synopsis

class gio.EmblemedIcon(gobject.GObject, gio.Icon):
    gio.EmblemedIcon(icon, emblem)
def add_emblem(emblem)
def get_icon()

Implemented Interfaces

gio.EmblemedIcon implements gio.Icon

Description

The gio.EmblemedIcon class is an implementation of gio.Icon that supports adding an emblem to an icon. Adding multiple emblems to an icon is ensured via gio.EmblemedIcon.add_emblem().

Note that gio.EmblemedIcon allows no control over the position of the emblems. See also gio.Emblem for more information.

Constructor

    gio.EmblemedIcon(icon, emblem)

icon :

a gio.Icon.

emblem :

a gio.Emblem.

Returns :

a new gio.Icon.

Creates a new gio.Icon for icon with the emblem emblem.

Methods

gio.EmblemedIcon.add_emblem

    def add_emblem(emblem)

emblem :

a gio.Emblem

The add_emblem() method adds emblem to the list of gio.Emblems.

gio.EmblemedIcon.get_icon

    def get_icon()

Returns :

a gio.Icon that is owned by emblemed.

The get_icon() method gets the main icon for emblemed.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gioasyncresult.html0000644000000000000000000001634111272036627026362 0ustar rootrootgio.AsyncResult

gio.AsyncResult

gio.AsyncResult — Asynchronous Function Results.

Synopsis

class gio.AsyncResult(gobject.GInterface):
    def get_source_object()

Prerequisites

gio.AsyncResult is required by gobject.GObject.

Known Implementation

gio.AsyncResult is implemented by gio.SimpleAsyncResult.

Description

gio.AsyncResult provides a base class for implementing asynchronous function results.

Asynchronous operations are broken up into two separate operations which are chained together by a GAsyncReadyCallback. To begin an asynchronous operation, provide a GAsyncReadyCallback to the asynchronous function. This callback will be triggered when the operation has completed, and will be passed a GAsyncResult instance filled with the details of the operation's success or failure, the object the asynchronous function was started for and any error codes returned. The asynchronous callback function is then expected to call the corresponding "_finish()" function with the object the function was called for, and the gio.AsyncResult instance, and optionally, an error to grab any error conditions that may have occurred.

The purpose of the "_finish()" function is to take the generic result of type GAsyncResult and return the specific result that the operation in question yields (e.g. a gio.FileEnumerator for a "enumerate children" operation). If the result or error status of the operation is not needed, there is no need to call the "_finish()" function, GIO will take care of cleaning up the result and error information after the GAsyncReadyCallback returns. It is also allowed to take a reference to the gio.AsyncResult and call "_finish()" later.

The callback for an asynchronous operation is called only once, and is always called, even in the case of a cancelled operation. On cancellation the result is a gio.ERROR_CANCELLED error.

Some ascynchronous operations are implemented using synchronous calls. These are run in a separate thread, if GThread has been initialized, but otherwise they are sent to the Main Event Loop and processed in an idle function. So, if you truly need asynchronous operations, make sure to initialize GThread.

Methods

gio.AsyncResult.get_source_object

    def get_source_object()

Returns :

the source object for the res.

The get_source_object() method gets the source object from a gio.AsyncResult

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofileoutputstream.html0000644000000000000000000004002211272036627027413 0ustar rootrootgio.FileOutputStream

gio.FileOutputStream

gio.FileOutputStream — Base class for implementing streaming input

Synopsis

class gio.FileOutputStream(gio.OutputStream):
    def get_etag()
def query_info(attributes, cancellable=None)
def query_info_async(attributes, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def query_info_finish(result)

Implemented Interfaces

gio.FileOutputStream implements gio.Seekable

Description

gio.FileOutputStream provides output streams that write their content to a file.

gio.FileOutputStream implements gio.Seekable, which allows the output stream to jump to arbitrary positions in the file and to truncate the file, provided the filesystem of the file supports these operations. In addition to the generic gio.Seekable. API, gio.FileOutputStream has its own API for seeking and positioning. To find the position of a file output stream, use gio.Seekable.tell(). To find out if a file output stream supports seeking, use gio.Seekable.can_seek(). To position a file output stream, use gio.Seekable.seek(). To find out if a file output stream supports truncating, use gio.FileOutputStream.can_truncate(). To truncate a file output stream, use gio.Seekable.truncate().

Methods

gio.FileOutputStream.get_etag

    def get_etag()

Returns :

the entity tag for the stream.

The get_etag() method gets the entity tag for the file when it has been written. This must be called after the stream has been written and closed, as the etag can change while writing.

gio.FileOutputStream.query_info

    def query_info(attributes, cancellable=None)

attributes :

a file attribute query string.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileInfo, or None on error.

The query_info() method queries a file input stream the given attributes. This function blocks while querying the stream. For the asynchronous (non-blocking) version of this function, see gio.FileOutputStream.query_info_async(). While the stream is blocked, the stream will set the pending flag internally, and any other operations on the stream will fail with gio.ERROR_PENDING.

Can fail if the stream was already closed (with error being set to gio.ERROR_CLOSED), the stream has pending operations (with error being set to gio.ERROR_PENDING), or if querying info is not supported for the stream's interface (with error being set to gio.ERROR_NOT_SUPPORTED). In all cases of failure, NULL will be returned.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be set, and None will be returned.

gio.FileOutputStream.query_info_async

    def query_info_async(attributes, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

attributes :

a file attribute query string.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The query_info_async() method queries the stream information asynchronously. When the operation is finished callback will be called. You can then call gio.FileOutputStream.query_info_finish() to get the result of the operation.

For the synchronous version of this function, see gio.FileOutputStream.query_info().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be set

gio.FileOutputStream.query_info_finish

    def query_info_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.FileInfo, or None on error.

The query_info_finish() method finishes an asynchronous file append operation started with gio.FileOutputStream.query_info_async().

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giomountoperation.html0000644000000000000000000010313611272036627027070 0ustar rootrootgio.MountOperation

gio.MountOperation

gio.MountOperation — Authentication methods for mountable locations.

Synopsis

class gio.MountOperation(gobject.GObject):
    gio.MountOperation()
def get_anonymous()
def get_choice()
def get_domain()
def get_password()
def get_password_save()
def get_username()
def replay(result)
def set_anonymous(anonymous)
def set_choice(choice)
def set_domain(domain)
def set_password(password)
def set_password_save(save)
def set_username(username)

gio.MountOperation Properties

"anonymous"Read/Write Whether to use an anonymous user when authenticating. Default value: False
"choice"Read/Write The index of the user's choice when a question is asked during the mount operation. See the "ask-question" signal. Allowed values: >= 0 Default value: 0
"domain"Read/Write The domain to use for the mount operation. Default value: None
"password"Read/Write The password that is used for authentication when carrying out the mount operation. Default value: None
"password-save"Read/Write Determines if and how the password information should be saved. Default value: gio.PASSWORD_SAVE_NEVER
"username"Read/Write The user name that is used for authentication when carrying out the mount operation. Default value: None

gio.MountOperation Signal Prototypes

gobject.GObject Signal Prototypes

"aborted"

def callback(mountoperation, user_param1, ...)

"ask-password"

def callback(mountoperation, message, default_user, default_domain, flags, user_param1, ...)

"ask-question"

def callback(mountoperation, message, choices, user_param1, ...)

"reply"

def callback(mountoperation, result, user_param1, ...)

Description

The gio.MountOperation provides a mechanism for authenticating mountable operations, such as loop mounting files, hard drive partitions or server locations.

Mounting operations are handed a gio.MountOperation that then can use if they require any privileges or authentication for their volumes to be mounted (e.g. a hard disk partition or an encrypted filesystem), or if they are implementing a remote server protocol which requires user credentials such as FTP or WebDAV.

Users should instantiate a subclass of this that implements all the various callbacks to show the required dialogs, such as gtk.MountOperation.

Constructor

    gio.MountOperation()

Returns :

a new gio.MountOperation.

Creates a new mount operation.

Methods

gio.MountOperation.get_anonymous

    def get_anonymous()

Returns :

True if mount operation is anonymous.

The get_anonymous() method check to see whether the mount operation is being used for an anonymous user

gio.MountOperation.get_choice

    def get_choice()

Returns :

an integer containing an index of the user's choice from the choice's list, or 0.

The get_anonymous() method gets a choice from the mount operation.

gio.MountOperation.get_domain

    def get_domain()

Returns :

a string set to the domain.

The get_domain() method gets the domain of the mount operation.

gio.MountOperation.get_password

    def get_password()

Returns :

a string containing the password within the mountoperation.

The get_password() method gets a password from the mount operation.

gio.MountOperation.get_password_save

    def get_password_save()

Returns :

a Gio Password Save Constants flag.

The get_password_save() method gets the state of saving passwords for the mount operation.

gio.MountOperation.get_username

    def get_username()

Returns :

a string containing the user name.

The get_username() method get the user name from the mount operation.

gio.MountOperation.reply

    def reply(result)

result :

a Gio Mount Operation Result Constants

The reply() method emits the "reply" signal.

gio.MountOperation.set_anonymous

    def set_anonymous(anonymous)

anonymous :

boolean value.

The set_anonymous() method sets the mount operation to use an anonymous user if anonymous is True.

gio.MountOperation.set_choice

    def set_choice(choice)

choice :

an integer.

The set_choice() method sets a default choice for the mount operation.

gio.MountOperation.set_domain

    def set_domain(domain)

domain :

the domain to set.

The set_domain() method sets the mount operation's domain.

gio.MountOperation.set_password

    def set_password(password)

password :

password to set.

The set_password() method sets the mount operation's password to password.

gio.MountOperation.set_password_save

    def set_password_save(save)

save :

a set of Gio Password Save Constants

The set_password_save() method sets the state of saving passwords for the mount operation.

gio.MountOperation.set_username

    def set_username(username)

username :

input username.

The set_anonymous() method sets the user name within op to username.

Signals

The "aborted" gio.MountOperation Signal

    def callback(mountoperation, user_param1, ...)

mountoperation :

the mountoperation

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted by the backend when e.g. a device becomes unavailable while a mount operation is in progress. Implementations of gio.MountOperation should handle this signal by dismissing open password dialogs.

The "ask-password" gio.MountOperation Signal

    def callback(mountoperation, message, default_user, default_domain, flags, user_param1, ...)

mountoperation :

the mountoperation

message :

string containing a message to display to the user.

default_user :

string containing the default user name.

default_domain :

string containing the default domain.

flags :

a set of Gio Ask Password Flags Constants

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

This signal is emitted when a mount operation asks the user for a password. If the message contains a line break, the first line should be presented as a heading. For example, it may be used as the primary text in a gtk.MessageDialog.

The "ask-question" gio.MountOperation Signal

    def callback(mountoperation, message, choices, user_param1, ...)

mountoperation :

the mountoperation

message :

string containing a message to display to the user.

choices :

a list of strings for each possible choice.

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

This signal is emitted when asking the user a question and gives a list of choices for the user to choose from. If the message contains a line break, the first line should be presented as a heading. For example, it may be used as the primary text in a gtk.MessageDialog.

The "reply" gio.MountOperation Signal

    def callback(mountoperation, result, user_param1, ...)

mountoperation :

the mountoperation

result :

a Gio Mount Operation Result Constants indicating how the request was handled

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

This signal is emitted when the user has replied to the mount operation.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/glib-constants.html0000644000000000000000000002514211272036627025132 0ustar rootrootglib Constants

glib Constants

glib Constants — the built-in constants of the glib module

Description

Glib IO Condition Constants

The IO Condition constants are a set of bit-flags that specify a condition to watch for on an event source.

glib.IO_IN

There is data to read

glib.IO_OUT

Data can be written (without blocking).

glib.IO_PRI

There is urgent data to read.

glib.IO_ERR

Error condition.

glib.IO_HUP

Hung up (the connection has been broken, usually for pipes and sockets).

glib.IO_NVAL

Invalid request. The file descriptor is not open.

Glib Priority Constants

The Priority constants specify

glib.PRIORITY_HIGH

Use this for high priority event sources.

glib.PRIORITY_DEFAULT

Use this for default priority event sources. This priority is used when adding timeout functions with the glib.timeout_add() function. This priority is also used for events from the X server.

glib.PRIORITY_HIGH_IDLE

Use this for high priority idle functions. For example, glib.PRIORITY_HIGH_IDLE + 10 is used for resizing operations; and, glib.PRIORITY_HIGH_IDLE + 20, for redrawing operations. (This is done to ensure that any pending resizes are processed before any pending redraws, so that widgets are not redrawn twice unnecessarily.)

glib.PRIORITY_DEFAULT_IDLE

Use this for default priority idle functions. This priority is used when adding idle functions with the glib.idle_add() function.

glib.PRIORITY_LOW

Use this for very low priority background tasks.

Glib Spawn Flag Constants

The Spawn Flag constants are a set of bit-flags that can be passed to the glib.spawn_async() function.

glib.SPAWN_LEAVE_DESCRIPTORS_OPEN

the parent's open file descriptors will be inherited by the child; otherwise all descriptors except stdin/stdout/stderr will be closed before calling exec() in the child.

glib.SPAWN_DO_NOT_REAP_CHILD

the child will not be automatically reaped; you must call waitpid() or handle SIGCHLD yourself, or the child will become a zombie.

glib.SPAWN_SEARCH_PATH

argv[0] need not be an absolute path, it will be looked for in the user's PATH.

glib.SPAWN_STDOUT_TO_DEV_NULL

the child's standard output will be discarded, instead of going to the same location as the parent's standard output.

glib.SPAWN_STDERR_TO_DEV_NULL

the child's standard error will be discarded.

glib.SPAWN_CHILD_INHERITS_STDIN

the child will inherit the parent's standard input (by default, the child's standard input is attached to /dev/null).

glib.SPAWN_FILE_AND_ARGV_ZERO

the first element of argv is the file to execute, while the remaining elements are the actual argument vector to pass to the file. Normally glib.spawn_async() uses argv[0] as the file to execute, and passes all of argv to the child.

Glib User Directory Constants

The User Directory constants are integer values that are currently used only as arguments to glib.get_user_special_dir() function. See function documentation for details.

glib.USER_DIRECTORY_DESKTOP

the user's Desktop directory

glib.USER_DIRECTORY_DOCUMENTS

the user's Documents directory

glib.USER_DIRECTORY_DOWNLOAD

the user's Downloads directory

glib.USER_DIRECTORY_MUSIC

the user's Music directory

glib.USER_DIRECTORY_PICTURES

the user's Pictures directory

glib.USER_DIRECTORY_PUBLIC_SHARE

the user's shared directory

glib.USER_DIRECTORY_TEMPLATES

the user's Templates directory

glib.USER_DIRECTORY_VIDEOS

the user's Movies directory

Glib Version Constants

The Version constants specify the version of Glib used by PyGObject as a 3-tuple containing the major, minor and patch release numbers.

glib.glib_version

A 3-tuple containing (major, minor, patch) release numbers of glib.

glib.pyglib_version

A 3-tuple containing (major, minor, patch) release numbers of the python bindings.
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofileicon.html0000644000000000000000000001323311272036627025573 0ustar rootrootgio.FileIcon

gio.FileIcon

gio.FileIcon — Icons pointing to an image file.

Synopsis

class gio.FileIcon(gobject.GObject, gio.Icon, gio.LoadableIcon):
    gio.FileIcon(file)
def get_file()

Ancestry

+-- gobject.GObject
  +-- gio.FileIcon

Description

The gio.FileIcon specifies an icon by pointing to an image file to be used as icon.

Constructor

    gio.FileIcon(file)

file :

a gio.File

Returns :

a new gio.FileIcon for the given file, or None on error.

Creates a new icon for a file.

Methods

gio.FileIcon.get_file

    def get_file()

Returns :

a gio.File or None.

The get_file() method gets the gio.File associated with the given icon.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofilemonitor.html0000644000000000000000000001630411272036627026334 0ustar rootrootgio.FileMonitor

gio.FileMonitor

gio.FileMonitor — File Monitor

Synopsis

class gio.FileMonitor(gobject.GObject):
    def cancel()
def emit_event(child, other_file, event_type)
def is_cancelled()
def set_rate_limit(limit_msecs)

gio.FileMonitor Properties

"cancelled"Read Whether the monitor has been cancelled. Default value: False.
"rate-limit"Read/Write The limit of the monitor to watch for changes, in milliseconds. Allowed values: >= 0. Default value: 800.

gio.FileMonitor Signal Prototypes

gobject.GObject Signal Prototypes

"changed"

def callback(filemonitor, file, other_file, event_type, user_param1, ...)

Description

The gio.FileMonitor monitors a file or directory for changes.

To obtain a gio.FileMonitor for a file or directory, use gio.FileMonitor.monitor(), gio.FileMonitor.monitor_file(), or gio.FileMonitor.monitor_directory().

To get informed about changes to the file or directory you are monitoring, connect to the "changed" signal.

Methods

Unfinished section, you may want to see the relevant C API docs for methods descriptions.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/gobject-constants.html0000644000000000000000000003264111272036627025634 0ustar rootrootgobject Constants

gobject Constants

gobject Constants — the built-in constants of the gobject module

Description

GObject Param Flag Constants

The Param Flag constants are a set of bit-flags that specify certain aspects of parameters that can be configured.

gobject.PARAM_READABLE

The parameter is readable

gobject.PARAM_WRITABLE

The parameter is writable

gobject.PARAM_CONSTRUCT

The parameter will be set upon object construction

gobject.PARAM_CONSTRUCT_ONLY

The parameter will only be set upon object construction

gobject.PARAM_LAX_VALIDATION

Upon parameter conversion strict validation is not required

GObject Signal Flag Constants

The Signal Flag constants are a set of bit-flags that specify a signal's behavior. The overall signal description outlines how especially the RUN flags control the stages of a signal emission.

gobject.SIGNAL_RUN_FIRST

Invoke the object method handler in the first emission stage.

gobject.SIGNAL_RUN_LAST

Invoke the object method handler in the third emission stage.

gobject.SIGNAL_RUN_CLEANUP

Invoke the object method handler in the last emission stage.

gobject.SIGNAL_NO_RECURSE

Signals being emitted for an object while currently being in emission for this very object will not be emitted recursively, but instead cause the first emission to be restarted.

gobject.SIGNAL_DETAILED

This signal supports "::detail" appendices to the signal name upon handler connections and emissions.

gobject.SIGNAL_ACTION

Action signals are signals that may freely be emitted on alive objects from user code via the gobject.emit() method and friends, without the need of being embedded into extra code that performs pre or post emission adjustments on the object. They can also be thought of as object methods which can be called generically by third-party code.

gobject.SIGNAL_NO_HOOKS

No emissions hooks are supported for this signal.

GObject Spawn Flag Constants

The Spawn Flag constants are a set of bit-flags that can be passed to the gobject.spawn_async() function.

gobject.SPAWN_LEAVE_DESCRIPTORS_OPEN

the parent's open file descriptors will be inherited by the child; otherwise all descriptors except stdin/stdout/stderr will be closed before calling exec() in the child.

gobject.SPAWN_DO_NOT_REAP_CHILD

the child will not be automatically reaped; you must call waitpid() or handle SIGCHLD yourself, or the child will become a zombie.

gobject.SPAWN_SEARCH_PATH

argv[0] need not be an absolute path, it will be looked for in the user's PATH.

gobject.SPAWN_STDOUT_TO_DEV_NULL

the child's standard output will be discarded, instead of going to the same location as the parent's standard output.

gobject.SPAWN_STDERR_TO_DEV_NULL

the child's standard error will be discarded.

gobject.SPAWN_CHILD_INHERITS_STDIN

the child will inherit the parent's standard input (by default, the child's standard input is attached to /dev/null).

gobject.SPAWN_FILE_AND_ARGV_ZERO

the first element of argv is the file to execute, while the remaining elements are the actual argument vector to pass to the file. Normally gobject.spawn_async() uses argv[0] as the file to execute, and passes all of argv to the child.

GObject Built-in Type Constants

The Built-in Type constants specify the pre-defined types used by gobject.

gobject.TYPE_INVALID

An invalid type, used as error return value in some functions.

gobject.TYPE_NONE

A fundamental type indicating no type.

gobject.TYPE_INTERFACE

The fundamental type from which all interfaces are derived.

gobject.TYPE_CHAR

The fundamental type corresponding to a character. This maps to a string in Python.

gobject.TYPE_UCHAR

The fundamental type corresponding to an unsigned character. This maps to a string in Python.

gobject.TYPE_BOOLEAN

The fundamental type corresponding to a True or False value. This maps to an integer in Python.

gobject.TYPE_INT

The fundamental type corresponding to an integer. This maps to an integer in Python.

gobject.TYPE_UINT

he fundamental type corresponding to an unsigned integer. This maps to an integer in Python.

gobject.TYPE_LONG

The fundamental type corresponding to a long integer. This maps to an integer in Python.

gobject.TYPE_ULONG

The fundamental type corresponding to an unsigned integer. This maps to an integer in Python.

gobject.TYPE_INT64

The fundamental type corresponding to an long long integer. This maps to a long integer in Python.

gobject.TYPE_UINT64

The fundamental type corresponding to an unsigned long long integer. This maps to a long integer in Python.

gobject.TYPE_ENUM

The fundamental type corresponding to an enumeration type. This maps to an integer in Python.

gobject.TYPE_FLAGS

The fundamental type corresponding to a flag type. This maps to an integer in Python.

gobject.TYPE_FLOAT

The fundamental type corresponding to a floating point number. This maps to a float in Python.

gobject.TYPE_DOUBLE

The fundamental type corresponding to a double floating point number. This maps to a float in Python.

gobject.TYPE_STRING

The fundamental type corresponding to a string.

gobject.TYPE_POINTER

The fundamental type corresponding to a pointer to an anonymous type. This has no corresponding Python type.

gobject.TYPE_BOXED

The fundamental type corresponding to a boxed object type.

gobject.TYPE_PARAM

The fundamental type corresponding to a GParamSpec type.

gobject.TYPE_OBJECT

The fundamental type corresponding to a GObject type.

gobject.TYPE_PYOBJECT

The fundamental type corresponding to a Python Object type.

GObject Version Constants

The Version constants specify the version of GLIB used by PyGTK as a 3-tuple containing the major, minor and patch release numbers.

gobject.glib_version

A 3-tuple containing (major, minor, patch) release numbers.
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giovolume.html0000644000000000000000000010467711272036627025327 0ustar rootrootgio.Volume

gio.Volume

gio.Volume — Volume management.

Synopsis

class gio.Volume(gobject.GInterface):
    def can_eject()
def can_mount()
def eject(callback, flags=gio.MOUNT_UNMOUNT_NONE, cancellable=None, user_data=None)
def eject_finish(result)
def enumerate_identifiers()
def get_activation_root()
def get_drive()
def get_icon()
def get_identifier()
def get_mount()
def get_name()
def get_uuid()
def mount(mount_operation, callback, flags=gio.MOUNT_MOUNT_NONE, cancellable=None, user_data=None)
def mount_finish(result)
def should_automount()

Prerequisites

gio.Volume requires gobject.GObject

gio.Volume Signal Prototypes

gobject.GObject Signal Prototypes

"changed"

def callback(volume, user_param1, ...)

"removed"

def callback(volume, user_param1, ...)

Description

The gio.Volume interface represents user-visible objects that can be mounted. Note, when porting from GnomeVFS, gio.Volume is the moral equivalent of GnomeVFSDrive.

Mounting a gio.Volume instance is an asynchronous operation. For more information about asynchronous operations. To mount a gio.Volume, first call gio.Volume.mount() with (at least) the gio.Volume instance, optionally a gio.MountOperation object and a GAsyncReadyCallback.

Typically, one will only want to pass None for the GMountOperation if automounting all volumes when a desktop session starts since it's not desirable to put up a lot of dialogs asking for credentials.

The callback will be fired when the operation has resolved (either with success or failure), and a GAsyncReady structure will be passed to the callback. That callback should then call gio.Volume.mount_finish() with the GVolume instance and the GAsyncReady data to see if the operation was completed successfully. If an error is present when gio.Volume.mount_finish() is called, then it will be filled with any error information.

It is sometimes necessary to directly access the underlying operating system object behind a volume (e.g. for passing a volume to an application via the commandline). For this purpose, GIO allows to obtain an 'identifier' for the volume. There can be different kinds of identifiers, such as Hal UDIs, filesystem labels, traditional Unix devices (e.g. /dev/sda2), uuids. GIO uses predefind strings as names for the different kinds of identifiers: "hal-udi", "label", etc. Use gio.Volume.get_identifier() to obtain an identifier for a volume.

Methods

gio.Volume.can_eject

    def can_eject()

Returns :

True if the volume can be ejected, False otherwise.

The can_eject() method checks if a volume can be ejected.

gio.Volume.can_mount

    def can_mount()

Returns :

True if the volume can be mounted for media changes, False otherwise.

The can_mount() method checks if a volume can be mounted.

gio.Volume.eject

    def eject(callback, flags=gio.MOUNT_UNMOUNT_NONE, cancellable=None, user_data=None)

callback :

A GAsyncReadyCallback to call when the request is satisfied.

flags :

flags affecting the unmount if required for eject.

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The eject() method asynchronously ejects a volume.

When the operation is finished, callback will be called. You can then call gio.Volume.eject_finish() to obtain the result of the operation.

gio.Volume.eject_finish

    def eject_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the volume has been ejected successfully, False otherwise.

The eject_finish() method finishes ejecting a volume. If any errors occured during the operation, error will be set to contain the errors and False will be returned.

gio.Volume.enumerate_identifiers

    def enumerate_identifiers()

Returns :

a list of strings containing kinds of identifiers.

The enumerate_identifiers() method gets the kinds of identifiers that volume has. Use gio.Volume.get_identifier() to obtain the identifiers themselves.

gio.Volume.get_activation_root

    def get_activation_root()

Returns :

the activation root of volume or None.

The get_activation_root() method gets the activation root for a gio.Volume if it is known ahead of mount time. Returns None otherwise. If not None and if volume is mounted, then the result of gio.Mount.get_root() on the GMount object obtained from gio.Volume.get_mount() will always either be equal or a prefix of what this function returns. In other words, in code:

mount = volume.get_mount() # mounted, so never None
mount_root = mount.get_root()
volume_activation_root = volume.get_activation_root() # assume not None

then the expression

volume_activation_root.has_prefix(mount_root) || volume_activation_root.equal(mount_root)

will always be True.

Activation roots are typically used in gio.VolumeMonitor implementations to find the underlying mount to shadow, see gio.Mount.is_shadowed() for more details.

gio.Volume.get_drive

    def get_drive()

Returns :

A gio.Drive or None if volume is not associated with a drive.

The get_drive() method gets the drive for the volume.

gio.Volume.get_icon

    def get_icon()

Returns :

gio.Icon for the volume.

The get_icon() method gets the icon for volume.

gio.Volume.get_identifier

    def get_identifier()

Returns :

A string containing the requested identfier, or None if the gio.Volume doesn't have this kind of identifier.

The get_identifier() method gets the identifier of the given kind for volume.

gio.Volume.get_mount

    def get_mount()

Returns :

A gio.Mount or None if volume isn't mounted.

The get_mount() method gets the mount for the volume.

gio.Volume.get_name

    def get_name()

Returns :

A string containing volume's name.

The get_name() method gets the name of volume.

gio.Volume.get_uuid

    def get_uuid()

Returns :

the UUID for volume or None if no UUID can be computed.

The get_uuid() method gets the UUID for the volume. The reference is typically based on the file system UUID for the volume in question and should be considered an opaque string. Returns None if there is no UUID available.

gio.Volume.mount

    def mount(mount_operation, callback, flags=gio.MOUNT_MOUNT_NONE, cancellable=None, user_data=None)

mount_operation :

A gio.MountOperation or None to avoid user interaction.

callback :

A GAsyncReadyCallback to call when the request is satisfied.

flags :

Flags affecting the operation

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The mount() method mounts a volume. This is an asynchronous operation, and is finished by calling gio.Volume.mount_finish() with the volume and GAsyncResult returned in the callback.

gio.Volume.mount_finish

    def mount_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the volume has been mounted successfully, False otherwise.

The mounted() method finishes mounting a volume. If any errors occured during the operation, error will be set to contain the errors and False will be returned.

If the mount operation succeeded, get_mount() on volume is guaranteed to return the mount right after calling this function; there's no need to listen for the 'mount-added' signal on gio.VolumeMonitor.

gio.Volume.should_automount

    def should_automount()

Returns :

True if the volume should be automatically mounted.

The should_automount() method returns whether the volume should be automatically mounted.

Signals

The "changed" gio.Volume Signal

    def callback(volume, user_param1, ...)

volume :

the volume

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

Emitted when the volume has been changed.

The "removed" gio.Volume Signal

    def callback(volume, user_param1, ...)

volume :

the volume

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

This signal is emitted when the gio.Volume have been removed. If the recipient is holding references to the object they should release them so the object can be finalized.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giosimpleasyncresult.html0000644000000000000000000004164011272036627027574 0ustar rootrootgio.SimpleAsyncResult

gio.SimpleAsyncResult

gio.SimpleAsyncResult — Simple asynchronous results implementation.

Synopsis

class gio.SimpleAsyncResult(gobject.GObject):
    def complete()
def complete_in_idle()
def get_op_res_gboolean()
def get_op_res_gssize()
def propagate_error()
def set_handle_cancellation(handle_cancellation)
def set_op_res_gboolean(op_res)
def set_op_res_gssize(op_res)

Implemented Interface

gio.SimpleAsyncResult implements gio.AsyncResult.

Description

Implements gio.AsyncResult for simple cases. Most of the time, this will be all an application needs, and will be used transparently Because of this, GSimpleAsyncResult is used throughout GIO for handling asynchronous functions.

gio.SimpleAsyncResult handles GAsyncReadyCallbacks, error reporting, operation cancellation and the final state of an operation, completely transparent to the application. Results can be returned as a pointer e.g. for functions that return data that is collected asynchronously, a boolean value for checking the success or failure of an operation, or a gssize for operations which return the number of bytes modified by the operation; all of the simple return cases are covered.

Most of the time, an application will not need to know of the details of this API; it is handled transparently, and any necessary operations are handled by GAsyncResult's interface. However, if implementing a new GIO module, for writing language bindings, or for complex applications that need better control of how asynchronous operations are completed, it is important to understand this functionality.

gio.SimpleAsyncResult are tagged with the calling function to ensure that asynchronous functions and their finishing functions are used together correctly.

An asynchronous operation can be made to ignore a cancellation event by calling gio.SimpleAsyncResult.set_handle_cancellation() with a gio.AsyncResult for the operation and False. This is useful for operations that are dangerous to cancel, such as close (which would cause a leak if cancelled before being run).

gio.AsyncResult can integrate into GLib's event loop, GMainLoop, or it can use GThreads if available. gio.SimpleAsyncResult.complete() will finish an I/O task directly within the main event loop. gio.SimpleAsyncResult.complete_in_idle() will integrate the I/O task into the main event loop as an idle function.

To set the results of an asynchronous function, gio.SimpleAsyncResult.set_op_res_gboolean(), and gio.SimpleAsyncResult.set_op_res_gssize() are provided, setting the operation's result to a gboolean, or gssize, respectively.

Likewise, to get the result of an asynchronous function, gio.SimpleAsyncResult.get_op_res_gboolean() and gio.SimpleAsyncResult.get_op_res_gssize() are provided, getting the operation's result as a gboolean and gssize, respectively.

Methods

gio.SimpleAsyncResult.complete

    def complete()

The complete() method completes an asynchronous I/O job. Must be called in the main thread, as it invokes the callback that should be called in the main thread. If you are in a different thread use gio.SimpleAsyncResult.complete_in_idle().

gio.SimpleAsyncResult.complete_in_idle

    def complete_in_idle()

The complete_in_idle() method completes an asynchronous function in the main event loop using an idle function.

gio.SimpleAsyncResult.get_op_res_gboolean

    def get_op_res_gboolean()

Returns :

True if the operation's result was True, False if the operation's result was False.

The get_op_res_gboolean() method gets the operation result boolean from within the asynchronous result.

gio.SimpleAsyncResult.get_op_res_gssize

    def get_op_res_gssize()

Returns :

a gssize returned from the asynchronous function.

The get_op_res_gssize() method gets a gssize from the asynchronous result.

gio.SimpleAsyncResult.propagate_error

    def propagate_error()

Returns :

True if the error was propegated to dest. False otherwise.

The propagate_error() method propagates an error from within the simple asynchronous result to a given destination.

gio.SimpleAsyncResult.set_handle_cancellation

    def set_handle_cancellation(handle_cancellation)

handle_cancellation :

a boolean.

The set_handle_cancellation() method sets whether to handle cancellation within the asynchronous operation.

gio.SimpleAsyncResult.set_op_res_gboolean

    def set_op_res_gboolean(op_res)

op_res :

a boolean.

The set_op_res_gboolean() method sets the operation result to a boolean within the asynchronous result.

gio.SimpleAsyncResult.set_op_res_gssize

    def set_op_res_gssize(op_res)

op_res :

a gssize.

The set_op_res_gssize() method sets the operation result within the asynchronous result to the given op_res.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gioloadableicon.html0000644000000000000000000002646011272036627026425 0ustar rootrootgio.LoadableIcon

gio.LoadableIcon

gio.LoadableIcon — Interface for icons.

Synopsis

class gio.LoadableIcon(gobject.GInterface):
    def load(size=0, cancellable=None)
def load_async(callback, size=0, cancellable=None, user_data=None)
def load_finish(res)

Prerequisites

gio.LoadableIcon requires gio.Icon. and gobject.GObject

Known Implementation

gio.LoadableIcon is implemented by gio.FileIcon

Description

gio.LoadableIcon extends the gio.Icon interface and adds the ability to load icons from streams.

Methods

gio.LoadableIcon.load

    def load(size=0, cancellable=None)

size :

an integer

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a 2 tuple containing a gio.InputStream to read the icon from and a string containing the icon type.

The load() method loads a loadable icon. For the asynchronous version of this function, see gio.LoadableIcon.load_async().

gio.LoadableIcon.load_async

    def load_async(callback, size=0, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

size :

an integer

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The load_async() method loads an icon asynchronously.

For more details, see gio.LoadableIcon.load() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.LoadableIcon.load_finish() to get the result of the operation.

gio.LoadableIcon.load_finish

    def load_finish(res)

res :

a gio.AsyncResult.

Returns :

a 2 tuple containing a gio.InputStream to read the icon from and a string containing the icon type.

The load_finish() method finishes an asynchronous icon load started in gio.LoadableIcon.load_async().

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giodrive.html0000644000000000000000000006210411272036627025115 0ustar rootrootgio.Drive

gio.Drive

gio.Drive — Virtual File System drive management.

Synopsis

class gio.Drive(gobject.GInterface):
    def can_eject()
def can_poll_for_media()
def eject(callback, flags=gio.MOUNT_UNMOUNT_NONE, cancellable=None, user_data=None)
def eject_finish(result)
def enumerate_identifiers()
def get_icon()
def get_identifier()
def get_name()
def get_volumes()
def has_media()
def has_volumes()
def is_media_check_automatic()
def is_media_removable()
def poll_for_media(callback, cancellable=None, user_data=None)
def poll_for_media_finish(result)

Ancestry

+-- gobject.GInterface
  +-- gio.Drive

Prerequisites

gio.Drive requires gobject.GObject

Description

gio.Drive - this represent a piece of hardware connected to the machine. Its generally only created for removable hardware or hardware with removable media.

gio.Drive is a container class for GVolume objects that stem from the same piece of media. As such, gio.Drive abstracts a drive with (or without) removable media and provides operations for querying whether media is available, determing whether media change is automatically detected and ejecting the media.

If the gio.Drive reports that media isn't automatically detected, one can poll for media; typically one should not do this periodically as a poll for media operation is potententially expensive and may spin up the drive creating noise.

For porting from GnomeVFS note that there is no equivalent of gio.Drive in that API.

Methods

gio.Drive.can_eject

    def can_eject()

Returns :

True if the drive can be ejected, False otherwise.

The can_eject() method checks if a drive can be ejected.

gio.Drive.can_poll_for_media

    def can_poll_for_media()

Returns :

True if the drive can be polled for media changes, False otherwise.

The can_poll_for_media() method checks if a drive can be polled for media changes.

gio.Drive.eject

    def eject(callback, flags=gio.MOUNT_UNMOUNT_NONE, cancellable=None, user_data=None)

callback :

A GAsyncReadyCallback to call when the request is satisfied.

flags :

flags affecting the unmount if required for eject.

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The eject() method asynchronously ejects a drive.

When the operation is finished, callback will be called. You can then call gio.Drive.eject_finish() to obtain the result of the operation.

gio.Drive.eject_finish

    def eject_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the drive has been ejected successfully, False otherwise.

The eject_finish() method finishes ejecting a drive.

gio.Drive.enumerate_identifiers

    def enumerate_identifiers()

Returns :

a list of strings containing kinds of identifiers.

The enumerate_identifiers() method gets the kinds of identifiers that drive has. Use gio.Drive.get_identifier() to obtain the identifiers themselves.

gio.Drive.get_icon

    def get_icon()

Returns :

gio.Icon for the drive.

The get_icon() method gets the icon for drive.

gio.Drive.get_identifier

    def get_identifier()

Returns :

A string containing the requested identfier, or None if the gio.Drive doesn't have this kind of identifier.

The get_identifier() method gets the identifier of the given kind for drive.

gio.Drive.get_name

    def get_name()

Returns :

A string containing drive's name.

The get_name() method gets the name of drive.

gio.Drive.get_volumes

    def get_volumes()

Returns :

A list containing any gio.Volume objects on the given drive.

The get_volumes() method get a list of mountable volumes for drive.

gio.Drive.has_media

    def has_media()

Returns :

True if drive has media, False otherwise.

The has_media() method checks if the drive has media. Note that the OS may not be polling the drive for media changes; see gio.Drive.is_media_check_automatic() for more details.

gio.Drive.has_volumes

    def has_volumes()

Returns :

True if drive contains volumes, False otherwise.

The has_volumes() method check if drive has any mountable volumes.

gio.Drive.is_media_check_automatic

    def is_media_check_automatic()

Returns :

True if drive is capabable of automatically detecting media changes, False otherwise.

The is_media_check_automatic() method checks if drive is capabable of automatically detecting media changes.

gio.Drive.is_media_removable

    def is_media_removable()

Returns :

True if drive supports removable media, False otherwise.

The is_media_removable() method checks if the drive supports removable media.

gio.Drive.poll_for_media

    def poll_for_media(callback, cancellable=None, user_data=None)

callback :

A GAsyncReadyCallback to call when the request is satisfied.

cancellable :

Optional gio.Cancellable object, None to ignore.

user_data :

The data to pass to callback function.

The poll_for_media() method asynchronously polls drive to see if media has been inserted or removed.

When the operation is finished, callback will be called. You can then call gio.Drive.poll_for_media_finish() to obtain the result of the operation.

gio.Drive.poll_for_media_finish

    def poll_for_media_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the drive has been poll_for_mediaed successfully, False otherwise.

The poll_for_media_finish() method finishes an operation started with gio.Drive.poll_for_media() on a drive.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/gio-class-reference.html0000644000000000000000000001715511272036627026025 0ustar rootrootPyGio Class Reference

PyGio Class Reference

Table of Contents

gio.AppInfo — Information about an installed application and methods to launch it (with file arguments).
gio.AppLaunchContext — Application launch context.
gio.AsyncResult — Asynchronous Function Results.
gio.BufferedInputStream — Buffered Input Stream
gio.BufferedOutputStream — Buffered Output Stream
gio.Cancellable — Thread-safe Operation Cancellation Stack.
gio.DataInputStream — Data Input Stream
gio.DataOutputStream — Data Output Stream
gio.Drive — Virtual File System drive management.
gio.Emblem — An object for emblems.
gio.EmblemedIcon — Icon with emblems.
gio.File — File and Directory Handling.
gio.FileAttributeInfo — Information about a specific attribute.
gio.FileEnumerator — Enumerated Files Routines.
gio.FileIcon — Icons pointing to an image file.
gio.FileInfo — File Information and Attributes
gio.FileInputStream — Base class for implementing streaming input
gio.FileMonitor — File Monitor
gio.FileOutputStream — Base class for implementing streaming input
gio.FilterInputStream — Filter Input Stream
gio.FilterOutputStream — Filter Output Stream
gio.Icon — Interface for icons.
gio.InputStream — Base class for implementing streaming input
gio.LoadableIcon — Interface for icons.
gio.MemoryInputStream — Base class for implementing streaming input
gio.MemoryOutputStream — Streaming output operations on memory chunks
gio.Mount — Mount management
gio.MountOperation — Authentication methods for mountable locations.
gio.OutputStream — Base class for implementing streaming input
gio.Seekable — Stream seeking interface.
gio.SimpleAsyncResult — Simple asynchronous results implementation.
gio.ThemedIcon — Icon theming support.
gio.Volume — Volume management.
gio.VolumeMonitor — Volume Monitor.
gio Functions
gio Constants — the built-in constants of the gio module
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gobject.html0000644000000000000000000012657311272036627024735 0ustar rootrootgobject.GObject

gobject.GObject

gobject.GObject — the base class

Synopsis

class gobject.GObject:
    def get_property(property_name)
def get_properties(first_property_name, ...)
def set_property(property_name, value)
def set_properties(property_name=value, ...)
def freeze_notify()
def notify(property_name)
def thaw_notify()
def get_data(key)
def set_data(key, data)
def connect(detailed_signal, handler)
def connect_after(detailed_signal, handler)
def connect_object(detailed_signal, handler)
def connect_object_after(detailed_signal, handler)
def disconnect(handler_id)
def handler_disconnect(handler_id)
def handler_is_connected(handler_id)
def handler_block(handler_id)
def handler_unblock(handler_id)
def handler_block_by_func(callable)
def handler_unblock_by_func(callable)
def emit(detailed_signal)
def stop_emission(detailed_signal)
def emit_stop_by_name(detailed_signal)
def chain()

Ancestry

+-- gobject.GObject

Attributes

"props"Read/Write

This attribute gives full access to GObject properties as simple attributes. It can be used to iterate over all the object properties, and can be used both on class or instance objects.

Examples:

button = Button()
button_label = button.props.label
button.props.label = 'Click on this fancy button'
for pspec in button.props:
    print pspec
    print button.get_property(pspec.name)
label_pspec = Button.props.label
button_label = button.get_property(label_pspec.name)
              
"__doc__"ReadThe documentation for the object type. Uses "__gdoc__" if no specific documentation set.
"__gdoc__"ReadThe generated documentation for the underlying GObject type.
"__gtype__"ReadThe underlying GObject type.
"__grefcount__"ReadThe reference count for the underlying GObject.

gobject.GObject Signal Prototypes

"notify"

def callback(gobject, property_spec, user_param1, ...)

Description

The gobject.GObject class is the base class providing the common attributes and methods for the PyGTK classes. The gobject.GObject class is not a user interface widget class.

The gobject.GObject class provides the signal management methods, the object property access methods and the object data management methods.

Methods

gobject.GObject.get_property

    def get_property(property_name)

property_name :

a string containing the property name for the GObject

Returns :

a Python object containing the value of the property

The get_property() method returns the value of the property specified by property_name or None if there is no value associated with the property.

The TypeError exception is raised if the property name is not registered with the object class.

gobject.GObject.get_properties

    def get_properties(first_property_name, ...)

first_property_name :

a string containing the first property name for the GObject

... :

additional property names

Returns :

a tuple containing the property values requested

The get_properties() method returns a tuple containing the values of the properties requested, or None if there is no value associated with the property.

The TypeError exception is raised if the property name is not registered with the object class.

gobject.GObject.set_property

    def set_property(property_name, value)

property_name :

a string containing the property name

value :

a Python object containing the property value to be set

The set_property() method sets the property specified by property_name to the specified value.

The TypeError exception is raised if the property name is not registered with the object class or if the value specified could not be converted to the property type.

gobject.GObject.set_properties

    def set_properties(property_name=value, ...)

property_name :

the property name

value :

a Python object containing the property value to be set

... :

additional property name and value kwargs

The set_properties() method sets the property specified by property_name to the specified value, followed by pairs of property name and value as keyword arguments.

The TypeError exception is raised if the property name is not registered with the object class or if the value specified could not be converted to the property type.

gobject.GObject.freeze_notify

    def freeze_notify()

The freeze_notify() method freezes the object's property-changed notification queue so that "notify" signals are blocked until the thaw_notify() method is called.

gobject.GObject.notify

    def notify(property_name)

property_name :

a string containing a property name

The notify() method causes the "notify" signal for the property specified by property_name to be emitted.

gobject.GObject.thaw_notify

    def thaw_notify()

The thaw_notify() method thaws the object's property-changed notification queue so that "notify" signals are emitted.

gobject.GObject.get_data

    def get_data(key)

key :

a string used as the key

Returns :

a Python object containing the associated data

The get_data() method returns the Python object associated with the specified key or None if there is no data associated with the key or if there is no key associated with the object.

gobject.GObject.set_data

    def set_data(key, data)

key :

a string used as a key

data :

a Python object that is the value to be associated with the key

The set_data() method associates the specified Python object (data) with key.

gobject.GObject.connect

    def connect(detailed_signal, handler, ...)

detailed_signal :

a string containing the signal name

handler :

a Python function or method object.

... :

additional optional parameters

Returns :

an integer identifier

The connect() method adds a function or method (handler)to the end of the list of signal handlers for the named detailed_signal but before the default class signal handler. An optional set of parameters may be specified after the handler parameter. These will all be passed to the signal handler when invoked.

For example if a function handler was connected to a signal using:

  handler_id = object.connect("signal_name", handler, arg1, arg2, arg3)

The handler should be defined as:

  def handler(object, arg1, arg2, arg3):

A method handler connected to a signal using:

  handler_id = object.connect("signal_name", self.handler, arg1, arg2)

requires an additional argument when defined:

  def handler(self, object, arg1, arg2)

A TypeError exception is raised if detailed_signal identifies a signal name that is not associated with the object.

gobject.GObject.connect_after

    def connect_after(detailed_signal, handler, ...)

detailed_signal :

a string containing the signal name

handler :

a Python function or method object

... :

additional optional parameters

Returns :

an integer handler identifier

The connect_after() method is similar to the connect() method except that the handler is added to the signal handler list after the default class signal handler. Otherwise the details of handler definition and invocation are the same.

gobject.GObject.connect_object

    def connect_object(detailed_signal, handler, gobject)

detailed_signal :

a string containing the signal name

handler :

a Python function or method object

gobject :

a GObject

Returns :

an integer handler identifier

The connect_object() method is the same as the connect() method except that the handler is invoked with the specified gobject in place of the object invoking the connect_object() method. For example, a call with a function handler:

  handler_id = object("signal_name", handler, gobject)

will cause the handler to be invoked as:

  handler(gobject)

Likewise a method handler will be invoked as:

  self.handler(gobject)

This can be helpful in invoking PyGTK widget methods that require no arguments except the widget itself (e.g. widget.destroy()) by using the class method as the handler. For example, a Button "clicked" signal can be set up to invoke the Window destroy() method as:

  handler_id = button.connect_object("clicked", Window.destroy, window)

When the button is clicked the handler is invoked as:

  Window.destroy(window)

which is the same as:

  window.destroy()

Additional arguments may be passed to the handler as with the connect() method handler invocations.

gobject.GObject.connect_object_after

    def connect_object_after(detailed_signal, handler)

detailed_signal :

a string containing the signal name

handler :

a Python function or method object

gobject :

a GObject

Returns :

an integer handler identifier

The connect_object_after() method is similar to the connect_object() method except that the handler is added to the signal handler list after the default class signal handler. Otherwise the details of handler definition and invocation are the same.

gobject.GObject.disconnect

    def disconnect(handler_id)

handler_id :

an integer handler identifier

The disconnect() method removes the signal handler with the specified handler_id from the list of signal handlers for the object.

gobject.GObject.handler_disconnect

    def handler_disconnect(handler_id)

handler_id :

an integer handler identifier

The handler_disconnect() method removes the signal handler with the specified handler_id from the list of signal handlers for the object.

gobject.GObject.handler_is_connected

    def handler_is_connected(handler_id)

handler_id :

an integer handler identifier

Returns :

TRUE if the signal handler is connected to the object.

The handler_is_connected() method returns TRUE if the signal handler with the specified handler_id is connected to the object.

gobject.GObject.handler_block

    def handler_block(handler_id)

handler_id :

an integer handler identifier

The handler_block() method blocks the signal handler with the specified handler_id from being invoked until it is unblocked.

gobject.GObject.handler_unblock

    def handler_unblock(handler_id)

handler_id :

an integer handler identifier

gobject.GObject.handler_block_by_func

    def handler_block_by_func(callable)

callable :

a callable python object

The handler_block_by_func() method blocks the all signal handler connected to a specific callable from being invoked until the callable is unblocked.

gobject.GObject.handler_unblock_by_func

    def handler_unblock_by_func(callback)

callable :

a callable python object

The handler_unblock_by_func() method unblocks all signal handler connected to a specified callable thereby allowing it to be invoked when the associated signals are emitted.

gobject.GObject.emit

    def emit(detailed_signal, ...)

detailed_signal :

a string containing the signal name

... :

additional parameters

Returns :

a PyObject*

The emit() method causes the object to emit the signal specified by detailed_signal. The additional parameters must match the number and type of the required signal handler parameters. In most cases no additional parameters are needed. for example:

  button.emit("clicked")

is all that is required to emit the "clicked" signal for a button. The most common case requiring additional parameters occurs when emitting an event signal; for example:

  button.emit("button_press_event", event)

gobject.GObject.stop_emission

    def stop_emission(detailed_signal)

detailed_signal :

a string containing the signal name

The stop_emission() method stops the current emission of the signal specified by detailed_signal. Any signal handlers in the list still to be run will not be invoked.

gobject.GObject.emit_stop_by_name

    def emit_stop_by_name(detailed_signal)

detailed_signal :

a string containing the signal name

The emit_stop_by_name() method stops the current emission of the signal specified by detailed_signal. Any signal handlers in the list still to be run will not be invoked.

gobject.GObject.chain

    def chain(...)

... :

additional parameters

Returns :

a Python object

The chain() method does something.

Signals

The GObject "notify" Signal

    def callback(gobject, property_spec, user_param1, ...)

gobject :

the gobject that received the signal

property_spec :

the gobject.GParamSpec of the property that was changed

user_param1 :

the first user parameter (if any) specified with the connect() method

... :

additional user parameters (if any)

The "notify" signal is emitted on a gobject when one of its properties has been changed. Note that getting this signal doesn't guarantee that the value of the property has actually changed, it may also be emitted when the setter for the property is called to reinstate the previous value. For example to be notified of the change of the title of a gtk.Window you could connect to the "notify" signal similar to:

  window.connect("notify::title", callback)
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gobjectgpointer.html0000644000000000000000000000542311272036627026473 0ustar rootrootgobject.GPointer

gobject.GPointer

gobject.GPointer — an object containing a completely opaque chunk of data

Synopsis

class gobject.GPointer:

Ancestry

+-- gobject.GPointer

Description

gobject.GPointer is an abstract base class that encapsulates an opaque chunk of data and registers it with the GLIB type system. A pointer type has no methods and generic ways of copying and freeing the data. It shouldn't be used in PyGTK.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giounixinputstream.html0000644000000000000000000002302511272036627027262 0ustar rootrootgio.unix.InputStream

gio.unix.InputStream

gio.unix.InputStream — Streaming input operations for UNIX file descriptors.

Synopsis

class gio.unix.InputStream(gio.InputStream):
    gio.unix.InputStream(fd, close_fd)
def get_close_fd()
def get_fd()
def set_close_fd(close_fd)

gio.unix.InputStream Properties

"close-fd"Read - WriteWhether to close the file descriptor when the stream is closed. Default value: True.
"fd"Read - Write - Construct onlyThe file descriptor that the stream reads from. Default value: -1.

Description

gio.unix.InputStream implements gio.InputStream for reading from a UNIX file descriptor, including asynchronous operations. The file descriptor must be selectable, so it doesn't work with opened files.

Note that gio.unix.InputStream belongs to the UNIX-specific GIO interfaces, thus you have to use the gio-unix-2.0.pc pkg-config file when using it.

Constructor

    gio.unix.InputStream(fd, close_fd)

fd :

a UNIX file descriptor.

close_fd :

True to close the file descriptor when done

Returns :

a new gio.unix.InputStream

Creates a new gio.unix.InputStream from the given fd.

If close_fd is True, the file descriptor will be closed when the stream is closed.

Methods

gio.unix.InputStream.get_close_fd

    def get_close_fd()

Returns :

True if the file descriptor is closed when done.

The get_close_fd() method returns whether the file descriptor of stream will be closed when the stream is closed.

gio.unix.InputStream.get_fd

    def get_fd()

Returns :

The file descriptor of stream.

The get_fd() method return the UNIX file descriptor that the stream reads from.

gio.unix.InputStream.set_close_fd

    def set_close_fd(close_fd)

close_fd :

True to close the file descriptor when done .

The set_close_fd() method sets whether the file descriptor of stream shall be closed when the stream is closed.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofile.html0000644000000000000000000100547611272036627024735 0ustar rootrootgio.File

gio.File

gio.File — File and Directory Handling.

Synopsis

class gio.File(gobject.GInterface):
    gio.File(commandline, path=None, uri=None)
def append_to(flags=gio.FILE_CREATE_NONE, cancellable=None)
def append_to_async(callback, flags=gio.FILE_CREATE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def append_to_finish(result)
def copy(destination, progress_callback, flags=gio.FILE_COPY_NONE, cancellable=None, user_data=None)
def copy_async(destination, callback, progress_callback=None, flags=gio.FILE_CREATE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None, progress_callback_data=None)
def copy_attributes(destination, flags=gio.FILE_COPY_NONE, cancellable=None)
def copy_finish(result)
def create(flags=gio.FILE_CREATE_NONE, cancellable=None)
def create_async(callback, flags=gio.FILE_CREATE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def create_finish(result)
def delete(cancellable=None)
def dup()
def eject_mountable(callback, flags=gio.FILE_CREATE_NONE, cancellable=None, user_data=None)
def eject_mountable_finish(result)
def enumerate_children(attributes, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)
def enumerate_children_async(attributes, callback, flags=gio.FILE_QUERY_INFO_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def enumerate_children_finish(result)
def equal(file2)
def find_enclosing_mount(cancellable)
def find_enclosing_mount_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def find_enclosing_mount_finish(result)
def get_basename()
def get_child(name)
def get_child_for_display_name(display_name)
def get_parent()
def get_parse_name()
def get_path()
def get_relative_path(descendant)
def get_uri()
def get_uri_scheme()
def has_prefix(prefix)
def has_uri_scheme(uri_scheme)
def is_native()
def load_contents(cancellable)
def load_contents_async(callback, cancellable=None, user_data=None)
def load_contents_finish(result)
def make_directory(cancellable=None)
def make_directory_with_parents(cancellable=None)
def make_symbolic_link(symlink_value, cancellable)
def monitor(flags=gio.FILE_MONITOR_NONE, cancellable=None)
def monitor_directory(flags, cancellable=None)
def monitor_file(flags, cancellable=None)
def mount_enclosing_volume(mount_operation, callback, flags=gio.MOUNT_MOUNT_NONE, cancellable=None, user_data=None)
def mount_enclosing_volume_finish(result)
def mount_mountable(mount_operation, callback, flags=gio.MOUNT_MOUNT_NONE, cancellable=None, user_data=None)
def mount_mountable_finish(result)
def move(destination, progress_callback, flags=gio.FILE_COPY_NONE, cancellable=None, user_data=None)
def query_default_handler(cancellable)
def query_exists(cancellable)
def query_file_type(flags, cancellable)
def query_filesystem_info(attributes, cancellable)
def query_filesystem_info_async(attributes, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def query_filesystem_info_finish(result)
def query_info(attributes, flags, cancellable)
def query_info_async(attributes, callback, flags=gio.FILE_QUERY_INFO_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def query_info_finish(result)
def query_settable_attributes(cancellable=None)
def query_writable_namespace(cancellable=None)
def read(cancellable=None)
def read_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def read_finish(result=None)
def replace(etag, make_backup, flags=gio.FILE_CREATE_NONE, cancellable=None)
def replace_async(callback, etag=None, make_backup=True, flags=gio.FILE_CREATE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def replace_contents(contents, etag=None, make_backup=True, flags=gio.FILE_CREATE_NONE, cancellable=None)
def replace_contents_async(contents, callback, etag=None, make_backup=True, flags=gio.FILE_CREATE_NONE, cancellable=None, user_data=None)
def replace_contents_finish(result=None)
def replace_finish(result=None)
def resolve_relative_path(relative_path)
def set_attribute(attribute, type, value_p, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)
def set_attribute_byte_string(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)
def set_attribute_int32(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)
def set_attribute_int64(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)
def set_attribute_string(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)
def set_attribute_uint32(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)
def set_attribute_uint64(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)
def set_attributes_async(info, callback, flags=gio.FILE_QUERY_INFO_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def set_attributes_finish(result)
def set_attributes_from_info(info, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)
def set_dispay_name(display_name, cancellable=None)
def set_display_name_async(display_name, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def set_display_name_finish(result)
def trash(cancellable=None)
def unmount_mountable(callback, flags=gio.MOUNT_UNMOUNT_NONE, cancellable=None, user_data=None)
def unmount_mountable_finish(cancellable=None)
Functions
    def gio.file_parse_name(parse_name)

Ancestry

+-- gobject.GInterface
  +-- gio.File

Prerequisites

gio.File is implemented by gobject.GObject

Description

gio.File is a high level abstraction for manipulating files on a virtual file system. gio.Files are lightweight, immutable objects that do no I/O upon creation. It is necessary to understand that gio.File objects do not represent files, merely an identifier for a file. All file content I/O is implemented as streaming operations (see gio.InputStream and gio.OutputStream).

To construct a gio.File, you can use it's constructor either with a path, an uri or a commandline argument. gio.file_parse_name() from a utf8 string gotten from gio.File.get_parse_name().

One way to think of a gio.File is as an abstraction of a pathname. For normal files the system pathname is what is stored internally, but as gio.Files are extensible it could also be something else that corresponds to a pathname in a userspace implementation of a filesystem.

gio.Files make up hierarchies of directories and files that correspond to the files on a filesystem. You can move through the file system with GFile using gio.File.get_parent() to get an identifier for the parent directory, gio.File.get_child() to get a child within a directory, gio.File.resolve_relative_path() to resolve a relative path between two gio.Files. There can be multiple hierarchies, so you may not end up at the same root if you repeatedly call gio.File.get_parent() on two different files.

All gio.Files have a basename (get with gio.File.get_basename() ). These names are byte strings that are used to identify the file on the filesystem (relative to its parent directory) and there is no guarantees that they have any particular charset encoding or even make any sense at all. If you want to use filenames in a user interface you should use the display name that you can get by requesting the gio.FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME attribute with gio.File.query_info(). This is guaranteed to be in utf8 and can be used in a user interface. But always store the real basename or the GFile to use to actually access the file, because there is no way to go from a display name to the actual name.

Using gio.File as an identifier has the same weaknesses as using a path in that there may be multiple aliases for the same file. For instance, hard or soft links may cause two different gio.Files to refer to the same file. Other possible causes for aliases are: case insensitive filesystems, short and long names on Fat/NTFS, or bind mounts in Linux. If you want to check if two GFiles point to the same file you can query for the gio.FILE_ATTRIBUTE_ID_FILE attribute. Note that gio.File does some trivial canonicalization of pathnames passed in, so that trivial differences in the path string used at creation (duplicated slashes, slash at end of path, "." or ".." path segments, etc) does not create different gio.Files.

Many gio.File operations have both synchronous and asynchronous versions to suit your application. Asynchronous versions of synchronous functions simply have _async() appended to their function names. The asynchronous I/O functions call a GAsyncReadyCallback which is then used to finalize the operation, producing a GAsyncResult which is then passed to the function's matching _finish() operation.

Some gio.File operations do not have synchronous analogs, as they may take a very long time to finish, and blocking may leave an application unusable. Notable cases include: gio.File.mount_mountable() to mount a mountable file. gio.File.unmount_mountable() to unmount a mountable file. gio.File.eject_mountable() to eject a mountable file.

One notable feature of gio.Files are entity tags, or "etags" for short. Entity tags are somewhat like a more abstract version of the traditional mtime, and can be used to quickly determine if the file has been modified from the version on the file system. See the HTTP 1.1 specification for HTTP Etag headers, which are a very similar concept.

Constructor

    gio.File(commandline, path=None, uri=None)

commandline :

a command line string.

path :

a string containing a relative or absolute path.

uri :

a string containing a URI.

Returns :

a new gio.File.

Creates a new gio.File either from a commandline, a path or an uri.

Methods

gio.File.append_to

    def append_to(flags=gio.FILE_CREATE_NONE, cancellable=None)

flags :

a set of Gio File Create Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileOutputStream or None on error.

The append_to() method gets an output stream for appending data to the file. If the file doesn't already exist it is created.

By default files created are generally readable by everyone, but if you pass gio.FILE_CREATE_PRIVATE in flags the file will be made readable only to the current user, to the level that is supported on the target filesystem.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

Some file systems don't allow all file names, and may return an gio.ERROR_INVALID_FILENAME error. If the file is a directory the gio.ERROR_IS_DIRECTORY error will be returned. Other errors are possible too, and depend on what kind of filesystem the file is on.

gio.File.append_to_async

    def append_to_async(callback, flags=gio.FILE_CREATE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

flags :

a set of Gio File Create Flags Constants.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The append_to_async() method asynchronously opens file for appending.

For more details, see gio.File.append_to() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.File.append_to_finish() to get the result of the operation.

gio.File.append_to_finish

    def append_to_finish(result)

result :

a gio.AsyncResult.

Returns :

a valid gio.OutputStream or None on error.

The append_to_finish() method finishes an asynchronous file append operation started with gio.File.append_to_async().

gio.File.copy

    def copy(destination, progress_callback, flags=gio.FILE_COPY_NONE, cancellable=None, user_data=None)

destination :

destination gio.File.

progress_callback :

function to callback with progress information.

flags :

a set of Gio File Copy Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to the progress callback function.

Returns :

True on success, False otherwise.

The copy() method copies the file source to the location specified by destination. Can not handle recursive copies of directories.

If the flag gio.FILE_COPY_OVERWRITE is specified an already existing destination file is overwritten.

If the flag gio.FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlinks will be copied as symlinks, otherwise the target of the source symlink will be copied.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

If progress_callback is not None, then the operation can be monitored by setting this to a GFileProgressCallback function. user_data will be passed to this function. It is guaranteed that this callback will be called after all data has been transferred with the total number of bytes copied during the operation.

If the source file does not exist then the gio.ERROR_NOT_FOUND error is returned, independent on the status of the destination.

If gio.FILE_COPY_OVERWRITE is not specified and the target exists, then the error gio.ERROR_EXISTS is returned.

If trying to overwrite a file over a directory the gio.ERROR_IS_DIRECTORY error is returned. If trying to overwrite a directory with a directory the gio.ERROR_WOULD_MERGE error is returned.

If the source is a directory and the target does not exist, or gio.FILE_COPY_OVERWRITE is specified and the target is a file, then the gio.ERROR_WOULD_RECURSE error is returned.

If you are interested in copying the gio.File object itself (not the on-disk file), see gio.File.dup().

gio.File.copy_async

    def append_to_async(destination, callback, progress_callback=None, flags=gio.FILE_CREATE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None, progress_callback_data=None)

destination :

destination gio.File.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

progress_callback :

function to callback with progress information.

flags :

a set of Gio File Copy Flags Constants.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

progress_callback_data :

the data to pass to the progress callback function.

The copy_async() method copies the file source to the location specified by destination asynchronously. For details of the behaviour, see gio.File.copy().

If progress_callback is not None, then that function that will be called just like in gio.File.copy(), however the callback will run in the main loop, not in the thread that is doing the I/O operation.

When the operation is finished, callback will be called. You can then call gio.File.copy_finish() to get the result of the operation.

gio.File.copy_attributes

    def copy_attributes(destination, flags=gio.FILE_COPY_NONE, cancellable=None)

destination :

destination gio.File to copy attributes to.

flags :

a set of Gio File Copy Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the attributes were copied successfully, False otherwise.

The copy_attributes() method copies the file attributes from source to destination.

Normally only a subset of the file attributes are copied, those that are copies in a normal file copy operation (which for instance does not include e.g. owner). However if gio.FILE_COPY_ALL_METADATA is specified in flags, then all the metadata that is possible to copy is copied. This is useful when implementing move by copy + delete source.

gio.File.copy_finish

    def copy_finish(result)

result :

a gio.AsyncResult.

Returns :

True on success, False on error.

The copy_finish() method finishes an asynchronous copy operation started with gio.File.copy_async().

gio.File.create

    def create(flags=gio.FILE_CREATE_NONE, cancellable=None)

flags :

a set of Gio File Create Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileOutputStream or None on error.

The create() method creates a new file and returns an output stream for writing to it. The file must not already exist.

By default files created are generally readable by everyone, but if you pass gio.FILE_CREATE_PRIVATE in flags the file will be made readable only to the current user, to the level that is supported on the target filesystem.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

If a file or directory with this name already exists the gio.ERROR_EXISTS error will be returned. Some file systems don't allow all file names, and may return an gio.ERROR_INVALID_FILENAME error, and if the name is to long gio.ERROR_FILENAME_TOO_LONG will be returned. Other errors are possible too, and depend on what kind of filesystem the file is on.

gio.File.create_async

    def create_async(callback, flags=gio.FILE_CREATE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

flags :

a set of Gio File Copy Flags Constants.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The create_async() method asynchronously creates a new file and returns an output stream for writing to it. The file must not already exist.

For more details, see gio.File.create() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.File.create_finish() to get the result of the operation.

gio.File.create_finish

    def create_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.FileOutputStream or None on error.

The create_finish() method finishes an asynchronous copy operation started with gio.File.create_async().

gio.File.delete

    def delete(cancellable)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the file was deleted, False otherwise.

The deleted() method deletes a file. If the file is a directory, it will only be deleted if it is empty.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.dup

    def dup()

Returns :

a new gio.File that is a duplicate of the given gio.File.

The dup() method duplicates a gio.File handle. This operation does not duplicate the actual file or directory represented by the gio.File; see gio.File.copy() if attempting to copy a file.

This call does no blocking i/o.

gio.File.eject_mountable

    def eject_mountable(callback, flags=gio.FILE_CREATE_NONE, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

flags :

a set of Gio File Copy Flags Constants.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The eject_mountable() method starts an asynchronous eject on a mountable. When this operation has completed, callback will be called with user_user data, and the operation can be finalized with gio.File.eject_mountable_finish().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.eject_mountable_finish

    def eject_mountable_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the file was ejected successfully, False on error.

The create_finish() method finishes an asynchronous copy operation started with gio.File.create_async().

gio.File.enumerate_children

    def enumerate_children(attributes, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

attributes :

an attribute query string.

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileEnumerator or None on error.

The enumerate_children() method gets the requested information about the files in a directory. The result is a GFileEnumerator object that will give out gio.FileInfo objects for all the files in the directory.

The attribute value is a string that specifies the file attributes that should be gathered. It is not an error if it's not possible to read a particular requested attribute from a file - it just won't be set. attribute should be a comma-separated list of attribute or attribute wildcards. The wildcard "*" means all attributes, and a wildcard like "standard::*" means all attributes in the standard namespace. An example attribute query be "standard::*,owner::user". The standard attributes are available as defines, like gio.FILE_ATTRIBUTE_STANDARD_NAME.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

If the file does not exist, the gio.ERROR_NOT_FOUND error will be returned. If the file is not a directory, the gio.FILE_ERROR_NOTDIR error will be returned. Other errors are possible too.

gio.File.enumerate_children_async

    def enumerate_children_async(attributes, callback, flags=gio.FILE_QUERY_INFO_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

attributes :

an attribute query string.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

flags :

a set of Gio File Query Info Flags Constants.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The enumerate_children_async() method asynchronously gets the requested information about the files in a directory. The result is a gio.FileEnumerator object that will give out gio.FileInfo objects for all the files in the directory.

For more details, see enumerate_children() which is the synchronous version of this call.

gio.File.eject_mountable_finish

    def enumerate_children_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.FileEnumerator or None if an error occurred.

The enumerate_children_finish() method finishes an asynchronous copy operation started with gio.File.enumerate_children_async().

gio.File.equal

    def equal(file2)

file2 :

a gio.File.

Returns :

True if file1 and file2 are equal. False if either is not a gio.File.

The equal() method checks equality of two given gio.Files. Note that two gio.Files that differ can still refer to the same file on the filesystem due to various forms of filename aliasing.

This call does no blocking i/o.

gio.File.find_enclosing_mount

    def enumerate_children(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.Mount or None on error.

The find_enclosing_mount() method gets a gio.Mount for the gio.File.

If the interface for file does not have a mount (e.g. possibly a remote share), error will be set to gio.ERROR_NOT_FOUND and None will be returned.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.find_enclosing_mount_async

    def find_enclosing_mount_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The find_enclosing_mount_async() method asynchronously gets the mount for the file.

For more details, see gio.File.find_enclosing_mount() which is the synchronous version of this call.

gio.File.find_enclosing_mount_finish

    def find_enclosing_mount_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.Mount or None if an error occurred.

The find_enclosing_mount_finish() method finishes an asynchronous find mount started with gio.File.find_enclosing_mount_async().

gio.File.get_basename

    def get_basename()

Returns :

string containing the gio.File's base name, or None if given gio.File is invalid.

The get_basename() method gets the base name (the last component of the path) for a given gio.File.

If called for the top level of a system (such as the filesystem root or a uri like sftp://host/) it will return a single directory separator (and on Windows, possibly a drive letter).

The base name is a byte string (*not* UTF-8). It has no defined encoding or rules other than it may not contain zero bytes. If you want to use filenames in a user interface you should use the display name that you can get by requesting the gio.FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME attribute with gio.File.query_info().

This call does no blocking i/o.

gio.File.get_child

    def get_child(name)

name :

string containing the child's basename.

Returns :

a gio.File to a child specified by name.

The get_child() method gets a child of file with basename equal to name.

Note that the file with that specific name might not exist, but you can still have a gio.File that points to it. You can use this for instance to create that file.

This call does no blocking i/o.

gio.File.get_child_for_display_name

    def get_child_for_display_name(display_name)

display_name :

string to a possible child.

Returns :

a gio.File to the specified child or None if the display name couldn't be converted.

The get_child_for_display_name() method gets the child of file for a given display_name (i.e. a UTF8 version of the name). If this function fails, it returns NULL and error will be set. This is very useful when constructing a GFile for a new file and the user entered the filename in the user interface, for instance when you select a directory and type a filename in the file selector.

This call does no blocking i/o.

gio.File.get_parent

    def get_parent()

Returns :

a gio.File structure to the parent of the given gio.File or None if there is no parent.

The get_parent() method gets the parent directory for the file. If the file represents the root directory of the file system, then None will be returned.

This call does no blocking i/o.

gio.File.get_parse_name

    def get_parse_name()

Returns :

a string containing the gio.File's parse name.

The get_parse_name() method gets the parse name of the file. A parse name is a UTF-8 string that describes the file such that one can get the gio.File back using gio.file_parse_name().

This is generally used to show the gio.File as a nice full-pathname kind of string in a user interface, like in a location entry.

For local files with names that can safely be converted to UTF8 the pathname is used, otherwise the IRI is used (a form of URI that allows UTF8 characters unescaped).

This call does no blocking i/o.

gio.File.get_path

    def get_path()

Returns :

a string containing the gio.File's path, or None if no such path exists.

The get_path() method gets the local pathname for gio.File, if one exists.

This call does no blocking i/o.

gio.File.get_relative_path

    def get_relative_path(descendant)

descendant :

input gio.File.

Returns :

string with the relative path from descendant to parent, or None if descendant doesn't have parent as prefix.

The get_relative_path() method gets the path for descendant relative to parent.

This call does no blocking i/o.

gio.File.get_uri

    def get_uri()

Returns :

a string containing the gio.File's URI.

The get_uri() method gets the URI for the file.

This call does no blocking i/o.

gio.File.get_uri_scheme

    def get_uri_scheme()

Returns :

a string containing the URI scheme for the gio.File.

The get_uri_scheme() method gets the URI scheme for a gio.File. RFC 3986 decodes the scheme as:

URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]

Common schemes include "file", "http", "ftp", etc.

This call does no blocking i/o.

gio.File.has_prefix

    def has_prefix(prefix)

prefix :

input gio.File.

Returns :

True if the files's parent, grandparent, etc is prefix. False otherwise.

The has_prefix() method checks whether file has the prefix specified by prefix. In other word, if the names of inital elements of files pathname match prefix. Only full pathname elements are matched, so a path like /foo is not considered a prefix of /foobar, only of /foo/bar.

This call does no blocking i/o, as it works purely on names. As such it can sometimes return False even if file is inside a prefix (from a filesystem point of view), because the prefix of file is an alias of prefix.

gio.File.has_uri_scheme

    def has_uri_scheme(uri_scheme)

uri_scheme :

a string containing a URI scheme.

Returns :

True if gio.File's backend supports the given URI scheme, False if URI scheme is None, not supported, or gio.File is invalid.

The has_uri_scheme() method checks to see if a gio.File has a given URI scheme.

This call does no blocking i/o.

gio.File.is_native

    def is_native()

Returns :

True if file is native.

The is_native() method checks to see if a file is native to the platform.

A native file s one expressed in the platform-native filename format, e.g. "C:\Windows" or "/usr/bin/". This does not mean the file is local, as it might be on a locally mounted remote filesystem.

On some systems non-native files may be available using the native filesystem via a userspace filesystem (FUSE), in these cases this call will return False, but gio.File.get_path() will still return a native path.

This call does no blocking i/o.

gio.File.load_contents

    def load_contents(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a three tuple containing the contents of the file, the length of the contents of the file and the current entity tag for the file.

The load_contents() method loads the content of the file into memory. The data is always zero-terminated, but this is not included in the resultant length.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.load_contents_async

    def load_contents_async(callback, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The load_contents_async() method starts an asynchronous load of the file's contents.

For more details, see gio.File.load_contents() which is the synchronous version of this call.

When the load operation has completed, callback will be called with user data. To finish the operation, call gio.File.load_contents_finish() with the GAsyncResult returned by the callback.

gio.File.load_contents_finish

    def load_contents_finish(result)

result :

a gio.AsyncResult.

Returns :

a three tuple containing the contents of the file, the length of the contents of the file and the current entity tag for the file.

The load_contents_finish() method finishes an asynchronous find mount started with gio.File.load_contents_async().

gio.File.make_directory

    def make_directory(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True on successful creation, False otherwise.

The make_directory() method creates a directory. Note that this will only create a child directory of the immediate parent directory of the path or URI given by the gio.File. To recursively create directories, see gio.File.make_directory_with_parents(). This function will fail if the parent directory does not exist, setting error to gio.ERROR_NOT_FOUND. If the file system doesn't support creating directories, this function will fail, setting error to gio.ERROR_NOT_SUPPORTED.

For a local gio.File the newly created directory will have the default (current) ownership and permissions of the current process.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.make_directory_with_parents

    def make_directory_with_parents(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if all directories have been successfully created, False otherwise.

The make_directory_with_parents() method creates a directory and any parent directories that may not exist similar to 'mkdir -p'. If the file system does not support creating directories, this function will fail, setting error to gio.ERROR_NOT_SUPPORTED.

For a local gio.File the newly created directories will have the default (current) ownership and permissions of the current process.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.make_symbolic_link

    def make_symbolic_link(symlink_value, cancellable=None)

symlink_value :

a string with the value of the new symlink.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True on the creation of a new symlink, False otherwise.

The make_symbolic_link() method creates a symbolic link.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.monitor

    def monitor(flags=gio.FILE_MONITOR_NONE, cancellable=None)

flags :

a Gio File Monitor Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileMonitor for the given file, or None on error

The monitor() method obtains a file or directory monitor for the given file, depending on the type of the file.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.monitor_directory

    def monitor_directory(flags=gio.FILE_MONITOR_NONE, cancellable=None)

flags :

a Gio File Monitor Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileMonitor for the given file, or None on error

The monitor_directory() method obtains a directory monitor for the given file. This may fail if directory monitoring is not supported.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.monitor_file

    def monitor_file(flags=gio.FILE_MONITOR_NONE, cancellable=None)

flags :

a Gio File Monitor Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileMonitor for the given file, or None on error

The monitor_file() method obtains a file monitor for the given file. If no file notification mechanism exists, then regular polling of the file is used.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.mount_enclosing_volume

    def mount_enclosing_volume(mount_operation, callback, flags=gio.FILE_COPY_NONE, cancellable=None, user_data=None)

mount_operation :

a gio.MountOperation or None to avoid user interaction.

callback :

a GAsyncReadyCallback to call when the request is satisfied, or None.

flags :

a set of Gio Mount Mount Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to the progress callback function.

The mount_enclosing_volume() method starts a mount_operation, mounting the volume that contains the file location.

When this operation has completed, callback will be called with user_user data, and the operation can be finalized with gio.File.mount_enclosing_volume_finish().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.mount_enclosing_volume_finish

    def mount_enclosing_volume_finish(result)

result :

a gio.AsyncResult.

Returns :

True if successful. If an error has occurred, this function will return False and set error appropriately if present.

The mount_enclosing_volume_finish() method finishes an asynchronous find mount started with gio.File.mount_enclosing_volume().

gio.File.mount_mountable

    def mount_mountable(mount_operation, callback, flags=gio.FILE_COPY_NONE, cancellable=None, user_data=None)

mount_operation :

a gio.MountOperation or None to avoid user interaction.

callback :

a GAsyncReadyCallback to call when the request is satisfied, or None.

flags :

a set of Gio Mount Mount Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to the progress callback function.

The mount_mountable() method mounts a file of type gio.FILE_TYPE_MOUNTABLE. Using mount_operation, you can request callbacks when, for instance, passwords are needed during authentication.

When this operation has completed, callback will be called with user_user data, and the operation can be finalized with gio.File.mount_mountable_finish().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.mount_mountable_finish

    def mount_mountable_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.File or None on error.

The mount_mountable_finish() method finishes an asynchronous find mount started with gio.File.mount_mountable().

gio.File.move

    def copy(destination, progress_callback, flags=gio.FILE_COPY_NONE, cancellable=None, user_data=None)

destination :

destination gio.File.

progress_callback :

function to callback with progress information.

flags :

a set of Gio File Copy Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to the progress callback function.

Returns :

True on success, False otherwise.

The move() method tries to move the file or directory source to the location specified by destination. If native move operations are supported then this is used, otherwise a copy + delete fallback is used. The native implementation may support moving directories (for instance on moves inside the same filesystem), but the fallback code does not.

If the flag gio.FILE_COPY_OVERWRITE is specified an already existing destination file is overwritten.

If the flag gio.FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlinks will be copied as symlinks, otherwise the target of the source symlink will be copied.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

If progress_callback is not None, then the operation can be monitored by setting this to a GFileProgressCallback function. progress_callback_data will be passed to this function. It is guaranteed that this callback will be called after all data has been transferred with the total number of bytes copied during the operation.

If the source file does not exist then the gio.ERROR_NOT_FOUND error is returned, independent on the status of the destination.

If gio.FILE_COPY_OVERWRITE is not specified and the target exists, then the error gio.ERROR_EXISTS is returned.

If trying to overwrite a file over a directory the gio.ERROR_IS_DIRECTORY error is returned. If trying to overwrite a directory with a directory the gio.ERROR_WOULD_MERGE error is returned.

If the source is a directory and the target does not exist, or gio.FILE_COPY_OVERWRITE is specified and the target is a file, then the G_IO_ERROR_WOULD_RECURSE error may be returned (if the native move operation isn't available).

gio.File.query_default_handler

    def query_default_handler(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.AppInfo if the handle was found, None if there were errors.

The query_default_handler() method returns the gio.AppInfo that is registered as the default application to handle the file specified by file.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.

gio.File.query_exists

    def query_exists(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the file exists (and can be detected without error), False otherwise (or if cancelled).

The query_exists() method is an tility function to check if a particular file exists. This is implemented using gio.File.query_info() and as such does blocking I/O.

Note that in many cases it is racy to first check for file existence and then execute something based on the outcome of that, because the file might have been created or removed in between the operations. The general approach to handling that is to not check, but just do the operation and handle the errors as they come.

As an example of race-free checking, take the case of reading a file, and if it doesn't exist, creating it. There are two racy versions: read it, and on error create it; and: check if it exists, if not create it. These can both result in two processes creating the file (with perhaps a partially written file as the result). The correct approach is to always try to create the file with gio.File.create() which will either atomically create the file or fail with a gio.ERROR_EXISTS error.

However, in many cases an existence check is useful in a user interface, for instance to make a menu item sensitive/insensitive, so that you don't have to fool users that something is possible and then just show and error dialog. If you do this, you should make sure to also handle the errors that can happen due to races when you execute the operation.

gio.File.query_file_type

    def query_file_type(flags=gio.FILE_MONITOR_NONE, cancellable=None)

flags :

a Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

Gio File Type Constants

The query_file_type() method it's an utility function to inspect the Gio File Query Info Flags Constants of a file. This is implemented using gio.File.query_info() and as such does blocking I/O.

The primary use case of this method is to check if a file is a regular file, directory, or symlink.

gio.File.query_filesystem_info

    def query_filesystem_info(attributes, cancellable=None)

attributes :

an attribute query string.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileInfo or None if there was an error.

The query_filesystem_info() method it's similar to gio.File.query_info(), but obtains information about the filesystem the file is on, rather than the file itself. For instance the amount of space available and the type of the filesystem.

The attribute value is a string that specifies the file attributes that should be gathered. It is not an error if it's not possible to read a particular requested attribute from a file - it just won't be set. attribute should be a comma-separated list of attribute or attribute wildcards. The wildcard "*" means all attributes, and a wildcard like "fs:*" means all attributes in the fs namespace. The standard namespace for filesystem attributes is "fs". Common attributes of interest are gio.FILE_ATTRIBUTE_FILESYSTEM_SIZE (the total size of the filesystem in bytes), gio.FILE_ATTRIBUTE_FILESYSTEM_FREE (number of bytes available), and gio.FILE_ATTRIBUTE_FILESYSTEM_TYPE (type of the filesystem).

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

If the file does not exist, the gio.ERROR_NOT_FOUND error will be returned. Other errors are possible too, and depend on what kind of filesystem the file is on.

gio.File.query_filesystem_info_async

    def query_filesystem_info_async(attributes, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

attributes :

an attribute query string.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The query_filesystem_info_async() method asynchronously gets the requested information about the filesystem that the specified file is on. The result is a GFileInfo object that contains key-value attributes (such as type or size for the file).

For more details, see query_filesystem_info() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.File.query_filesystem_info_finish() to get the result of the operation.

gio.File.query_filesystem_info_finish

    def query_filesystem_info_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.FileInfo or None if an error occurred.

The query_filesystem_info_finish() method finishes an asynchronous copy operation started with gio.File.query_filesystem_info_async().

gio.File.query_filesystem_info

    def query_info(attributes, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

attributes :

an attribute query string.

flags :

a Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileInfo for the given file or None if there was an error.

The query_info() method gets the requested information about specified file. The result is a gio.FileInfo object that contains key-value attributes (such as the type or size of the file).

The attribute value is a string that specifies the file attributes that should be gathered. It is not an error if it's not possible to read a particular requested attribute from a file - it just won't be set. attribute should be a comma-separated list of attribute or attribute wildcards. The wildcard "*" means all attributes, and a wildcard like "standard::*" means all attributes in the standard namespace. An example attribute query be "standard::*,owner::user". The standard attributes are available as defines, like gio.FILE_ATTRIBUTE_STANDARD_NAME.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

For symlinks, normally the information about the target of the symlink is returned, rather than information about the symlink itself. However if you pass gio.FILE_QUERY_INFO_NOFOLLOW_SYMLINKS in flags the information about the symlink itself will be returned. Also, for symlinks that point to non-existing files the information about the symlink itself will be returned.

If the file does not exist, the gio.IO_ERROR_NOT_FOUND error will be returned. Other errors are possible too, and depend on what kind of filesystem the file is on.

gio.File.query_info_async

    def query_info_async(attributes, callback, flags=gio.FILE_QUERY_INFO_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

attributes :

an attribute query string.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

flags :

a Gio File Query Info Flags Constants

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The query_info_async() method asynchronously gets the requested information about specified file. The result is a gio.FileInfo object that contains key-value attributes (such as type or size for the file).

For more details, see query_info() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.File.query_info_finish() to get the result of the operation.

gio.File.query_info_finish

    def query_info_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.FileInfo for the given file or None if an error occurred.

The query_info_finish() method finishes an asynchronous copy operation started with gio.File.query_info_async().

gio.File.query_settable_attributes

    def query_settable_attributes(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a list of gio.FileAttributeInfo describing the settable attributes.

The query_settable_attributes() method obtain the list of settable attributes for the file.

Returns the type and full attribute name of all the attributes that can be set on this file. This doesn't mean setting it will always succeed though, you might get an access failure, or some specific file may not support a specific attribute.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.query_writable_namespace

    def query_writable_namespace(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a list of gio.FileAttributeInfo describing the writable namespaces.

The query_writable_namespace() method obtain the list of attribute namespaces where new attributes can be created by a user. An example of this is extended attributes (in the "xattr" namespace).

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.read

    def read(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileInputStream or None on error.

The read() method opens a file for reading. The result is a gio.FileInputStream that can be used to read the contents of the file.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

If the file does not exist, the gio.IO_ERROR_NOT_FOUND error will be returned. If the file is a directory, the gio.IO_ERROR_IS_DIRECTORY error will be returned. Other errors are possible too, and depend on what kind of filesystem the file is on.

gio.File.read_async

    def read_async(callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The read_async() method asynchronously opens file for reading.

For more details, see read() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.File.read_finish() to get the result of the operation.

gio.File.read_finish

    def read_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.FileInputStream file or None if an error occurred.

The read_finish() method finishes an asynchronous copy operation started with gio.File.read_async().

gio.File.replace

    def replace(etag, make_backup, flags=gio.FILE_CREATE_NONE, cancellable=None)

etag :

an optional entity tag for the current gio.File, or None to ignore.

make_backup :

True if a backup should be created.

flags :

a set of Gio File Create Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.FileOutputStream or None on error.

The replace() method returns an output stream for overwriting the file, possibly creating a backup copy of the file first. If the file doesn't exist, it will be created.

This will try to replace the file in the safest way possible so that any errors during the writing will not affect an already existing copy of the file. For instance, for local files it may write to a temporary file and then atomically rename over the destination when the stream is closed.

By default files created are generally readable by everyone, but if you pass gio.FILE_CREATE_PRIVATE in flags the file will be made readable only to the current user, to the level that is supported on the target filesystem.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

If you pass in a non-None etag value, then this value is compared to the current entity tag of the file, and if they differ an gio.IO_ERROR_WRONG_ETAG error is returned. This generally means that the file has been changed since you last read it. You can get the new etag from gio.FileOutputStream.get_etag() after you've finished writing and closed the GFileOutputStream. When you load a new file you can use gio.FileInputStream.query_info() to get the etag of the file.

If make_backup is True, this function will attempt to make a backup of the current file before overwriting it. If this fails a gio.IO_ERROR_CANT_CREATE_BACKUP error will be returned. If you want to replace anyway, try again with make_backup set to False.

If the file is a directory the gio.IO_ERROR_IS_DIRECTORY error will be returned, and if the file is some other form of non-regular file then a gio.IO_ERROR_NOT_REGULAR_FILE error will be returned. Some file systems don't allow all file names, and may return an gio.IO_ERROR_INVALID_FILENAME error, and if the name is to long gio.IO_ERROR_FILENAME_TOO_LONG will be returned. Other errors are possible too, and depend on what kind of filesystem the file is on.

gio.File.replace_async

    def replace_async(callback, etag=None, make_backup=True, flags=gio.FILE_CREATE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

etag :

an optional entity tag for the current gio.File, or None to ignore.

make_backup :

True if a backup should be created.

flags :

a set of Gio File Create Flags Constants

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The replace_async() method asynchronously overwrites the file, replacing the contents, possibly creating a backup copy of the file first.

For more details, see replace() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.File.replace_finish() to get the result of the operation.

gio.File.replace_contents

    def replace_contents(contents, etag, make_backup, flags=gio.FILE_CREATE_NONE, cancellable=None)

contents :

a string containing the new contents for file.

etag :

the old entity tag for the document or None to ignore.

make_backup :

True if a backup should be created.

flags :

a set of Gio File Create Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

the new entity tag for the document.

The replace_contents() method replaces the contents of file with contents of length bytes. If etag is specified (not NULL) any existing file must have that etag, or the error gio.IO_ERROR_WRONG_ETAG will be returned.

If make_backup is True, this function will attempt to make a backup of file.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

The returned etag can be used to verify that the file hasn't changed the next time it is saved over.

gio.File.replace_contents_async

    def replace_contents_async(contents, callback, etag=None, make_backup=True, flags=gio.FILE_CREATE_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

contents :

a string containing the new contents for file.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

etag :

an optional entity tag for the current gio.File, or None to ignore.

make_backup :

True if a backup should be created.

flags :

a set of Gio File Create Flags Constants

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The replace_contents_async() method starts an asynchronous replacement of file with the given contents of length bytes. etag will replace the document's current entity tag.

For more details, see replace_contents() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.File.replace_contents_finish() to get the result of the operation.

gio.File.replace_contents_finish

    def replace_contents_finish(result)

result :

a gio.AsyncResult.

Returns :

the new entity tag for the document.

The replace_contents_finish() method finishes an asynchronous copy operation started with gio.File.replace_contents_async().

gio.File.replace_finish

    def replace_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.FileOutputStream or None if an error occurred.

The replace_finish() method finishes an asynchronous copy operation started with gio.File.replace_async().

gio.File.resolve_relative_path

    def resolve_relative_path(relative_path)

relative_path :

a given relative path string.

Returns :

a gio.File to the resolved path. None if relative_path is None or if file is invalid.

The resolve_relative_path() method resolves a relative path for file to an absolute path.

This call does no blocking i/o.

gio.File.set_attribute

    def set_attribute(attribute, type, value_p, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

attribute :

a string containing the attribute's name.

type :

the type of the attribute .

value_p :

the value.

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the attribute was set, False otherwise.

The set_attribute() method sets an attribute in the file with attribute name attribute to value.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.set_attribute_byte_string

    def set_attribute_byte_string(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

attribute :

a string containing the attribute's name.

value :

a string containing the attribute's new value.

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the attribute was set, False otherwise.

The set_attribute_byte_string() method Sets attribute of type gio.FILE_ATTRIBUTE_TYPE_BYTE_STRING to value. If attribute is of a different type, this operation will fail, returning False.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.set_attribute_int32

    def set_attribute_int32(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

attribute :

a string containing the attribute's name.

value :

an int containing the attribute's new value.

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the attribute was set, False otherwise.

The set_attribute_int32() method sets attribute of type gio.FILE_ATTRIBUTE_TYPE_INT32 to value. If attribute is of a different type, this operation will fail.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.set_attribute_int64

    def set_attribute_int64(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

attribute :

a string containing the attribute's name.

value :

a long containing the attribute's new value.

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the attribute was set, False otherwise.

The set_attribute_int64() method sets attribute of type gio.FILE_ATTRIBUTE_TYPE_INT64 to value. If attribute is of a different type, this operation will fail.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.set_attribute_string

    def set_attribute_string(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

attribute :

a string containing the attribute's name.

value :

a string containing the attribute's new value.

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the attribute was set, False otherwise.

The set_attribute_string() method sets attribute of type gio.FILE_ATTRIBUTE_TYPE_STRING to value. If attribute is of a different type, this operation will fail.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.set_attribute_uint32

    def set_attribute_uint32(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

attribute :

a string containing the attribute's name.

value :

an int containing the attribute's new value.

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the attribute was set, False otherwise.

The set_attribute_uint32() method sets attribute of type gio.FILE_ATTRIBUTE_TYPE_UINT32 to value. If attribute is of a different type, this operation will fail.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.set_attribute_uint64

    def set_attribute_uint64(attribute, value, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

attribute :

a string containing the attribute's name.

value :

a long containing the attribute's new value.

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the attribute was set, False otherwise.

The set_attribute_uint64() method sets attribute of type gio.FILE_ATTRIBUTE_TYPE_UINT64 to value. If attribute is of a different type, this operation will fail.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.set_attributes_async

    def set_attributes_async(info, callback, flags=gio.FILE_QUERY_INFO_NONE, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

info :

a gio.FileInfo

callback :

a GAsyncReadyCallback to call when the request is satisfied.

flags :

a set of Gio File Query Info Flags Constants

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The set_attributes_async() method asynchronously sets the attributes of file with info.

For more details, see set_attributes_from_info() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.File.set_attributes_finish() to get the result of the operation.

gio.File.set_attributes_finish

    def set_attributes_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the attributes were set correctly, False otherwise.

The set_attributes_finish() method finishes an asynchronous copy operation started with gio.File.set_attributes_async().

gio.File.set_attributes_from_info

    def set_attributes_from_info(info, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None)

info :

a gio.FileInfo

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True if the attributes were set correctly, False otherwise.

The set_attributes_from_info() method tries to set all attributes in the GFileInfo on the target values, not stopping on the first error.

If there is any error during this operation then error will be set to the first error. Error on particular fields are flagged by setting the "status" field in the attribute value to gio.FILE_ATTRIBUTE_STATUS_ERROR_SETTING, which means you can also detect further errors.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.set_display_name

    def set_display_name(display_name, cancellable=None)

display_name :

a string conaining the name to display.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

a gio.File specifying what file was renamed to, or None if there was an error.

The set_display_name() method renames file to the specified display name.

The display name is converted from UTF8 to the correct encoding for the target filesystem if possible and the file is renamed to this.

If you want to implement a rename operation in the user interface the edit name (gio.FILE_ATTRIBUTE_STANDARD_EDIT_NAME) should be used as the initial value in the rename widget, and then the result after editing should be passed to gio.File.set_dispay_name().

On success the resulting converted filename is returned.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.set_display_name_async

    def set_display_name_async(display_name, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

display_name :

a string conaining the name to display.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The set_display_name_async() method asynchronously sets the display name for a given GFile.

For more details, see set_display_name() which is the synchronous version of this call.

When the operation is finished, callback will be called. You can then call gio.File.set_display_name_finish() to get the result of the operation.

gio.File.set_display_name_finish

    def set_display_name_finish(result)

result :

a gio.AsyncResult.

Returns :

a gio.File or None on error.

The set_display_name_finish() method finishes an asynchronous copy operation started with gio.File.set_display_name_async().

gio.File.trash

    def trash(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

True on successful trash, False otherwise.

The trash() method sends file to the "Trashcan", if possible. This is similar to deleting it, but the user can recover it before emptying the trashcan. Not all file systems support trashing, so this call can return the gio.IO_ERROR_NOT_SUPPORTED error.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

gio.File.unmount_mountable

    def unmount_mountable(callback, flags=gio.FILE_QUERY_INFO_NONE, cancellable=None, user_data=None)

callback :

a GAsyncReadyCallback to call when the request is satisfied.

flags :

a set of Gio File Query Info Flags Constants

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The unmount_mountable() method unmounts a file of type gio.FILE_TYPE_MOUNTABLE.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.

When the operation is finished, callback will be called. You can then call gio.File.unmount_mountable_finish() to get the result of the operation.

gio.File.unmount_mountable_finish

    def unmount_mountable_finish(result)

result :

a gio.AsyncResult.

Returns :

True if the operation finished successfully, False otherwise.

The unmount_mountable_finish() method finishes an asynchronous copy operation started with gio.File.unmount_mountable().

Functions

gio.file_parse_name

    def file_parse_name(parse_name)

parse_name :

a file name or path to be parsed.

Returns :

a new gio.File.

The parse_name() function constructs a gio.File with the given parse_name (i.e. something given by g_file_get_parse_name()). This operation never fails, but the returned object might not support any I/O operation if the parse_name cannot be parsed.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gobjectgboxed.html0000644000000000000000000000741411272036627026116 0ustar rootrootgobject.GBoxed

gobject.GBoxed

gobject.GBoxed — an object containing an opaque chunk of data

Synopsis

class gobject.GBoxed:
    def copy()

Ancestry

+-- gobject.GBoxed

Description

gobject.GBoxed is an abstract base class that encapsulates an opaque chunk of data to provide an object-oriented interface and a type that is registered with the GLIB type system. A boxed type is registered with functions that provide for the copying and freeing of the underlying data structure - this allows PyGTK to encapsulate these as Python objects.

Methods

gobject.GBoxed.copy

    def copy()

Returns :

a copy of the gobject.GBoxed object

The copy() method makes and returns a copy of the boxed object.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/gobject-functions.html0000644000000000000000000012223411272036627025626 0ustar rootrootgobject Functions

gobject Functions

gobject Functions — miscellaneous functions

Synopsis

    def gobject.type_name(type)
def gobject.type_from_name(type_name)
def gobject.type_parent(type)
def gobject.type_is_a(type, parent_type)
def gobject.type_children(type)
def gobject.type_interfaces(type)
def gobject.type_register(class)
def gobject.signal_new(signal_name, type, flags, return_type, param_types)
def gobject.signal_list_names(type)
def gobject.signal_list_ids(type)
def gobject.signal_lookup(name, type)
def gobject.signal_name(signal_id)
def gobject.signal_query(name, type)
def gobject.signal_query(signal_id)
def gobject.list_properties(type)
def gobject.new(type, ...)
def gobject.signal_accumulator_true_handled()
def gobject.add_emission_hook(type, name, callback, ...)
def gobject.remove_emission_hook(type, name, hook_id)
def gobject._install_metaclass(metaclass)

Description

These functions are part of the PyGTK gobject module but are not directly associated with a specific class.

Note

Many functions that previously were in this namespace got moved to glib namespace instead. They are still available in gobject for backward compatibility, but not documented here.

Functions

gobject.type_name

    def gobject.type_name(type)

type :

a GObject type, type ID or instance

Returns :

The gobject.type_name() function returns the unique name that is assigned to the specified type. type can be a GObject type, type ID or instance. This function raises a TypeError exception if type isn't a PyGTK type.

gobject.type_from_name

    def gobject.type_from_name(type_name)

type_name :

a string containing the name of a type

Returns :

the type ID named type_name

The gobject.type_from_name() function returns the type ID of the PyGTK type with the name specified by type_name. This function raises a RuntimeError exception if no type matches type_name.

gobject.type_parent

    def gobject.type_parent(type)

type :

a GObject type, type ID or instance

Returns :

the parent type ID

The gobject.type_parent() function returns the direct parent type ID of the specified type. type can be a GObject type, type ID or instance. If type has no parent, i.e. is a fundamental type, the RuntimeError exception is raised.

gobject.type_is_a

    def gobject.type_is_a(type, parent_type)

type :

a GObject type, type ID or instance

parent_type :

a GObject type, type ID or instance

Returns :

TRUE if parent_type is an ancestor of type

The gobject.type_is_a() function returns TRUE if the specified type is a descendant of the type specified by parent_type. This function also returns TRUE if parent_type is an interface and type conforms to it.

gobject.type_children

    def gobject.type_children(type)

type :

a GObject type, type ID or instance

Returns :

a list of the child types of type

The gobject.type_children() function returns a list containing the child types of the specified type.

gobject.type_interfaces

    def gobject.type_interfaces(type)

type :

a GObject type, type ID or instance

Returns :

a list of the interface types supported by type

The gobject.type_interfaces() function returns a list of the interface types supported by type. type can be a GObject type, type ID or instance. This function returns a RuntimeError exception if type is not a valid type or has no interfaces.

gobject.type_register

    def gobject.type_register(class)

class :

a Python class that is a descendant of gobject.GObject

The gobject.type_register() function registers the specified Python class as a PyGTK type. class must be a descendant of gobject.GObject. The function generates a name for the new type.

gobject.signal_new

    def gobject.signal_new(signal_name, type, flags, return_type, param_types)

signal_name :

a string containing the name of the signal

type :

the object type that the signal is associated with

flags :

the signal flags

return_type :

the return type of the signal handler

param_types :

the parameter types passed to the signal handler

Returns :

a unique integer signal ID

The gobject.signal_new() function registers a signal with the specified signal_name for the specified object type. The value of flags is a combination of:

gobject.SIGNAL_RUN_FIRST

Invoke the object method handler in the first emission stage.

gobject.SIGNAL_RUN_LAST

Invoke the object method handler in the third emission stage.

gobject.SIGNAL_RUN_CLEANUP

Invoke the object method handler in the last emission stage.

gobject.SIGNAL_NO_RECURSE

Signals being emitted for an object while currently being in emission for this very object will not be emitted recursively, but instead cause the first emission to be restarted.

gobject.SIGNAL_DETAILED

This signal supports "::detail" appendixes to the signal name upon handler connections and emissions.

gobject.SIGNAL_ACTION

Action signals are signals that may freely be emitted on alive objects from user code via gobject.emit()() and friends, without the need of being embedded into extra code that performs pre or post emission adjustments on the object. They can also be thought of as generically callable object methods.

gobject.SIGNAL_NO_HOOKS

No emissions hooks are supported for this signal.

return_type is the type of the return value from a signal handler and may be a gobject type, type ID or instance. The param_types parameter is a list of additional types that are passed to the signal handler. Each parameter type may be specified as a gobject type, type ID or instance. For example, to add a signal to the gtk.Window type called "my-signal" that calls a handler with a gtk.Button widget and an integer value and a return value that is a boolean, use:

  gobject.signal_new("my_signal", gtk.Window, gobject.SIGNAL_RUN_LAST, gobject.TYPE_BOOLEAN, (gtk.Button, gobject.TYPE_INT))

gobject.signal_list_names

    def gobject.signal_list_names(type)

type :

a GObject type, type ID or instance

Returns :

a list of the signal names supported by type

The gobject.signal_list_names() function returns a list of the names of the signals that are supported by the specified GObject type

Note

The type keyword is available in PyGTK 2.6 and above.

gobject.signal_list_ids

    def gobject.signal_list_ids(type)

type :

a GObject type, type ID or instance

Returns :

a list of the signal ids supported by type

Note

This method is available in PyGTK 2.6 and above.

The gobject.signal_list_ids() function returns a list of the integer ids of the signals that are supported by the GObject specified by type

gobject.signal_lookup

    def gobject.signal_lookup(name, type)

name :

the name of a signal for type

type :

a GObject type, type ID or instance

Returns :

the integer id of a signal supported by type or 0.

Note

This method is available in PyGTK 2.6 and above.

The gobject.signal_lookup() function returns the id of the signal with the name specified by name that is supported by the GObject specified specified bytype. 0 is returned if the signal is not found.

gobject.signal_name

    def gobject.signal_name(signal_id)

signal_id :

an integer signal id

Returns :

the name of the signal or None.

Note

This method is available in PyGTK 2.6 and above.

The gobject.signal_name() function returns the name of the signal that has the signal id specified by id.

gobject.signal_query

    def gobject.signal_query(name, type)

name :

the name of a signal for type

type :

a GObject type, type ID or instance

Returns :

a 6-tuple containing signal information or None

Note

This method is available in PyGTK 2.6 and above.

The gobject.signal_query() function returns a 6-tuple containing information about the signal with the name specified by name that is supported by the GObject specified by type. If the signal is not found None is returned.

The signal information 6-tuple contains:

  • the integer signal id
  • the signal name
  • the GType that the signal is registered for
  • the signal flags (see the GObject Signal Flag Constants)
  • the GType of the return from the signal callback function
  • a tuple containing the GTypes of the parameters that are passed to the signal callback function. Note that these may not correspond exactly to the PyGTK signal callback parameters.

gobject.signal_query

    def gobject.signal_query(signal_id)

signal_id :

the integer id of a signal

Returns :

a 6-tuple containing signal information or None

Note

This method is available in PyGTK 2.6 and above.

The gobject.signal_query() function returns a 6-tuple containing information about the signal with the id specified by signal_id. If the signal is not found None is returned.

The signal information 6-tuple contains:

  • the integer signal id
  • the signal name
  • the GType that the signal is registered for
  • the signal flags (see the GObject Signal Flag Constants)
  • the GType of the return from the signal callback function
  • a tuple containing the GTypes of the parameters that are passed to the signal callback function. Note that these may not correspond exactly to the PyGTK signal callback parameters.

gobject.list_properties

    def gobject.list_properties(type)

type :

a GObject type, type ID or instance

Returns :

a list of the properties (as GParam objects) supported by type

The gobject.list_properties() function returns a list of the properties (as GParam objects) supported by type.

gobject.new

    def gobject.new(type, ...)

type :

a GObject type, type ID or instance

... :

zero or more property-value pairs

Returns :

a new object if the specified type

The gobject.new() function returns a new object of the specified type. type must specify a type that is a descendant of gobject.GObject. A TypeError exception is raised if type specifies an abstract class or a type that is not a descendant of gobject.GObject. A set of property-value pairs may be specified to set the value of the object's properties.

gobject.threads_init

    def gobject.threads_init()

Returns :

Note

This function is available in PyGTK 2.4 and above.

The threads_init() function initializes the the use of Python threading in the gobject module. This function is different than the gtk.gdk.threads_init() function as that function also initializes the gdk threads.

gobject.signal_accumulator_true_handled

    def gobject.signal_accumulator_true_handled()

Note

This function is available in PyGTK 2.8 and above.

The signal_accumulator_true_handled() function is only used as accumulator argument when registering signals.

gobject.add_emission_hook

    def gobject.add_emission_hook(type, name, callback, ...)

type :

a Python GObject instance or type

name :

a signal name

callback :

a function

... :

zero or more extra arguments that will be passed to callback.

Returns :

the hook id, for later use with gobject.signal_remove_emission_hook().

Note

This function is available in PyGTK 2.8 and above.

The add_emission_hook() function adds an emission hook for the signal specified by name, which will get called for any emission of that signal, independent of the instance. This is possible only for signals which don't have the gobject.SIGNAL_NO_HOOKS flag set.

gobject.remove_emission_hook

    def gobject.remove_emission_hook(type, name, hook_id)

type :

a Python GObject instance or type

name :

a signal name

hook_id :

the id of the emission hook as returned by the gobject.add_emission_hook()) function.

Returns :

Note

This function is available in PyGTK 2.8 and above.

The remove_emission_hook() function deletes an emission hook.

gobject._install_metaclass

    def gobject._install_metaclass(metaclass)

metaclass :

Note

This function is available in PyGTK 2.10 and above.

The _install_metaclass() function installs the metaclass specified by metaclass.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/gobject-class-reference.html0000644000000000000000000000535311272036627026661 0ustar rootrootPyGObject Class Reference

PyGObject Class Reference

Table of Contents

gobject.GObject — the base class
gobject.GBoxed — an object containing an opaque chunk of data
gobject.GPointer — an object containing a completely opaque chunk of data
gobject.GInterface — an object representing a GInterface
gobject Functions — miscellaneous functions
gobject Constants — the built-in constants of the gobject module
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gioapplaunchcontext.html0000644000000000000000000002472111272036627027367 0ustar rootrootgio.AppLaunchContext

gio.AppLaunchContext

gio.AppLaunchContext — Application launch context.

Synopsis

class gio.AppLaunchContext(gobject.GObject):
    gio.AppLaunchContext()
def get_display(info, files)
def get_startup_notify_id(info, files)
def launch_failed(startup_notify_id)

Description

The gio.AppLaunchContext is used for integrating the launch with the launching application. This is used to handle for instance startup notification and launching the new application on the same screen as the launching window.

Constructor

    gio.AppLaunchContext()

Returns :

a new gio.AppLaunchContext.

Creates a new application launch context. This is not normally used, instead you instantiate a subclass of this, such as gtk.gdk.AppLaunchContext.

Methods

gio.AppLaunchContext.get_display

    def get_display(info, files)

info :

a gio.AppInfo

files :

a list of gio.File objects.

Returns :

a display string for the display.

The get_display() method gets the display string for the display. This is used to ensure new applications are started on the same display as the launching application.

gio.AppLaunchContext.get_startup_notify_id

    def get_startup_notify_id(info, files)

info :

a gio.AppInfo

files :

a list of gio.File objects.

Returns :

a startup notification ID for the application, or None if not supported.

The get_startup_notify_id() method initiates startup notification for the application and returns the DESKTOP_STARTUP_ID for the launched operation, if supported.

Startup notification IDs are defined in the FreeDesktop.Org Startup Notifications standard.

gio.AppLaunchContext.launch_failed

    def launch_failed(startup_notify_id)

startup_notify_id :

the startup notification id that was returned by get_startup_notify_id.

Returns :

a startup notification ID for the application, or None if not supported.

The get_startup_notify_id() method is called when an application has failed to launch, so that it can cancel the application startup notification started in get_startup_notify_id

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-gioemblem.html0000644000000000000000000002511511272036627025246 0ustar rootrootgio.Emblem

gio.Emblem

gio.Emblem — An object for emblems.

Synopsis

class gio.Emblem(gobject.GObject, gio.Icon):
    gio.Emblem(icon, origin=gio.EMBLEM_ORIGIN_UNKNOWN)
def get_icon()
def get_origin()
Functions
 
    def gio.emblem_new_with_origin(icon, origin)

Ancestry

+-- gobject.GObject
  +-- gio.Emblem

Implemented Interfaces

gio.Emblem implements gio.Icon

gio.Emblem Properties

"icon"Read - Write - Construct OnlyThe actual icon of the emblem.
"origin"Read - Write - Construct OnlyTells which origin the emblem is derived from.

Description

The gio.Emblem class is an implementation of gio.Icon that supports having an emblem, which is an icon with additional properties. It can then be added to a gio.EmblemedIcon.

Currently, only metainformation about the emblem's origin is supported. More may be added in the future.

Constructor

    gio.Emblem(icon, origin=gio.EMBLEM_ORIGIN_UNKNOWN)

icon :

a gio.Icon containing the icon.

origin :

origin of the emblem.

Returns :

a new gio.Emblem.

Note

Parameter origin is available since PyGObject 2.20.

Creates a new gio.Emblem for icon.

Methods

gio.Emblem.get_icon

    def get_icon()

Returns :

a gio.Icon.

The get_icon() method gives back the icon from emblem.

gio.Emblem.get_origin

    def get_origin()

Returns :

the origin of the emblem.

The get_origin() method gets the origin of the emblem.

Functions

gio.emblem_new_with_origin

    def emblem_new_with_origin(icon, origin)

origin :

a Gio Emblem Origin Constants defining the emblem's origin.

Returns :

A gio.Emblem.

Note

While this method is not deprecated, with 2.20 and up it is recommended to use the constructor instead.

The emblem_new_with_origin() function creates a new emblem for icon.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giomemoryinputstream.html0000644000000000000000000001721011272036627027606 0ustar rootrootgio.MemoryInputStream

gio.MemoryInputStream

gio.MemoryInputStream — Base class for implementing streaming input

Synopsis

class gio.MemoryInputStream(gio.InputStream):
    gio.MemoryInputStream()
def add_data(data)
Functions
 
    def gio.memory_input_stream_new_from_data(data)

Implemented Interfaces

gio.MemoryInputStream implements gio.Seekable

Description

gio.MemoryInputStream is a class for using arbitrary memory chunks as input for GIO streaming input operations.

Constructor

    gio.MemoryInputStream(icon)

Returns :

a new gio.MemoryInputStream.

Creates an empty gio.MemoryInputStream.

Methods

gio.MemoryInputStream.add_data

    def add_data(data)

data :

input data.

The add_data() method appends data to data that can be read from the input stream

Functions

gio.memory_input_stream_new_from_data

    def memory_input_stream_new_from_data(data)

data :

input data.

Returns :

A new gio.MemoryInputStream read from data

The memory_input_stream_new_from_data() function creates a new gio.MemoryInputStream with data in memory.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giobufferedoutputstream.html0000644000000000000000000003314111272036627030262 0ustar rootrootgio.BufferedOutputStream

gio.BufferedOutputStream

gio.BufferedOutputStream — Buffered Output Stream

Synopsis

class gio.BufferedOutputStream(gio.FilterOutputStream):
    gio.BufferedOutputStream(base_stream)
def get_auto_grow()
def get_buffer_size()
def set_auto_grow(auto_grow)
def set_buffer_size(size)
Functions
 
    def gio.buffered_output_stream_new_sized(size)

gio.BufferedOutputStream Properties

"auto-grow"Read - WriteWhether the buffer should automatically grow. Default value: False.
"buffer-size"Read - Write - ConstructThe size of the backend buffer. Allowed values: >= 1. Default value: 4096.

Description

gio.BufferedOutputStream implements gio.FilterOutputStream and provides for buffered writes.

By default, gio.BufferedOutputStream's buffer size is set at 4 kilobytes.

To create a buffered output stream, use gio.BufferedOutputStream(), or gio.buffered_output_stream_new_sized() to specify the buffer's size at construction.

To get the size of a buffer within a buffered output stream, use gio.BufferedOutputStream.get_buffer_size(). To change the size of a buffered output stream's buffer, use gio.BufferedOutputStream.set_buffer_size(). Note that the buffer's size cannot be reduced below the size of the data within the buffer.

Constructor

    gio.BufferedOutputStream(base_stream)

base_stream :

a gio.OutputStream.

Returns :

a new gio.OutputStream for the given base_stream.

Creates a new buffered output stream for a base stream.

Methods

gio.BufferedOutputStream.get_auto_grow

    def get_auto_grow()

Returns :

True if the stream's buffer automatically grows, False otherwise.

The get_auto_grow() method checks if the buffer automatically grows as data is added.

gio.BufferedOutputStream.get_buffer_size

    def get_buffer_size()

Returns :

the current buffer size.

The get_buffer_size() method gets the size of the buffer in the stream.

gio.BufferedOutputStream.set_auto_grow

    def set_auto_grow(auto_grow)

auto_grow :

a boolean.

The set_auto_grow() method sets whether or not the stream's buffer should automatically grow. If auto_grow is true, then each write will just make the buffer larger, and you must manually flush the buffer to actually write out the data to the underlying stream.

gio.BufferedOutputStream.set_buffer_size

    def set_buffer_size(size)

size :

the new buffer size.

The set_buffer_size() method sets the size of the internal buffer to size.

Functions

gio.buffered_output_stream_new_sized

    def buffered_output_stream_new_sized(size)

size :

the requested buffer size.

Returns :

A new gio.OutputStream with an internal buffer set to size..

The buffered_output_stream_new_sized() function creates a new gio.BufferedOutputStream from the given base_stream, with a buffer set to size.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/pygobject-introduction.html0000644000000000000000000002413111272036627026705 0ustar rootrootIntroduction

Introduction

Table of Contents

Reference Page Format

This document describes many of the PyGObject version 2.12 classes and their methods and associated functions. Deprecated classes, functions and methods have been specifically left out of this reference though classes that have become deprecated since PyGObject 2.0 have been left in but annotated with a deprecation warning. This document attempts to document as much of the PyGObject API as possible but there are undoubtedly errors and omissions. If you discover any of these please file a bug report at bugzilla.gnome.org for the pygobject project. Specific areas that have not been documented include:

  • The GParamSpec class

This reference describes the API for PyGObject as of version 2.11.0+ and assumes that the additional API changes for version 2.12 will not be significant. There will undoubtedly be changes that are not reflected in this reference. The differences in the API between version 2.0 and previous versions are denoted in this reference with a Note that describes the availability of the object, constructor, method or function. Any of these that do not have a notation can be assumed to be available in all versions of PyGObject from 2.0 and up. The source code must be consulted if this reference and your version of PyGObject seem to differ. You are encouraged to use the latest version of PyGObject that is available. See the PyGTK homepage for more information and more resources on how to use PyGObject as well as help in its development.

The Reference contains a chapter for each PyGObject module containing the class descriptions. The class descriptions are arranged alphabetically within the chapters. Currently there is one module chapter:

The gobject module

The classes that are included in the gobject module of PyGObject and are accessed similar to: gobject.GObject. These classes are the base object classes that the gtk and gtk.gdk module classes are built on.

Reference Page Format

Each PyGObject class is described in a reference page that has a number of sections in a fixed format. Each reference page will have a subset of the following sections:

Name

The name and a one-line description of the class.

Synopsis

A synopsis of the class and its methods and optionally a list of associated functions.

Ancestry

The list of the parent classes of the class. This section may not be present in all class descriptions.

Properties

A list of the properties (internal state) supported by the class. This section may not be present in all classes. The property descriptions include the name, the access operations (e.g. Read, Write), and a brief description. Properties are accessed using the gobject.set_property() and gobject.get_property() methods that are available to every PyGObject object. This section may not be present in all class descriptions.

Attributes

A set of internal object state data accessible as Python attributes (e.g. object.attr). The attribute descriptions include a name by which the attribute data is accessed, the access mode (e.g. Read, Write), and a brief description of the attribute. Most PyGObject classes do not support attributes so this section is not present in most class descriptions.

Signal Prototypes

A list of the signals supported by the class including the signal name and a synopsis of the signal handler function prototype. This section may not be present in all class descriptions.

Description

A description of the class and possibly some of the methods supported by the class.

Constructor

The description of the class object constructor including the synopsis with brief parameter descriptions and a description of th use of the constructor. There may be more than one constructor description if the constructor supports different parameter lists. This section may not be present in all class descriptions.

Methods

A list of methods supported by the class. Each method description includes: a synopsis of the method and its parameters as well as a brief description of each parameter and return value (if any); and, a description of the use of the method.

Functions

A list of related functions. Each function description includes a synopsis of the function and its parameters and return value (if any), and a description of the use of the function.

Signals

A list of signals including a synopsis of the signal handler prototype function with its parameters and return value (if any). The signal emission conditions are briefly described. This section is not present in all class descriptions; specifically, the gtk.gdk classes do not usually support signals.

The function and method synopsis parameters are displayed in bold to denote Python keyword parameters. Also if the parameter is optional its default value will be displayed. For example the gobject.signal_lookup() function synopsis is:

    def gobject.signal_lookup(name, type)

The parameters name and type are keyword parameters that can be specified in a call either by position or keyword (in which case position is not important). The following calls have the same result:

  id = gobject.signal_lookup("clicked", gtk.Button)
  id = gobject.signal_lookup("clicked", type=gtk.Button)
  id = gobject.signal_lookup(name="clicked", type=gtk.Button)
  id = gobject.signal_lookup(type=gtk.Button, name="clicked")

Parameters that are not keyword parameters are displayed in italic and must be specified positionally but may also be optional.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giocancellable.html0000644000000000000000000003272711272036627026241 0ustar rootrootgio.Cancellable

gio.Cancellable

gio.Cancellable — Thread-safe Operation Cancellation Stack.

Synopsis

class gio.Cancellable(gobject.GObject):
    gio.Cancellable()
def cancel()
def get_fd()
def is_cancelled()
def pop_current()
def push_current()
def reset()
def set_error_if_cancelled()
Functions
 
    def gio.cancellable_get_current()

Description

The gio.Cancellable is a thread-safe operation cancellation stack used throughout GIO to allow for cancellation of synchronous and asynchronous operations.

Constructor

    gio.Cancellable()

Returns :

a new gio.Cancellable.

Creates a new gio.Cancellable object.

Applications that want to start one or more operations that should be cancellable should create a gio.Cancellable and pass it to the operations.

One gio.Cancellable can be used in multiple consecutive operations, but not in multiple concurrent operations.

Methods

gio.Cancellable.cancel

    def cancel()

The cancel() method will set cancellable to cancelled, and will emit the "cancelled" signal. (However, see the warning about race conditions in the documentation for that signal if you are planning to connect to it.)

This function is thread-safe. In other words, you can safely call it from a thread other than the one running the operation that was passed the cancellable.

The convention within gio is that cancelling an asynchronous operation causes it to complete asynchronously. That is, if you cancel the operation from the same thread in which it is running, then the operation's GAsyncReadyCallback will not be invoked until the application returns to the main loop.

gio.Cancellable.get_fd

    def get_fd()

Returns :

A valid file descriptor. -1 if the file descriptor is not supported, or on errors.

The get_fd() method gets the file descriptor for a cancellable job. This can be used to implement cancellable operations on Unix systems. The returned fd will turn readable when cancellable is cancelled.

gio.Cancellable.is_cancelled

    def is_cancelled()

Returns :

True if cancellable is cancelled, False if called with None or if item is not cancelled.

The get_fd() method gets the file descriptor for a cancellable job. This can be used to implement cancellable operations on Unix systems. The returned fd will turn readable when cancellable is cancelled.

gio.Cancellable.pop_current

    def pop_current()

The pop_current() method pops cancellable off the cancellable stack (verifying that cancellable is on the top of the stack).

gio.Cancellable.push_current

    def push_current()

The push_current() method pushes cancellable onto the cancellable stack. The current cancllable can then be recieved using gio.cancellable_get_current().

gio.Cancellable.reset

    def reset()

The reset() method resets cancellable to its uncancelled state.

gio.Cancellable.set_error_if_cancelled

    def set_error_if_cancelled()

Returns :

True if cancellable was cancelled, False if it was not.

The set_error_if_cancelled() method, if the cancellable is cancelled, sets the error to notify that the operation was cancelled.

Functions

gio.cancellable_get_current

    def cancellable_get_current()

Returns :

A gio.Cancellable from the top of the stack, or None if the stack is empty.

The cancellable_get_current() function gets the top cancellable from the stack.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giofileattributeinfo.html0000644000000000000000000000752011272036627027524 0ustar rootrootgio.FileAttributeInfo

gio.FileAttributeInfo

gio.FileAttributeInfo — Information about a specific attribute.

Synopsis

class gio.FileAttributeInfo(__builtin__.object):

Ancestry

+-- __builtin__.object
  +-- gio.FileAttributeInfo

Description

The gio.FileAttributeInfo contains information about a specific attribute.

gio.FileAttributeInfo Attributes

"name"ReadThe name of the attribute.
"type"Readthe Gio File Attribute Type Constants type of the attribute.
"flags"Reada set of Gio File Attribute Flags Constants.
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-glibmainloop.html0000644000000000000000000002464111272036627025765 0ustar rootrootglib.MainLoop

glib.MainLoop

glib.MainLoop — an object representing the main event loop of a PyGTK application.

Synopsis

class glib.MainLoop:
    glib.MainLoop(context=None, is_running=0)
def get_context()
def is_running()
def quit()
def run()

Ancestry

+-- glib.MainLoop

Description

glib.MainLoop represents a main event loop. A glib.MainLoop is created with the glib.MainLoop() constructor. After adding the initial event sources, the run() method is called. This continuously checks for new events from each of the event sources and dispatches them. Finally, the processing of an event from one of the sources leads to a call to the quit() method to exit the main loop, and the run() method returns.

It is possible to create new instances of glib.MainLoop recursively. This is often used in PyGTK applications when showing modal dialog boxes. Note that event sources are associated with a particular glib.MainContext, and will be checked and dispatched for all main loops associated with that glib.MainContext.

PyGTK contains wrappers of some of these functions, e.g. the gtk.main(), gtk.main_quit() and gtk.events_pending() functions.

Constructor

    glib.MainLoop(context=None, is_running=None)

context :

a glib.MainContext or None to use the default context.

is_running :

if TRUE indicates that the loop is running. This is not very important since calling the run() method will set this to TRUE anyway.

Returns :

a new glib.MainLoop object.

Creates a new glib.MainLoop object.

Methods

glib.MainLoop.get_context

    def get_context()

Returns :

the glib.MainContext the mainloop is associated with

The get_context() method returns the glib.MainContext that the mainloop was created with.

glib.MainLoop.is_running

    def is_running()

Returns :

TRUE if the mainloop is currently being run.

The is_running() method checks to see if the mainloop is currently being run via the run() method.

glib.MainLoop.quit

    def quit()

The quit() method stops the mainloop from running. Any subsequent calls to the run() method will return immediately.

glib.MainLoop.run

    def run()

The run() method runs a mainloop until the quit() method is called. If this is called for the thread of the loop's glib.MainContext, it will process events from the loop, otherwise it will simply wait.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giothemedicon.html0000644000000000000000000002226511272036627026127 0ustar rootrootgio.ThemedIcon

gio.ThemedIcon

gio.ThemedIcon — Icon theming support.

Synopsis

class gio.ThemedIcon(gobject.GObject):
    gio.ThemedIcon()
def append_name()
def get_names()
def prepend_name()

gio.ThemedIcon Properties

"name"Write/Contruct Only The icon name. Default value: None
"names"Read/Write/Contruct Only A list of icon names.
"use-default-fallbacks"Read/Write/Contruct Only Whether to use the default fallbacks found by shortening the icon name at '-' characters. If the "names" array has more than one element, ignores any past the first.

Description

gio.ThemedIcon is an implementation of gio.Icon that supports icon themes. GThemedIcon contains a list of all of the icons present in an icon theme, so that icons can be looked up quickly.

gio.ThemedIcon does not provide actual pixmaps for icons, just the icon names. Ideally something like gtk.IconTheme.choose_icon() should be used to resolve the list of names so that fallback icons work nicely with themes that inherit other themes

Constructor

    gio.ThemedIcon(name, use_default_fallbacks=False)

name :

a string containing an icon name.

Returns :

a new gio.ThemedIcon.

Creates a new themed icon from icon name, if instead of an icon name you provide a list of icon names, the gio.ThemedIcon will be constructed using the items in the list.

Methods

gio.ThemedIcon.append_name

    def append_name()

name :

name of icon to append to list of icons from within icon.

The append_name() method appends a name to the list of icons from within icon.

gio.ThemedIcon.get_names

    def get_names()

Returns :

a list of icon names.

The get_names() method gets the names of icons from within icon.

gio.ThemedIcon.prepend_name

    def prepend_name()

name :

name of icon to prepend to list of icons from within icon.

The prepend_name() method prepends a name to the list of icons from within icon.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/index.html0000644000000000000000000002516611272036627023320 0ustar rootrootPyGObject Reference Manual

PyGObject Reference Manual

for PyGObject version 2.19.0

2009-08-10

Abstract

This reference describes the classes of the python gobject module.


Table of Contents

Introduction
Reference Page Format
PyGlibClass Reference
glib.MainContext — an object representing a set of event sources to be handled in a glib.MainLoop.
glib.MainLoop — an object representing the main event loop of a PyGTK application.
glib Functions — miscellaneous functions
glib Constants — the built-in constants of the glib module
PyGObject Class Reference
gobject.GObject — the base class
gobject.GBoxed — an object containing an opaque chunk of data
gobject.GPointer — an object containing a completely opaque chunk of data
gobject.GInterface — an object representing a GInterface
gobject Functions — miscellaneous functions
gobject Constants — the built-in constants of the gobject module
PyGio Class Reference
gio.AppInfo — Information about an installed application and methods to launch it (with file arguments).
gio.AppLaunchContext — Application launch context.
gio.AsyncResult — Asynchronous Function Results.
gio.BufferedInputStream — Buffered Input Stream
gio.BufferedOutputStream — Buffered Output Stream
gio.Cancellable — Thread-safe Operation Cancellation Stack.
gio.DataInputStream — Data Input Stream
gio.DataOutputStream — Data Output Stream
gio.Drive — Virtual File System drive management.
gio.Emblem — An object for emblems.
gio.EmblemedIcon — Icon with emblems.
gio.File — File and Directory Handling.
gio.FileAttributeInfo — Information about a specific attribute.
gio.FileEnumerator — Enumerated Files Routines.
gio.FileIcon — Icons pointing to an image file.
gio.FileInfo — File Information and Attributes
gio.FileInputStream — Base class for implementing streaming input
gio.FileMonitor — File Monitor
gio.FileOutputStream — Base class for implementing streaming input
gio.FilterInputStream — Filter Input Stream
gio.FilterOutputStream — Filter Output Stream
gio.Icon — Interface for icons.
gio.InputStream — Base class for implementing streaming input
gio.LoadableIcon — Interface for icons.
gio.MemoryInputStream — Base class for implementing streaming input
gio.MemoryOutputStream — Streaming output operations on memory chunks
gio.Mount — Mount management
gio.MountOperation — Authentication methods for mountable locations.
gio.OutputStream — Base class for implementing streaming input
gio.Seekable — Stream seeking interface.
gio.SimpleAsyncResult — Simple asynchronous results implementation.
gio.ThemedIcon — Icon theming support.
gio.Volume — Volume management.
gio.VolumeMonitor — Volume Monitor.
gio Functions
gio Constants — the built-in constants of the gio module
PyGio Unix Class Reference
gio.unix.InputStream — Streaming input operations for UNIX file descriptors.
gio.unix.OutputStream — Streaming output operations for UNIX file descriptors.
./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/class-giobufferedinputstream.html0000644000000000000000000005767411272036627030102 0ustar rootrootgio.BufferedInputStream

gio.BufferedInputStream

gio.BufferedInputStream — Buffered Input Stream

Synopsis

class gio.BufferedInputStream(gio.FilterInputStream):
    gio.BufferedInputStream(base_stream)
def fill(count, cancellable=None)
def fill_async(count, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)
def fill_finish(result)
def get_available()
def get_buffer_size()
def read_byte(cancellable=None)
def set_buffer_size(size)
Functions
 
    def gio.buffered_input_stream_new_sized(size)

gio.BufferedInputStream Properties

"buffer-size"Read - Write - ConstructThe size of the backend buffer. Allowed values: >= 1. Default value: 4096.

Description

gio.BufferedInputStream implements gio.FilterInputStream and provides for buffered reads.

By default, gio.BufferedInputStream's buffer size is set at 4 kilobytes.

To create a buffered input stream, use gio.BufferedInputStream(), or gio.buffered_input_stream_new_sized() to specify the buffer's size at construction.

To get the size of a buffer within a buffered input stream, use get_buffer_size(). To change the size of a buffered input stream's buffer, use set_buffer_size(). Note that the buffer's size cannot be reduced below the size of the data within the buffer.

Constructor

    gio.BufferedInputStream(base_stream)

base_stream :

a gio.InputStream.

Returns :

a new gio.InputStream for the given base_stream.

Creates a new gio.InputStream from the given base_stream, with a buffer set to the default size (4 kilobytes).

Methods

gio.BufferedInputStream.fill

    def fill(count, cancellable=None)

count :

the number of bytes that will be read from the stream.

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

the number of bytes read into stream's buffer, up to count, or -1 on error.

The fill() method tries to read count bytes from the stream into the buffer. Will block during this read.

If count is zero, returns zero and does nothing. A value of count larger than G_MAXSSIZE will cause a gio.ERROR_INVALID_ARGUMENT error.

On success, the number of bytes read into the buffer is returned. It is not an error if this is not the same as the requested size, as it can happen e.g. near the end of a file. Zero is returned on end of file (or if count is zero), but never otherwise.

If count is -1 then the attempted read size is equal to the number of bytes that are required to fill the buffer.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned. If an operation was partially finished when the operation was cancelled the partial result will be returned, without an error.

On error -1 is returned and error is set accordingly.

For the asynchronous, non-blocking, version of this function, see gio.BufferedInputStream.fill_async().

gio.BufferedInputStream.fill_async

    def fill_async(count, callback, io_priority=glib.PRIORITY_DEFAULT, cancellable=None, user_data=None)

count :

the number of bytes that will be read from the stream.

callback :

a GAsyncReadyCallback to call when the request is satisfied.

io_priority :

the Glib Priority Constants of the request.

cancellable :

optional gio.Cancellable object, None to ignore.

user_data :

the data to pass to callback function.

The fill_async() method reads data into stream's buffer asynchronously, up to count size. io_priority can be used to prioritize reads.

For the synchronous version of this function, see gio.BufferedInputStream.fill().

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be set

If count is -1 then the attempted read size is equal to the number of bytes that are required to fill the buffer.

gio.BufferedInputStream.fill_finish

    def fill_finish(result)

result :

a gio.AsyncResult.

Returns :

the size of the read stream, or -1 on an error.

The fill_finish() method finishes an asynchronous file append operation started with gio.BufferedInputStream.fill_async().

gio.BufferedInputStream.get_available

    def get_available()

Returns :

size of the available stream.

The get_available() method gets the size of the available data within the stream.

gio.BufferedInputStream.get_buffer_size

    def get_buffer_size()

Returns :

the current buffer size.

The get_buffer_size() method gets the size of the input buffer.

gio.BufferedInputStream.read_byte

    def read_byte(cancellable=None)

cancellable :

optional gio.Cancellable object, None to ignore.

Returns :

the byte read from the stream, or -1 on end of stream or error.

The read_byte() method tries to read a single byte from the stream or the buffer. Will block during this read.

On success, the byte read from the stream is returned. On end of stream -1 is returned but it's not an exceptional error and error is not set.

If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned. If an operation was partially finished when the operation was cancelled the partial result will be returned, without an error.

On error -1 is returned and error is set accordingly.

gio.BufferedInputStream.set_buffer_size

    def set_buffer_size(size)

size :

the new buffer size.

The set_buffer_size() method sets the size of the internal buffer of stream to size, or to the size of the contents of the buffer. The buffer can never be resized smaller than its current contents.

Functions

gio.buffered_input_stream_new_sized

    def buffered_input_stream_new_sized(size)

size :

the requested buffer size.

Returns :

A new gio.InputStream.

The buffered_input_stream_new_sized() function creates a new gio.BufferedInputStream from the given base_stream, with a buffer set to size.

./pygobject-2.20.0-i686/usr/share/gtk-doc/html/pygobject/index.sgml0000644000000000000000000020367611272036627023322 0ustar rootroot ./pygobject-2.20.0-i686/usr/include/0000755000000000000000000000000011272036712015343 5ustar rootroot./pygobject-2.20.0-i686/usr/include/pygtk-2.0/0000755000000000000000000000000011272036700016773 5ustar rootroot./pygobject-2.20.0-i686/usr/include/pygtk-2.0/pygobject.h0000644000000000000000000006111711272036643021146 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- */ #ifndef _PYGOBJECT_H_ #define _PYGOBJECT_H_ #include #include #include G_BEGIN_DECLS /* This is deprecated, don't use */ #define PYGIL_API_IS_BUGGY FALSE /* PyGClosure is a _private_ structure */ typedef void (* PyClosureExceptionHandler) (GValue *ret, guint n_param_values, const GValue *params); typedef struct _PyGClosure PyGClosure; typedef struct _PyGObjectData PyGObjectData; struct _PyGClosure { GClosure closure; PyObject *callback; PyObject *extra_args; /* tuple of extra args to pass to callback */ PyObject *swap_data; /* other object for gtk_signal_connect__object */ PyClosureExceptionHandler exception_handler; }; typedef enum { PYGOBJECT_USING_TOGGLE_REF = 1 << 0 } PyGObjectFlags; /* closures is just an alias for what is found in the * PyGObjectData */ typedef struct { PyObject_HEAD GObject *obj; PyObject *inst_dict; /* the instance dictionary -- must be last */ PyObject *weakreflist; /* list of weak references */ /*< private >*/ /* using union to preserve ABI compatibility (structure size * must not change) */ union { GSList *closures; /* stale field; no longer updated DO-NOT-USE! */ PyGObjectFlags flags; } private_flags; } PyGObject; #define pygobject_get(v) (((PyGObject *)(v))->obj) #define pygobject_check(v,base) (PyObject_TypeCheck(v,base)) typedef struct { PyObject_HEAD gpointer boxed; GType gtype; gboolean free_on_dealloc; } PyGBoxed; #define pyg_boxed_get(v,t) ((t *)((PyGBoxed *)(v))->boxed) #define pyg_boxed_check(v,typecode) (PyObject_TypeCheck(v, &PyGBoxed_Type) && ((PyGBoxed *)(v))->gtype == typecode) typedef struct { PyObject_HEAD gpointer pointer; GType gtype; } PyGPointer; #define pyg_pointer_get(v,t) ((t *)((PyGPointer *)(v))->pointer) #define pyg_pointer_check(v,typecode) (PyObject_TypeCheck(v, &PyGPointer_Type) && ((PyGPointer *)(v))->gtype == typecode) typedef void (*PyGFatalExceptionFunc) (void); typedef void (*PyGThreadBlockFunc) (void); typedef struct { PyObject_HEAD GParamSpec *pspec; } PyGParamSpec; #define PyGParamSpec_Get(v) (((PyGParamSpec *)v)->pspec) #define PyGParamSpec_Check(v) (PyObject_TypeCheck(v, &PyGParamSpec_Type)) typedef int (*PyGClassInitFunc) (gpointer gclass, PyTypeObject *pyclass); typedef PyTypeObject * (*PyGTypeRegistrationFunction) (const gchar *name, gpointer data); struct _PyGObject_Functions { /* * All field names in here are considered private, * use the macros below instead, which provides stability */ void (* register_class)(PyObject *dict, const gchar *class_name, GType gtype, PyTypeObject *type, PyObject *bases); void (* register_wrapper)(PyObject *self); void (* register_sinkfunc)(GType type, void (* sinkfunc)(GObject *object)); PyTypeObject *(* lookup_class)(GType type); PyObject *(* newgobj)(GObject *obj); GClosure *(* closure_new)(PyObject *callback, PyObject *extra_args, PyObject *swap_data); void (* object_watch_closure)(PyObject *self, GClosure *closure); GDestroyNotify destroy_notify; GType (* type_from_object)(PyObject *obj); PyObject *(* type_wrapper_new)(GType type); gint (* enum_get_value)(GType enum_type, PyObject *obj, gint *val); gint (* flags_get_value)(GType flag_type, PyObject *obj, gint *val); void (* register_gtype_custom)(GType gtype, PyObject *(* from_func)(const GValue *value), int (* to_func)(GValue *value, PyObject *obj)); int (* value_from_pyobject)(GValue *value, PyObject *obj); PyObject *(* value_as_pyobject)(const GValue *value, gboolean copy_boxed); void (* register_interface)(PyObject *dict, const gchar *class_name, GType gtype, PyTypeObject *type); PyTypeObject *boxed_type; void (* register_boxed)(PyObject *dict, const gchar *class_name, GType boxed_type, PyTypeObject *type); PyObject *(* boxed_new)(GType boxed_type, gpointer boxed, gboolean copy_boxed, gboolean own_ref); PyTypeObject *pointer_type; void (* register_pointer)(PyObject *dict, const gchar *class_name, GType pointer_type, PyTypeObject *type); PyObject *(* pointer_new)(GType boxed_type, gpointer pointer); void (* enum_add_constants)(PyObject *module, GType enum_type, const gchar *strip_prefix); void (* flags_add_constants)(PyObject *module, GType flags_type, const gchar *strip_prefix); const gchar *(* constant_strip_prefix)(const gchar *name, const gchar *strip_prefix); gboolean (* error_check)(GError **error); /* hooks to register handlers for getting GDK threads to cooperate * with python threading */ void (* set_thread_block_funcs) (PyGThreadBlockFunc block_threads_func, PyGThreadBlockFunc unblock_threads_func); PyGThreadBlockFunc block_threads; PyGThreadBlockFunc unblock_threads; PyTypeObject *paramspec_type; PyObject *(* paramspec_new)(GParamSpec *spec); GParamSpec *(*paramspec_get)(PyObject *tuple); int (*pyobj_to_unichar_conv)(PyObject *pyobj, void* ptr); gboolean (*parse_constructor_args)(GType obj_type, char **arg_names, char **prop_names, GParameter *params, guint *nparams, PyObject **py_args); PyObject *(* param_gvalue_as_pyobject) (const GValue* gvalue, gboolean copy_boxed, const GParamSpec* pspec); int (* gvalue_from_param_pyobject) (GValue* value, PyObject* py_obj, const GParamSpec* pspec); PyTypeObject *enum_type; PyObject *(*enum_add)(PyObject *module, const char *type_name_, const char *strip_prefix, GType gtype); PyObject* (*enum_from_gtype)(GType gtype, int value); PyTypeObject *flags_type; PyObject *(*flags_add)(PyObject *module, const char *type_name_, const char *strip_prefix, GType gtype); PyObject* (*flags_from_gtype)(GType gtype, int value); gboolean threads_enabled; int (*enable_threads) (void); int (*gil_state_ensure) (void); void (*gil_state_release) (int flag); void (*register_class_init) (GType gtype, PyGClassInitFunc class_init); void (*register_interface_info) (GType gtype, const GInterfaceInfo *info); void (*closure_set_exception_handler) (GClosure *closure, PyClosureExceptionHandler handler); int (*pygobject_constructv) (PyGObject *self, guint n_parameters, GParameter *parameters); int (*pygobject_construct) (PyGObject *self, const char *first_property_name, ...); void (*set_object_has_new_constructor) (GType type); void (*add_warning_redirection) (const char *domain, PyObject *warning); void (*disable_warning_redirections) (void); void (*type_register_custom)(const gchar *type_name, PyGTypeRegistrationFunction callback, gpointer data); gboolean (*gerror_exception_check) (GError **error); PyObject* (*option_group_new) (GOptionGroup *group); }; #ifndef _INSIDE_PYGOBJECT_ #if defined(NO_IMPORT) || defined(NO_IMPORT_PYGOBJECT) extern struct _PyGObject_Functions *_PyGObject_API; #else struct _PyGObject_Functions *_PyGObject_API; #endif #define pygobject_register_class (_PyGObject_API->register_class) #define pygobject_register_wrapper (_PyGObject_API->register_wrapper) #define pygobject_register_sinkfunc (_PyGObject_API->register_sinkfunc) #define pygobject_lookup_class (_PyGObject_API->lookup_class) #define pygobject_new (_PyGObject_API->newgobj) #define pyg_closure_new (_PyGObject_API->closure_new) #define pygobject_watch_closure (_PyGObject_API->object_watch_closure) #define pyg_closure_set_exception_handler (_PyGObject_API->closure_set_exception_handler) #define pyg_destroy_notify (_PyGObject_API->destroy_notify) #define pyg_type_from_object (_PyGObject_API->type_from_object) #define pyg_type_wrapper_new (_PyGObject_API->type_wrapper_new) #define pyg_enum_get_value (_PyGObject_API->enum_get_value) #define pyg_flags_get_value (_PyGObject_API->flags_get_value) /* This is deprecated, call pyg_register_gtype_custom directly instead */ #define pyg_register_boxed_custom pyg_register_gtype_custom #define pyg_register_gtype_custom (_PyGObject_API->register_gtype_custom) #define pyg_value_from_pyobject (_PyGObject_API->value_from_pyobject) #define pyg_value_as_pyobject (_PyGObject_API->value_as_pyobject) #define pyg_register_interface (_PyGObject_API->register_interface) #define PyGBoxed_Type (*_PyGObject_API->boxed_type) #define pyg_register_boxed (_PyGObject_API->register_boxed) #define pyg_boxed_new (_PyGObject_API->boxed_new) #define PyGPointer_Type (*_PyGObject_API->pointer_type) #define pyg_register_pointer (_PyGObject_API->register_pointer) #define pyg_pointer_new (_PyGObject_API->pointer_new) #define pyg_enum_add_constants (_PyGObject_API->enum_add_constants) #define pyg_flags_add_constants (_PyGObject_API->flags_add_constants) #define pyg_constant_strip_prefix (_PyGObject_API->constant_strip_prefix) #define pyg_error_check (_PyGObject_API->error_check) #define pyg_set_thread_block_funcs (_PyGObject_API->set_thread_block_funcs) #define PyGParamSpec_Type (*_PyGObject_API->paramspec_type) #define pyg_param_spec_new (_PyGObject_API->paramspec_new) #define pyg_param_spec_from_object (_PyGObject_API->paramspec_get) #define pyg_pyobj_to_unichar_conv (_PyGObject_API->pyobj_to_unichar_conv) #define pyg_parse_constructor_args (_PyGObject_API->parse_constructor_args) #define pyg_param_gvalue_as_pyobject (_PyGObject_API->value_as_pyobject) #define pyg_param_gvalue_from_pyobject (_PyGObject_API->gvalue_from_param_pyobject) #define PyGEnum_Type (*_PyGObject_API->enum_type) #define pyg_enum_add (_PyGObject_API->enum_add) #define pyg_enum_from_gtype (_PyGObject_API->enum_from_gtype) #define PyGFlags_Type (*_PyGObject_API->flags_type) #define pyg_flags_add (_PyGObject_API->flags_add) #define pyg_flags_from_gtype (_PyGObject_API->flags_from_gtype) #define pyg_enable_threads (_PyGObject_API->enable_threads) #define pyg_gil_state_ensure (_PyGObject_API->gil_state_ensure) #define pyg_gil_state_release (_PyGObject_API->gil_state_release) #define pyg_register_class_init (_PyGObject_API->register_class_init) #define pyg_register_interface_info (_PyGObject_API->register_interface_info) #define pygobject_construct (_PyGObject_API->pygobject_construct) #define pygobject_constructv (_PyGObject_API->pygobject_constructv) #define pyg_set_object_has_new_constructor (_PyGObject_API->set_object_has_new_constructor) #define pyg_add_warning_redirection (_PyGObject_API->add_warning_redirection) #define pyg_disable_warning_redirections (_PyGObject_API->disable_warning_redirections) #define pyg_type_register_custom_callback (_PyGObject_API->type_register_custom) #define pyg_gerror_exception_check (_PyGObject_API->gerror_exception_check) #define pyg_option_group_new (_PyGObject_API->option_group_new) #define pyg_block_threads() G_STMT_START { \ if (_PyGObject_API->block_threads != NULL) \ (* _PyGObject_API->block_threads)(); \ } G_STMT_END #define pyg_unblock_threads() G_STMT_START { \ if (_PyGObject_API->unblock_threads != NULL) \ (* _PyGObject_API->unblock_threads)(); \ } G_STMT_END #define pyg_threads_enabled (_PyGObject_API->threads_enabled) #define pyg_begin_allow_threads \ G_STMT_START { \ PyThreadState *_save = NULL; \ if (_PyGObject_API->threads_enabled) \ _save = PyEval_SaveThread(); #define pyg_end_allow_threads \ if (_PyGObject_API->threads_enabled) \ PyEval_RestoreThread(_save); \ } G_STMT_END /** * pygobject_init: * @req_major: minimum version major number, or -1 * @req_minor: minimum version minor number, or -1 * @req_micro: minimum version micro number, or -1 * * Imports and initializes the 'gobject' python module. Can * optionally check for a required minimum version if @req_major, * @req_minor, and @req_micro are all different from -1. * * Returns: a new reference to the gobject module on success, NULL in * case of failure (and raises ImportError). **/ static inline PyObject * pygobject_init(int req_major, int req_minor, int req_micro) { PyObject *gobject, *cobject; gobject = PyImport_ImportModule("gobject"); if (!gobject) { if (PyErr_Occurred()) { PyObject *type, *value, *traceback; PyObject *py_orig_exc; PyErr_Fetch(&type, &value, &traceback); py_orig_exc = PyObject_Repr(value); Py_XDECREF(type); Py_XDECREF(value); Py_XDECREF(traceback); PyErr_Format(PyExc_ImportError, "could not import gobject (error was: %s)", PyString_AsString(py_orig_exc)); Py_DECREF(py_orig_exc); } else { PyErr_SetString(PyExc_ImportError, "could not import gobject (no error given)"); } return NULL; } cobject = PyObject_GetAttrString(gobject, "_PyGObject_API"); if (cobject && PyCObject_Check(cobject)) _PyGObject_API = (struct _PyGObject_Functions *) PyCObject_AsVoidPtr(cobject); else { PyErr_SetString(PyExc_ImportError, "could not import gobject (could not find _PyGObject_API object)"); Py_DECREF(gobject); return NULL; } if (req_major != -1) { int found_major, found_minor, found_micro; PyObject *version; version = PyObject_GetAttrString(gobject, "pygobject_version"); if (!version) version = PyObject_GetAttrString(gobject, "pygtk_version"); if (!version) { PyErr_SetString(PyExc_ImportError, "could not import gobject (version too old)"); Py_DECREF(gobject); return NULL; } if (!PyArg_ParseTuple(version, "iii", &found_major, &found_minor, &found_micro)) { PyErr_SetString(PyExc_ImportError, "could not import gobject (version has invalid format)"); Py_DECREF(version); Py_DECREF(gobject); return NULL; } Py_DECREF(version); if (req_major != found_major || req_minor > found_minor || (req_minor == found_minor && req_micro > found_micro)) { PyErr_Format(PyExc_ImportError, "could not import gobject (version mismatch, %d.%d.%d is required, " "found %d.%d.%d)", req_major, req_minor, req_micro, found_major, found_minor, found_micro); Py_DECREF(gobject); return NULL; } } return gobject; } /* deprecated macro, use pygobject_init() instead. */ #define init_pygobject() G_STMT_START { \ if (!pygobject_init(-1, -1, -1)) \ return; \ } G_STMT_END /* deprecated macro, use pygobject_init() instead. */ #define init_pygobject_check(req_major, req_minor, req_micro) G_STMT_START { \ if (!pygobject_init(req_major, req_minor, req_micro)) \ return; \ } G_STMT_END /** * PYLIST_FROMGLIBLIST: * @type: the type of the GLib list e.g. #GList or #GSList * @prefix: the prefix of functions that manipulate a list of the type * given by type. * * A macro that creates a type specific code block which converts a GLib * list (#GSList or #GList) to a Python list. The first two args of the macro * are used to specify the type and list function prefix so that the type * specific macros can be generated. * * The rest of the args are for the standard args for the type specific * macro(s) created from this macro. */ #define PYLIST_FROMGLIBLIST(type,prefix,py_list,list,item_convert_func,\ list_free,list_item_free) \ G_STMT_START \ { \ gint i, len; \ PyObject *item; \ void (*glib_list_free)(type*) = list_free; \ GFunc glib_list_item_free = (GFunc)list_item_free; \ \ len = prefix##_length(list); \ py_list = PyList_New(len); \ for (i = 0; i < len; i++) { \ gpointer list_item = prefix##_nth_data(list, i); \ \ item = item_convert_func; \ PyList_SetItem(py_list, i, item); \ } \ if (glib_list_item_free != NULL) \ prefix##_foreach(list, glib_list_item_free, NULL); \ if (glib_list_free != NULL) \ glib_list_free(list); \ } G_STMT_END /** * PYLIST_FROMGLIST: * @py_list: the name of the Python list * * @list: the #GList to be converted to a Python list * * @item_convert_func: the function that converts a list item to a Python * object. The function must refer to the list item using "@list_item" and * must return a #PyObject* object. An example conversion function is: * [[ * PyString_FromString(list_item) * ]] * A more elaborate function is: * [[ * pyg_boxed_new(GTK_TYPE_RECENT_INFO, list_item, TRUE, TRUE) * ]] * @list_free: the name of a function that takes a single arg (the list) and * frees its memory. Can be NULL if the list should not be freed. An example * is: * [[ * g_list_free * ]] * @list_item_free: the name of a #GFunc function that frees the memory used * by the items in the list or %NULL if the list items do not have to be * freed. A simple example is: * [[ * g_free * ]] * * A macro that adds code that converts a #GList to a Python list. * */ #define PYLIST_FROMGLIST(py_list,list,item_convert_func,list_free,\ list_item_free) \ PYLIST_FROMGLIBLIST(GList,g_list,py_list,list,item_convert_func,\ list_free,list_item_free) /** * PYLIST_FROMGSLIST: * @py_list: the name of the Python list * * @list: the #GSList to be converted to a Python list * * @item_convert_func: the function that converts a list item to a Python * object. The function must refer to the list item using "@list_item" and * must return a #PyObject* object. An example conversion function is: * [[ * PyString_FromString(list_item) * ]] * A more elaborate function is: * [[ * pyg_boxed_new(GTK_TYPE_RECENT_INFO, list_item, TRUE, TRUE) * ]] * @list_free: the name of a function that takes a single arg (the list) and * frees its memory. Can be %NULL if the list should not be freed. An example * is: * [[ * g_list_free * ]] * @list_item_free: the name of a #GFunc function that frees the memory used * by the items in the list or %NULL if the list items do not have to be * freed. A simple example is: * [[ * g_free * ]] * * A macro that adds code that converts a #GSList to a Python list. * */ #define PYLIST_FROMGSLIST(py_list,list,item_convert_func,list_free,\ list_item_free) \ PYLIST_FROMGLIBLIST(GSList,g_slist,py_list,list,item_convert_func,\ list_free,list_item_free) /** * PYLIST_ASGLIBLIST * @type: the type of the GLib list e.g. GList or GSList * @prefix: the prefix of functions that manipulate a list of the type * given by type e.g. g_list or g_slist * * A macro that creates a type specific code block to be used to convert a * Python list to a GLib list (GList or GSList). The first two args of the * macro are used to specify the type and list function prefix so that the * type specific macros can be generated. * * The rest of the args are for the standard args for the type specific * macro(s) created from this macro. */ #define PYLIST_ASGLIBLIST(type,prefix,py_list,list,check_func,\ convert_func,child_free_func,errormsg,errorreturn) \ G_STMT_START \ { \ Py_ssize_t i, n_list; \ GFunc glib_child_free_func = (GFunc)child_free_func; \ \ if (!(py_list = PySequence_Fast(py_list, ""))) { \ errormsg; \ return errorreturn; \ } \ n_list = PySequence_Fast_GET_SIZE(py_list); \ for (i = 0; i < n_list; i++) { \ PyObject *py_item = PySequence_Fast_GET_ITEM(py_list, i); \ \ if (!check_func) { \ if (glib_child_free_func) \ prefix##_foreach(list, glib_child_free_func, NULL); \ prefix##_free(list); \ Py_DECREF(py_list); \ errormsg; \ return errorreturn; \ } \ list = prefix##_prepend(list, convert_func); \ }; \ Py_DECREF(py_list); \ list = prefix##_reverse(list); \ } \ G_STMT_END /** * PYLIST_ASGLIST * @py_list: the Python list to be converted * @list: the #GList list to be converted * @check_func: the expression that takes a #PyObject* arg (must be named * @py_item) and returns an int value indicating if the Python object matches * the required list item type (0 - %False or 1 - %True). An example is: * [[ * (PyString_Check(py_item)||PyUnicode_Check(py_item)) * ]] * @convert_func: the function that takes a #PyObject* arg (must be named * py_item) and returns a pointer to the converted list object. An example * is: * [[ * pygobject_get(py_item) * ]] * @child_free_func: the name of a #GFunc function that frees a GLib list * item or %NULL if the list item does not have to be freed. This function is * used to help free the items in a partially created list if there is an * error. An example is: * [[ * g_free * ]] * @errormsg: a function that sets up a Python error message. An example is: * [[ * PyErr_SetString(PyExc_TypeError, "strings must be a sequence of" "strings * or unicode objects") * ]] * @errorreturn: the value to return if an error occurs, e.g.: * [[ * %NULL * ]] * * A macro that creates code that converts a Python list to a #GList. The * returned list must be freed using the appropriate list free function when * it's no longer needed. If an error occurs the child_free_func is used to * release the memory used by the list items and then the list memory is * freed. */ #define PYLIST_ASGLIST(py_list,list,check_func,convert_func,child_free_func,\ errormsg,errorreturn) \ PYLIST_ASGLIBLIST(GList,g_list,py_list,list,check_func,convert_func,\ child_free_func,errormsg,errorreturn) /** * PYLIST_ASGSLIST * @py_list: the Python list to be converted * @list: the #GSList list to be converted * @check_func: the expression that takes a #PyObject* arg (must be named * @py_item) and returns an int value indicating if the Python object matches * the required list item type (0 - %False or 1 - %True). An example is: * [[ * (PyString_Check(py_item)||PyUnicode_Check(py_item)) * ]] * @convert_func: the function that takes a #PyObject* arg (must be named * py_item) and returns a pointer to the converted list object. An example * is: * [[ * pygobject_get(py_item) * ]] * @child_free_func: the name of a #GFunc function that frees a GLib list * item or %NULL if the list item does not have to be freed. This function is * used to help free the items in a partially created list if there is an * error. An example is: * [[ * g_free * ]] * @errormsg: a function that sets up a Python error message. An example is: * [[ * PyErr_SetString(PyExc_TypeError, "strings must be a sequence of" "strings * or unicode objects") * ]] * @errorreturn: the value to return if an error occurs, e.g.: * [[ * %NULL * ]] * * A macro that creates code that converts a Python list to a #GSList. The * returned list must be freed using the appropriate list free function when * it's no longer needed. If an error occurs the child_free_func is used to * release the memory used by the list items and then the list memory is * freed. */ #define PYLIST_ASGSLIST(py_list,list,check_func,convert_func,child_free_func,\ errormsg,errorreturn) \ PYLIST_ASGLIBLIST(GSList,g_slist,py_list,list,check_func,convert_func,\ child_free_func,errormsg,errorreturn) #endif /* !_INSIDE_PYGOBJECT_ */ G_END_DECLS #endif /* !_PYGOBJECT_H_ */ ./pygobject-2.20.0-i686/usr/include/pygtk-2.0/pyglib.h0000644000000000000000000000717511272036634020452 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- * pyglib - Python bindings for GLib toolkit. * Copyright (C) 1998-2003 James Henstridge * 2004-2008 Johan Dahlin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 * USA */ #ifndef __PYGLIB_H__ #define __PYGLIB_H__ #include #include G_BEGIN_DECLS typedef void (*PyGLibThreadsEnabledFunc) (void); typedef void (*PyGLibThreadBlockFunc) (void); void pyglib_init(void); void pyglib_init_internal(PyObject *api); PyGILState_STATE pyglib_gil_state_ensure(void); void pyglib_gil_state_release(PyGILState_STATE state); int pyglib_enable_threads(void); gboolean pyglib_error_check(GError **error); gboolean pyglib_gerror_exception_check(GError **error); PyObject *pyglib_register_exception_for_domain(gchar *name, gint error_domain); gboolean pyglib_threads_enabled(void); PyObject * pyglib_main_context_new(GMainContext *context); void pyglib_set_thread_block_funcs(PyGLibThreadBlockFunc block_threads_func, PyGLibThreadBlockFunc unblock_threads_func); void pyglib_block_threads(void); void pyglib_unblock_threads(void); PyObject * pyglib_option_context_new(GOptionContext *context); PyObject * pyglib_option_group_new(GOptionGroup *group); GOptionGroup * pyglib_option_group_transfer_group(PyObject *self); PyObject * pyglib_float_from_timeval(GTimeVal timeval); /* Private: for gobject <-> glib interaction only. */ void _pyglib_notify_on_enabling_threads(PyGLibThreadsEnabledFunc callback); #define pyglib_begin_allow_threads \ G_STMT_START { \ PyThreadState *_save = NULL; \ if (pyglib_threads_enabled()) \ _save = PyEval_SaveThread(); #define pyglib_end_allow_threads \ if (pyglib_threads_enabled()) \ PyEval_RestoreThread(_save); \ } G_STMT_END #define PYGLIB_MODULE_START(symbol, modname) \ DL_EXPORT(void) init##symbol(void) \ { \ PyObject *module; \ module = Py_InitModule(modname, symbol##_functions); #define PYGLIB_MODULE_END } #define PYGLIB_DEFINE_TYPE(typename, symbol, csymbol) \ PyTypeObject symbol = { \ PyObject_HEAD_INIT(NULL) \ 0, \ typename, \ sizeof(csymbol), \ 0, \ }; #define PYGLIB_REGISTER_TYPE(d, type, name) \ if (!type.tp_alloc) \ type.tp_alloc = PyType_GenericAlloc; \ if (!type.tp_new) \ type.tp_new = PyType_GenericNew; \ if (PyType_Ready(&type)) \ return; \ PyDict_SetItemString(d, name, (PyObject *)&type); G_END_DECLS #endif /* __PYGLIB_H__ */ ./pygobject-2.20.0-i686/usr/include/pygobject/0000755000000000000000000000000011272036712017331 5ustar rootroot./pygobject-2.20.0-i686/usr/include/pygobject/bank.h0000644000000000000000000000532611272036653020427 0ustar rootroot/* -*- Mode: C; c-basic-offset: 4 -*- */ /* * Copyright (C) 2005 Johan Dahlin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ #include #include /* This was added in Python 2.4 */ #ifndef Py_CLEAR #define Py_CLEAR(op) \ do { \ if (op) { \ PyObject *tmp = (PyObject *)(op); \ (op) = NULL; \ Py_DECREF(tmp); \ } \ } while (0) #endif /* Py_CLEAR */ typedef struct { PyObject_HEAD GIRepository *repo; } PyGIRepository; extern PyTypeObject PyGIRepository_Type; PyObject * pyg_info_new(gpointer info); typedef struct { PyObject_HEAD GIBaseInfo *info; PyObject *instance_dict; PyObject *weakreflist; } PyGIBaseInfo; extern PyTypeObject PyGIBaseInfo_Type; extern PyTypeObject PyGICallableInfo_Type; extern PyTypeObject PyGIFunctionInfo_Type; extern PyTypeObject PyGICallbackInfo_Type; extern PyTypeObject PyGIRegisteredTypeInfo_Type; extern PyTypeObject PyGIStructInfo_Type; extern PyTypeObject PyGIUnionInfo_Type; extern PyTypeObject PyGIEnumInfo_Type; extern PyTypeObject PyGIObjectInfo_Type; extern PyTypeObject PyGIBoxedInfo_Type; extern PyTypeObject PyGIInterfaceInfo_Type; extern PyTypeObject PyGIConstantInfo_Type; extern PyTypeObject PyGIValueInfo_Type; extern PyTypeObject PyGISignalInfo_Type; extern PyTypeObject PyGIVFuncInfo_Type; extern PyTypeObject PyGIPropertyInfo_Type; extern PyTypeObject PyGIFieldInfo_Type; extern PyTypeObject PyGIArgInfo_Type; extern PyTypeObject PyGITypeInfo_Type; #if 0 extern PyTypeObject PyGIErrorDomainInfo_Type; #endif extern PyTypeObject PyGIUnresolvedInfo_Type; GArgument pyg_argument_from_pyobject(PyObject *object, GITypeInfo *info); PyObject* pyg_argument_to_pyobject(GArgument *arg, GITypeInfo *info); PyObject* pyarray_to_pyobject(gpointer array, int length, GITypeInfo *info); ./pygobject-2.20.0-i686/usr/lib/0000755000000000000000000000000011272036714014470 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/pkgconfig/0000755000000000000000000000000011272036714016437 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/pkgconfig/pygobject-2.0.pc0000644000000000000000000000120311272036655021246 0ustar rootrootprefix=/usr exec_prefix=${prefix} includedir=${prefix}/include datarootdir=${prefix}/share datadir=${datarootdir} libdir=${exec_prefix}/lib # you can use the --variable=pygtkincludedir argument to # pkg-config to get this value. You might want to use this to # install additional headers. pygtkincludedir=${includedir}/pygtk-2.0 fixxref=${datadir}/pygobject/xsl/fixxref.py pygdocs=${datadir}/gtk-doc/html/pygobject defsdir=${datadir}/pygobject/2.0/defs codegendir=${datadir}/pygobject/2.0/codegen Name: PyGObject Description: Python bindings for GObject Requires: gobject-2.0 Requires.private: Version: 2.20.0 Cflags: -I${pygtkincludedir} ./pygobject-2.20.0-i686/usr/lib/libpyglib-2.0-python.so0000777000000000000000000000000011272036714025407 2libpyglib-2.0-python.so.0.0.0ustar rootroot./pygobject-2.20.0-i686/usr/lib/libpyglib-2.0-python.so.0.0.00000755000000000000000000004037711272036675021302 0ustar rootrootELFÀ4Ä+4 (¤(¤(¤(¤8¤8$¸(¸8¸8ððQåtdCR. Q&NH, )K9!':JO=4@0G+B"ELP6AI$7F>C3D <  #/2-1?5;*8%(M 9l, –„ÿ#)á"u Z % ‡m-Ä% ôy/\ ÛÌ>ï AV#k {Õä ¨u[ó/W½2"k ˆ$„ Dk °]#Ön…[ [ # Ýkå²+`ëk¹!y Ž‹\ ö3„å?\™ÇÕjÃ[Á#F ÅP¨:ñÿ7NŸ‹$î ÀšàÍ ÿ˜) E\È:ñÿë·µ¥ç\ "D èÁY I¨:ñÿ Ü ­B Ú"®v?d£ÃC’ __gmon_start___fini__cxa_finalize_Jv_RegisterClassespyglib_initPyImport_ImportModulePyErr_OccurredPyErr_FetchPyObject_ReprPyString_AsStringPyExc_ImportErrorPyErr_FormatPyErr_SetStringPyObject_GetAttrStringPyCObject_TypePyCObject_AsVoidPtrpyglib_init_internalpyglib_threads_enabledg_return_if_fail_warningpyglib_gil_state_ensurePyGILState_Ensurepyglib_gil_state_releasePyGILState_Releasepyglib_enable_threadsPyEval_InitThreadsg_threads_got_initializedg_thread_initPyThread_create_keyg_slist_free_pyglib_notify_on_enabling_threadsg_slist_appendpyglib_gil_state_ensure_py23pyglib_gil_state_release_py23pyglib_block_threadspyglib_unblock_threadspyglib_set_thread_block_funcspyglib_error_checkPyInt_FromLongPyDict_GetItem_PyObject_CallFunction_SizeTg_quark_to_stringPyString_FromStringPyObject_SetAttrString_Py_NoneStructPyErr_SetObjectg_clear_errorpyglib_gerror_exception_checkPyErr_NormalizeExceptionPyErr_RestorePyErr_PrintPyErr_GivenExceptionMatchesPyString_TypePyType_IsSubtypePyInt_TypePyInt_AsLongg_quark_from_stringg_set_errorg_quark_from_static_stringPyExc_ValueErrorpyglib_register_exception_for_domainPyErr_NewExceptionPyDict_NewPyDict_SetItempyglib_main_context_newPyObject_MallocPyObject_Initg_main_context_refpyglib_option_group_transfer_grouppyglib_option_group_newpyglib_option_context_newpyglib_float_from_timevalPyFloat_FromDouble_pyglib_destroy_notify_pyglib_handler_marshalPyTuple_GetItemPyObject_CallObjectPyObject_IsTruelibgobject-2.0.so.0libgthread-2.0.so.0libpthread.so.0librt.so.1libglib-2.0.so.0libc.so.6_edata__bss_start_endlibpyglib-2.0-python.so.0GLIBC_2.1.3?si { :¤:¨9¬9°9´9¸9¼94À99Ä9FÈ9JÌ9LÜ9à9ä9è9 ì9 ð9 ô9ø9ü9::: ::::: :$: (:",:#0:$4:%8:&<:'@:*D:+H:,L:-P:.T:/X:0\:1`:2d:3h:6l:8p::t:<x:?|:A€:B„:Cˆ:GŒ:I:L”:M˜:Nœ:PU‰åSƒìè[Ã`(ƒ»àÿÿÿtè?è¦èñX[]Ãÿ³ÿ£ÿ£ héàÿÿÿÿ£héÐÿÿÿÿ£héÀÿÿÿÿ£hé°ÿÿÿÿ£h é ÿÿÿÿ£ h(éÿÿÿÿ£$h0é€ÿÿÿÿ£(h8épÿÿÿÿ£,h@é`ÿÿÿÿ£0hHéPÿÿÿÿ£4hPé@ÿÿÿÿ£8hXé0ÿÿÿÿ£<h`é ÿÿÿÿ£@hhéÿÿÿÿ£Dhpéÿÿÿÿ£Hhxéðþÿÿÿ£Lh€éàþÿÿÿ£PhˆéÐþÿÿÿ£ThéÀþÿÿÿ£Xh˜é°þÿÿÿ£\h é þÿÿÿ£`h¨éþÿÿÿ£dh°é€þÿÿÿ£hh¸épþÿÿÿ£lhÀé`þÿÿÿ£phÈéPþÿÿÿ£thÐé@þÿÿÿ£xhØé0þÿÿÿ£|hàé þÿÿÿ£€hèéþÿÿÿ£„hðéþÿÿÿ£ˆhøéðýÿÿÿ£Œhéàýÿÿÿ£héÐýÿÿÿ£”héÀýÿÿÿ£˜hé°ýÿÿÿ£œh é ýÿÿÿ£ h(éýÿÿÿ£¤h0é€ýÿÿÿ£¨h8épýÿÿÿ£¬h@é`ýÿÿÿ£°hHéPýÿÿÿ£´hPé@ýÿÿÿ£¸hXé0ýÿÿÿ£¼h`é ýÿÿÿ£Àhhéýÿÿÿ£Ähpéýÿÿÿ£Èhxéðüÿÿÿ£Ìh€éàüÿÿU‰åSƒìè[Ã%€»ØuB‹“üÿÿÿ…Òt%ƒì ‹ƒÐPèÿÿÿƒÄ붃À‰ƒÔÿÒ‹ƒÔ‹…ÒuéÆƒØ‹]üÉö¼'U‰åSƒìè[Ô$‹‹äþÿÿ…Ét‹“äÿÿÿ…Òtƒì ƒäþÿÿPÿ҃ċ]üÉÃU‰åSƒì4èÃX$ƒìÿÿ‰$èˆþÿÿ‰Eðƒ}ð…&è¦üÿÿ…À„úEä‰D$Eè‰D$Eì‰$èþÿÿ‹Eè‰$èÊþÿÿ‰Eø‹Eì…Àt!‹E싃ꉋ…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eè…Àt!‹E苃ꉋ…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä…Àt!‹E䋃ꉋ…Àu‹Eä‹@‹P‹Eä‰$ÿÒ‹Eø‰$èTûÿÿ‰Â‹ƒØÿÿÿ‹‰T$ƒìÿÿ‰D$‰ $è´ûÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…À…‹Eø‹@‹P‹Eø‰$ÿÒéò‹ƒØÿÿÿ‹ƒ@ìÿÿ‰D$‰$èŠýÿÿéÓƒgìÿÿ‰D$‹Eð‰$èýÿÿ‰Eôƒ}ôtt‹Eô‹P‹ƒøÿÿÿ9Âud‹Eô‰$è,üÿÿ‰ƒäƒsìÿÿ‰D$‹Eð‰$èÁüÿÿ‰ƒìƒìÿÿ‰D$‹Eð‰$è¦üÿÿ‰ƒðƒ‹ìÿÿ‰D$‹Eð‰$è‹üÿÿ‰ƒôëA‹ƒØÿÿÿ‹ƒœìÿÿ‰D$‰$èÙüÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒÄ4[]ÃU‰åSƒìèÕ Ã,"‹E‰$èoûÿÿ‰ƒäƒÄ[]ÃU‰åSƒìè¬ Ã"‹ƒä…Àu)ƒíìÿÿ‰D$ƒÖìÿÿ‰D$Ç$èûÿÿÇEøë ‹ƒä‹‰Eø‹EøƒÄ[]ÃU‰åSƒìèS ê!‹ƒä…Àu)ƒíìÿÿ‰D$ƒíÿÿ‰D$Ç$è¾úÿÿÇEøë‹ƒä‹…Àu ÇEøëè ûÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèè Ã?!‹ƒä…Àu"ƒíìÿÿ‰D$ƒíÿÿ‰D$Ç$èSúÿÿ닃䋅Àt ‹E‰$èúøÿÿƒÄ[]ÃU‰åSƒì$è Ãä ‹ƒä…Àu)ƒíìÿÿ‰D$ƒ2íÿÿ‰D$Ç$èøùÿÿÇEè닃䋅Àt ÇEèëjèEùÿÿ‹ƒìÿÿÿ‹…Àu Ç$è}ùÿÿ‹ƒäÇè¼úÿÿ‰ƒè‹ƒà‰Eøë‹Eø‹ÿЋEø‹@‰Eøƒ}øuꋃà‰$èøÿÿÇEè‹EèƒÄ$[]ÃU‰åSƒìèÀ à ƒ}t$èŠúÿÿ…Àu‹ƒà‹U‰T$‰$èøÿÿ‰ƒàƒÄ[]ÃU‰åSƒìè~ ÃÕè~ùÿÿƒÄ[]ÃU‰åSƒìèa ø‹E‰$è«÷ÿÿƒÄ[]ÃU‰åSƒìè> Õ‹ƒä…Àu"ƒíìÿÿ‰D$ƒHíÿÿ‰D$Ç$è©øÿÿ닃ä‹@…Àt ‹ƒä‹@ÿЃÄ[]ÃU‰åSƒìèâ Ã9‹ƒä…Àu"ƒíìÿÿ‰D$ƒ]íÿÿ‰D$Ç$èMøÿÿ닃ä‹@ …Àt ‹ƒä‹@ ÿЃÄ[]ÃU‰åSƒìè† ÃÝ‹ƒä…Àu"ƒíìÿÿ‰D$ƒtíÿÿ‰D$Ç$èñ÷ÿÿë‹“ä‹E‰B‹“ä‹E ‰B ƒÄ[]ÃU‰åSƒì4è* Ã}u,ƒ¥íÿÿ‰D$ƒ’íÿÿ‰D$Ç$è™÷ÿÿÇEØéE‹E‹…Àu ÇEØé0èÓöÿÿ‰E苃ä‹@‰E싃܅Àt0‹E‹‹‰$èëöÿÿ‹“܉D$‰$è ÷ÿÿ‰Eøƒ}øt‹Eø‰Eì‹E‹‹@‰D$ƒ³íÿÿ‰D$‹Eì‰$èéõÿÿ‰Eð‹E‹‹…Àt_‹E‹‹‰$è<øÿÿ‰$ètöÿÿ‰Eô‹Eô‰D$ƒµíÿÿ‰D$‹Eð‰$è•÷ÿÿ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu2‹Eô‹@‹P‹Eô‰$ÿÒ닃ðÿÿÿ‰D$ƒµíÿÿ‰D$‹Eð‰$èM÷ÿÿ‹E‹‹@‰$è öÿÿ‰Eô‹Eô‰D$ƒ¼íÿÿ‰D$‹Eð‰$è÷ÿÿ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹E‹‹@…ÀtX‹E‹‹@‰$è›õÿÿ‰Eô‹Eô‰D$ƒÁíÿÿ‰D$‹Eð‰$è¼öÿÿ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu2‹Eô‹@‹P‹Eô‰$ÿÒ닃ðÿÿÿ‰D$ƒÁíÿÿ‰D$‹Eð‰$ètöÿÿ‹ƒä‹P‹Eð‰D$‰$è õÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹E‰$è*ôÿÿ‹Eè‰$èÿôÿÿÇEØ‹E؃Ä4[]ÃU‰åWVSƒì<è–ÃíE؉D$E܉D$Eà‰$èÂõÿÿ‹Eà…Àu ÇEÐé™E؉D$E܉D$Eà‰$èfõÿÿ‹EÜ…Àu*‹EØ‹UÜ‹Mà‰D$‰T$‰ $è¦ôÿÿè±õÿÿÇEÐþÿÿÿéO‹EÜ…Àt‹ƒä‹@‹Uà‰D$‰$è–óÿÿ…Àu*‹EØ‹UÜ‹Mà‰D$‰T$‰ $èYôÿÿèdõÿÿÇEÐþÿÿÿé‹Eà‹ƒê‰‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒ‹EØ…Àt!‹EØ‹ƒê‰‹…Àu‹EØ‹@‹P‹E؉$ÿÒ‹EÜ“Áíÿÿ‰T$‰$èÊôÿÿ‰Eäƒ}ät,‹Eä‹P‹ƒôÿÿÿ9Ât*‹Eä‹P‹ƒôÿÿÿ‰D$‰$èùóÿÿ…ÀuƒÌíÿÿ‰Eðéï‹EÜ“µíÿÿ‰T$‰$èrôÿÿ‰Eèƒ}èt,‹Eè‹P‹ƒôÿÿÿ9ÂtU‹Eè‹P‹ƒôÿÿÿ‰D$‰$è¡óÿÿ…Àu9ƒ îÿÿ‰Eð‹Eä‹Pÿ‹E䉋Eä‹…À…‚‹Eä‹@‹P‹Eä‰$ÿÒél‹EÜ“¼íÿÿ‰T$‰$èïóÿÿ‰Eìƒ}ìt,‹Eì‹P‹ƒèÿÿÿ9Ât|‹Eì‹P‹ƒèÿÿÿ‰D$‰$èóÿÿ…Àu`ƒHîÿÿ‰Eð‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒ‹Eè‹Pÿ‹E艋Eè‹…À…Ø‹Eè‹@‹P‹Eè‰$ÿÒé‹Eä‰$èñÿÿ‰Ç‹Eì‰$èròÿÿ‰Æ‹Eè‰$èñÿÿ‰$èÍòÿÿ‰|$ ‰t$‰D$‹E‰$è†òÿÿ‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒ‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEÐÿÿÿÿër‹EÜ‹ƒê‰‹…Àu‹EÜ‹@‹P‹E܉$ÿÒƒîÿÿ‰$èùñÿÿ‰Â‹Eð‰D$ ÇD$‰T$‹E‰$è¹ñÿÿ‹ƒÜÿÿÿ‹‹Eð‰D$‰$è¢òÿÿè]òÿÿÇEÐþÿÿÿ‹EЃÄ<[^_]ÃU‰åSƒì$è´à ‹ƒä‹@ÇD$‰D$‹E‰$è òÿÿ‰Eø‹ƒÜ…Àu è§òÿÿ‰ƒÜ‹E ‰$è¦ðÿÿ‰Â‹‹Ü‹Eø‰D$‰T$‰ $è[òÿÿ‹EøƒÄ$[]ÃU‰åVSƒì è:Ñ‹³ì‹ƒì‹@‰$èXñÿÿ‰t$‰$èìðÿÿ‰Eôƒ}ôu ÇEäë‹E‰$èÏïÿÿ‰Â‹Eô‰P‹Eô‰Eä‹EäƒÄ [^]ÃU‰åƒì‹E‰Eü‹Eü‹@…Àt ÇEìë ‹EüÇ@‹Eü‹P‹Eü‰‹Eü‹@‰Eì‹EìÉÃU‰åVSƒì è‹Ã⋳ð‹ƒð‹@‰$è©ðÿÿ‰t$‰$è=ðÿÿ‰Eôƒ}ôu ÇEäë#‹Uô‹E‰B‹EôÇ@ ‹EôÇ@‹Eô‰Eä‹EäƒÄ [^]ÃU‰åVSƒì èÃm‹³ô‹ƒô‹@‰$è4ðÿÿ‰t$‰$èÈïÿÿ‰Eôƒ}ôu ÇEäë‹Eô‹U‰P ‹EôÇ@‹Eô‰Eä‹EäƒÄ [^]ÃU‰åSƒì$è¬Ã‹EPÛ$d$‹E PÛ$d$݃ÈîÿÿÞÉÞÁÝ]ðÝEðÝ$è3îÿÿƒÄ$[]ÃU‰åSƒì$èfý‹E‰Eô‹ƒä…Àu"ƒíìÿÿ‰D$ƒ†îÿÿ‰D$Ç$èËîÿÿë:è$îÿÿ‰Eø‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰$è?îÿÿƒÄ$[]ÃU‰åVSƒì èáÃ8ƒ}u,ƒµîÿÿ‰D$ƒîÿÿ‰D$Ç$èPîÿÿÇEäéŸèŸíÿÿ‰Eô‹E‰EèÇD$‹Eè‰$èCïÿÿ‰ÆÇD$‹Eè‰$è.ïÿÿ‰t$‰$è’îÿÿ‰Eìƒ}ìuèäîÿÿÇEðë5‹Eì‰$èÐìÿÿ‰Eð‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eô‰$è[íÿÿ‹Eð‰Eä‹EäƒÄ [^]Ë$ÃU‰åVSè[ÃFƒØþÿÿPü‹@üƒøÿt‰Ö¶¿ÿЋFüƒîƒøÿuó[^]ÃU‰åSƒìè[ÃèäîÿÿZ[]Ãglibcould not import glib (error was: %s)could not import glib (no error given)_PyGLib_APIMainContextOptionGroupOptionContextcould not import glib (could not find _PyGLib_API object)pyglib_threads_enabled_PyGLib_API != NULLpyglib_gil_state_ensurepyglib_gil_state_releasepyglib_enable_threadspyglib_block_threadspyglib_unblock_threadspyglib_set_thread_block_funcspyglib_error_checkerror != NULLzdomaincodemessageglib.GError instances must have a 'message' string attributeglib.GError instances must have a 'domain' string attributeglib.GError instances must have a 'code' int attributepyglib_pyglib_destroy_notify_pyglib_handler_marshaluser_data != NULLíµ ÷ư>ÿÿÿÿÿÿÿÿëÿ#.?a d Ä%´0 ‡ Ð9ˆÜ|`þÿÿo\ÿÿÿoðÿÿo¸úÿÿo¸8ªºÊÚêú *:JZjzŠšªºÊÚêú *:JZjzŠšªºÊÚêú *:JZjzŠšª :°8GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2.symtab.strtab.shstrtab.hash.dynsym.dynstr.gnu.version.gnu.version_r.rel.dyn.rel.plt.init.text.fini.rodata.eh_frame.ctors.dtors.jcr.dynamic.got.got.plt.data.bss.comment´´\!  )00‡1ÿÿÿo¸¸¤>þÿÿo\\ M ||`V Ü܈ _dd/Z”” eÀÀkÄ%Ä%qà%à%Ày ( (ƒ¤8¤(Ь8¬(‘´8´(–¸8¸(ðŸ¨9¨)(¤Ð9Ð)Э : *³¨:¨* ¸¨*Z+ÁÔ/8 d8›¤8¬8´8*À @¨:O¤:V0 b¨8o°8| ( Š´8–€% ¬¬:¼´:ȼ:ÝÀ:òÄ: ¦& #Ñ& =é& W°:q' ‹¸:§' Á-' ÛD' õb' V( )m( CÐ9ñÿY :fy% }¸8ñÿ´0¸\|Üd” À Ä% à%  ( ¤8¬8´8¸8¨9Ð9 :¨:†l, ’¤¶#Ãá"u Ûì û "-0Ä% 6S/\ hx”Ÿï ¼V#k ÖÕä ô#6WE2"k ]$„ tk ŒŸ¯ÃÒ…[ ë # k&4A`Zn¹!y “‹\ ª»„ÇÕð/CS_yÁ#F “ª¨:ñÿ¶ÍÜï‹$î àÍ )˜) >TÈ:ñÿYm}ç\ «"D ÎÜÁY ó¨:ñÿú  ­B >Ú"Ziwd}ˆC’ __CTOR_LIST____DTOR_LIST____JCR_LIST____do_global_dtors_auxcompleted.5958p.5956frame_dummy__CTOR_END____DTOR_END____FRAME_END____JCR_END____do_global_ctors_auxexception_table_PyGLib_API_PyGMainContext_Type_PyGOptionGroup_Type_PyGOptionContext_Type__PRETTY_FUNCTION__.14271__PRETTY_FUNCTION__.14281__PRETTY_FUNCTION__.14295thread_enabling_callbacks__PRETTY_FUNCTION__.14308pyglib_thread_state_tls_key__PRETTY_FUNCTION__.14352__PRETTY_FUNCTION__.14366__PRETTY_FUNCTION__.14381__PRETTY_FUNCTION__.14395__PRETTY_FUNCTION__.14701__PRETTY_FUNCTION__.14721_GLOBAL_OFFSET_TABLE___dso_handle__i686.get_pc_thunk.bx_DYNAMICpyglib_initPyExc_ImportErrorPyString_AsStringg_slist_freepyglib_option_group_newPyExc_ValueError__gmon_start___Jv_RegisterClassesPyGILState_Releaseg_clear_error_fini_PyObject_CallFunction_SizeTpyglib_block_threadsPyObject_IsTruePyErr_GivenExceptionMatchesPyInt_Typepyglib_gil_state_ensure_py23pyglib_option_context_newpyglib_gerror_exception_checkPyErr_FormatPyFloat_FromDoublePyErr_Occurredg_main_context_refg_slist_appendpyglib_main_context_new_pyglib_destroy_notifypyglib_gil_state_ensurePyEval_InitThreadsPyErr_SetObjectPyString_FromStringPyInt_FromLongpyglib_gil_state_releasepyglib_gil_state_release_py23g_thread_initPyDict_GetItemPyErr_RestorePyInt_AsLongg_return_if_fail_warningPyCObject_AsVoidPtrpyglib_register_exception_for_domainpyglib_unblock_threadsPyType_IsSubtypeg_set_errorPyObject_Initg_quark_from_static_stringg_quark_from_stringPyGILState_EnsurePyErr_NormalizeExceptionPyObject_CallObjectPyObject_MallocPyErr_Fetchg_threads_got_initializedpyglib_float_from_timevalPyObject_GetAttrString__bss_startPyObject_SetAttrString_Py_NoneStructPyErr_NewException_pyglib_handler_marshalPyErr_Printpyglib_enable_threadspyglib_init_internalPyImport_ImportModule_endPyThread_create_keyPyTuple_GetItemPyErr_SetStringpyglib_set_thread_block_funcspyglib_option_group_transfer_groupPyString_Typepyglib_threads_enabled_edatag_quark_to_stringPyCObject_Type_pyglib_notify_on_enabling_threads__cxa_finalize@@GLIBC_2.1.3PyDict_SetItemPyObject_Repr_initPyDict_Newpyglib_error_check./pygobject-2.20.0-i686/usr/lib/libpyglib-2.0-python.so.00000777000000000000000000000000011272036714025545 2libpyglib-2.0-python.so.0.0.0ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/0000755000000000000000000000000011272036676016245 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/0000755000000000000000000000000011272036714020756 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/pygtk.py0000644000000000000000000000562611272036655022503 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # pygtk - Python bindings for the GTK+ widget set. # Copyright (C) 1998-2002 James Henstridge # # pygtk.py: pygtk version selection code. # # This library is free software; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public License # along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA import fnmatch import glob import os import os.path import sys __all__ = ['require'] _our_dir = os.path.dirname(os.path.abspath(os.path.normpath(__file__))) _pygtk_2_0_dir = os.path.normpath('%s/gtk-2.0' % _our_dir) _pygtk_dir_pat = 'gtk-[0-9].[0-9]' _pygtk_required_version = None def _get_available_versions(): versions = {} for dir in sys.path: if not dir: dir = os.getcwd() if not os.path.isdir(dir): continue # if the dir is a pygtk dir, skip it if fnmatch.fnmatchcase(os.path.basename(dir), _pygtk_dir_pat): continue for filename in glob.glob(os.path.join(dir, _pygtk_dir_pat)): pathname = os.path.join(dir, filename) # skip non directories if not os.path.isdir(pathname): continue # skip empty directories if not os.listdir(pathname): continue if not versions.has_key(filename[-3:]): versions[filename[-3:]] = pathname return versions def require20(): if _pygtk_2_0_dir not in sys.path: sys.path.insert(0, _pygtk_2_0_dir) def require(version): if version == '2.0': return require20() global _pygtk_required_version if _pygtk_required_version != None: assert _pygtk_required_version == version, \ "a different version of gtk was already required" return assert not sys.modules.has_key('gtk'), \ "pygtk.require() must be called before importing gtk" versions = _get_available_versions() assert versions.has_key(version), \ "required version '%s' not found on system" % version # remove any pygtk dirs first ... for dir in sys.path: if fnmatch.fnmatchcase(os.path.basename(dir), _pygtk_dir_pat): sys.path.remove(dir) # prepend the pygtk path ... sys.path.insert(0, versions[version]) _pygtk_required_version = version ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/0000755000000000000000000000000011272036713022037 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/glib/0000755000000000000000000000000011272036676022764 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/glib/_glib.la0000755000000000000000000000206611272036635024360 0ustar rootroot# _glib.la - a libtool library file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='_glib.so' # Names of this library. library_names='_glib.so _glib.so _glib.so' # The name of the static archive. old_library='' # Linker flags that can not go in dependency_libs. inherited_linker_flags=' -pthread' # Libraries that this one depends upon. dependency_libs=' /usr/lib/libpyglib-2.0-python.la /usr/lib/libgobject-2.0.la /usr/lib/libgthread-2.0.la -lpthread -lrt /usr/lib/libglib-2.0.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for _glib. current=0 age=0 revision=0 # Is this an already installed library? installed=yes # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/lib/python2.5/site-packages/gtk-2.0/glib' ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/glib/__init__.py0000644000000000000000000000174411272036635025076 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # pygobject - Python bindings for the GObject library # Copyright (C) 2006-2008 Johan Dahlin # # glib/__init__.py: initialisation file for glib module # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA from glib._glib import * _PyGLib_API = _glib._PyGLib_API del _glib ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/glib/_glib.so0000755000000000000000000022470211272036676024415 0ustar rootrootELFà@4Dæ4 (dÐdÐdÐdàdàDXxÐxàxàøøQåtdÅÑ|µ/[!#ÀºË"δ3ƒÃ§:¯¼yͬg=‹­«G•FŒ~’ªl7±‡ N.£Ç&² Ÿ_¨¶“ŽÂfvÊhY9]¾Ì`¤¥dÉ)¦$–Å‚RÐ;‘Ox˜½žT¹—…k›¡·aBÆ{rϰSˆVœe»czÁ¿4 5 *8+?E%I2 WQK>0,iJZ\-XpUm 6n'q P<ou†”s€™H1L}‰j^MA©šb®Š(³¢„¸@wÄDÈCt¿;e™hé¶¾ÞŠ—c ñ ªÈÛ­ÀÝ ]Î Þeÿ± Z‹ #LÛËu Ö ‰—á|u— ÿí  +‘/&RåBÝ býä–9­ %#À\T?}ûU9 kÅ ‰«¿ äêÒ_þlu ¸¶ü% UI‚€&P mª‘ ° ÁÕw  k;„SÆÐkE Ém Ã; øí¹ô +«¢N«z V^Ò ‰¹n¯ç d[$ $ 3 4{GÌ`ëo£·`÷î¹ ôû‘\y` §Øq6Žyç  ŠG¾^ ȨP{ 36ì eæAÐ \ÙF`dÔ€ 19Öä •UX p*° È †  Rî¹w ‰ô ¹hCÝ ‘})j¶˜ d`"e £«éܰ ¿ÁbT ~;€¶ E _þ V r‚ Eè€5 ôO DÆf^ æ JÊ œ¹ [kó¥ž\2Š ¹û YND @ ¡Vø¦ 5œ,fU O « º@ÄÚ"DÿI2[&’m Z¿’__gmon_start____cxa_finalize_Jv_RegisterClassesPyDict_SizePyExc_TypeErrorPyErr_SetStringPyDict_NextPyString_TypePyType_IsSubtypePyString_AsStringstrcmpPyInt_AsLongPyErr_OccurredPyErr_ClearPyExc_ValueErrorPyTuple_SizePySequence_GetSlice_PyArg_ParseTuple_SizeTPyCallable_Check_Py_BuildValue_SizeT_pyglib_destroy_notify_pyglib_handler_marshalg_idle_add_fullPyInt_FromLongg_timeout_add_fullg_timeout_add_seconds_fullg_return_if_fail_warningpyglib_gil_state_ensurePyTuple_GetItemPySequence_ConcatPyObject_CallObjectPyErr_Print_Py_NoneStructPyExc_WarningPyErr_WarnExPyObject_IsTruepyglib_gil_state_releasePyObject_AsFileDescriptorg_io_channel_unix_newg_io_add_watch_fullg_io_channel_unrefg_source_removePyBool_FromLongg_main_context_defaultpyglib_main_context_new_PyObject_CallFunction_SizeTg_slice_free1_PyArg_ParseTupleAndKeywords_SizeTg_slice_allocg_child_watch_add_fullg_markup_escape_textPyString_FromStringg_freeg_get_current_timepyglib_float_from_timevalg_get_user_cache_dirg_get_user_config_dirg_get_user_data_dirg_get_user_special_dirg_main_depthg_filename_display_namestrlenPyUnicodeUCS2_DecodeUTF8g_filename_display_basenameg_filename_from_utf8pyglib_error_checkPyString_FromStringAndSizeg_get_application_namePyObject_ReprPyErr_Formatg_set_application_nameg_get_prgnameg_set_prgnamePyCObject_FromVoidPtrPyDict_SetItemStringpyglib_init_internalPyDict_NewPyExc_RuntimeErrorPyErr_NewExceptionglib_micro_versionglib_minor_versionglib_major_versionPyModule_AddIntConstantPyModule_AddStringConstantg_option_error_quarkg_quark_to_stringinit_glibPy_InitModule4PyModule_GetDictg_io_channel_read_linePyExc_StopIterationPyObject_Free_Py_TrueStructg_io_channel_shutdowng_io_channel_set_buffer_sizeg_io_channel_get_buffer_sizeg_io_channel_set_bufferedg_io_channel_get_bufferedg_io_channel_set_encodingg_io_channel_get_encoding_PyString_Resizepyglib_unblock_threadsg_io_channel_read_charspyglib_block_threadsg_io_channel_write_charsPyObject_GetIterPyIter_NextPyErr_ExceptionMatchesPyString_AsStringAndSizeg_io_channel_flushg_io_channel_set_flagsg_io_channel_get_flagsg_io_channel_get_buffer_conditiong_io_channel_set_close_on_unrefg_io_channel_get_close_on_unref_Py_ZeroStructPyLong_FromUnsignedLongPyList_NewPyList_Appendg_io_channel_seek_positiong_io_channel_new_filePyType_GenericAllocPyType_GenericNewPyType_Readyg_option_context_newg_option_context_freePyList_TypePyList_Sizeg_mallocPyList_GetItemg_strdupg_strfreevg_strdupvpyglib_threads_enabledPyEval_SaveThreadg_option_context_parsePyEval_RestoreThreadg_strv_lengthPyList_SetItemg_option_context_set_help_enabledg_option_context_get_help_enabledg_option_context_set_ignore_unknown_optionsg_option_context_get_ignore_unknown_optionsPyObject_IsInstancepyglib_option_group_transfer_groupg_option_context_set_main_groupg_option_context_add_groupg_slist_foreachg_slist_freeg_option_group_newg_option_group_freepyglib_gerror_exception_checkg_malloc0PyTuple_Typeg_slist_prependg_option_group_add_entriesg_option_group_set_translation_domaing_main_context_newg_main_context_unrefg_main_context_iterationg_main_context_pendingPyErr_CheckSignalsPyExc_KeyboardInterruptPyErr_SetNoneg_main_loop_quitPyThread_get_key_valueg_assertion_messagecloseg_source_newg_main_loop_newg_source_attachg_source_unrefg_source_destroyg_main_loop_unrefg_main_loop_get_contextg_main_loop_is_runningg_main_loop_runPyThread_create_keyPyThread_delete_key_valueg_main_loop_refPyThread_set_key_valueg_source_get_contextg_snprintfg_source_set_callbackg_source_add_pollg_source_remove_pollg_source_get_current_timePyFloat_FromDoubleg_source_get_priorityPyInt_Typeg_source_set_priorityg_source_get_can_recurseg_source_set_can_recurseg_source_get_idPyObject_ClearWeakRefsPyObject_GC_UnTrackPyObject_GC_Del_PyObject_CallMethod_SizeTPyObject_GetAttrStringg_idle_source_newg_timeout_source_newPyString_FromFormatg_spawn_close_pidPyObject_MallocPyObject_InitPySequence_CheckPySequence_Sizeg_spawn_async_with_pipeslibpyglib-2.0-python.so.0libgobject-2.0.so.0libgthread-2.0.so.0libpthread.so.0librt.so.1libglib-2.0.so.0libc.so.6_glib.soGLIBC_2.0GLIBC_2.1.3b ii ¡Žsi «ii ¡˜á á¤á¬á¼áÄáÈáÌáäáìáååå åååå$å@åDåLåPåTå\å`ådålåpåtå|å€å„åŒåå”åœå å¤å¬å°å´å¼åÀåÄåÌåÐåÔåàåäåðåôåææææ æ$æ0æ4æ@æDæPæTæ`ædæpætæ€æ„ææ”æÌæ€çˆçç˜ç ç¨ç°ç¸çÀçÈçÌçÐçÔçÜçäçìçðçè@èDèPèTè`èdèpètè€è„èè”è è¤è°è´èÀèÄèÐèÔèàèäèðèôèéééé é$é0é4é@éDéPéTé`édépétéé”é˜é¬é`êhêpêxê€ê ê¤ê°ê´êÀêÄêÐêÔêàêäêðêôêëëëë ë$ëLëììì ììì@ìDìPìTìŒì@íDíPíTí€í„íˆíŒí¬í`îdî€î„îî”î î¤î°î´îìî ï¨ï°ïÀïÄïÐïÔïàïäïðïôïðððð ð$ð@ðDðTðXð\ðhðlðpð|ð€ð¤ð¨ð¬ð°ðÌð€ñ¬ñ`òdòŒò@óTóhóó”ó¬ó`ôdô€ô„ôˆôŒôô”ô˜ôœô ôpátáxá|á€á „áˆáŒáá'”á,œá1¨áH°áM´áQ¸á[ÀáhÐá…Ôá†ØáŠÜáàá¡èá¶ðáÄôáÇââ ââââ â â $â (â,â0â4â8â<â@âDâHâLâPâTâXâ\â`âdâhâ lâ!pâ"tâ#xâ$|â%€â&„â(ˆâ)Œâ*â+”â-˜â.œâ/ â0¤â2¨â3¬â4°â5´â6¸â7¼â8Àâ9Äâ:Èâ;Ìâ<Ðâ=Ôâ>Øâ?Üâ@àâAäâBèâCìâDðâEôâFøâGüâIãJãKãL ãNãOãPãRãS ãT$ãU(ãV,ãW0ãY4ãZ8ã\<ã]@ã^Dã_Hã`LãaPãbTãcXãd\ãe`ãfdãghãilãjpãktãlxãm|ãn€ão„ãpˆãqŒãrãs”ãt˜ãuœãv ãw¤ãx¨ãy¬ãz°ã{´ã|¸ã}¼ã~ÀãÄã€ÈãÌã‚ÐãƒÔã„Øã‡Üãˆàã‰äã‹èãŒìãðãŽôãøã‘üã’ä“ä”ä• ä–ä—ä˜ä™äš ä›$äœ(ä,äž0äŸ4ä 8ä¢<ä£@ä¤Dä¥Hä¦Lä§Pä¨Tä©Xäª\ä«`ä¬dä­hä®lä¯pä°tä±xä²|䳀䴄䵈䷌ä¸ä¹”亘仜传佤侨俬äÀ°äÁ´ä¸äüäÅÀäÆÄäÇÈäÈÌäÉÐäÊÔäËØäÌÜäÍàäÎääÏèäÐU‰åSƒìè[Ãô¬ƒ»ÿÿÿtèè2 èzX[]Ãÿ³ÿ£ÿ£ héàÿÿÿÿ£héÐÿÿÿÿ£héÀÿÿÿÿ£hé°ÿÿÿÿ£h é ÿÿÿÿ£ h(éÿÿÿÿ£$h0é€ÿÿÿÿ£(h8épÿÿÿÿ£,h@é`ÿÿÿÿ£0hHéPÿÿÿÿ£4hPé@ÿÿÿÿ£8hXé0ÿÿÿÿ£<h`é ÿÿÿÿ£@hhéÿÿÿÿ£Dhpéÿÿÿÿ£Hhxéðþÿÿÿ£Lh€éàþÿÿÿ£PhˆéÐþÿÿÿ£ThéÀþÿÿÿ£Xh˜é°þÿÿÿ£\h é þÿÿÿ£`h¨éþÿÿÿ£dh°é€þÿÿÿ£hh¸épþÿÿÿ£lhÀé`þÿÿÿ£phÈéPþÿÿÿ£thÐé@þÿÿÿ£xhØé0þÿÿÿ£|hàé þÿÿÿ£€hèéþÿÿÿ£„hðéþÿÿÿ£ˆhøéðýÿÿÿ£Œhéàýÿÿÿ£héÐýÿÿÿ£”héÀýÿÿÿ£˜hé°ýÿÿÿ£œh é ýÿÿÿ£ h(éýÿÿÿ£¤h0é€ýÿÿÿ£¨h8épýÿÿÿ£¬h@é`ýÿÿÿ£°hHéPýÿÿÿ£´hPé@ýÿÿÿ£¸hXé0ýÿÿÿ£¼h`é ýÿÿÿ£Àhhéýÿÿÿ£Ähpéýÿÿÿ£Èhxéðüÿÿÿ£Ìh€éàüÿÿÿ£ÐhˆéÐüÿÿÿ£ÔhéÀüÿÿÿ£Øh˜é°üÿÿÿ£Üh é üÿÿÿ£àh¨éüÿÿÿ£äh°é€üÿÿÿ£èh¸épüÿÿÿ£ìhÀé`üÿÿÿ£ðhÈéPüÿÿÿ£ôhÐé@üÿÿÿ£øhØé0üÿÿÿ£ühàé üÿÿÿ£hèéüÿÿÿ£hðéüÿÿÿ£høéðûÿÿÿ£ héàûÿÿÿ£héÐûÿÿÿ£héÀûÿÿÿ£hé°ûÿÿÿ£h é ûÿÿÿ£ h(éûÿÿÿ£$h0é€ûÿÿÿ£(h8épûÿÿÿ£,h@é`ûÿÿÿ£0hHéPûÿÿÿ£4hPé@ûÿÿÿ£8hXé0ûÿÿÿ£<h`é ûÿÿÿ£@hhéûÿÿÿ£Dhpéûÿÿÿ£Hhxéðúÿÿÿ£Lh€éàúÿÿÿ£PhˆéÐúÿÿÿ£ThéÀúÿÿÿ£Xh˜é°úÿÿÿ£\h é úÿÿÿ£`h¨éúÿÿÿ£dh°é€úÿÿÿ£hh¸épúÿÿÿ£lhÀé`úÿÿÿ£phÈéPúÿÿÿ£thÐé@úÿÿÿ£xhØé0úÿÿÿ£|hàé úÿÿÿ£€hèéúÿÿÿ£„hðéúÿÿÿ£ˆhøéðùÿÿÿ£Œhéàùÿÿÿ£héÐùÿÿÿ£”héÀùÿÿÿ£˜hé°ùÿÿÿ£œh é ùÿÿÿ£ h(éùÿÿÿ£¤h0é€ùÿÿÿ£¨h8épùÿÿÿ£¬h@é`ùÿÿÿ£°hHéPùÿÿÿ£´hPé@ùÿÿÿ£¸hXé0ùÿÿÿ£¼h`é ùÿÿÿ£Àhhéùÿÿÿ£Ähpéùÿÿÿ£Èhxéðøÿÿÿ£Ìh€éàøÿÿÿ£ÐhˆéÐøÿÿÿ£ÔhéÀøÿÿÿ£Øh˜é°øÿÿÿ£Üh é øÿÿÿ£àh¨éøÿÿÿ£äh°逸ÿÿÿ£èh¸épøÿÿÿ£ìhÀé`øÿÿÿ£ðhÈéPøÿÿÿ£ôhÐé@øÿÿÿ£øhØé0øÿÿÿ£ühàé øÿÿÿ£hèéøÿÿÿ£hðéøÿÿÿ£høéð÷ÿÿÿ£ héà÷ÿÿÿ£héÐ÷ÿÿÿ£héÀ÷ÿÿÿ£hé°÷ÿÿÿ£h é ÷ÿÿÿ£ h(é÷ÿÿÿ£$h0é€÷ÿÿÿ£(h8ép÷ÿÿÿ£,h@é`÷ÿÿÿ£0hHéP÷ÿÿÿ£4hPé@÷ÿÿÿ£8hXé0÷ÿÿÿ£<h`é ÷ÿÿÿ£@hhé÷ÿÿÿ£Dhpé÷ÿÿÿ£Hhxéðöÿÿÿ£Lh€éàöÿÿÿ£PhˆéÐöÿÿÿ£ThéÀöÿÿÿ£Xh˜é°öÿÿÿ£\h é öÿÿÿ£`h¨éöÿÿÿ£dh°é€öÿÿÿ£hh¸épöÿÿÿ£lhÀé`öÿÿÿ£phÈéPöÿÿÿ£thÐé@öÿÿÿ£xhØé0öÿÿÿ£|hàé öÿÿÿ£€hèéöÿÿÿ£„hðéöÿÿÿ£ˆhøéðõÿÿÿ£Œhéàõÿÿÿ£héÐõÿÿÿ£”héÀõÿÿÿ£˜hé°õÿÿÿ£œh é õÿÿÿ£ h(éõÿÿÿ£¤h0é€õÿÿÿ£¨h8épõÿÿÿ£¬h@é`õÿÿÿ£°hHéPõÿÿÿ£´hPé@õÿÿÿ£¸hXé0õÿÿÿ£¼h`é õÿÿÿ£Àhhéõÿÿÿ£Ähpéõÿÿÿ£Èhxéðôÿÿÿ£Ìh€éàôÿÿÿ£ÐhˆéÐôÿÿÿ£ÔhéÀôÿÿÿ£Øh˜é°ôÿÿÿ£Üh é ôÿÿÿ£àh¨éôÿÿÿ£äh°é€ôÿÿÿ£èh¸épôÿÿÿ£ìhÀé`ôÿÿÿ£ðhÈéPôÿÿU‰åSƒìè[à ¡€»°uB‹“üÿÿÿ…Òt%ƒì ‹ƒPè#ÿÿÿƒÄ붃À‰ƒ ÿÒ‹ƒ ‹…ÒuéÆƒ°‹]üÉö¼'U‰åSƒìè[Ü ‹‹|þÿÿ…Ét‹“”ÿÿÿ…Òtƒì ƒ|þÿÿPÿ҃ċ]üÉÃU‰åSƒì$èSÃ` ƒ} u ÇEèéU‹E ‰$èmøÿÿ‰Eøƒ}øu ÇEèé5ƒ}øt&‹ƒœÿÿÿ‹ƒ¨Íÿÿ‰D$‰$èØüÿÿÇEèÿÿÿÿé ÇEôEì‰D$ Eð‰D$Eô‰D$‹E ‰$èÅõÿÿ‹Eð‹P‹ƒðÿÿÿ9ÂtB‹Eð‹P‹ƒðÿÿÿ‰D$‰$è­øÿÿ…Àu&‹ƒœÿÿÿ‹ƒÐÍÿÿ‰D$‰$è_üÿÿÇEèÿÿÿÿé‹Eð‰$èøòÿÿ‰ÂƒöÍÿÿ‰D$‰$èTýÿÿ…Àt#‹ƒœÿÿÿ‹ƒÎÿÿ‰D$‰$èüÿÿÇEèÿÿÿÿëJ‹Eì‰$èÂ÷ÿÿ‰Â‹E‰èöõÿÿ…Àt(è-ûÿÿ‹ƒŒÿÿÿ‹ƒ*Îÿÿ‰D$‰$èÓûÿÿÇEèÿÿÿÿëÇEè‹EèƒÄ$[]ÃU‰åSƒì4èÑÃÞžÇEìÇEàÈ‹E ‰$è¿úÿÿ‰Eôƒ}ô&‹ƒœÿÿÿ‹ƒHÎÿÿ‰D$‰$èlûÿÿÇEØé€ÇD$ÇD$‹E ‰$èeúÿÿ‰EèEä‰D$ƒnÎÿÿ‰D$‹Eè‰$èVóÿÿ…Àu3‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEØé‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä‰$è=üÿÿ…Àu&‹ƒœÿÿÿ‹ƒyÎÿÿ‰D$‰$èŸúÿÿÇEØé³‹E‰D$Eà‰$èEýÿÿ…Ày ÇEØé‘‹Eô‰D$ÇD$‹E ‰$èwùÿÿ‰Eìƒ}ìu ÇEØëe‹Uä‹Eì‰D$‰T$ƒ•Îÿÿ‰$èùûÿÿ‰Eðƒ}ðu ÇEØë7‹Uà‹ƒ°ÿÿÿ‰D$ ‹Eð‰D$‹ƒäÿÿÿ‰D$‰$è±øÿÿ‰Eø‹Eø‰$èãôÿÿ‰EØ‹E؃Ä4[]ÃU‰åSƒìDèîÃûœÇEìÇEà‹E ‰$èÜøÿÿ‰Eôƒ}ô&‹ƒœÿÿÿ‹ƒœÎÿÿ‰D$‰$è‰ùÿÿÇEØéŽÇD$ÇD$‹E ‰$è‚øÿÿ‰EèEä‰D$ E܉D$ƒÁÎÿÿ‰D$‹Eè‰$èlñÿÿ…Àu3‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEØé‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä‰$èSúÿÿ…Àu&‹ƒœÿÿÿ‹ƒÐÎÿÿ‰D$‰$èµøÿÿÇEØéº‹E‰D$Eà‰$è[ûÿÿ…Ày ÇEØé˜‹Eô‰D$ÇD$‹E ‰$è÷ÿÿ‰Eìƒ}ìu ÇEØël‹Uä‹Eì‰D$‰T$ƒ•Îÿÿ‰$èúÿÿ‰Eðƒ}ðu ÇEØë>‹UÜ‹Mà‹ƒ°ÿÿÿ‰D$‹Eð‰D$ ‹ƒäÿÿÿ‰D$‰T$‰ $è óÿÿ‰Eø‹Eø‰$èòòÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒìDèýà ›ÇEìÇEà‹E ‰$èëöÿÿ‰Eôƒ}ô&‹ƒœÿÿÿ‹ƒðÎÿÿ‰D$‰$è˜÷ÿÿÇEØéŽÇD$ÇD$‹E ‰$è‘öÿÿ‰EèEä‰D$ E܉D$ƒÏÿÿ‰D$‹Eè‰$è{ïÿÿ…Àu3‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEØé‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä‰$èbøÿÿ…Àu&‹ƒœÿÿÿ‹ƒÐÎÿÿ‰D$‰$èÄöÿÿÇEØéº‹E‰D$Eà‰$èjùÿÿ…Ày ÇEØé˜‹Eô‰D$ÇD$‹E ‰$èœõÿÿ‰Eìƒ}ìu ÇEØël‹Uä‹Eì‰D$‰T$ƒ•Îÿÿ‰$èøÿÿ‰Eðƒ}ðu ÇEØë>‹UÜ‹Mà‹ƒ°ÿÿÿ‰D$‹Eð‰D$ ‹ƒäÿÿÿ‰D$‰T$‰ $èoöÿÿ‰Eø‹Eø‰$èñÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4è Ùƒ}u,ƒDÏÿÿ‰D$ƒ4Ïÿÿ‰D$Ç$èñÿÿÇEØémè ðÿÿ‰Eà‹E‰EäÇD$‹Eä‰$è`õÿÿ‰EèÇD$‹Eä‰$èJõÿÿ‰Â‹E ‰D$‰T$ƒVÏÿÿ‰$è/÷ÿÿ‰EìÇD$‹Eä‰$èõÿÿ‰D$‹Eì‰$èÚïÿÿ‰Eð‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eð‰D$‹Eè‰$è¾ñÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒ}ôuè9óÿÿÇEøëk‹ƒàÿÿÿ9Eôu+‹ƒØÿÿÿ‹ÇD$ƒ\Ïÿÿ‰D$‰$è3ñÿÿ…Àtèúòÿÿ‹Eô‰$èíÿÿ‰Eø‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eà‰$èŠïÿÿ‹Eø‰EØ‹E؃Ä4[]ÃU‰åSƒìTèRÃ_—ÇEäÇEÔ‹E ‰$è@óÿÿ‰Eðƒ}ð&‹ƒœÿÿÿ‹ƒ Ïÿÿ‰D$‰$èíóÿÿÇEÈéáÇD$ÇD$‹E ‰$èæòÿÿ‰EàE؉D$EЉD$ E܉D$ƒÆÏÿÿ‰D$‹Eà‰$èÉëÿÿ…Àu3‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒÇEÈéb‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒ‹E܉$èàëÿÿ‰Eìƒ}ìy ÇEÈé‹E؉$èôÿÿ…Àu&‹ƒœÿÿÿ‹ƒ×Ïÿÿ‰D$‰$èòòÿÿÇEÈéæ‹E‰D$EÔ‰$è˜õÿÿ…Ày ÇEÈéÄ‹Eð‰D$ÇD$‹E ‰$èÊñÿÿ‰Eäƒ}äu ÇEÈé•‹UÜ‹MØ‹Eä‰D$ ‰T$‰L$ƒóÏÿÿ‰$èBôÿÿ‰Eèƒ}èu ÇEÈë`‹Eì‰$èÕéÿÿ‰Eô‹EЉ‹MÔ‹ƒ°ÿÿÿ‰D$‹Eè‰D$ƒÛfÿÿ‰D$ ‰T$‰L$‹Eô‰$èüèÿÿ‰Eø‹Eô‰$è^ñÿÿ‹Eø‰$èíÿÿ‰EÈ‹EȃÄT[]ÃU‰åSƒì$èÕEø‰D$ƒùÏÿÿ‰D$‹E ‰$èùéÿÿ…Àu ÇEèë‹Eø‰$èAïÿÿ‰$èééÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè´ÃÁ”è–íÿÿ‰$è¾ëÿÿƒÄ[]ÃU‰åSƒì$èÜ”‹E‰Eðè»ëÿÿ‰Eø‹Eð‹@…Àt4‹Eð‹P‹Eð‹‰T$‹E ‰D$ ‹E‰D$ƒ Ðÿÿ‰D$‰ $èŸéÿÿ‰Eôë(‹Eð‹‹E ‰D$ ‹E‰D$ƒ Ðÿÿ‰D$‰$èuéÿÿ‰Eôƒ}ôt)‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒëè.ïÿÿ‹Eø‰$èóëÿÿƒÄ$[]ÃU‰åSƒì$èÄÃÑ“‹E‰Eø‹Eø‹‹ƒê‰‹…Àu‹Eø‹‹@‹P‹Eø‹‰$ÿÒ‹Eø‹@…Àt*‹Eø‹@‹ƒê‰‹…Àu‹Eø‹@‹@‹P‹Eø‹@‰$ÿÒ‹Eø‰D$Ç$è‡ñÿÿƒÄ$[]ÃU‰åSƒìDè8ÃE“ÇEðÇEäEð‰D$Eä‰D$Eè‰D$Eì‰D$ƒ‰D$ ƒ"Ðÿÿ‰D$‹E‰D$‹E ‰$èðÿÿ…Àu ÇEØé¶‹Eè‰$è$ñÿÿ…Àu&‹ƒœÿÿÿ‹ƒ@Ðÿÿ‰D$‰$è†ïÿÿÇEØéÇ$èÎëÿÿ‰Eø‹Uè‹Eø‰‹Uä‹Eø‰P‹Eø‹‹ƒÀ‰‹Eø‹@…Àt ‹Eø‹P‹ƒÀ‰‹Uì‹Mðƒ#lÿÿ‰D$‹Eø‰D$ ƒXkÿÿ‰D$‰T$‰ $èJíÿÿ‰Eô‹Eô‰$èüéÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4èÃ’Eì‰D$Eð‰D$ƒ$‰D$ ƒ|Ðÿÿ‰D$‹E‰D$‹E ‰$èzïÿÿ…Àu ÇEèë4‹Eì‹Uð‰D$‰$èÛæÿÿ‰Eô‹Eô‰$èMéÿÿ‰Eø‹Eô‰$èßäÿÿ‹Eø‰Eè‹EèƒÄ4[]ÃU‰åSƒì$èwÄ‘Eô‰$ècîÿÿ‹Eô‹Uø‰$‰T$è‘ëÿÿƒÄ$[]ÃU‰åSƒì$èBÃO‘è”îÿÿ‰Eøƒ}øt‹Eø‰$èÐèÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èí Ãúè_éÿÿ‰Eøƒ}øt‹Eø‰$è{èÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è˜ Ã¥èêëÿÿ‰Eøƒ}øt‹Eø‰$è&èÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èC ÃPEô‰D$ƒ,‰D$ ƒ¡Ðÿÿ‰D$‹E‰D$‹E ‰$è½íÿÿ…Àu ÇEèë@‹Eô‰$èuíÿÿ‰Eøƒ}øt‹Eø‰$è‘çÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè® Ã»èæÿÿ‰$èxçÿÿƒÄ[]ÃU‰åSƒì$è‰ Ã–Eð‰D$ƒ½Ðÿÿ‰D$‹E ‰$ètäÿÿ…Àu ÇEèëD‹Eð‰$è,íÿÿ‰Eø‹Eø‰$èNçÿÿÇD$‰D$‹Eø‰$èGåÿÿ‰Eô‹Eø‰$èiâÿÿ‹Eô‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è ÃEð‰D$ƒÜÐÿÿ‰D$‹E ‰$èìãÿÿ…Àu ÇEèëD‹Eð‰$èèÿÿ‰Eø‹Eø‰$èÆæÿÿÇD$‰D$‹Eø‰$è¿äÿÿ‰Eô‹Eø‰$èááÿÿ‹Eô‰Eè‹EèƒÄ$[]ÃU‰åSƒìDèy ÆŽÇEäEì‰D$ Eð‰D$ƒýÐÿÿ‰D$‹E ‰$èVãÿÿ…Àu ÇEØët‹Uì‹MðEä‰D$Eè‰D$ ÇD$‰T$‰ $èÑäÿÿ‰EôEä‰$èãìÿÿ…Àt‹Eô‰$èDáÿÿÇEØë&‹Eè‰D$‹Eô‰$èÉãÿÿ‰Eø‹Eô‰$èáÿÿ‹Eø‰EØ‹E؃ÄD[]ÃU‰åSƒì$è³ ÃÀè5åÿÿ‰Eøƒ}øu‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eèë‹Eø‰$è#åÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè^ Ãk‹E ‹P‹ƒðÿÿÿ9ÂtQ‹E ‹P‹ƒðÿÿÿ‰D$‰$è=æÿÿ…Àu5‹E ‰$è¾ëÿÿP‹ƒœÿÿÿ‹‰T$ƒÑÿÿ‰D$‰ $è}ãÿÿÇEøë*‹E ƒÀ‰$èvçÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒì$è¸ ÃÅŒèŠæÿÿ‰Eøƒ}øu‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eèë‹Eø‰$è(äÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìèc ÃpŒ‹E ‹P‹ƒðÿÿÿ9ÂtQ‹E ‹P‹ƒðÿÿÿ‰D$‰$èBåÿÿ…Àu5‹E ‰$èÃêÿÿP‹ƒœÿÿÿ‹‰T$ƒÑÿÿ‰D$‰ $è‚âÿÿÇEøë*‹E ƒÀ‰$è[êÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒì$è½ÃÊ‹ÇD$ƒ´‰$è~àÿÿ‰Eø‹Eø‰D$ƒ@Ûÿÿ‰D$‹E‰$èïÞÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eø‰$èÝæÿÿƒÄ$[]ÃU‰åSƒì$è>ÃK‹èðéÿÿ‰Eô‹ƒàÿÿÿ‰D$ƒLÛÿÿ‰D$‹Eô‰$è~Þÿÿ‹ƒÈÿÿÿ‹‹Eô‰D$‰T$ƒTÛÿÿ‰$è½åÿÿ‰Eø‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰D$ƒ`Ûÿÿ‰D$‹E‰$èÞÿÿ‹Eø‰ƒ¸ƒÄ$[]ÃU‰åSƒì$èÃœŠ‹ƒ¸ÿÿÿ‹‹ƒÜÿÿÿ‹‹ƒ|ÿÿÿ‹‰T$ ‰L$‰D$ƒgÛÿÿ‰$èéÿÿ‰Eø‹Eø‰D$ƒmÛÿÿ‰D$‹E‰$è¥Ýÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒÇD$ ÇD$ÇD$ƒgÛÿÿ‰$è˜èÿÿ‰Eø‹Eø‰D$ƒzÛÿÿ‰D$‹E‰$è9Ýÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒìè“à‰ÇD$ƒ‰Ûÿÿ‰D$‹E‰$è½ßÿÿÇD$ƒ¦Ûÿÿ‰D$‹E‰$è ßÿÿÇD$ƒ¾Ûÿÿ‰D$‹E‰$èƒßÿÿÇD$ƒÐÛÿÿ‰D$‹E‰$èfßÿÿÇD$ƒéÛÿÿ‰D$‹E‰$èIßÿÿÇD$ ƒÜÿÿ‰D$‹E‰$è,ßÿÿÇD$@ƒÜÿÿ‰D$‹E‰$èßÿÿÇD$œÿÿÿƒ6Üÿÿ‰D$‹E‰$èòÞÿÿÇD$ƒDÜÿÿ‰D$‹E‰$èÕÞÿÿÇD$dƒUÜÿÿ‰D$‹E‰$è¸ÞÿÿÇD$ȃhÜÿÿ‰D$‹E‰$è›ÞÿÿÇD$,ƒ~Üÿÿ‰D$‹E‰$è~ÞÿÿÇD$ƒ‹Üÿÿ‰D$‹E‰$èaÞÿÿÇD$ƒ‘Üÿÿ‰D$‹E‰$èDÞÿÿÇD$ƒ˜Üÿÿ‰D$‹E‰$è'ÞÿÿÇD$ƒŸÜÿÿ‰D$‹E‰$è ÞÿÿÇD$ƒ¦Üÿÿ‰D$‹E‰$èíÝÿÿÇD$ ƒ­Üÿÿ‰D$‹E‰$èÐÝÿÿÇD$ƒµÜÿÿ‰D$‹E‰$è³ÝÿÿÇD$ƒÅÜÿÿ‰D$‹E‰$è–ÝÿÿÇD$ƒÖÜÿÿ‰D$‹E‰$èyÝÿÿÇD$ƒäÜÿÿ‰D$‹E‰$è\ÝÿÿÇD$ƒôÜÿÿ‰D$‹E‰$è?ÝÿÿÇD$ƒÝÿÿ‰D$‹E‰$è"ÝÿÿÇD$ƒÝÿÿ‰D$‹E‰$èÝÿÿÇD$ƒ(Ýÿÿ‰D$‹E‰$èèÜÿÿÇD$ƒ=Ýÿÿ‰D$‹E‰$èËÜÿÿÇD$ƒQÝÿÿ‰D$‹E‰$è®ÜÿÿÇD$ƒ^Ýÿÿ‰D$‹E‰$è‘ÜÿÿÇD$ƒoÝÿÿ‰D$‹E‰$ètÜÿÿÇD$ƒ€Ýÿÿ‰D$‹E‰$èWÜÿÿÇD$ƒ“Ýÿÿ‰D$‹E‰$è:ÜÿÿÇD$ƒ§Ýÿÿ‰D$‹E‰$èÜÿÿÇD$ƒ»Ýÿÿ‰D$‹E‰$èÜÿÿÇD$ƒÎÝÿÿ‰D$‹E‰$èãÛÿÿÇD$ ƒãÝÿÿ‰D$‹E‰$èÆÛÿÿÇD$@ƒüÝÿÿ‰D$‹E‰$è©ÛÿÿÇD$ƒÞÿÿ‰D$‹E‰$èŒÛÿÿÇD$ƒ,Þÿÿ‰D$‹E‰$èoÛÿÿÇD$ƒCÞÿÿ‰D$‹E‰$èRÛÿÿÇD$ƒWÞÿÿ‰D$‹E‰$è5ÛÿÿÇD$ƒnÞÿÿ‰D$‹E‰$èÛÿÿÇD$ƒ‡Þÿÿ‰D$‹E‰$èûÚÿÿÇD$ƒŸÞÿÿ‰D$‹E‰$èÞÚÿÿÇD$ƒ´Þÿÿ‰D$‹E‰$èÁÚÿÿÇD$ƒÌÞÿÿ‰D$‹E‰$è¤ÚÿÿÇD$ƒèÞÿÿ‰D$‹E‰$è‡ÚÿÿÇD$ƒßÿÿ‰D$‹E‰$èjÚÿÿƒßÿÿ‰D$ƒßÿÿ‰D$‹E‰$è›ØÿÿèÆØÿÿ‰$è®áÿÿ‰D$ƒ)ßÿÿ‰D$‹E‰$èuØÿÿƒÄ[]ÃU‰åSƒì$èÆÃÓƒÇD$õÇD$ ÇD$ƒH‰D$ƒ6ßÿÿ‰$èMßÿÿ‰Eô‹Eô‰$èÜÿÿ‰Eø‹Eô‰$èÕùÿÿ‹Eø‰$è ÷ÿÿ‹Eø‰$èøÿÿ‹Eø‰$è¸øÿÿ‹Eø‰$è‹Eø‰$èð.‹Eø‰$è(‹Eø‰$èþB‹Eø‰$èŒO‹Eø‰$èß‹Eø‰$è%ƒÄ$[]Ë$ÃU‰åSƒìDèïÿÿÿÃü‚ÇEôÇEðÇEèÇEä‹E‹PEä‰D$Eì‰D$ Eð‰D$Eè‰D$‰$è@Ùÿÿ‰EøEä‰$èráÿÿ…Àt ÇEØëOƒ}øu#‹ƒ„ÿÿÿ‹ƒSßÿÿ‰D$‰$èEßÿÿÇEØë&‹Eð‹Uè‰D$‰$è:Øÿÿ‰Eô‹Eè‰$èŒÕÿÿ‹Eô‰EØ‹E؃ÄD[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰å‹E‹P‹E‰‹E]ÃU‰å‹E‹@]ÃU‰åSƒìèÀþÿÿÃÍ‹E‹@…Àt‹E‹@‰$èÏÝÿÿ‹E‰$è„ÝÿÿƒÄ[]ÃU‰åSƒì4è…þÿÿÃ’‹ƒ¼ÿÿÿ‰EôÇEðEô‰D$ƒˆ‰D$ ƒ]ßÿÿ‰D$‹E‰D$‹E ‰$èïÞÿÿ…Àu ÇEèëO‹Eô‰$è§Öÿÿ‰Â‹E‹HEð‰D$‰T$‰ $è¼Ôÿÿ‰EøEð‰$èÞßÿÿ…Àt ÇEèë‹Eø‰$èÆØÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èÑýÿÿÃÞ€Eø‰D$ƒ‰D$ ƒ€ßÿÿ‰D$‹E‰D$‹E ‰$èKÞÿÿ…Àu ÇEèë3‹Eø‰Â‹E‹@‰T$‰$ègÔÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèIýÿÿÃV€‹E‹@‰$èÒÕÿÿ‰$è ØÿÿƒÄ[]ÃU‰åSƒì4èýÿÿÃ(€Eø‰D$ƒ˜‰D$ ƒªßÿÿ‰D$‹E‰D$‹E ‰$è•Ýÿÿ…Àu ÇEèë1‹Uø‹E‹@‰T$‰$è³Öÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè•üÿÿâ‹E‹@‰$èÞÿÿ‰$èV×ÿÿƒÄ[]ÃU‰åSƒì4ègüÿÿÃtÇEôEø‰D$ƒ ‰D$ ƒÑßÿÿ‰D$‹E‰D$‹E ‰$èÚÜÿÿ…Àu ÇEèëP‹Uø‹E‹HEô‰D$‰T$‰ $è1ÓÿÿEô‰$èÖÝÿÿ…Àt ÇEè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$è»ûÿÿÃÈ~‹E‹@‰$è´Üÿÿ‰Eøƒ}øu‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eèë‹Eø‰$è"Öÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìDè]ûÿÿÃj~ÇEèÿÿÿÿÇEäÇEìÇEàÇEðEè‰D$ƒ¨‰D$ ƒùßÿÿ‰D$‹E‰D$‹E ‰$è´Ûÿÿ…Àu ÇEØéw‹Eè…À…õƒàÿÿ‰$è‹Õÿÿ‰EØéV‹Eèƒøÿu ÇEø ë‹Eè+Eì‰Eø}ø vÇEø ‹Eä…Àu#‹Eø‰D$Ç$èÓÿÿ‰Eä‹Eä…À„Õë0‹Eì‹Uø‹Eä‹@9Âv‹EìEø‰D$Eä‰$èÚÿÿƒøÿ„£‹EäP‹Eì‰Eôè;Öÿÿ‹E‹PEà‰D$E܉D$ ‹Eø‰D$‹Eô‰D$‰$èÑÖÿÿ‰EðèyÒÿÿEà‰$èÞÛÿÿ…ÀuN‹EÜEìƒ}ðu‹Eèƒøÿ„ÿÿÿ‹Eè;Eì‡ÿÿÿ‹Eä‹@;Eìt‹Eì‰D$Eä‰$èyÙÿÿƒøÿt‹Eä‰EØë/‹Eä…Àt!‹E䋃ꉋ…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEØ‹E؃ÄD[]ÃU‰åVSƒì@èjùÿÿÃw|ÇEäEì‰D$Eð‰D$ƒ°‰D$ ƒàÿÿ‰D$‹E‰D$‹E ‰$èÖÙÿÿ…Àu ÇEÔë]èÕÿÿ‹Uì‹Mð‹E‹pEä‰D$Eè‰D$ ‰T$‰L$‰4$èúÒÿÿ‰EôèRÑÿÿEä‰$è·Úÿÿ…Àt ÇEÔë‹Eè‰$èŸÓÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@è¨øÿÿõ{ÇEÜE؉D$ƒ¸‰D$ ƒ3àÿÿ‰D$‹E‰D$‹E ‰$èÙÿÿ…Àu ÇEÔé°‹E؉$è Ôÿÿ‰Eð‹Eð‰$èBÏÿÿ‰Eô‹ƒ„ÿÿÿ‹‰$èÿÑÿÿ…Àt èF×ÿÿé3‹Eô‹P‹ƒðÿÿÿ9Âti‹Eô‹P‹ƒðÿÿÿ‰D$‰$è Ôÿÿ…ÀuM‹ƒœÿÿÿ‹ƒPàÿÿ‰D$‰$è»×ÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEÔéýEä‰D$Eè‰D$‹Eô‰$è_ÖÿÿèŠÓÿÿ‹Uä‹Mè‹E‹pE܉D$Eà‰D$ ‰T$‰L$‰4$èpÑÿÿ‰EìèXÓÿÿ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒE܉$èÙÿÿ…À„Ñþÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEÔëC‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åSƒì$è˜öÿÿÃ¥yÇEôèƒÒÿÿ‹E‹PEô‰D$‰$è¾Õÿÿ‰EøèÖÎÿÿEô‰$è;Øÿÿ…Àt ÇEèë‹Eø‰$è#Ñÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4è.öÿÿÃ;yÇEðEô‰D$ƒÀ‰D$ ƒ•àÿÿ‰D$‹E‰D$‹E ‰$è¡Öÿÿ…Àu ÇEèëE‹Uô‹E‹HEð‰D$‰T$‰ $è˜Ðÿÿ‰EøEð‰$èš×ÿÿ…Àt ÇEèë‹Eø‰$è‚Ðÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèõÿÿÚx‹E‹@‰$èÖËÿÿ‰$èNÐÿÿƒÄ[]ÃU‰åSƒìè_õÿÿÃlx‹E‹@‰$è¸Ìÿÿ‰$è ÐÿÿƒÄ[]ÃU‰åSƒì4è1õÿÿÃ>xEø‰D$ƒÈ‰D$ ƒ¼àÿÿ‰D$‹E‰D$‹E ‰$è«Õÿÿ…Àu ÇEèë;‹Eø‰$ècÍÿÿ‰Â‹E‹@‰T$‰$è?Õÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè¡ôÿÿîw‹E‹@‰$èÑÿÿ…Àt‹ƒ¼ÿÿÿ‰Â‹ƒÀ‰‹ƒ¼ÿÿÿ‰Eøë‹ƒ€ÿÿÿ‰Â‹ƒÀ‰‹ƒ€ÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèBôÿÿÃOw‹E‹‹ƒê‰‹…Àu‹E‹‹@‹P‹E‹‰$ÿÒ‹E‹@…Àt*‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‰D$Ç$ èáÔÿÿƒÄ[]ÃU‰åVSƒì0è‘óÿÿÞv‹E‰Eðƒ}u,ƒôàÿÿ‰D$ƒààÿÿ‰D$Ç$è ÏÿÿÇEäé‹Eð‹@‹@;Et,ƒáÿÿ‰D$ƒààÿÿ‰D$Ç$èÒÎÿÿÇEäéÎèQÍÿÿ‰Eô‹Eð‹@…Àt7‹Eð‹P‹Eð‹H‹Eð‹0‰T$‹E ‰D$ ‰L$ƒ>áÿÿ‰D$‰4$è2Ëÿÿ‰Eèë+‹Eð‹P‹Eð‹‹E ‰D$ ‰T$ƒBáÿÿ‰D$‰ $èËÿÿ‰Eèƒ}èuèçÐÿÿÇEìë5‹Eè‰$èËÿÿ‰Eì‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eô‰$ènÍÿÿ‹Eì‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLè3òÿÿÃ@uÇEàÇEÜÇEèE܉D$Eà‰D$Eä‰D$E؉D$ƒÐ‰D$ ƒláÿÿ‰D$‹E‰D$‹E ‰$èƒÒÿÿ…Àu ÇEÐéÙ‹E‹@‰Eè‹Eä‰$èÓÿÿ…Àu&‹ƒœÿÿÿ‹ƒ‹áÿÿ‰D$‰$èqÑÿÿÇEÐé›Ç$ è¹Íÿÿ‰Eð‹Uä‹Eð‰‹U䋃À‰‹Uà‹Eð‰P‹Eà…Àt ‹Eà‹ƒÂ‰‹Uð‹E‰B‹E‹P‹E‰“¥ˆÿÿ‹E؉Á‹uÜ‹E‹x‰T$‹Eð‰D$ƒU‰ÿÿ‰D$ ‰L$‰t$‰<$è»Çÿÿ‰Eì‹Eì‰$è}Èÿÿ‰EЋEЃÄL[^_]ÃU‰åSƒìDèÖðÿÿÃãsÇEôÇEðÇEèÇEäÇEàÿÿÿÿEà‰D$ƒä‰D$ ƒ£áÿÿ‰D$‹E‰D$‹E ‰$è-Ñÿÿ…Àu ÇEØëk‹E‹PEä‰D$Eì‰D$ Eð‰D$Eè‰D$‰$èæÉÿÿ‰EøEä‰$èÒÿÿ…Àt ÇEØë&‹Eð‹Uè‰D$‰$è Éÿÿ‰Eô‹Eè‰$è[Æÿÿ‹Eô‰EØ‹E؃ÄD[]ÃU‰åSƒìDèóïÿÿÃsÇEðÇEìÇEäÇEàÇEÜÿÿÿÿÇEôE܉D$ƒì‰D$ ƒ¾áÿÿ‰D$‹E‰D$‹E ‰$èCÐÿÿ…Àu ÇEØé Ç$è—Ðÿÿ‰Eøéü‹E‹PEà‰D$Eè‰D$ Eì‰D$Eä‰D$‰$èåÈÿÿ‰EôEà‰$èÑÿÿ…Àt3‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEØé‹Eì‹Uä‰D$‰$èÞÇÿÿ‰Eð‹Eä‰$è0Åÿÿ‹Eð‰D$‹Eø‰$è®Ìÿÿ…ÀtW‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒÇEØëƒ}ô„úþÿÿ‹Eø‰EØ‹E؃ÄD[]ÃU‰åVSƒì@èPîÿÿÃ]qÇEäÇEàEä‰D$Eè‰D$ƒô‰D$ ƒèáÿÿ‰D$‹E‰D$‹E ‰$èµÎÿÿ…Àu ÇEÐé«‹Eä‰EÔƒ}Ôtƒ}Ôtƒ}ÔtëÇEôë5ÇEôë,ÇEôë#‹ƒŒÿÿÿ‹ƒâÿÿ‰D$‰$è†ÍÿÿÇEÐëS‹Uè‹Mì‹E‹pEà‰D$‹Eô‰D$ ‰T$‰L$‰4$èsÇÿÿ‰EðEà‰$èEÏÿÿ…Àt ÇEÐë‹Eð‰$è-Èÿÿ‰EЋEЃÄ@[^]ÃU‰åSƒì4è7íÿÿÃDpÇEøÿÿÿÿƒãÿÿ‰EôÇEðÇEìEô‰D$Eð‰D$Eø‰D$ƒ˜‰D$ ƒãÿÿ‰D$‹E‰D$‹E ‰$è…Íÿÿ…Àu ÇEèÿÿÿÿ釋Eøƒøÿt‹Eø‰$èÄÿÿ‰Â‹E‰Pëc‹Eð…Àt9‹Uô‹MðEì‰D$‰T$‰ $è8Åÿÿ‰Â‹E‰PEì‰$èUÎÿÿ…Àt,ÇEèÿÿÿÿë*‹ƒœÿÿÿ‹ƒ8ãÿÿ‰D$‰$è.ÌÿÿÇEèÿÿÿÿëÇEè‹EèƒÄ4[]ÃU‰åSƒìè,ìÿÿÃ9o“°ÿÿ‹ƒ´ÿÿÿ‰”“'~ÿÿ‹ƒ´ÿÿÿ‰P‹ƒ´ÿÿÿÇ@Të‹“´ÿÿÿƒ‰Bx‹“´ÿÿÿƒH‰Bt“~ÿÿ‹ƒ´ÿÿÿ‰P<“Ã}ÿÿ‹ƒ´ÿÿÿ‰P(‹“´ÿÿÿƒ~ÿÿ‰Bl“ø|ÿÿ‹ƒ´ÿÿÿ‰Pp‹ƒ´ÿÿÿ‹€˜…Àu‹ƒ´ÿÿÿ‹“øÿÿÿ‰˜‹ƒ´ÿÿÿ‹€œ…Àu‹ƒ´ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ´ÿÿÿ‰$è‰Âÿÿ…Àu‹ƒ´ÿÿÿ‰D$ƒuãÿÿ‰D$‹E‰$è–ÁÿÿƒÄ[]ÃU‰åSƒì$èëÿÿÃ$nEø‰D$ƒ”ãÿÿ‰D$‹E ‰$èÃÿÿ…Àu ÇEèÿÿÿÿë‹Eø‰$èzÊÿÿ‰Â‹E‰P ÇEè‹EèƒÄ$[]ÃU‰åSƒìè¹êÿÿÃÆm‹E‹@…Àt:‹E‹@‰Eô‹EÇ@‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹E‹@ …Àt‹E‹@ ‰Eø‹EÇ@ ‹Eø‰$èÄÁÿÿ‹E‰$è)ÉÿÿƒÄ[]ÃU‰åVSƒìPè)êÿÿÃ6mÇEÌE؉D$ƒh‰D$ ƒÑãÿÿ‰D$‹E‰D$‹E ‰$èœÊÿÿ…Àu ÇEÄéH‹EØ‹P‹ƒ˜ÿÿÿ9ÂtB‹EØ‹P‹ƒ˜ÿÿÿ‰D$‰$èÄÅÿÿ…Àu&‹ƒœÿÿÿ‹ƒèãÿÿ‰D$‰$èvÉÿÿÇEÄéö‹E؉$è_Åÿÿ‰Eäƒ}äÿu&‹ƒœÿÿÿ‹ƒèãÿÿ‰D$‰$è<ÉÿÿÇEÄ鼋EäƒÀÀÀ‰$èþÁÿÿ‰EЋEäÀÀ‰Â‹EÐÇÇEèëi‹UØ‹Eè‰D$‰$èë¿ÿÿ‰EÜ‹EèÀÀ‰Â‹EÐ4‹E܉$è~¿ÿÿ‰$èæÀÿÿ‰‹EèÀÀ‰Â‹EЋ…Àu‹EЉ$èäÈÿÿÇEÄé$ƒEè‹Eè;Eä|‹EЉ$èA¿ÿÿ‰Eì‹Eä‰EÔÇEôè,Éÿÿ…ÀtèsÃÿÿ‰Eô‹E‹P ẺD$ EЉD$EÔ‰D$‰$èÃÿÿ‰EðèõÈÿÿ…Àt ‹Eô‰$è¶Âÿÿ‹EÔ‰Eäƒ}ðu*‹EЉ$èOÈÿÿ‹Eì‰$èDÈÿÿẺ$èùÉÿÿÇEÄë|‹EЉ$èµÁÿÿ‰$èÉÿÿ‰EàÇEèë9‹EèÀÀ‰Â‹EЋ‰$èˆÂÿÿ‰EÜ‹E܉D$‹Eè‰D$‹Eà‰$èÌÇÿÿƒEè‹Eè;Eä|¿‹Eì‰$èÅÇÿÿ‹EЉ$èºÇÿÿ‹Eà‰EÄ‹EăÄP[^]ÃU‰åSƒì4èçÿÿÃŽjEø‰D$ƒp‰D$ ƒ$äÿÿ‰D$‹E‰D$‹E ‰$èûÇÿÿ…Àu ÇEèë;‹Eø‰$賿ÿÿ‰Â‹E‹@ ‰T$‰$èïÈÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèñæÿÿÃþi‹E‹@ ‰$è*Çÿÿ‰$èò¾ÿÿƒÄ[]ÃU‰åSƒì4èÃæÿÿÃÐiEø‰D$ƒx‰D$ ƒ`äÿÿ‰D$‹E‰D$‹E ‰$è=Çÿÿ…Àu ÇEèë;‹Eø‰$èõ¾ÿÿ‰Â‹E‹@ ‰T$‰$èq½ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè3æÿÿÃ@i‹E‹@ ‰$èì¼ÿÿ‰$è4¾ÿÿƒÄ[]ÃU‰åSƒì4èæÿÿÃiEô‰D$ƒ€‰D$ ƒ”äÿÿ‰D$‹E‰D$‹E ‰$èÆÿÿ…Àu ÇEè麋ƒÌÿÿÿ‹Uô‰D$‰$è*Ãÿÿƒøt#‹ƒœÿÿÿ‹ƒ´äÿÿ‰D$‰$èkÅÿÿÇEèë}‹Eô‰$ègÅÿÿ‰Eøƒ}øu#‹ƒÈÿÿÿ‹ƒìäÿÿ‰D$‰$è4ÅÿÿÇEèëF‹E‹P ‹Eø‰D$‰$èÆÿÿ‹Uô‹ƒÀ‰‹Eô‰Â‹E‰P‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åƒìè›Áh‹E‹@…Àu‹àÿÿÿ‹P‹àÿÿÿ‰‹àÿÿÿ‰Eüë‹E‹P‹ƒÀ‰‹E‹@‰Eü‹EüÉÃU‰åSƒì4èŸäÿÿìgEô‰D$ƒˆ‰D$ ƒåÿÿ‰D$‹E‰D$‹E ‰$èÅÿÿ…Àu ÇEè鯋ƒÌÿÿÿ‹Uô‰D$‰$èÄÁÿÿƒøt#‹ƒœÿÿÿ‹ƒ,åÿÿ‰D$‰$èÄÿÿÇEèër‹Eô‰$èÄÿÿ‰Eøƒ}øu#‹ƒÈÿÿÿ‹ƒìäÿÿ‰D$‰$èÎÃÿÿÇEèë;‹Uô‹ƒÀ‰‹E‹P ‹Eø‰D$‰$èæ¿ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åƒì‹E‹P ‹E ‹@ 9Âu ÇEüë ‹E‹P ‹E ‹@ 9Âv ÇEüëÇEüÿÿÿÿ‹EüÉÃU‰åSƒìèTãÿÿÃaf‹E‹@ ÇD$‰$è»ÿÿƒÄ[]ÃU‰åSƒìè&ãÿÿÃ3f“.’ÿÿ‹ƒÔÿÿÿ‰P“O™ÿÿ‹ƒÔÿÿÿ‰P(‹ƒÔÿÿÿÇ@Të‹“Ôÿÿÿƒ¨‰Bt“Бÿÿ‹ƒÔÿÿÿ‰”‹ƒÔÿÿÿ‹€˜…Àu‹ƒÔÿÿÿ‹“øÿÿÿ‰˜‹ƒÔÿÿÿ‹€œ…Àu‹ƒÔÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÔÿÿÿ‰$迹ÿÿ…Àu‹ƒÔÿÿÿ‰D$ƒðåÿÿ‰D$‹E‰$è̸ÿÿƒÄ[]Ë $ÃU‰åSƒìèGâÿÿÃTe‹E‹@ …Àt#‹ƒŒÿÿÿ‹ƒæÿÿ‰D$‰$èúÁÿÿÇEøëÇEø‹EøƒÄ[]ÃU‰åSƒì$èøáÿÿÃeè*¼ÿÿ‰Eô‹EÇ@‹E‹@…Àt:‹E‹@‰Eø‹EÇ@‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹ƒxÿÿÿ‰Â‹E‹@ÇD$‰T$‰$èG¾ÿÿ‹E‹@‰$艸ÿÿ‹EÇ@‹E‹@…Àt'‹E‹Pÿ‹E‰‹E‹…Àu‹E‹@‹P‹E‰$ÿÒ‹Eô‰$èC¼ÿÿƒÄ$[]ÃU‰åVSƒì@èáÿÿà dEè‰D$Eì‰D$Eð‰D$Eô‰D$ƒ ‰D$ ƒ•æÿÿ‰D$‹E‰D$‹E ‰$èxÁÿÿ…Àu ÇEäÿÿÿÿë`ƒïšÿÿ‹Uì‹Mð‹uô‰D$‹E‰D$ ‰T$‰L$‰4$èA¿ÿÿ‰Â‹E‰P‹EÇ@ ‹EÇ@‹U苃À‰‹Uè‹E‰PÇEä‹EäƒÄ@[^]ÃU‰åSƒìèHàÿÿÃUc‹E‹@ …Àu.‹E‹@…Àu$‹E‹@‰Eø‹EÇ@ƒ}øt ‹Eø‰$è7Áÿÿ‹E‰$èì¾ÿÿƒÄ[]ÃU‰åSƒì$èíßÿÿÃúbèºÿÿ‰Eôƒ} u5‹E‹P‹E‰D$‹ƒàÿÿÿ‰D$ ‹E‰D$ƒ°æÿÿ‰D$‰$è¸ÿÿ‰Eðë0‹E‹P‹E‰D$‹E ‰D$ ‹E‰D$ƒ´æÿÿ‰D$‰$èÔ·ÿÿ‰Eðƒ}ðt0‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEøë‹E‰$è¸ÿÿƒøÿ•À¶À‰Eø‹Eô‰$è9ºÿÿ‹EøƒÄ$[]ÃU‰åSƒìDèßÿÿÃb‹E‰$è£üÿÿ…Àt ÇEØéUEè‰D$ƒ ‰D$ ƒÀæÿÿ‰D$‹E‰D$‹E ‰$èf¿ÿÿ…Àu ÇEØé‹Eè‹P‹ƒ˜ÿÿÿ9ÂtB‹Eè‹P‹ƒ˜ÿÿÿ‰D$‰$莺ÿÿ…Àu&‹ƒœÿÿÿ‹ƒÜæÿÿ‰D$‰$è@¾ÿÿÇEØéÆ‹Eè‰$è)ºÿÿ‰Eìƒ}ìÿu&‹ƒœÿÿÿ‹ƒÜæÿÿ‰D$‰$è¾ÿÿÇEØéŒ‹EìƒÀÀÕ)Љ$è~¼ÿÿ‰EøÇEðé‹Uè‹Eð‰D$‰$è½´ÿÿ‰Eô‹Eô‹P‹ƒÀÿÿÿ9ÂtM‹Eô‹P‹ƒÀÿÿÿ‰D$‰$è¹ÿÿ…Àu1‹ƒœÿÿÿ‹ƒÜæÿÿ‰D$‰$èt½ÿÿ‹Eø‰$èÙ³ÿÿÇEØéï‹EðÀÕ)ÐEøH‹EðÀÕ)ÐEøPE܉D$Eà‰D$‰L$‰T$ Eä‰D$ƒçÿÿ‰D$‹Eô‰$è-µÿÿ…Àu1‹ƒœÿÿÿ‹ƒÜæÿÿ‰D$‰$èß¼ÿÿ‹Eø‰$èD³ÿÿÇEØéZ‹Eä‰$èÝ´ÿÿ‰Eä‹Uä‹E‹@‰T$‰$èe·ÿÿ‰Â‹E‰P‹EðÀÕ)ЉÂUø‹E䉋Eà‰$è—´ÿÿ‰Eà‹Uà‹E‹@‰T$‰$è·ÿÿ‰Â‹E‰P‹EðÀÕ)ЉÂUø‹Eà‰B‹E܉$èP´ÿÿ‰EÜ‹UÜ‹E‹@‰T$‰$èØ¶ÿÿ‰Â‹E‰P‹EðÀÕ)ЉÂUø‹E܉B‹EðÀÕ)ÐEøÇ@ ‹EðÀÕ)ЉÂUøƒúœÿÿ‰BƒEð‹Eð;EìŒÛýÿÿ‹E‹P‹Eø‰D$‰$èE¼ÿÿ‹Eø‰$èú±ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4è|ÛÿÿÉ^‹E‰$èùÿÿ…Àt ÇEè阋E‹@…Àu#‹ƒÈÿÿÿ‹ƒ çÿÿ‰D$‰$è»ÿÿÇEèëkEø‰D$ƒ$ ‰D$ ƒ„çÿÿ‰D$‹E‰D$‹E ‰$è®»ÿÿ…Àu ÇEèë1‹Uø‹E‹@‰T$‰$èlºÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüëÇEüÿÿÿÿ‹EüÉÃU‰åSƒìèjÚÿÿÃw]“Ÿœÿÿ‹ƒÌÿÿÿ‰P“9¢ÿÿ‹ƒÌÿÿÿ‰P(‹ƒÌÿÿÿÇ@Të‹“ÌÿÿÿƒH ‰Bt“Ó›ÿÿ‹ƒÌÿÿÿ‰”‹ƒÌÿÿÿ‹€˜…Àu‹ƒÌÿÿÿ‹“øÿÿÿ‰˜‹ƒÌÿÿÿ‹€œ…Àu‹ƒÌÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÌÿÿÿ‰$è±ÿÿ…Àu‹ƒÌÿÿÿ‰D$ƒËçÿÿ‰D$‹E‰$è°ÿÿƒÄ[]ÃU‰åSƒìèÙÿÿÜ\èѳÿÿ‰Â‹E‰P¸ƒÄ[]ÃU‰åSƒìèeÙÿÿÃr\‹E‹@…Àt‹E‹@‰$è·ÿÿ‹EÇ@‹E‰$è¸ÿÿƒÄ[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰åSƒì$èÜØÿÿÃé[ÇEðEð‰D$ƒèçÿÿ‰D$‹E ‰$èÀ°ÿÿ…Àu ÇEèëRÇEøè7¹ÿÿ…Àtè~³ÿÿ‰Eø‹Uð‹E‹@‰T$‰$èÖ²ÿÿ‰Eôè¹ÿÿ…Àt ‹Eø‰$èϲÿÿ‹Eô‰$èt°ÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè?ØÿÿÃL[‹E‹@‰$è(¶ÿÿ‰$è@°ÿÿƒÄ[]ÃU‰åSƒìèØÿÿÃ[“‚£ÿÿ‹ƒ¬ÿÿÿ‰P“Ç£ÿÿ‹ƒ¬ÿÿÿ‰P(‹ƒ¬ÿÿÿÇ@Të‹“¬ÿÿÿƒH ‰Bt“X£ÿÿ‹ƒ¬ÿÿÿ‰”‹ƒ¬ÿÿÿ‹€˜…Àu‹ƒ¬ÿÿÿ‹“øÿÿÿ‰˜‹ƒ¬ÿÿÿ‹€œ…Àu‹ƒ¬ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ¬ÿÿÿ‰$誮ÿÿ…Àu‹ƒ¬ÿÿÿ‰D$ƒèÿÿ‰D$‹E‰$è·­ÿÿƒÄ[]ÃU‰åSƒìè7×ÿÿÃDZèÉ·ÿÿ…Àu ÇEøë‹E ÇèÇEø‹EøƒÄ[]ÃU‰åSƒìèúÖÿÿÃZè,±ÿÿ‰EôèD‰Eøèì´ÿÿƒøÿu!ƒ}øt‹ƒèÿÿÿ‹‰$è±´ÿÿ‹Eø‰$è®ÿÿ‹Eô‰$è˱ÿÿ¸ƒÄ[]ÃU‰åSƒìè—ÖÿÿäY‹ƒx ƒøÿu ÇEøë‹ƒx ‰$è̲ÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèWÖÿÿÃdYÇD$ƒ èÿÿ‰D$ ÇD$ƃ:èÿÿ‰D$Ç$èžµÿÿU‰åSƒìèÖÿÿÃ"Y‹E‰Eøƒ}t0‹Eø‹@4…Àt‹Eø‹@4‰$èØ²ÿÿ‹Eø‹@8…Àt‹Eø‹@8‰$èÀ²ÿÿƒÄ[]ÃU‰åSƒìèÁÕÿÿÃÎXÇD$Dƒˆ ‰$èÒ®ÿÿƒÄ[]ÃU‰åSƒì4è“ÕÿÿàX‹ƒàÿÿÿ‰EôÇEðEð‰D$Eô‰D$ƒh ‰D$ ƒièÿÿ‰D$‹E‰D$‹E ‰$èöµÿÿ…Àu ÇEèÿÿÿÿéÌ‹Eô‹P‹ƒ¬ÿÿÿ9ÂtL‹Eô‹P‹ƒ¬ÿÿÿ‰D$‰$è±ÿÿ…Àu0‹Eô‹“àÿÿÿ9Ðt#‹ƒœÿÿÿ‹ƒ€èÿÿ‰D$‰$èôÿÿÇEèÿÿÿÿëp‹Eô‹“àÿÿÿ9Ðt ‹Eô‹@‰EøëÇEø‹Eð‰D$‹Eø‰$è ®ÿÿ‰Â‹E‰PèÒþÿÿ‰Â‹E‰P ‹E‹P ‹Eø‰D$‰$èO´ÿÿ‹E‹@ ‰$èá³ÿÿÇEè‹EèƒÄ4[]ÃU‰åSƒìèXÔÿÿÃeW‹E‹@ …Àt‹E‹@ ‰$èw³ÿÿ‹EÇ@ ‹E‹@…Àt‹E‹@‰$èõ²ÿÿ‹EÇ@‹E‰$èð²ÿÿƒÄ[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰åSƒìè­ÓÿÿúV‹E‹@‰$èÆ±ÿÿ‰$è®­ÿÿƒÄ[]ÃU‰åSƒìèÓÿÿÃŒV‹E‹@‰$èØ¯ÿÿ‰$耫ÿÿƒÄ[]ÃU‰åSƒìèQÓÿÿÃ^V‹E‹@‰$芪ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿƒÄ[]ÃU‰åSƒì$èÓÿÿÃV‹E‹@‰$è‰EôÇEøèŒ³ÿÿ…ÀtèÓ­ÿÿ‰Eø‹E‹@‰$è³ÿÿèm³ÿÿ…Àt ‹Eø‰$è.­ÿÿ‹Eô‰$èÙ莬ÿÿ…Àt ÇEè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èsÒÿÿÀUƒ}u)ƒÆèÿÿ‰D$ƒ«èÿÿ‰D$Ç$èô­ÿÿÇEèëX‹ƒx ƒøÿu 英ÿÿ‰ƒx ‹ƒx ‰$èw®ÿÿ‰Eø‹ƒx ‰$è6²ÿÿ‹E‰$蛯ÿÿ‹“x ‰D$‰$è)°ÿÿ‹Eø‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èÑÑÿÿÃÞT‹ƒx ƒøÿu"ƒøèÿÿ‰D$ƒØèÿÿ‰D$Ç$èM­ÿÿëK‹ƒx ‰$èí­ÿÿ‰Eøƒ}øt ‹Eø‰$èY°ÿÿ‹ƒx ‰$è›±ÿÿƒ}t‹“x ‹E‰D$‰$è¯ÿÿƒÄ$[]ÃU‰åSƒìèAÑÿÿÃNT“¨ÿÿ‹ƒ¨ÿÿÿ‰P“ö¨ÿÿ‹ƒ¨ÿÿÿ‰P(‹ƒ¨ÿÿÿÇ@Të‹“¨ÿÿÿƒˆ ‰Bt“T§ÿÿ‹ƒ¨ÿÿÿ‰”‹ƒ¨ÿÿÿ‹€˜…Àu‹ƒ¨ÿÿÿ‹“øÿÿÿ‰˜‹ƒ¨ÿÿÿ‹€œ…Àu‹ƒ¨ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ¨ÿÿÿ‰$èÚ§ÿÿ…Àu‹ƒ¨ÿÿÿ‰D$ƒ-éÿÿ‰D$‹E‰$èç¦ÿÿƒÄ[]ÃU‰åSì4èdÐÿÿÃqS‹E‹@…Àt(‹E‹@‰$ès­ÿÿ…Àt ƒDéÿÿ‰EøëƒMéÿÿ‰Eøë ƒXéÿÿ‰Eøƒ} t7‹E‰D$‹E ‰D$‹Eø‰D$ ƒbéÿÿ‰D$ÇD$…øþÿÿ‰$è5«ÿÿë.‹E‰D$‹Eø‰D$ ƒéÿÿ‰D$ÇD$…øþÿÿ‰$è«ÿÿ…øþÿÿ‰$èWªÿÿÄ4[]ÃU‰åSƒì4è•ÏÿÿâRÇEìÇEðEì‰D$‹ƒ¬ÿÿÿ‰D$ƒ¨ ‰D$ ƒ¡éÿÿ‰D$‹E‰D$‹E ‰$è÷¯ÿÿ…Àu ÇEè郋Eì…Àt ‹Eì‹@‰Eð‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$èã®ÿÿÇEèëF‹E‹@…Àt‹E‹@‰Eø‹Eø‹P4‹ƒÀ‰‹E‹P‹Eð‰D$‰$è•®ÿÿ‰Eô‹Eô‰$è—©ÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$è¢ÎÿÿïQ‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$èU®ÿÿÇEèë~‹E‹@…Àt@‹E‹@‹@…Àt3‹E‹@‰Eø‹Eø‹@4‹ƒê‰‹…Àu‹Eø‹@4‹@‹P‹Eø‹@4‰$ÿÒ‹E‹@‰$èT­ÿÿ‹EÇ@‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èÜÍÿÿÃéPÇEð‹E‹@…Àu&‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$舭ÿÿÇEØé¦‹E ‰$衬ÿÿ‰Eøƒ}ø&‹ƒœÿÿÿ‹ƒÀéÿÿ‰D$‰$èN­ÿÿÇEØélÇD$ÇD$‹E ‰$èG¬ÿÿ‰EìEè‰D$ƒêéÿÿ‰D$‹Eì‰$è8¥ÿÿ…Àu3‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒÇEØéû‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eè‰$è®ÿÿ…Àu&‹ƒœÿÿÿ‹ƒùéÿÿ‰D$‰$è¬ÿÿÇEØéŸ‹Eø‰D$ÇD$‹E ‰$è{«ÿÿ‰Eðƒ}ðu ÇEØës‹Uè‹Eð‰D$‰T$ƒêÿÿ‰$èý­ÿÿ‰Eôƒ}ôu ÇEØëE‹E‹P‹ƒ°ÿÿÿ‰D$ ‹Eô‰D$‹ƒäÿÿÿ‰D$‰$èÒ£ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰EØ‹E؃Ä4[]ÃU‰åSƒì$èäËÿÿÃñN‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$è—«ÿÿÇEèëC‹E‹@‰$èШÿÿ‰Eøƒ}øt‹Eø‰$謥ÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èYËÿÿÃfN‹E‹@…Àu&‹ƒœÿÿÿ‹ƒ êÿÿ‰D$‰$è «ÿÿÇEèé¥Eø‰D$‹ƒ ÿÿÿ‰D$ƒ° ‰D$ ƒ]êÿÿ‰D$‹E‰D$‹E ‰$虫ÿÿ…Àu ÇEèëa‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$蘪ÿÿÇEèë4‹EøP‹E‹@‰T$‰$è·§ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èiÊÿÿÃvM‹E‹@…Àu&‹ƒœÿÿÿ‹ƒlêÿÿ‰D$‰$èªÿÿÇEèé¥Eø‰D$‹ƒ ÿÿÿ‰D$ƒ¸ ‰D$ ƒ¬êÿÿ‰D$‹E‰D$‹E ‰$詪ÿÿ…Àu ÇEèëa‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$訩ÿÿÇEèë4‹EøP‹E‹@‰T$‰$è×£ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$èyÉÿÿÆL‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$è,©ÿÿÇEäëF‹E‹PEè‰D$‰$èž§ÿÿ‹EèPÛ$d$‹EìPÛ$d$݃èìÿÿÞÉÞÁÝ]ðÝEðÝ$è¢ÿÿ‰Eä‹EäƒÄ$[]ÃU‰åSƒìèëÈÿÿÃøK‹E‹@ …Àu 蓪ÿÿ‰Â‹E‰P ‹E‹@ …Àu ÇEøë‹E‹P ‹ƒÀ‰‹E‹@ ‰Eø‹EøƒÄ[]ÃU‰åSƒìèÈÿÿÃK‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$èC¨ÿÿÇEøë‹E‹@‰$èü¥ÿÿ‰$è$£ÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìè/ÈÿÿÃÿÿ‰Eø‹Eì‹P4ÇD$ƒìÿÿ‰D$‰$è[¤ÿÿ‰Eðƒ}ðuè¡ÿÿÇEôë5‹Eð‰$è9›ÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‰$è¤ÿÿ‹EôƒÄ$[]ÃU‰åSƒì4èrÂÿÿÃE‹E‰Eàèžœÿÿ‰Eøƒ} t4‹E‰EìÇD$‹Eì‰$èì¡ÿÿ‰EäÇD$‹Eì‰$èÖ¡ÿÿ‰Eè닃àÿÿÿ‰E䋃àÿÿÿ‰Eè‹Eà‹P4‹Eè‰D$‹Eä‰D$ ƒ ìÿÿ‰D$ƒìÿÿ‰D$‰$è_£ÿÿ‰Eðƒ}ðuè! ÿÿÇEôë5‹Eð‰$è=šÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‰$訜ÿÿ‹EôƒÄ4[]ÃU‰åSƒì$èvÁÿÿÃD‹E‰Eì袛ÿÿ‰Eø‹Eì‹P4ƒìÿÿ‰D$‰$è§žÿÿ‰Eðƒ}ðtqÇD$‹Eð‰$èËÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒ}ôuèFŸÿÿë'‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰$èâ›ÿÿƒÄ$[]ÃU‰åSƒì$è³ÀÿÿÃÀCÇD$8ƒ¬‰$èÄ™ÿÿ‰Â‹E‰P‹E‹@‰Eø‹U‹Eø‰P4‹EÇ@ ‹EÇ@‹EÇ@¸ƒÄ$[]ÃU‰åSƒìèHÀÿÿÃUC‹E‰$èt˜ÿÿƒÄ[]ÃU‰åSƒìè%ÀÿÿÃ2Cƒ*ìÿÿ‰D$‹E‰$è—ïÿÿƒÄ[]ÃU‰åSƒì4èø¿ÿÿÃCÇEøÈEø‰D$ƒˆ‰D$ ƒ/ìÿÿ‰D$‹E‰D$‹E ‰$èk ÿÿ…Àu ÇEèÿÿÿÿëOè ›ÿÿ‹U‰B‹Eø=Èt‹Eø‹U‹R‰D$‰$è–ÿÿ‹EÇ@ ‹EÇ@‹EÇ@ÇEè‹EèƒÄ4[]ÃU‰åSƒìèM¿ÿÿÃZBƒRìÿÿ‰D$‹E‰$è¿îÿÿƒÄ[]ÃU‰åSƒì4è ¿ÿÿÃ-BÇEøEø‰D$Eô‰D$ƒh‰D$ ƒcìÿÿ‰D$‹E‰D$‹E ‰$茟ÿÿ…Àu ÇEèÿÿÿÿëT‹Eô‰$èœÿÿ‰Â‹E‰P‹Eø…Àt‹Eø‹U‹R‰D$‰$è •ÿÿ‹EÇ@ ‹EÇ@‹EÇ@ÇEè‹EèƒÄ4[]ÃU‰åSƒìèi¾ÿÿÃvA‹E‹@…Àt*‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‰$èÿÿƒÄ[]ÃU‰åSƒìè¾ÿÿÃA‹M‹E·@ ·Ð‹E‹@‰L$ ‰T$‰D$ƒ˜ìÿÿ‰$蜘ÿÿƒÄ[]ÃU‰åSƒì4èͽÿÿÃÚ@Eò‰D$Eô‰D$ƒ˜‰D$ ƒ³ìÿÿ‰D$‹E‰D$‹E ‰$è@žÿÿ…Àu ÇEèÿÿÿÿëT‹Eô‰$è–ÿÿ‰Eøƒ}øÿu ÇEèÿÿÿÿë7‹U‹Eø‰B·Uò‹Ef‰P ‹EfÇ@‹Uô‹ƒÀ‰‹Uô‹E‰PÇEè‹EèƒÄ4[]ÃU‰åSƒìè½ÿÿÃ*@‹ƒôÿÿÿÇ@TëE“4¼ÿÿ‹ƒôÿÿÿ‰”“Ÿ¼ÿÿ‹ƒôÿÿÿ‰ “¸ÿÿ‹ƒôÿÿÿ‰P‹“ôÿÿÿƒÈ ‰Bt“/·ÿÿ‹ƒôÿÿÿ‰P,“J·ÿÿ‹ƒôÿÿÿ‰P\““·ÿÿ‹ƒôÿÿÿ‰P`‹“ôÿÿÿƒH‰B|‹ƒôÿÿÿÇ@h‹ƒôÿÿÿÇ€ ‹ƒôÿÿÿ‹€˜…Àu‹ƒôÿÿÿ‹“øÿÿÿ‰˜‹ƒôÿÿÿ‹€œ…Àu‹ƒôÿÿÿ‹“ˆÿÿÿ‰œ‹ƒôÿÿÿ‰$èZ“ÿÿ…À…R‹ƒôÿÿÿ‰D$ƒËìÿÿ‰D$‹E‰$èc’ÿÿ“¼ÿÿ‹ƒÄÿÿÿ‰P,‹ƒÄÿÿÿÇ@Të‹“Äÿÿÿ‹ƒôÿÿÿ‰‚€“ï¼ÿÿ‹ƒÄÿÿÿ‰”‹ƒÄÿÿÿ‹€˜…Àu‹ƒÄÿÿÿ‹“øÿÿÿ‰˜‹ƒÄÿÿÿ‹€œ…Àu‹ƒÄÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÄÿÿÿ‰$è¡’ÿÿ…À…™‹ƒÄÿÿÿ‰D$ƒÒìÿÿ‰D$‹E‰$誑ÿÿ“š½ÿÿ‹ƒÐÿÿÿ‰P,‹ƒÐÿÿÿÇ@Të‹“Ðÿÿÿ‹ƒôÿÿÿ‰‚€“ǽÿÿ‹ƒÐÿÿÿ‰”‹ƒÐÿÿÿ‹€˜…Àu‹ƒÐÿÿÿ‹“øÿÿÿ‰˜‹ƒÐÿÿÿ‹€œ…Àu‹ƒÐÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÐÿÿÿ‰$èè‘ÿÿ…À…à‹ƒÐÿÿÿ‰D$ƒ×ìÿÿ‰D$‹E‰$èñÿÿ“~¾ÿÿ‹ƒ ÿÿÿ‰P“Õ¾ÿÿ‹ƒ ÿÿÿ‰P,‹ƒ ÿÿÿÇ@Të‹“ ÿÿÿƒH‰Bx“¿ÿÿ‹ƒ ÿÿÿ‰”‹ƒ ÿÿÿ‹€˜…Àu‹ƒ ÿÿÿ‹“øÿÿÿ‰˜‹ƒ ÿÿÿ‹€œ…Àu‹ƒ ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ ÿÿÿ‰$è#‘ÿÿ…Àu‹ƒ ÿÿÿ‰D$ƒßìÿÿ‰D$‹E‰$è0ÿÿƒÄ[]ÃU‰åSƒì诹ÿÿü<‹E‰$è;•ÿÿ‰$èÓ’ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿƒÄ[]ÃU‰åSƒìèk¹ÿÿÃx<‹E‰$è÷”ÿÿ‰$è’ÿÿ‹ƒ¤ÿÿÿ‹ ‹E‰$ÿÒƒÄ[]ÃU‰åSƒìè,¹ÿÿÃ9<‹ƒœÿÿÿ‹ƒíÿÿ‰D$‰$èé˜ÿÿ¸ÿÿÿÿƒÄ[]ÃU‰åSƒì$èõ¸ÿÿÃ<‹ƒìÿÿÿ‹@‰$è‹•ÿÿ‰Â‹ƒìÿÿÿ‰D$‰$è÷”ÿÿ‰Eø‹Uø‹E‰B‹EøƒÄ$[]ÃU‰åSƒì$詸ÿÿö;‹E‰EðèÕ’ÿÿ‰Eø‹Eð‹@…Àt&‹Eð‹P‹Eð‹‰T$ƒ)íÿÿ‰D$‰ $èÇÿÿ‰Eôë‹Eð‹ÇD$‰$è­ÿÿ‰Eôƒ}ôt)‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒëèf–ÿÿ‹Eð‹‹ƒê‰‹…Àu‹Eð‹‹@‹P‹Eð‹‰$ÿÒ‹Eð‹@…Àt*‹Eð‹@‹ƒê‰‹…Àu‹Eð‹@‹@‹P‹Eð‹@‰$ÿÒ‹Eð‰D$Ç$èè˜ÿÿ‹Eø‰$è½’ÿÿƒÄ$[]ÃU‰åWVSì¬è‰·ÿÿÖ:ÇEÄÇEЋƒàÿÿÿ‰EÀÇE¼ÇE¸ÇE´ÇE°ÿÿÿÿÇE¬ÿÿÿÿÇE¨ÿÿÿÿÇE¤ÇE ÇEœÇEàÇE˜ÇE”ÿÿÿÿEœ‰D$0E ‰D$,E¤‰D$(E¼‰D$$EÀ‰D$ E´‰D$E¸‰D$EĉD$EȉD$ƒˆ‰D$ ƒ‘íÿÿ‰D$‹E‰D$‹E ‰$è`—ÿÿ…Àu ÇEˆé‹E¤…Àt‹E¤‰$èÿÿ…ÀtE°‰EÔëÇEÔ‹E …Àt‹E ‰$èéŽÿÿ…ÀtE¬‰EØëÇEØ‹Eœ…Àt‹Eœ‰$èÄŽÿÿ…ÀtE¨‰EÜëÇEÜ‹Eȉ$è&“ÿÿ…Àu&‹ƒœÿÿÿ‹ƒ°íÿÿ‰D$‰$èè•ÿÿÇEˆéa‹Eȉ$豑ÿÿ‰Eä‹EäƒÀÀÀ‰$è\”ÿÿ‰EÌÇEèéì‹EÈ‹@‹@4‹H ‹UÈ‹Eè‰D$‰$ÿщEì‹Eì‹P‹ƒðÿÿÿ9Âtz‹Eì‹P‹ƒðÿÿÿ‰D$‰$è—‘ÿÿ…Àu^‹ƒœÿÿÿ‹ƒ°íÿÿ‰D$‰$èI•ÿÿ‹Ẻ$讋ÿÿƒ}ìt'‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒÇEˆéŠ‹EèÀÀ‰ÆuÌ‹Eì‰$èž‹ÿÿ‰‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒƒEè‹Eè;EäŒÿÿÿ‹EÄ…À„v‹Eĉ$è¿‘ÿÿ…Àu1‹ƒœÿÿÿ‹ƒðíÿÿ‰D$‰$è”ÿÿ‹Ẻ$èæŠÿÿÇEˆéï‹Eĉ$è?ÿÿ‰Eä‹EäƒÀÀÀ‰$èê’ÿÿ‰EÐÇEèéû‹EÄ‹@‹@4‹H ‹UÄ‹Eè‰D$‰$ÿщEð‹Eð‹P‹ƒðÿÿÿ9„…‹Eð‹P‹ƒðÿÿÿ‰D$‰$è!ÿÿ…Àui‹ƒœÿÿÿ‹ƒðíÿÿ‰D$‰$èÓ“ÿÿ‹EЉ$è8Šÿÿƒ}ðt'‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Ẻ$èŠÿÿÇEˆé ‹EèÀÀ‰ÆuЋEð‰$èŠÿÿ‰‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒEè‹Eè;EäŒùþÿÿ‹EÀ‹“àÿÿÿ9Є”‹EÀ‰$蘔ÿÿ…ÀuB‹ƒœÿÿÿ‹ƒ0îÿÿ‰D$‰$èú’ÿÿ‹Ẻ$è_‰ÿÿƒ}Ðt ‹EЉ$èN‰ÿÿÇEˆéWÇ$è&ÿÿ‰Eà‹UÀ‹Eà‰‹U¼‹Eà‰P‹Eà‹‹ƒÀ‰‹Eà‹@…Àt ‹Eà‹P‹ƒÀ‰‹EÀ‹“àÿÿÿ9Ðt ƒ>Äÿÿ‰EŒëÇEŒ‹E´‰Â‹M¸E˜‰D$(‹E܉D$$‹E؉D$ ‹EÔ‰D$E”‰D$‹Eà‰D$‹EŒ‰D$‰T$ ‹EЉD$‹ẺD$‰ $è‹ÿÿ…À…§‹Ẻ$èzˆÿÿƒ}Ðt ‹EЉ$èiˆÿÿƒ}àtn‹Eà‹‹ƒê‰‹…Àu‹Eà‹‹@‹P‹Eà‹‰$ÿÒ‹Eà‹@…Àt*‹Eà‹@‹ƒê‰‹…Àu‹Eà‹@‹@‹P‹Eà‹@‰$ÿÒ‹Eà‰D$Ç$èå’ÿÿE˜‰$èz“ÿÿÇEˆéó‹Ẻ$èÓ‡ÿÿƒ}Ðt ‹EЉ$è‡ÿÿƒ}Ôt‹EÔ‹‰$è?Œÿÿ‰E¤ë‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰E¤ƒ}Øt‹EØ‹‰$è Œÿÿ‰E ë‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰E ƒ}Üt‹EÜ‹‰$è׋ÿÿ‰Eœë‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eœ‹uœ‹} ‹U¤‰U‹E”‰$èÁ÷ÿÿ‰t$‰|$ ‹U‰T$‰D$ƒ_îÿÿ‰$èN’ÿÿ‰Eˆ‹EˆÄ¬[^_]ÃU‰åSƒìè„°ÿÿÑ3‹“ìÿÿÿ‹ƒ¤ÿÿÿ‰‚€‹ƒìÿÿÿÇ@Të‹“ìÿÿÿƒh‰Bt‹“ìÿÿÿƒ»Ãÿÿ‰‚”“|Ãÿÿ‹ƒìÿÿÿ‰ ‹ƒìÿÿÿ‹€˜…Àu‹ƒìÿÿÿ‹“øÿÿÿ‰˜‹ƒìÿÿÿ‹€œ…Àu‹ƒìÿÿÿ‹“ˆÿÿÿ‰œ‹ƒìÿÿÿ‰$è‡ÿÿ…Àu‹ƒìÿÿÿ‰D$ƒdîÿÿ‰D$‹E‰$è$†ÿÿƒÄ[]ÃU‰åVSè[î2ƒpþÿÿPü‹@üƒøÿt‰Ö¶¿ÿЋFüƒîƒøÿuó[^]ÃU‰åSƒìè[Ãh2èD‘ÿÿZ[]Ãexpecting at most one keyword argumentkeyword argument name is not a stringpriorityonly 'priority' keyword argument acceptedcould not get priority valueidle_add requires at least 1 argumentO:idle_addfirst argument not callable(ON)timeout_add requires at least 2 argsIO:timeout_addsecond argument not callabletimeout_add_seconds requires at least 2 argsIO:timeout_add_secondsiowatch_marshaluser_data != NULL(Oi)glib.io_add_watch callback returned None; should return True/Falseio_add_watch requires at least 3 argsOiO:io_add_watchthird argument not callable(OON)i:source_removeiiOiipidfunctiondataiO|Oi:glib.child_watch_addglib.child_watch_add: second argument must be callabletexts#:glib.markup_escape_textdirectoryi:glib.get_user_special_dirs:glib.filename_display_names:glib.filename_display_basenames#:glib.filename_from_utf8first argument must be a string, not '%s'idle_addidle_add(callable, user_data=None, priority=None) -> source id callable receives (user_data) Adds a callable to be called whenever there are no higher priority events pending to the default main loop.timeout_addtimeout_add(interval, callable, user_data=None, priority=None) -> source id callable receives (user_data) Sets a callable be called repeatedly until it returns False.timeout_add_secondstimeout_add(interval, callable, user_data=None, priority=None) -> source_id callable receives (user_data) Sets a callable be called repeatedly until it returns False. Use this if you want to have a timer in the "seconds" range and do not care about the exact time of the first call of the timer, use this for more efficient system power usage.io_add_watchio_add_watch(fd, condition, callback, user_data=None) -> source id callable receives (fd, condition, user_data) Arranges for the fd to be monitored by the main loop for the specified condition. Condition is a combination of glib.IO_IN, glib.IO_OUT, glib.IO_PRI, gio.IO_ERR and gio.IO_HUB. child_watch_addchild_watch_add(pid, callable, user_data=None, priority=None) -> source id callable receives (pid, condition, user_data) Sets the function specified by function to be called with the user data specified by data when the child indicated by pid exits. Condition is a combination of glib.IO_IN, glib.IO_OUT, glib.IO_PRI, gio.IO_ERR and gio.IO_HUB.source_removesource_remove(source_id) -> True if removed Removes the event source specified by source id as returned by the glib.idle_add(), glib.timeout_add() or glib.io_add_watch() functions.spawn_asyncspawn_async(argv, envp=None, working_directory=None, flags=0, child_setup=None, user_data=None, standard_input=None, standard_output=None, standard_error=None) -> (pid, stdin, stdout, stderr) Execute a child program asynchronously within a glib.MainLoop() See the reference manual for a complete reference.main_context_defaultmain_context_default() -> a main context Returns the default main context. This is the main context used for main loop functions when a main loop is not explicitly specified.main_depthmain_depth() -> stack depth Returns the depth of the stack of calls in the main context.filename_display_namefilename_display_basenamefilename_from_utf8get_application_nameset_application_nameget_prgnameset_prgnameget_current_timeget_user_cache_dirget_user_config_dirget_user_data_dirget_user_special_dirmarkup_escape_text_PyGLib_APImessageglib.GErrorGError(iii)glib_versionpyglib_versionSPAWN_LEAVE_DESCRIPTORS_OPENSPAWN_DO_NOT_REAP_CHILDSPAWN_SEARCH_PATHSPAWN_STDOUT_TO_DEV_NULLSPAWN_STDERR_TO_DEV_NULLSPAWN_CHILD_INHERITS_STDINSPAWN_FILE_AND_ARGV_ZEROPRIORITY_HIGHPRIORITY_DEFAULTPRIORITY_HIGH_IDLEPRIORITY_DEFAULT_IDLEPRIORITY_LOWIO_INIO_OUTIO_PRIIO_ERRIO_HUPIO_NVALIO_STATUS_ERRORIO_STATUS_NORMALIO_STATUS_EOFIO_STATUS_AGAINIO_FLAG_APPENDIO_FLAG_NONBLOCKIO_FLAG_IS_READABLEIO_FLAG_IS_WRITEABLEIO_FLAG_IS_SEEKABLEIO_FLAG_MASKIO_FLAG_GET_MASKIO_FLAG_SET_MASKOPTION_FLAG_HIDDENOPTION_FLAG_IN_MAINOPTION_FLAG_REVERSEOPTION_FLAG_NO_ARGOPTION_FLAG_FILENAMEOPTION_FLAG_OPTIONAL_ARGOPTION_FLAG_NOALIASOPTION_ERROR_UNKNOWN_OPTIONOPTION_ERROR_BAD_VALUEOPTION_ERROR_FAILEDUSER_DIRECTORY_DESKTOPUSER_DIRECTORY_DOCUMENTSUSER_DIRECTORY_DOWNLOADUSER_DIRECTORY_MUSICUSER_DIRECTORY_PICTURESUSER_DIRECTORY_PUBLIC_SHAREUSER_DIRECTORY_TEMPLATESUSER_DIRECTORY_VIDEOSOPTION_REMAININGOPTION_ERRORglib._glibglib.IOChannelEOFflush|O:glib.IOChannel.shutdownsizei:glib.IOChannel.set_buffer_sizebufferedi:glib.IOChannel.set_bufferedencodingz:glib.IOChannel.set_encodingmax_count|i:glib.IOChannel.readbufs#:glib.IOChannel.writelinesO:glib.IOChannel.writelinesglib.IOChannel.writelines must be sequence/iterator of stringsflagsi:glib.IOChannel.set_flagsdo_closeO:glib.IOChannel.set_close_on_unrefpyg_iowatch_marshaluser_data != NULL((PyGIOChannel *) data->iochannel)->channel == sourceOiOOiconditioncallbackuser_datapriorityiO|Oi:glib.IOChannel.add_watchsecond must be callable|i:glib.IOChannel.readline|i:glib.IOChannel.readlinesoffsetwhenceL|i:glib.IOChannel.seekinvalid 'whence' valuesoftspacecloseset_encodingget_encodingset_bufferedget_bufferedset_buffer_sizeget_buffer_sizereadreadlinereadlineswritewritelinesset_flagsget_flagsget_buffer_conditionset_close_on_unrefget_close_on_unrefadd_watchseekfiledesfilenamemoder|iss:glib.IOChannel.__init__either a valid file descriptor or file name must be suppliedIOChannelglib.OptionContexts:glib.GOptionContext.__init__pyg_option_context_parseargvO:GOptionContext.parseGOptionContext.parse expects a list of strings.help_enableO:GOptionContext.set_help_enabledignore_unknown_optionsO:GOptionContext.set_ignore_unknown_optionsgroupO:GOptionContext.set_main_groupGOptionContext.set_main_group expects a GOptionGroup.Group is already in a OptionContext.O:GOptionContext.add_groupGOptionContext.add_group expects a GOptionGroup.parseset_help_enabledget_help_enabledset_ignore_unknown_optionsget_ignore_unknown_optionsset_main_groupget_main_groupadd_group_get_contextOptionContextglib.OptionGroupThe GOptionGroup was not created by glib.OptionGroup(), so operation is not possible.namedescriptionhelp_descriptioncallbackzzzO:GOptionGroup.__init__sOOssOentriesO:GOptionGroup.add_entriesGOptionGroup.add_entries expected a list of entriessciszdomainThe corresponding GOptionGroup was already freed, probably through the release of GOptionContextz:GOptionGroup.set_translate_domainadd_entriesset_translation_domainOptionGroupglib.MainContext|i:GMainContext.iterationiterationpendingMainContextpyg_signal_watch_dispatchpygmainloop.cglib.MainLoopcontextis_running|Ob:GMainLoop.__init__context must be a glib.MainContext or Nonepyg_save_current_main_loopmain_loop != NULLpyg_restore_current_main_looppyg_current_main_loop_key != -1get_contextquitrunMainLoopglib.Sourceattachedunattacheddestroyed<%s glib %s source at 0x%lx><%s glib source at 0x%lx>context|O!:attachsource is destroyedset_callback requires at least 1 argumentO:set_callbackfirst argument not callable(ON)fdadd_poll can only be used with sources implemented in pythonO!:add_pollremove_poll can only be used with sources implemented in pythonO!:remove_pollattachdestroyset_callbackget_contextadd_pollremove_pollget_current_timecannot delete prioritytype mismatchcannot delete can_recursesource is not attached__dict__prioritycan_recurseidpreparesource prepare function must return a tuple or Falsesource prepare function return tuple must be exactly 2 elements longcheckOOdispatchfinalizeglib.Idleidle|i:glib.Idle.__init__glib.TimeouttimeoutintervalI|i:glib.Timeout.__init__glib.PollFDeventsreventsOH:glib.PollFD.__init__SourceIdleTimeoutPollFDíµ ÷ư>glib.Pidcloseglib.Pid cannot be manually instantiatedOargvenvpworking_directoryflagschild_setupuser_datastandard_inputstandard_outputstandard_errorO|OsiOOOOO:glib.spawn_asyncglib.spawn_async: first argument must be a sequence of stringsglib.spawn_async: second argument must be a sequence of stringschild_setup parameter must be callable or NoneNNNNPidÿÿÿÿÿÿÿÿ :Nbr}Ž˜ ø4 „¯´$ · øáÐ(/Ð&Xþÿÿo€&ÿÿÿoðÿÿoÜ$úÿÿoó€ò í€ìÀæÀð@ë ñ é óàîxà>5N5^5n5~5Ž5ž5®5¾5Î5Þ5î5þ566.6>6N6^6n6~6Ž6ž6®6¾6Î6Þ6î6þ677.7>7N7^7n7~7Ž7ž7®7¾7Î7Þ7î7þ788.8>8N8^8n8~8Ž8ž8®8¾8Î8Þ8î8þ899.9>9N9^9n9~9Ž9ž9®9¾9Î9Þ9î9þ9::.:>:N:^:n:~:Ž:ž:®:¾:Î:Þ:î:þ:;;.;>;N;^;n;~;Ž;ž;®;¾;Î;Þ;î;þ;<<.<><N<^<n<~<Ž<ž<®<¾<Î<Þ<î<þ<==.=>=N=^=n=~=Ž=ž=®=¾=Î=Þ=î=þ=>>.>>>N>^>n>~>Ž>ž>®>¾>Î>Þ>î>þ>??.?>?N?^?n?~?Ž?ž?®?¾?Î?Þ?î?þ?@@.@>@N@^@n@~@Ž@ž@®@¾@Î@åpಠ²²î¯o²²:³CD³´ñD´Ñ´âFè´N¶J\¶€·§N·ë¸ÑLü¸±¹Q§À¹»+M,»Û»1Rè»A¼VRW¼ÞRq¼fS„¼,T™¼T®¼'Uº¼|UƼhP×¼Pê¼òPþ¼GQ½œQ%½ØO<ÁOÁpÁ™ÁÀÁçÁ Â%‡¨Â=ÃGÃPÃZÃpÁpÁÒÃÙÃÄ ÄZ`OÁGhÄxb,Ä$c9ÄÄaFÄJbSÄacÄ–asÄ‚cxÄ nÄìn‹Äte‘Ä6fœÄ±h¦ÄRi°Ä€iÅÄ®iØÄ>jëĪlõÄŽpúÄÅ ÅxÅÄÅÆ>ƄƄÆUǵt[Ç^wlÇîw}Çx˜Ç¬x³ÇÚxÂÇìyÑÇ@zÛÇ‹{øÇbÈgÈsȄȰÈÉ ÉØ¬ÉcƒÏÉ úɆʠ†ÿÿÿÿ¨‡å‡ˆˆÊˆ@ÊNÊVÊË2‹VÊ`‹ËŽ‹!ËÍ‹0Ë‘ËÌ̳ÌJºÌ=ÂÌ‘ÏÌû’Û̆“äÌv”ðÌf•WÍô•`ÍO–°–iÍ™—ú—uÍ‘˜NšÍ›mœiÎ`Í=ÎRÎ`ÍuÎÌÎ ˆÎ ÌÎèÎ ñÎ0¥#Ï(Ï-Ï?ÏEÏQÏ[ÏjÏzÏGCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2.symtab.strtab.shstrtab.hash.dynsym.dynstr.gnu.version.gnu.version_r.rel.dyn.rel.plt.init.text.fini.rodata.eh_frame.ctors.dtors.jcr.dynamic.got.got.plt.data.bss.comment´´`!  )$$·1ÿÿÿoÜ$Ü$¢>þÿÿo€&€&PM Ð&Ð&XV (/(/Ð _ø4ø4/Z(5(5° eà@à@¤nk„¯„¯q ¯ ¯À y`Ð`ЃdàdЊlàlБtàtЖxàxÐøŸpápш¤øáøÑô­åÕ¨ ³¨ô¨ä¸¨äØ€åÁTê ú ôÎ"dàlàtà*à@ @¨ôOåVPA bhàopà|`Ð Štà–@¯ ¬ŒA‚ ÁCã ÑñDñ äâFñ ÿ,± ÓHº )JD =ÑLZ R+M% nPMË NŒ “å §N1 ·åÄØO ÞhP5 öPU òPU +GQU D$åQœQ• m1R% VRˆ œÞRˆ ½fSÆ ×,TU óT¦ 'UU "|U¦ 5@åpE¬ôP"V d¡V¯ zPWü ™LXÍ ³ð^Ë Æ»_D Üÿ_ ó`  `; €ç)Z`´ @ˆçMaˆ k–a. ‰ç–Äa† ±Jb. ̘çÙxb¬ ô$c^  ç‚cò 5¨çBte \°çi6f ƒGhj —¸ç¤±h¡ ¼Ri. Ô€i. ÷Àç®i %>j_ Fj° \ØÂ vMk] ŠÈç—ªl_ ¯Üç¼ nã Ôäçáìn¢ úìç Žp è(0@èPFéS¨q  fÈs^ ~&t ™«Å ³`êÀµt© Ùhêæ^w îw. .pê;x i¬x. —xê¤Úx ÆìyT è€êõ@z  G{D - ‹{. D  ê _ ˜|O n ç|ä ~ ì‹ Ë}Ì ¡ —~[ º ò~æ à ìÐ Ø‹ í ìú cƒÎ " 1„D ; @ì0T P…* j z…E ƒ ¿…D œ † »  †. Ø @í0ð pí ¨‡= # å‡c : Hˆ@ T Ê n ˆˆB ˆ ʈT ¢ €í¹ ‰. Î `î Û L‰; î ‡Šg  îŠD  2‹. 8 `‹. U Ž‹? l Í‹Ÿ ‚ lŒ¢  » £Ê Õ ÐÊ ï €îP xŽÒ   ï Jó / =Æ B ‘ø Z û’‹ q ¨ï~ †“ð ’ °ïŸ v”ð ¶ f•Ž Ò Àï€å ô•[ ù O–a °–é )™—a Dú—— _‘˜– q@ðd„'™ ”B™I ¨‹™ ¹ šD ÌNš ßÍ›  ðmœü ià ¤ð),žk 9—ž# Iºž- W€ñdçž« r’Ÿ- ƒ`ò ¿Ÿ· ¡@óPµv W ÉÍ E Úó ç¡° ø0¥D `ô t¥? #³¥7 36¦ M€ô(Z„¯ `ê¥L l¡l ‰øáñÿŸ€òÀ® íÀ¿€ìÀÓÀæÀåΆÙ ³r 'ÀðÀ4åA@ëÀU ñÀežÙ „ éÀšQ§  ­¹{Ù Ò¨ôñÿÞ’| õu„Ù ¼ôñÿ[®ß 9 óÀE¨ôñÿLàîÀ[ë^ rxàñÿ{ø4´$Ü$€&Ð&(/ø4(5 à@ „¯  ¯ `Ð dàlàtàxàpáøáå¨ô;ˆ™Ÿ´Ç¾Ýìþ$ª.ÛDÀX]„“e°¼Zè#õÛ -‰>áTuvÿŒ¤¿ Î â‘ø& #B<bE]m‚’ž²Ï\äôU;kQ‰Zeäƒêœ·ÃlÓì¸ù #U3@M`&wm…‘š±ÀÚÁõw k&„=ÆRkjÉ} –©¾Ðçö+.«ETf^Ò p¹ƒ¯•¢[»$ ÒÞ4éGû`ë*;H`aq‚•¡û¸\Ïà§û 6y3JŠan^Ž¢²PÊ3Úìèeù !Ð3\HFb`wŽ€ž²1É×êúUp%4GUcz¼‰Ôë÷¹ C%‘/)D¶Tdgv£¡¯ÃÐèôb~€+?_NVbrˆE­¾ôÎÞD f # J. H ¹c [… “ ¥¨ \È Šß ¹ú Y!4! F!¡f!ø~!5Ž!, !Uº!Å!Ù!ºí!Äû!Ú""("ÿ6"Q"[k"y"Ž"™"Z»"’__CTOR_LIST____DTOR_LIST____JCR_LIST____do_global_dtors_auxcompleted.5958p.5956frame_dummy__CTOR_END____DTOR_END____FRAME_END____JCR_END____do_global_ctors_auxget_handler_prioritypyglib_idle_addpyglib_timeout_addpyglib_timeout_add_seconds__PRETTY_FUNCTION__.14385iowatch_marshalpyglib_io_add_watchpyglib_source_removepyglib_main_context_defaultchild_watch_funcchild_watch_dnotifykwlist.14575pyglib_child_watch_addkwlist.14614pyglib_markup_escape_textpyglib_get_current_timepyglib_get_user_cache_dirpyglib_get_user_config_dirpyglib_get_user_data_dirkwlist.14676pyglib_get_user_special_dirpyglib_main_depthpyglib_filename_display_namepyglib_filename_display_basenamepyglib_filename_from_utf8pyglib_get_application_namepyglib_set_application_namepyglib_get_prgnamepyglib_set_prgname_glib_functionspyglib_apipyglib_register_apipyglib_register_errorpyglib_register_version_tuplespyglib_register_constantspy_io_channel_nextpy_io_channel_comparepy_io_channel_get_iterpy_io_channel_hashpy_io_channel_deallockwlist.14233py_io_channel_shutdownkwlist.14257py_io_channel_set_buffer_sizepy_io_channel_get_buffer_sizekwlist.14283py_io_channel_set_bufferedpy_io_channel_get_bufferedkwlist.14307py_io_channel_set_encodingpy_io_channel_get_encodingkwlist.14340py_io_channel_read_charskwlist.14430py_io_channel_write_charskwlist.14456py_io_channel_write_linespy_io_channel_flushkwlist.14543py_io_channel_set_flagspy_io_channel_get_flagspy_io_channel_get_buffer_conditionkwlist.14583py_io_channel_set_close_on_unrefpy_io_channel_get_close_on_unrefpyg_iowatch_data_free__PRETTY_FUNCTION__.14660pyg_iowatch_marshalkwlist.14698py_io_channel_add_watchkwlist.14744py_io_channel_read_linekwlist.14772py_io_channel_read_lineskwlist.14829py_io_channel_seekpy_io_channel_memberspy_io_channel_methodskwlist.14862py_io_channel_initpyg_option_context_initpyg_option_context_dealloc__PRETTY_FUNCTION__.14171kwlist.14157pyg_option_context_parsekwlist.14255pyg_option_context_set_help_enabledpyg_option_context_get_help_enabledkwlist.14280pyg_option_context_set_ignore_unknown_optionspyg_option_context_get_ignore_unknown_optionskwlist.14305pyg_option_context_set_main_grouppyg_option_context_get_main_groupkwlist.14351pyg_option_context_add_grouppyg_option_context_comparepyg_option_get_contextpyg_option_context_methodscheck_if_owneddestroy_g_groupkwlist.14156pyg_option_group_initpyg_option_group_deallocarg_funckwlist.14222pyg_option_group_add_entrieskwlist.14331pyg_option_group_set_translation_domainpyg_option_group_comparepyg_option_group_methodspyg_main_context_initpyg_main_context_deallocpyg_main_context_compare_wrap_g_main_context_iteration_wrap_g_main_context_pending_PyGMainContext_methodspyg_current_main_loop_keypyg_signal_watch_preparepyg_signal_watch_checkpyg_get_current_main_loop__PRETTY_FUNCTION__.14235pyg_signal_watch_dispatchpyg_signal_watch_finalizepyg_signal_watch_funcspyg_signal_watch_newkwlist.14265pyg_main_loop_initpyg_main_loop_deallocpyg_main_loop_compare_wrap_g_main_loop_get_context_wrap_g_main_loop_is_running_wrap_g_main_loop_quit_wrap_g_main_loop_runpyg_save_current_main_looppyg_restore_current_main_loop__PRETTY_FUNCTION__.14165__PRETTY_FUNCTION__.14183_PyGMainLoop_methodssource_reprkwlist.14226pyg_source_attachpyg_source_destroypyg_source_set_callbackpyg_source_get_contextkwlist.14360pyg_source_add_pollkwlist.14385pyg_source_remove_pollpyg_source_get_current_timepyg_source_methodspyg_source_get_dictpyg_source_get_prioritypyg_source_set_prioritypyg_source_get_can_recursepyg_source_set_can_recursepyg_source_get_idpyg_source_getsetspyg_source_reprpyg_source_traversepyg_source_clearpyg_source_deallocpyg_source_preparepyg_source_checkpyg_source_dispatchpyg_source_finalizepyg_source_funcspyg_source_initpyg_source_freepyg_idle_reprkwlist.14736pyg_idle_initpyg_timeout_reprkwlist.14761pyg_timeout_initpyg_poll_fd_memberspyg_poll_fd_deallocpyg_poll_fd_reprkwlist.14809pyg_poll_fd_initpyg_pid_closepyg_pid_methodspyg_pid_freepyg_pid_tp_init_pyg_spawn_async_callbackkwlist.14191_finipyg_pid_newpyglib_source_register_types_GLOBAL_OFFSET_TABLE_PyGPollFD_TypePyGMainLoop_TypePyGMainContext_TypePyGIOChannel_Typepyglib_maincontext_register_typespyglib_iochannel_register_typesPyGIdle_Type__dso_handlePyGOptionGroup_TypePyGTimeout_Typepyglib_mainloop_register_typesPyGOptionContext_Typepyglib_spawn_asyncpyglib_option_context_register_types__bss_start__i686.get_pc_thunk.cxpyglib_option_group_register_types_endpyglib_spawn_register_typesPyGPid_Type_edataPyGSource_Type__i686.get_pc_thunk.bx_DYNAMIC_initg_freeg_io_channel_get_flagsPyDict_SetItemStringglib_major_versiong_source_set_priority_Py_ZeroStructPyString_AsStringPyExc_StopIterationPyType_GenericNewg_strdupvg_io_channel_shutdowng_io_add_watch_fullg_option_context_get_ignore_unknown_optionsPyList_GetItemg_io_channel_set_buffer_sizePyIter_Nextg_option_context_set_ignore_unknown_optionsg_slist_freeg_io_channel_set_encodingPyExc_ValueErrorPyType_Readyg_main_loop_quitg_io_channel_unix_newg_io_channel_get_buffer_conditiong_option_context_freePyLong_FromUnsignedLongPyModule_AddStringConstant__gmon_start___Jv_RegisterClassesg_source_set_callbackg_option_error_quarkPyCObject_FromVoidPtrg_source_set_can_recurseg_strdup_PyArg_ParseTuple_SizeTPyBool_FromLongg_markup_escape_textPyObject_GC_DelPyList_TypePyObject_GC_UnTrack_PyObject_CallFunction_SizeTpyglib_block_threadsPyObject_IsTruePyExc_TypeErrorPyObject_AsFileDescriptorg_io_channel_get_buffer_sizeg_io_channel_new_fileg_mallocPyInt_Typepyglib_gerror_exception_checkg_spawn_async_with_pipesPyString_FromStringAndSizePyDict_Nextg_source_get_idPyUnicodeUCS2_DecodeUTF8g_source_newg_spawn_close_pidPyModule_AddIntConstantg_main_loop_newg_main_depthPyErr_FormatPyFloat_FromDoubleg_io_channel_read_lineg_strv_lengthg_filename_from_utf8PyErr_ExceptionMatchesPyErr_Occurredg_io_channel_set_bufferedg_io_channel_seek_positiong_io_channel_write_charspyglib_main_context_new_pyglib_destroy_notifyg_source_remove_pollpyglib_gil_state_ensureg_main_context_newg_main_context_iterationglib_micro_versionPyEval_RestoreThreadPySequence_Concatg_get_application_name_Py_TrueStructg_slist_prependPyString_FromStringPyString_FromFormatg_io_channel_set_flagsPyInt_FromLongPyEval_SaveThreadinit_glibg_timeout_add_fullstrlen@@GLIBC_2.0PyTuple_Typepyglib_gil_state_releaseg_option_context_parsePyDict_Sizeg_snprintfg_idle_source_newg_source_get_can_recurseg_get_user_config_dirPyModule_GetDictPyInt_AsLongg_return_if_fail_warningPySequence_SizePyObject_GetIterPyExc_RuntimeErrorPyList_Sizeg_main_context_defaultpyglib_unblock_threadsPyType_IsSubtypeg_option_context_add_groupPyObject_Initg_slice_allocg_filename_display_basenamePyThread_get_key_valueg_main_loop_is_runningPyErr_WarnExg_io_channel_get_close_on_unrefPyObject_CallObjectPyObject_Mallocg_io_channel_read_charsg_slist_foreachg_get_prgnameclose@@GLIBC_2.0PySequence_CheckPyObject_ClearWeakRefsg_source_add_pollg_source_get_contextpyglib_float_from_timevalg_timeout_source_newPyObject_GetAttrStringg_source_removePyObject_IsInstanceg_set_application_namePyExc_Warningglib_minor_versiong_main_loop_refg_source_get_priorityg_main_context_unref_Py_NoneStructPyErr_NewExceptionPyList_AppendPyErr_SetNoneg_main_context_pendingPyErr_CheckSignals_pyglib_handler_marshalg_child_watch_add_fullg_main_loop_get_contextPyThread_set_key_valuePyErr_Printg_get_user_data_dirg_source_get_current_timeg_malloc0pyglib_init_internalg_idle_add_fullg_option_group_newPy_InitModule4PyString_AsStringAndSizeg_main_loop_unrefPyObject_FreePySequence_GetSlicePyTuple_SizePyExc_KeyboardInterruptPyErr_Clearg_io_channel_unrefg_source_destroyg_io_channel_flushPyThread_create_keyg_source_unrefg_assertion_messageg_option_group_set_translation_domaing_option_context_newPyTuple_GetItem_PyString_Resizeg_source_attachPyErr_SetStringpyglib_option_group_transfer_groupg_get_current_timePyList_SetItemg_strfreevPyThread_delete_key_valueg_timeout_add_seconds_fullg_option_context_get_help_enabledPyString_Typeg_get_user_cache_dirg_io_channel_set_close_on_unrefg_get_user_special_dirg_option_group_add_entriespyglib_threads_enabled_PyArg_ParseTupleAndKeywords_SizeTg_quark_to_stringg_option_context_set_main_groupg_filename_display_nameg_main_loop_runstrcmp@@GLIBC_2.0g_io_channel_get_encodingPyList_NewPyType_GenericAllocg_option_group_freeg_slice_free1__cxa_finalize@@GLIBC_2.1.3PyCallable_Checkg_set_prgname_PyObject_CallMethod_SizeTg_io_channel_get_bufferedPyObject_Repr_Py_BuildValue_SizeTPyDict_Newg_option_context_set_help_enabledpyglib_error_check./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/glib/option.py0000644000000000000000000003131611272036635024645 0ustar rootroot# -*- Mode: Python -*- # pygobject - Python bindings for the GObject library # Copyright (C) 2006 Johannes Hoelzl # # glib/option.py: GOption command line parser # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA """GOption command line parser Extends optparse to use the GOptionGroup, GOptionEntry and GOptionContext objects. So it is possible to use the gtk, gnome_program and gstreamer command line groups and contexts. Use this interface instead of the raw wrappers of GOptionContext and GOptionGroup in glib. """ import sys import optparse from optparse import OptParseError, OptionError, OptionValueError, \ BadOptionError, OptionConflictError import glib _glib = sys.modules['glib._glib'] __all__ = [ "OptParseError", "OptionError", "OptionValueError", "BadOptionError", "OptionConflictError" "Option", "OptionGroup", "OptionParser", "make_option", ] class Option(optparse.Option): """Represents a command line option To use the extended possibilities of the GOption API Option (and make_option) are extended with new types and attributes. Types: filename The supplied arguments are read as filename, GOption parses this type in with the GLib filename encoding. Attributes: optional_arg This does not need a arguement, but it can be supplied. hidden The help list does not show this option in_main This option apears in the main group, this should only be used for backwards compatibility. Use Option.REMAINING as option name to get all positional arguments. NOTE: Every argument to an option is passed as utf-8 coded string, the only exception are options which use the 'filename' type, its arguments are passed as strings in the GLib filename encoding. For further help, see optparse.Option. """ TYPES = optparse.Option.TYPES + ( 'filename', ) ATTRS = optparse.Option.ATTRS + [ 'hidden', 'in_main', 'optional_arg', ] REMAINING = '--' + _glib.OPTION_REMAINING def __init__(self, *args, **kwargs): optparse.Option.__init__(self, *args, **kwargs) if not self._long_opts: raise ValueError("%s at least one long option name.") if len(self._long_opts) < len(self._short_opts): raise ValueError( "%s at least more long option names than short option names.") if not self.help: raise ValueError("%s needs a help message.", self._long_opts[0]) def _set_opt_string(self, opts): if self.REMAINING in opts: self._long_opts.append(self.REMAINING) optparse.Option._set_opt_string(self, opts) if len(self._short_opts) > len(self._long_opts): raise OptionError("goption.Option needs more long option names " "than short option names") def _to_goptionentries(self): flags = 0 if self.hidden: self.flags |= _glib.OPTION_FLAG_HIDDEN if self.in_main: self.flags |= _glib.OPTION_FLAG_IN_MAIN if self.takes_value(): if self.optional_arg: flags |= _glib.OPTION_FLAG_OPTIONAL_ARG else: flags |= _glib.OPTION_FLAG_NO_ARG if self.type == 'filename': flags |= _glib.OPTION_FLAG_FILENAME for (long_name, short_name) in zip(self._long_opts, self._short_opts): yield (long_name[2:], short_name[1], flags, self.help, self.metavar) for long_name in self._long_opts[len(self._short_opts):]: yield (long_name[2:], '\0', flags, self.help, self.metavar) class OptionGroup(optparse.OptionGroup): """A group of command line options. Arguements: name: The groups name, used to create the --help-{name} option description: Shown as title of the groups help view help_description: Shown as help to the --help-{name} option option_list: The options used in this group, must be option.Option() defaults: A dicitionary of default values translation_domain: Sets the translation domain for gettext(). NOTE: This OptionGroup does not exactly map the optparse.OptionGroup interface. There is no parser object to supply, but it is possible to set default values and option_lists. Also the default values and values are not shared with the OptionParser. To pass a OptionGroup into a function which expects a GOptionGroup (e.g. gnome_program_init() ). OptionGroup.get_option_group() can be used. For further help, see optparse.OptionGroup. """ def __init__(self, name, description, help_description="", option_list=None, defaults=None, translation_domain=None): optparse.OptionContainer.__init__(self, Option, 'error', description) self.name = name self.parser = None self.help_description = help_description if defaults: self.defaults = defaults self.values = None self.translation_domain = translation_domain if option_list: for option in option_list: self.add_option(option) def _create_option_list(self): self.option_list = [] self._create_option_mappings() def _to_goptiongroup(self, parser): def callback(option_name, option_value, group): if option_name.startswith('--'): opt = self._long_opt[option_name] else: opt = self._short_opt[option_name] try: opt.process(option_name, option_value, self.values, parser) except OptionValueError: error = sys.exc_info()[1] gerror = _glib.GError(str(error)) gerror.domain = _glib.OPTION_ERROR gerror.code = _glib.OPTION_ERROR_BAD_VALUE gerror.message = str(error) raise gerror group = _glib.OptionGroup(self.name, self.description, self.help_description, callback) if self.translation_domain: group.set_translation_domain(self.translation_domain) entries = [] for option in self.option_list: entries.extend(option._to_goptionentries()) group.add_entries(entries) return group def get_option_group(self, parser = None): """ Returns the corresponding GOptionGroup object. Can be used as parameter for gnome_program_init(), gtk_init(). """ self.set_values_to_defaults() return self._to_goptiongroup(parser) def set_values_to_defaults(self): for option in self.option_list: default = self.defaults.get(option.dest) if isinstance(default, basestring): opt_str = option.get_opt_string() self.defaults[option.dest] = option.check_value( opt_str, default) self.values = optparse.Values(self.defaults) class OptionParser(optparse.OptionParser): """Command line parser with GOption support. NOTE: The OptionParser interface is not the exactly the same as the optparse.OptionParser interface. Especially the usage parameter is only used to show the metavar of the arguements. Attribues: help_enabled: The --help, --help-all and --help-{group} options are enabled (default). ignore_unknown_options: Do not throw a exception when a option is not knwon, the option will be in the result list. OptionParser.add_option_group() does not only accept OptionGroup instances but also glib.OptionGroup, which is returned by gtk_get_option_group(). Only glib.option.OptionGroup and glib.option.Option instances should be passed as groups and options. For further help, see optparse.OptionParser. """ def __init__(self, *args, **kwargs): if 'option_class' not in kwargs: kwargs['option_class'] = Option self.help_enabled = kwargs.pop('help_enabled', True) self.ignore_unknown_options = kwargs.pop('ignore_unknown_options', False) optparse.OptionParser.__init__(self, add_help_option=False, *args, **kwargs) def set_usage(self, usage): if usage is None: self.usage = '' elif usage.startswith("%prog"): self.usage = usage[len("%prog"):] else: self.usage = usage def _to_goptioncontext(self, values): if self.description: parameter_string = self.usage + " - " + self.description else: parameter_string = self.usage context = _glib.OptionContext(parameter_string) context.set_help_enabled(self.help_enabled) context.set_ignore_unknown_options(self.ignore_unknown_options) for option_group in self.option_groups: if isinstance(option_group, _glib.OptionGroup): g_group = option_group else: g_group = option_group.get_option_group(self) context.add_group(g_group) def callback(option_name, option_value, group): if option_name.startswith('--'): opt = self._long_opt[option_name] else: opt = self._short_opt[option_name] opt.process(option_name, option_value, values, self) main_group = _glib.OptionGroup(None, None, None, callback) main_entries = [] for option in self.option_list: main_entries.extend(option._to_goptionentries()) main_group.add_entries(main_entries) context.set_main_group(main_group) return context def add_option_group(self, *args, **kwargs): if isinstance(args[0], basestring): optparse.OptionParser.add_option_group(self, OptionGroup(self, *args, **kwargs)) return elif len(args) == 1 and not kwargs: if isinstance(args[0], OptionGroup): if not args[0].parser: args[0].parser = self if args[0].parser is not self: raise ValueError("invalid OptionGroup (wrong parser)") if isinstance(args[0], _glib.OptionGroup): self.option_groups.append(args[0]) return optparse.OptionParser.add_option_group(self, *args, **kwargs) def _get_all_options(self): options = self.option_list[:] for group in self.option_groups: if isinstance(group, optparse.OptionGroup): options.extend(group.option_list) return options def _process_args(self, largs, rargs, values): context = self._to_goptioncontext(values) # _process_args() returns the remaining parameters in rargs. # The prepended program name is used to all g_set_prgname() # The program name is cut away so it doesn't appear in the result. rargs[:] = context.parse([sys.argv[0]] + rargs)[1:] def parse_args(self, args=None, values=None): old_args = args or [] try: options, args = optparse.OptionParser.parse_args( self, args, values) except _glib.GError: error = sys.exc_info()[1] if error.domain != _glib.OPTION_ERROR: raise if error.code == _glib.OPTION_ERROR_BAD_VALUE: raise OptionValueError(error.message) elif error.code == _glib.OPTION_ERROR_UNKNOWN_OPTION: raise BadOptionError(error.message) elif error.code == _glib.OPTION_ERROR_FAILED: raise OptParseError(error.message) else: raise for group in self.option_groups: for key, value in group.values.__dict__.items(): options.ensure_value(key, value) args = args[2:-len(old_args)] return options, args make_option = Option ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gio/0000755000000000000000000000000011272036712022614 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gio/unix.la0000755000000000000000000000203311272036652024121 0ustar rootroot# unix.la - a libtool library file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='unix.so' # Names of this library. library_names='unix.so unix.so unix.so' # The name of the static archive. old_library='' # Linker flags that can not go in dependency_libs. inherited_linker_flags='' # Libraries that this one depends upon. dependency_libs=' /usr/lib/libgio-2.0.la -lresolv /usr/lib/libgobject-2.0.la /usr/lib/libgmodule-2.0.la -ldl /usr/lib/libglib-2.0.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for unix. current=0 age=0 revision=0 # Is this an already installed library? installed=yes # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/lib/python2.5/site-packages/gtk-2.0/gio' ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gio/unix.so0000755000000000000000000006237411272036706024164 0ustar rootrootELFp4 I4 (|:|:@@@äüÐAÐAÐAøøQåtd%@0; /!5394 "(-?&6=:*%<).8  $,#'1+27 >í;­3„ 8›'UpÕŒû÷T  Ò¿Žpr¸Îô+UÏïÁDUF4K¥¯Õa'´ÐŽé28âúg‚³rÀvÜ ÔvK¨<\N8 Ž…©QÏÌ–5¦¨kvU)©óÚ"]U•__gmon_start____cxa_finalize_Jv_RegisterClassesinitunixPy_InitModule4PyModule_GetDictPyImport_ImportModulePyErr_OccurredPyErr_FetchPyObject_ReprPyString_AsStringPyExc_ImportErrorPyErr_FormatPyErr_SetStringPyObject_GetAttrStringPyCObject_TypePyCObject_AsVoidPtrPyArg_ParseTupleg_pointer_type_register_staticg_snprintfPyExc_NotImplementedError_PyArg_ParseTupleAndKeywords_SizeTg_desktop_app_info_newPyExc_RuntimeErrorg_desktop_app_info_get_typeg_type_check_instance_castg_desktop_app_info_get_is_hiddenPyBool_FromLongg_unix_input_stream_newg_unix_input_stream_get_typeg_unix_input_stream_set_close_fd_Py_NoneStructg_unix_input_stream_get_close_fdg_unix_input_stream_get_fdPyInt_FromLongg_unix_output_stream_newg_unix_output_stream_get_typeg_unix_output_stream_set_close_fdg_unix_output_stream_get_close_fdg_unix_output_stream_get_fdg_desktop_app_info_new_from_filenameg_desktop_app_info_set_desktop_envPyType_IsSubtypeg_unix_mount_freePyExc_TypeErrorg_unix_mount_compareg_unix_mount_get_mount_pathPyString_FromStringg_unix_mount_get_device_pathg_unix_mount_get_fs_typeg_unix_mount_is_readonlyg_unix_mount_is_system_internalg_unix_mount_guess_can_ejectg_unix_mount_guess_should_displayg_unix_mount_guess_nameg_freeg_unix_mount_guess_iconPyLong_TypePyLong_AsUnsignedLongLongg_unix_mounts_changed_sinceg_unix_mount_points_changed_sinceg_unix_is_mount_path_system_internal_Py_BuildValue_SizeTlibgio-2.0.so.0libresolv.so.2libgobject-2.0.so.0libgmodule-2.0.so.0libdl.so.2libglib-2.0.so.0libc.so.6unix.soGLIBC_2.1.3 si  @$@@@D@P@T@`@d@€@„@@”@ @¤@À@Ä@Ð@Ô@à@ä@ð@ô@AAAA A$A0A4A@ADAPATA`AdApAtA€A„AA”A A¤A°A´AäBôBàCäC D”DÀDìD8ETEtE E¤E¬EÌE4FTF€F„FŒF¬FG4G`GhGpGxG|G„GŒG”GœG¤G¬G´G¼GÄGÌGÔGÜGÈBÌB ÐB ÔB ØBÜB)àB+èB3ìB;ðB<CC CCCCC C $C (C,C0C4C8CØC?U‰åSƒìè[à 1ƒ»Ôÿÿÿtèèîè™X[]Ãÿ³ÿ£ÿ£ héàÿÿÿÿ£héÐÿÿÿÿ£héÀÿÿÿÿ£hé°ÿÿÿÿ£h é ÿÿÿÿ£ h(éÿÿÿÿ£$h0é€ÿÿÿÿ£(h8épÿÿÿÿ£,h@é`ÿÿÿÿ£0hHéPÿÿÿÿ£4hPé@ÿÿÿÿ£8hXé0ÿÿÿÿ£<h`é ÿÿÿÿ£@hhéÿÿÿÿ£Dhpéÿÿÿÿ£Hhxéðþÿÿÿ£Lh€éàþÿÿÿ£PhˆéÐþÿÿÿ£ThéÀþÿÿÿ£Xh˜é°þÿÿÿ£\h é þÿÿÿ£`h¨éþÿÿÿ£dh°é€þÿÿÿ£hh¸épþÿÿÿ£lhÀé`þÿÿÿ£phÈéPþÿÿÿ£thÐé@þÿÿÿ£xhØé0þÿÿÿ£|hàé þÿÿÿ£€hèéþÿÿÿ£„hðéþÿÿÿ£ˆhøéðýÿÿÿ£Œhéàýÿÿÿ£héÐýÿÿÿ£”héÀýÿÿÿ£˜hé°ýÿÿÿ£œh é ýÿÿÿ£ h(éýÿÿÿ£¤h0é€ýÿÿÿ£¨h8épýÿÿÿ£¬h@é`ýÿÿÿ£°hHéPýÿÿÿ£´hPé@ýÿÿÿ£¸hXé0ýÿÿÿ£¼h`é ýÿÿÿ£Àhhéýÿÿÿ£Ähpéýÿÿÿ£Èhxéðüÿÿÿ£Ìh€éàüÿÿÿ£ÐhˆéÐüÿÿÿ£ÔhéÀüÿÿÿ£Øh˜é°üÿÿÿ£Üh é üÿÿÿ£àh¨éüÿÿU‰åSƒìè[Ã|-€»ìuB‹“øÿÿÿ…Òt%ƒì ‹ƒèPè‡ÿÿÿƒÄ붃À‰ƒìÿÒ‹ƒì‹…ÒuéÆƒì‹]üÉö¼'U‰åSƒìè[à -‹‹ýÿÿ…Ét‹“Øÿÿÿ…Òtƒì ƒýÿÿPÿ҃ċ]üÉÃU‰åSƒì$è_ÃÐ,ÇD$õÇD$ ÇD$‹ƒüÿÿÿ‰D$ƒøíÿÿ‰$èþÿÿ‰Eô‹Eô‰$èðüÿÿ‰EøÇD$ÿÿÿÿÇD$ÿÿÿÿÇ$ÿÿÿÿè…Àt ‹Eø‰$èrƒÄ$[]ÃU‰åWVSƒì\èÙÃJ,ƒîÿÿ‰$èºýÿÿ‰Eäƒ}ä…&èøûÿÿ…À„óE؉D$E܉D$Eà‰$èýÿÿ‹E܉$èLþÿÿ‰Eì‹Eà…Àt!‹Eà‹ƒê‰‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒ‹EÜ…Àt!‹EÜ‹ƒê‰‹…Àu‹EÜ‹@‹P‹E܉$ÿÒ‹EØ…Àt!‹EØ‹ƒê‰‹…Àu‹EØ‹@‹P‹E؉$ÿÒ‹Eì‰$è¦úÿÿ‰Â‹ƒÐÿÿÿ‹‰T$ƒ îÿÿ‰D$‰ $èöúÿÿ‹Eì‹Pÿ‹E쉋Eì‹…Àu-‹Eì‹@‹P‹Eì‰$ÿÒ닃Ðÿÿÿ‹ƒ8îÿÿ‰D$‰$èãüÿÿÇEÀ釃bîÿÿ‰D$‹Eä‰$è"üÿÿ‰Eèƒ}èt0‹Eè‹P‹ƒôÿÿÿ9Âu ‹Eè‰$è>ûÿÿ‰Â‹ƒìÿÿÿ‰ƒ}ÿuRé3‹ƒÐÿÿÿ‹ƒtîÿÿ‰D$‰$èoüÿÿ‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEÀé샴îÿÿ‰D$‹Eä‰$è‡ûÿÿ‰Eðƒ}ðuƒÆîÿÿ‰D$‹Eä‰$èiûÿÿ‰Eðƒ}ðuM‹ƒÐÿÿÿ‹ƒÔîÿÿ‰D$‰$èæûÿÿ‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEÀécẺD$EЉD$ EÔ‰D$ƒÿîÿÿ‰D$‹Eð‰$èyùÿÿ…Àut‹ƒÐÿÿÿ‹ƒïÿÿ‰D$‰$èkûÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEÀéÁ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹EÔ9Eu‹EÐ9E ‹EÐ9E u|‹EÌ9E~t‹UÌ‹MЋuÔ‹ƒÐÿÿÿ‹8‰T$‰L$‰t$‹E‰D$‹E ‰D$ ‹E‰D$ƒ<ïÿÿ‰D$‰<$èVøÿÿ‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEÀë‹Eä‰EÀ‹EÀƒÄ\[^_]Ë$ÃU‰åSƒìèïÿÿÿÃ`(‹ƒð…Àuƒïÿÿ‰$èæøÿÿ‰ƒð‹ƒðƒÄ[]ÃU‰åSìè°ÿÿÿÃ!(‹E‹@‹@ ‰D$ ƒ ïÿÿ‰D$ÇD$…üýÿÿ‰$èBøÿÿ‹ƒðÿÿÿ‹…üýÿÿ‰D$‰$è¨ùÿÿ¸ÿÿÿÿÄ[]ÃU‰åSƒì4èIÿÿÿú'Eø‰D$ƒÈ‰D$ ƒØïÿÿ‰D$‹E‰D$‹E ‰$è‹ùÿÿ…Àu ÇEèÿÿÿÿëZ‹Eø‰$è#÷ÿÿ‰Â‹E‰P‹E‹@…Àu#‹ƒàÿÿÿ‹ƒüïÿÿ‰D$‰$èùÿÿÇEèÿÿÿÿ닃ìÿÿÿ‹‹P‹E‰$ÿÒÇEè‹EèƒÄ4[]ÃU‰åSƒì$èšþÿÿà 'èäöÿÿ‰Â‹E‹@‰T$‰$è0øÿÿ‰$è÷ÿÿ‰Eø‹Eø‰$èjöÿÿƒÄ$[]ÃU‰åSƒì4èSþÿÿÃÄ&Eô‰D$Eø‰D$ƒ¨‰D$ ƒìðÿÿ‰D$‹E‰D$‹E ‰$èŽøÿÿ…Àu ÇEèÿÿÿÿëa‹Eô‹Uø‰D$‰$èøÿÿ‰Â‹E‰P‹E‹@…Àu#‹ƒàÿÿÿ‹ƒ ñÿÿ‰D$‰$èøÿÿÇEèÿÿÿÿ닃ìÿÿÿ‹‹P‹E‰$ÿÒÇEè‹EèƒÄ4[]ÃU‰åVSƒì0è•ýÿÿÃ&Eô‰D$ƒ´‰D$ ƒ@ñÿÿ‰D$‹E‰D$‹E ‰$è×÷ÿÿ…Àu ÇEäëD‹uôèâôÿÿ‰Â‹E‹@‰T$‰$èîöÿÿ‰t$‰$è¢õÿÿ‹ƒèÿÿÿ‹P‹ƒèÿÿÿ‰‹ƒèÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èûüÿÿÃl%è…ôÿÿ‰Â‹E‹@‰T$‰$è‘öÿÿ‰$èùöÿÿ‰Eø‹Eø‰$èËôÿÿƒÄ$[]ÃU‰åSƒì$è´üÿÿÃ%%è>ôÿÿ‰Â‹E‹@‰T$‰$èJöÿÿ‰$èòöÿÿ‰Eø‹Eø‰$è$õÿÿƒÄ$[]ÃU‰åSƒì4èmüÿÿÃÞ$Eô‰D$Eø‰D$ƒˆ‰D$ ƒœñÿÿ‰D$‹E‰D$‹E ‰$è¨öÿÿ…Àu ÇEèÿÿÿÿëa‹Eô‹Uø‰D$‰$è9õÿÿ‰Â‹E‰P‹E‹@…Àu#‹ƒàÿÿÿ‹ƒÀñÿÿ‰D$‰$è-öÿÿÇEèÿÿÿÿ닃ìÿÿÿ‹‹P‹E‰$ÿÒÇEè‹EèƒÄ4[]ÃU‰åVSƒì0è¯ûÿÿà $Eô‰D$ƒ”‰D$ ƒìñÿÿ‰D$‹E‰D$‹E ‰$èñõÿÿ…Àu ÇEäëD‹uôèœôÿÿ‰Â‹E‹@‰T$‰$èõÿÿ‰t$‰$è|õÿÿ‹ƒèÿÿÿ‹P‹ƒèÿÿÿ‰‹ƒèÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èûÿÿÆ#è?ôÿÿ‰Â‹E‹@‰T$‰$è«ôÿÿ‰$èƒõÿÿ‰Eø‹Eø‰$èåòÿÿƒÄ$[]ÃU‰åSƒì$èÎúÿÿÃ?#èøóÿÿ‰Â‹E‹@‰T$‰$èdôÿÿ‰$èlôÿÿ‰Eø‹Eø‰$è>óÿÿƒÄ$[]ÃU‰åSƒì4è‡úÿÿÃø"Eô‰D$ƒh‰D$ ƒ0òÿÿ‰D$‹E‰D$‹E ‰$èÉôÿÿ…Àu ÇEèë$‹Eô‰$è¡óÿÿ‰Eø‹ƒìÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èúÿÿÃ"Eø‰D$ƒp‰D$ ƒdòÿÿ‰D$‹E‰D$‹E ‰$èPôÿÿ…Àu ÇEèë'‹Eø‰$è˜ñÿÿ‹ƒèÿÿÿ‹P‹ƒèÿÿÿ‰‹ƒèÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åVSƒì0è‘ùÿÿÃ"ÇEôEð‰D$ƒx‰D$ ƒ“òÿÿ‰D$‹E‰D$‹E ‰$èÌóÿÿ…Àu ÇEä阋Eð‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eð‹@‰T$‰$è òÿÿ…ÀtA‹Eð‹p è ùÿÿ9Æu2‹Eð‹@‰Eô‹Eô‰$èƒòÿÿ‹ƒèÿÿÿ‹P‹ƒèÿÿÿ‰‹ƒèÿÿÿ‰Eäë!‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$èûòÿÿÇEä‹EäƒÄ0[^]ÃU‰åVSƒì@è˜øÿÿà !ÇEðÇEôEä‰D$Eè‰D$ƒ€‰D$ ƒÞòÿÿ‰D$‹E‰D$‹E ‰$èÅòÿÿ…Àu ÇEÔé‹Eè‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eè‹@‰T$‰$èñÿÿ…Àt/‹Eè‹p èøÿÿ9Æu ‹Eè‹@‰Eð‹Eä‹P‹ƒìÿÿÿ‹‹@L9ÂtFë#‹ƒÜÿÿÿ‹ƒôòÿÿ‰D$‰$èòÿÿÇEÔ닃ìÿÿÿ‹‹PL‹Eä‹@‰T$‰$èðÿÿ…Àt=‹Eä‹p è‘÷ÿÿ9Æu.‹Eä‹@‰Eô‹Eô‰D$‹Eð‰$èÂðÿÿ‰Eì‹Eì‰$èðÿÿ‰EÔë!‹ƒÜÿÿÿ‹ƒóÿÿ‰D$‰$è…ñÿÿÇEÔ‹EÔƒÄ@[^]ÃU‰åVSƒì0è"÷ÿÿÓÇEôEì‰D$ƒŒ‰D$ ƒ;óÿÿ‰D$‹E‰D$‹E ‰$è]ñÿÿ…Àu ÇEä鳋Eì‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eì‹@‰T$‰$è›ïÿÿ…Àt.‹Eì‹p èœöÿÿ9Æu‹Eì‹@‰Eô‹Eô‰$èdîÿÿ‰Eðƒ}ðu%ë3‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$èŸðÿÿÇEäë,‹Eð‰$èËîÿÿ‰Eä닃èÿÿÿ‹P‹ƒèÿÿÿ‰‹ƒèÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èöÿÿÃÇEôEì‰D$ƒ”‰D$ ƒWóÿÿ‰D$‹E‰D$‹E ‰$èIðÿÿ…Àu ÇEä鳋Eì‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eì‹@‰T$‰$è‡îÿÿ…Àt.‹Eì‹p èˆõÿÿ9Æu‹Eì‹@‰Eô‹Eô‰$è íÿÿ‰Eðƒ}ðu%ë3‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$è‹ïÿÿÇEäë,‹Eð‰$è·íÿÿ‰Eä닃èÿÿÿ‹P‹ƒèÿÿÿ‰‹ƒèÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èúôÿÿÃkÇEôEì‰D$ƒœ‰D$ ƒtóÿÿ‰D$‹E‰D$‹E ‰$è5ïÿÿ…Àu ÇEä鳋Eì‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eì‹@‰T$‰$èsíÿÿ…Àt.‹Eì‹p ètôÿÿ9Æu‹Eì‹@‰Eô‹Eô‰$è íÿÿ‰Eðƒ}ðu%ë3‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$èwîÿÿÇEäë,‹Eð‰$è£ìÿÿ‰Eä닃èÿÿÿ‹P‹ƒèÿÿÿ‰‹ƒèÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èæóÿÿÃWÇEôEì‰D$ƒ¤‰D$ ƒóÿÿ‰D$‹E‰D$‹E ‰$è!îÿÿ…Àu ÇEäé‹Eì‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eì‹@‰T$‰$è_ìÿÿ…Àt6‹Eì‹p è`óÿÿ9Æu'‹Eì‹@‰Eô‹Eô‰$èøíÿÿ‰Eð‹Eð‰$è:ëÿÿ‰Eäë!‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$è[íÿÿÇEä‹EäƒÄ0[^]ÃU‰åVSƒì0èøòÿÿÃiÇEôEì‰D$ƒ¬‰D$ ƒ¨óÿÿ‰D$‹E‰D$‹E ‰$è3íÿÿ…Àu ÇEäé‹Eì‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eì‹@‰T$‰$èqëÿÿ…Àt6‹Eì‹p èròÿÿ9Æu'‹Eì‹@‰Eô‹Eô‰$èÚìÿÿ‰Eð‹Eð‰$èLêÿÿ‰Eäë!‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$èmìÿÿÇEä‹EäƒÄ0[^]ÃU‰åVSƒì0è òÿÿÃ{ÇEôEì‰D$ƒ´‰D$ ƒÈóÿÿ‰D$‹E‰D$‹E ‰$èEìÿÿ…Àu ÇEäé‹Eì‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eì‹@‰T$‰$èƒêÿÿ…Àt6‹Eì‹p è„ñÿÿ9Æu'‹Eì‹@‰Eô‹Eô‰$è¼ëÿÿ‰Eð‹Eð‰$è^éÿÿ‰Eäë!‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$èëÿÿÇEä‹EäƒÄ0[^]ÃU‰åVSƒì0èñÿÿÃÇEôEì‰D$ƒ¼‰D$ ƒèóÿÿ‰D$‹E‰D$‹E ‰$èWëÿÿ…Àu ÇEäé‹Eì‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eì‹@‰T$‰$è•éÿÿ…Àt6‹Eì‹p è–ðÿÿ9Æu'‹Eì‹@‰Eô‹Eô‰$èîéÿÿ‰Eð‹Eð‰$èpèÿÿ‰Eäë!‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$è‘êÿÿÇEä‹EäƒÄ0[^]ÃU‰åVSƒì0è.ðÿÿßÇEðEè‰D$ƒÄ‰D$ ƒ ôÿÿ‰D$‹E‰D$‹E ‰$èiêÿÿ…Àu ÇEäéÄ‹Eè‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eè‹@‰T$‰$è§èÿÿ…Àt.‹Eè‹p è¨ïÿÿ9Æu‹Eè‹@‰Eð‹Eð‰$èèÿÿ‰Eìƒ}ìu%ëD‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$è«éÿÿÇEäë=‹Eì‰$è×çÿÿ‰Eô‹Eì‰$èÉæÿÿ‹Eô‰Eä닃èÿÿÿ‹P‹ƒèÿÿÿ‰‹ƒèÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è ïÿÿÃzÇEôEì‰D$ƒÌ‰D$ ƒ"ôÿÿ‰D$‹E‰D$‹E ‰$èDéÿÿ…Àu ÇEäé•‹Eì‹P‹ƒìÿÿÿ‹‹@L9Ât!‹ƒìÿÿÿ‹‹PL‹Eì‹@‰T$‰$è‚çÿÿ…Àt>‹Eì‹p èƒîÿÿ9Æu/‹Eì‹@‰Eô‹Eô‰$èËæÿÿ‰Eð‹ƒìÿÿÿ‹‹P‹Eð‰$ÿÒ‰Eäë!‹ƒÜÿÿÿ‹ƒ¨òÿÿ‰D$‰$èvèÿÿÇEä‹EäƒÄ0[^]ÃU‰åSƒì4èîÿÿÃ…ÇEèEè‰D$‹ƒäÿÿÿ‰D$ƒÔ‰D$ ƒ?ôÿÿ‰D$‹E‰D$‹E ‰$èEèÿÿ…Àu ÇEäë4‹Eè‰$èçÿÿ‰Eð‰Uô‹Eð‹Uô‰$‰T$èåæÿÿ‰Eì‹Eì‰$è—åÿÿ‰Eä‹EäƒÄ4[]ÃU‰åSƒì4èzíÿÿÃëÇEèEè‰D$‹ƒäÿÿÿ‰D$ƒÜ‰D$ ƒ\ôÿÿ‰D$‹E‰D$‹E ‰$è«çÿÿ…Àu ÇEäë4‹Eè‰$èóæÿÿ‰Eð‰Uô‹Eð‹Uô‰$‰T$è çÿÿ‰Eì‹Eì‰$èýäÿÿ‰Eä‹EäƒÄ4[]ÃU‰åSƒì4èàìÿÿÃQEô‰D$ƒä‰D$ ƒŒôÿÿ‰D$‹E‰D$‹E ‰$è"çÿÿ…Àu ÇEèë‹Eô‰$èZäÿÿ‰Eø‹Eø‰$èŒäÿÿ‰Eè‹EèƒÄ4[]ÃU‰åWVSƒì,èmìÿÿÃÞƒcöÿÿ‰$èNæÿÿ‰Eðƒ}ð„¤ƒgöÿÿ‰D$‹Eð‰$èÜåÿÿ‰ƒø‹ƒø…Àu‹ƒÐÿÿÿ‹ƒtöÿÿ‰D$‰$èRæÿÿéþƒœöÿÿ‰D$‹Eð‰$è˜åÿÿ‰ƒü‹ƒü…Àu‹ƒÐÿÿÿ‹ƒ¬öÿÿ‰D$‰$èæÿÿ麃Õöÿÿ‰$è«åÿÿ‰Eðƒ}ðu$é„‹ƒÐÿÿÿ‹ƒÝöÿÿ‰D$‰$èÓåÿÿéƒòöÿÿ‰D$‹Eð‰$èåÿÿ‰ƒô‹ƒô…Àu‹ƒÐÿÿÿ‹ƒüöÿÿ‰D$‰$èåÿÿé;‹ƒìÿÿÿ‹‹pPè:ëÿÿ‰Âƒ‰D$ ‰T$ƒ$÷ÿÿ‰D$‹E‰$ÿÖ‹ƒìÿÿÿ‹‹8‹ƒô‰D$ƒ/÷ÿÿ‰$èÆåÿÿ‰Æè?ãÿÿ‰Â‰t$ƒè‰D$ ‰T$ƒ3÷ÿÿ‰D$‹E‰$ÿ׋ƒìÿÿÿ‹‹8‹ƒø‰D$ƒ/÷ÿÿ‰$èwåÿÿ‰Æè0âÿÿ‰Â‰t$ƒÈ‰D$ ‰T$ƒC÷ÿÿ‰D$‹E‰$ÿ׋ƒìÿÿÿ‹‹8‹ƒü‰D$ƒ/÷ÿÿ‰$è(åÿÿ‰Æèãÿÿ‰Â‰t$ƒ¨‰D$ ‰T$ƒT÷ÿÿ‰D$‹E‰$ÿ×닃Ðÿÿÿ‹ƒf÷ÿÿ‰D$‰$èOäÿÿƒÄ,[^_]ÃU‰åVSè[Ã^ƒ ýÿÿPü‹@üƒøÿt‰Ö¶¿ÿЋFüƒîƒøÿuó[^]ÃU‰åSƒìè[Ãè„äÿÿZ[]Ãgio.unixgobjectcould not import gobject (error was: %s)could not import gobject (no error given)_PyGObject_APIcould not import gobject (could not find _PyGObject_API object)pygobject_versionpygtk_versioncould not import gobject (version too old)iiicould not import gobject (version has invalid format)could not import gobject (version mismatch, %d.%d.%d is required, found %d.%d.%d)GUnixMountEntry%s is an abstract widgetgio.unix.MountEntrydesktop_ids:giounix.DesktopAppInfo.__init__could not create GDesktopAppInfo objectget_is_hiddengio.unix.DesktopAppInfoDesktopAppInfo(desktop_id) -> gio.unix.DesktopAppInfo gio.Unix.DesktopAppInfo is an implementation of gio.AppInfo based on desktop files.fdclose_fd_at_closeii:giounix.InputStream.__init__could not create GUnixInputStream objectclose_fdi:giounix.InputStream.set_close_fdset_close_fdget_close_fdget_fdgio.unix.InputStreamii:giounix.OutputStream.__init__could not create GUnixOutputStream objecti:giounix.OutputStream.set_close_fdgio.unix.OutputStreamfilenames:desktop_app_info_new_from_filenamedesktop_envs:desktop_app_info_set_desktop_envmount_entryO:unix_mount_freemount_entry should be a GUnixMountEntrymount1mount2OO:unix_mount_comparemount1 should be a GUnixMountEntrymount2 should be a GUnixMountEntryO:unix_mount_get_mount_pathO:unix_mount_get_device_pathO:unix_mount_get_fs_typeO:unix_mount_is_readonlyO:unix_mount_is_system_internalO:unix_mount_guess_can_ejectO:unix_mount_guess_should_displayO:unix_mount_guess_nameO:unix_mount_guess_icontimeO!:unix_mounts_changed_sinceO!:unix_mount_points_changed_sincemount_paths:unix_is_mount_path_system_internaldesktop_app_info_new_from_filenamedesktop_app_info_set_desktop_envunix_mount_freeunix_mount_compareunix_mount_get_mount_pathunix_mount_get_device_pathunix_mount_get_fs_typeunix_mount_is_readonlyunix_mount_is_system_internalunix_mount_guess_can_ejectunix_mount_guess_should_displayunix_mount_guess_nameunix_mount_guess_iconunix_mounts_changed_sinceunix_mount_points_changed_sinceunix_is_mount_path_system_internalgioInputStreamcannot import name InputStream from gioOutputStreamcannot import name OutputStream from giogobjectcould not import gioGObjectcannot import name GObject from gobjectMountEntry(O)GDesktopAppInfoGUnixInputStreamGUnixOutputStreamcould not import gobjectÿÿÿÿÿÿÿÿ3á[4åh4€u4Ç[4Ëh4fu4­¬7ôÐ7m ñ7é 8â!8X#.8l$I8€%`8”&w8‚'•8p(°8^)Ð8L*æ8q+ü8g,9-89›-ªºÉÝñü  Ì Ô0´PP + øB° þÿÿoü ÿÿÿoðÿÿo| úÿÿoVøGÀ@ÐA"2BRbr‚’¢²ÂÒâò"2BRbr‚’¢²ÂÒâò"2BRbr‚’¢²ÂÒâò"2BRbàC @±2ëÈÅ2*3ëD3 @ 2Ï3Ò3-4|4ë@@ (Ï3Ò3-45ë€@ 5M55È5Ï55555555552727w7GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2.symtab.strtab.shstrtab.hash.dynsym.dynstr.gnu.version.gnu.version_r.rel.dyn.rel.plt.init.text.fini.rodata.eh_frame.ctors.dtors.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.comment´´œ! PP)PP+1ÿÿÿo| | €>þÿÿoü ü M   V ° _ÌÌ/ZüüpeppdkÔ0Ô0qð0ð0‡ yx:x:ƒ@@Š@@‘@@– @ @° £ÐAÐAø¬ÈBÈB0±øBøBäºàCàC ÀäGäGÅäGlPHÎXMÀ m Xä @@@*p @äGOäCVà b@o @|x: Š@–0 ¬ ç »èGÊŒ< éÈj ÀD2¯ ,áG S @ n E {(½ ™¬E¦å› Í€G ôÇG @@@1€F >½ ]ŒFjË› ’fG º­G Ü€@@ù`Gôy 1hG>m | gpGté ù ŒxG ™â!v ´„GÁX# ãŒGðl$ ”G €% ?œGL”&î k¤Gx‚'î ž¬G«p(î δGÛ^)î ¼GL*% .ÄG;q+ö YÌGfg,š ˆÔG•-š ½ÜGÊ›-q õðG ôG ìG0 FÀI .y aÔ0 gøBñÿ}àDÀ”àC¡äGñÿ­DÀÄÀEÀÜøGëüGñÿðäGñÿ÷‡ À@ÐAñÿ(Ì´PP| ü  Ìü p Ô0 ð0 x: @@@ @ÐAÈBøBàCäG.;5G„ PmUœÕÁûäT  #3CPpgx‡Î£+»ÏÜð  U9 4D U i |  a¥ ´Ä ŽÝ û 8 ú, ‚Q rs  v‘ ¨ ´ Ï Þ ¨ú  # 9 8[ Žs ©” ® ÏÐ à 5ý ¨ ; U[ ©} Œ Ú"¨ UÁ Ï __CTOR_LIST____DTOR_LIST____JCR_LIST____do_global_dtors_auxcompleted.5958p.5956frame_dummy__CTOR_END____DTOR_END____FRAME_END____JCR_END____do_global_ctors_auxpygobject_initour_type.21366_gio_unix_mount_entry_get_typepygobject_no_constructorkwlist.21396_wrap_g_desktop_app_info_new_wrap_g_desktop_app_info_get_is_hidden_PyGDesktopAppInfo_methodskwlist.21433_wrap_g_unix_input_stream_newkwlist.21457_wrap_g_unix_input_stream_set_close_fd_wrap_g_unix_input_stream_get_close_fd_wrap_g_unix_input_stream_get_fd_PyGUnixInputStream_methodskwlist.21505_wrap_g_unix_output_stream_newkwlist.21529_wrap_g_unix_output_stream_set_close_fd_wrap_g_unix_output_stream_get_close_fd_wrap_g_unix_output_stream_get_fd_PyGUnixOutputStream_methodskwlist.21577_wrap_g_desktop_app_info_new_from_filenamekwlist.21596_wrap_g_desktop_app_info_set_desktop_envkwlist.21611_wrap_g_unix_mount_freekwlist.21648_wrap_g_unix_mount_comparekwlist.21710_wrap_g_unix_mount_get_mount_pathkwlist.21752_wrap_g_unix_mount_get_device_pathkwlist.21794_wrap_g_unix_mount_get_fs_typekwlist.21836_wrap_g_unix_mount_is_readonlykwlist.21874_wrap_g_unix_mount_is_system_internalkwlist.21912_wrap_g_unix_mount_guess_can_ejectkwlist.21950_wrap_g_unix_mount_guess_should_displaykwlist.21988_wrap_g_unix_mount_guess_namekwlist.22031_wrap_g_unix_mount_guess_iconkwlist.22072_wrap_g_unix_mounts_changed_sincekwlist.22090_wrap_g_unix_mount_points_changed_sincekwlist.22108_wrap_g_unix_is_mount_path_system_internal_PyGInputStream_Type_PyGOutputStream_Type_PyGObject_TypePyGUnixOutputStream_Typepyunix_register_classes_fini_GLOBAL_OFFSET_TABLE_PyGDesktopAppInfo_Type__dso_handle__bss_startPyGUnixMountEntry_TypePyGUnixInputStream_Type_PyGObject_API_end_edata__i686.get_pc_thunk.bxpyunix_functions_DYNAMIC_initg_freePyExc_ImportErrorinitunixg_unix_input_stream_get_typePyString_AsStringg_unix_mount_get_device_pathg_unix_is_mount_path_system_internalg_desktop_app_info_set_desktop_envg_unix_mount_get_mount_path__gmon_start___Jv_RegisterClassesPyBool_FromLongPyExc_TypeErrorPyErr_Formatg_desktop_app_info_newPyArg_ParseTuplePyErr_Occurredg_desktop_app_info_get_typeg_unix_mount_guess_icong_unix_input_stream_set_close_fdPyString_FromStringg_desktop_app_info_get_is_hiddenPyInt_FromLongg_unix_mount_get_fs_typeg_snprintfPyModule_GetDictPyCObject_AsVoidPtrPyExc_RuntimeErrorPyType_IsSubtypeg_unix_mount_guess_nameg_pointer_type_register_staticg_unix_output_stream_newg_unix_output_stream_get_typeg_unix_mounts_changed_sinceg_unix_mount_compareg_desktop_app_info_new_from_filenameg_unix_mount_guess_should_displayPyErr_Fetchg_unix_mount_freePyObject_GetAttrStringPyLong_Typeg_type_check_instance_cast_Py_NoneStructg_unix_output_stream_get_fdPyLong_AsUnsignedLongLongPy_InitModule4PyImport_ImportModuleg_unix_mount_points_changed_sinceg_unix_input_stream_newg_unix_input_stream_get_close_fdPyExc_NotImplementedErrorg_unix_output_stream_set_close_fdPyErr_SetStringg_unix_mount_guess_can_ejectg_unix_input_stream_get_fd_PyArg_ParseTupleAndKeywords_SizeTg_unix_mount_is_system_internalg_unix_output_stream_get_close_fdPyCObject_Type__cxa_finalize@@GLIBC_2.1.3g_unix_mount_is_readonlyPyObject_Repr_Py_BuildValue_SizeT./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gio/_gio.so0000755000000000000000000106202611272036705024110 0ustar rootrootELF×4ì}4 (¨+¨+¨+¨;¨;øP0Q`H`X`XQåtd =ÿˆj[_Èf-9ÖFÉ1²³Ð*œ®Q óò(ÿƒ$'ámªY ßæêsÇÕø Ý.)ävòXÚÓAý‹ì­m¦"/ !56E…q6#í <‡ÅéŒÍäÖ,%¯¾°Cûö.yUãR:†2Ïšeçu»x(Àáߤ9º›÷Ì›/â"SÜÔ‹ +w±7ŠºÏ¿àÃüP’¹J´©Øö£X2;"W,9Žñ–P`€Û¬„Ñó%ŸL½4ÇI™<þ}0ÆÒÎ3M3â>˜Ùמ gc~ xIîiøÁÝ÷ú !·¯#E`¢b¤h¦ñ<oÚî&ŸË8KŒÈ5“—»V„ã§$]ÂÀ)²é{K–)µž¶ÊT GœÑÔ6ÞÓæí´t“$è- µ7n¨¥¥Ä'ú=k”ï &Y« ÜOd‚­Êý·?B8@[H. 1L:‚;y}™Q¢ š‡(S¸{7nblŽg4£h×¾a=riˆÁÕ3±/†ɼۀË’Ä sÞÃ%u+oïêÌ&G-ÐwDçÂCð@#M¬õ0~;eRF!_°DôcaNdq«N˜…*,訿v¡û|•ÙŠÒfØ\‘½—B |1•r¸'\*¼^5®ª0kƒ^¡ ³‰üZJ ]jH”‘Î+2ìùùåtë§l¶Wå>©õÆþTO?¹UÍpVàʼn: zAzpëZð8ô4êå#;3*,&ÉP/j/ jü0â4¿B¦$ÉñŽì%!Ó(GA Ÿ+Žr‹->\1Éq.Þ^+æ#8j°*V5ßÀ$Þ^0úÂÏ@0kÁ0Þ&Üñ/0ã*>¨ áü È×;ÿ*Øîž `ê. ø!–6,uü˵ ¦Þ2É+6ŽA8#Eß"–"ñ7j» ý¦ 06y5C¸ b.*OP¶û– c –},Á‡/2Y N(pÏ'Éçyß û³0Ž  ÿ-Jø|øT!+Û2-— –Ù $ÉŒ–,jô+Gr !)N~+Û~)âéb3Éœ*ß%ái4Ï"È›ÕþÞ,(cFT7éäf*Ûy!– Î"¶ñá܉.J½5lÛ lÂ%ܧ³É{$Þ (ÉP#5ßÛ,ábáõ6jq"î§)Õ+Ûd'Ûx á–.4ï“û%ÿ>¨êI¿*Û¦9ß©ž6— ûÜe3ÉMY@3ÉN83¬×r  Õ‰>5j6N:*~ |&É 'j(ãª#tÿÎCl½&Jˆ!¶H°×$É@©½(É–ëP'¥94Ü«&Éà©{m1É2$É#¦WÈ`’Ý3'ž úEöèM$Ɉm–0Å¡ œ€1ÉɯÚzø! ¨D7GH,Þº"v%Dª/5Œ…,3[,xß1'©2¢739&z%DÅ;j…ÅÞ#‰ajª©v û9%Dš2y’1É2P¦,!ÿN*æÅ á:1É)1É 3n/Nö2ñ'¦1Éí1Û*ùÈ1Û5&Šù–ídx ½‚èÜjÌ7c*¸yR êä->R3ɽ&Ée©@)s·)ðÝ%O)∠-©5f¡Ÿ6ß œÐ¶‰7}6.jØ·6c‚'’)Þ8'Û3 êM©¯5R-gû#pªÈ`(p…·+ x7÷4²ËèKÎ2ø¸t/®˜!î=@*å±I5ˆf)ÞVy&Éšyª;-u ¼‰0“Ó ñ(Þë Á–.3Éuj]ÅF#Îâ)ítÎV6Ì)Þò8 Œ;£¼„7Üö5ZK3j–á“5fù&Ü #ÉV%Ü‚F@ ã4;Íá0ØsÔþѶáÕ½4Eº,ke©Ê Ø!¶›/rÄ/-27Tß(Ûf°!îZè-£/¨Ô¾ôHFF&É}0É8žbš ýk±g¶t U"¶ó'É'¨¼¤–2Û\&ÃÏ*ó Cì#Éß6ÿö)j áÌ0å/Þ !+ä…ÅË.-E©É6dÚ\Ž; §/è$É%¨Œ_§->¹\­D+O“ á#ù~Öv˜f2&È->(0ýqU  ^ ៩A¦£76îk>zjí #æ"|µL®€ 1 jg,G“;yFÍœ·ì3Û¥©ÏÜ• T ê‹3Ü4ܸ3.Ýè­.Þ\h<9/O“ÞÆÒ)jýjš%ܵU °%Ü*''ô)#â ÃÆzn-f}åô áî$ò§0ÉÇ!î´–h8І2Œ‹ ®ä.ÞÏSÕ–(Éü,kã'É 1È-¨è™'ÜV4ú6#<ºR4ô±CD2Ûc ¦×5¤IH© ûx3Ü]#ƒÃÒ,GþµÞJ¸7cjz ‰Î–y(§(   áß7jô"¦Ç3Û ,Èvɸ1'$É+¿¹8"¶eƒD á%ltm S.4Ô 4û6¼Èyf°á ®ª¦h&ÉÕ)2'ã}W&É–NÕ0¶‰ÄÚ"(Î#¡2.S!Ö·#'—.ž3ÜòáK1ÉÇ/d*Hº2ÉIL63g$ÉM' é©Ü/x#¦·'ÉÍ–Õš½ ûß J(5R MP> ûœ\(0Â'p2)NV‰__gmon_start____cxa_finalize_Jv_RegisterClassesinit_gioPy_InitModule4PyModule_GetDictg_io_error_quarkg_quark_to_stringPyModule_AddStringConstantpyglib_register_exception_for_domainPyDict_SetItemStringPy_BuildValuePyImport_ImportModulePyErr_OccurredPyErr_FetchPyObject_ReprPyString_AsStringPyExc_ImportErrorPyErr_FormatPyErr_SetStringPyObject_GetAttrStringPyCObject_TypePyCObject_AsVoidPtrPyArg_ParseTuple_Py_NoneStructPyType_IsSubtypeg_cancellable_get_typeg_type_check_instance_castPyExc_TypeErrorg_app_launch_context_get_typePySequence_SizePySequence_GetItemg_list_freeg_list_prependg_list_reversePyString_Typeg_strv_lengthPyList_NewPyString_FromStringPyList_SetItemPySequence_Checkg_mallocg_strfreevg_strdupg_quark_from_stringg_slice_alloc0PyExc_RuntimeErrorPyCallable_Checkg_strdup_printfg_slice_copyg_slice_allocPyExc_MemoryErrorg_object_get_qdatag_slice_free1g_logg_object_set_qdata_fullPyEval_CallFunction_PyObject_CallFunction_SizeTPyErr_PrintPyErr_ClearPyObject_MallocPyObject_Initg_file_attribute_type_get_typeg_file_attribute_info_flags_get_typeg_file_attribute_matcher_unrefg_file_attribute_matcher_refg_boxed_type_register_static_PyArg_ParseTupleAndKeywords_SizeTg_file_attribute_matcher_newg_file_attribute_matcher_matchesPyBool_FromLongg_file_attribute_matcher_matches_onlyg_file_attribute_matcher_enumerate_namespaceg_file_attribute_matcher_enumerate_nextg_app_info_get_typeg_app_launch_context_get_displayg_app_launch_context_get_startup_notify_idg_app_launch_context_launch_failedg_cancellable_is_cancelledg_cancellable_set_error_if_cancelledg_cancellable_get_fdPyInt_FromLongg_cancellable_push_currentg_cancellable_pop_currentg_cancellable_resetg_cancellable_cancelmemsetg_value_unsetg_emblem_get_typeg_emblem_get_icong_emblem_get_origing_emblem_origin_get_typeg_icon_get_typeg_emblemed_icon_newg_emblemed_icon_get_typeg_emblemed_icon_get_icong_emblemed_icon_add_emblemg_file_enumerator_get_typeg_file_enumerator_next_fileg_object_unrefg_file_enumerator_closeg_file_enumerator_next_files_asyncg_async_result_get_typeg_file_enumerator_next_files_finishPyList_Appendg_file_enumerator_close_asyncg_file_enumerator_close_finishg_file_enumerator_is_closedg_file_enumerator_has_pendingg_file_enumerator_set_pendingg_file_enumerator_get_containerPyExc_StopIterationPyErr_SetNoneg_file_info_get_typeg_file_info_dupg_file_info_copy_intog_file_info_has_attributeg_file_info_list_attributesg_file_info_get_attribute_typeg_file_info_remove_attributeg_file_info_get_attribute_statusg_file_attribute_status_get_typeg_file_info_get_attribute_as_stringg_file_info_get_attribute_stringg_file_info_get_attribute_byte_stringg_file_info_get_attribute_booleang_file_info_get_attribute_uint32PyLong_FromUnsignedLongg_file_info_get_attribute_int32g_file_info_get_attribute_uint64PyLong_FromUnsignedLongLongg_file_info_get_attribute_int64PyLong_FromLongLongg_file_info_get_attribute_objectg_file_info_set_attribute_stringg_file_info_set_attribute_byte_stringg_file_info_set_attribute_booleang_file_info_set_attribute_uint32g_file_info_set_attribute_int32PyLong_TypePyLong_AsUnsignedLongLongg_file_info_set_attribute_uint64g_file_info_set_attribute_int64g_file_info_set_attribute_objectg_file_info_clear_statusg_file_info_get_file_typeg_file_type_get_typeg_file_info_get_is_hiddeng_file_info_get_is_backupg_file_info_get_is_symlinkg_file_info_get_nameg_file_info_get_display_nameg_file_info_get_edit_nameg_file_info_get_icong_file_info_get_content_typeg_file_info_get_sizeg_file_info_get_modification_timepyglib_float_from_timevalg_file_info_get_symlink_targetg_file_info_get_etagg_file_info_get_sort_orderg_file_info_set_attribute_maskg_file_info_unset_attribute_maskg_file_info_set_file_typeg_file_info_set_is_hiddeng_file_info_set_is_symlinkg_file_info_set_nameg_file_info_set_display_nameg_file_info_set_edit_nameg_file_info_set_icong_file_info_set_content_typeg_file_info_set_sizeg_file_info_set_symlink_targetg_file_info_set_sort_orderg_file_monitor_get_typeg_file_monitor_cancelg_file_monitor_is_cancelledg_file_monitor_set_rate_limitg_file_monitor_event_get_typeg_file_get_typeg_file_monitor_emit_eventPyString_FromStringAndSizePyEval_SaveThread__errno_locationg_input_stream_get_typeg_input_stream_readPyEval_RestoreThread_PyString_Resizeg_input_stream_read_allg_input_stream_skipg_input_stream_closeg_input_stream_read_asyncg_input_stream_read_finishg_input_stream_skip_asyncg_input_stream_skip_finishg_input_stream_close_asyncg_input_stream_close_finishg_input_stream_is_closedg_input_stream_has_pendingg_input_stream_set_pendingg_input_stream_clear_pendingg_file_input_stream_get_typeg_file_input_stream_query_infog_file_input_stream_query_info_asyncg_file_input_stream_query_info_finishg_filter_input_stream_get_typeg_filter_input_stream_get_base_streamg_filter_input_stream_get_close_base_streamg_filter_input_stream_set_close_base_streamg_buffered_input_stream_get_typeg_buffered_input_stream_get_buffer_sizeg_buffered_input_stream_set_buffer_sizeg_buffered_input_stream_get_availableg_buffered_input_stream_fillg_buffered_input_stream_fill_asyncg_buffered_input_stream_fill_finishg_buffered_input_stream_read_byteg_data_stream_byte_order_get_typeg_data_input_stream_get_typeg_data_input_stream_set_byte_orderg_data_input_stream_get_byte_orderg_data_stream_newline_type_get_typeg_data_input_stream_set_newline_typeg_data_input_stream_get_newline_typeg_data_input_stream_read_byteg_data_input_stream_read_int16g_data_input_stream_read_uint16g_data_input_stream_read_int32g_data_input_stream_read_uint32g_data_input_stream_read_int64g_data_input_stream_read_uint64g_data_input_stream_read_lineg_data_input_stream_read_untilg_data_input_stream_read_until_asyncg_data_input_stream_read_until_finishg_data_input_stream_read_line_asyncg_data_input_stream_read_line_finishPyString_Sizememcpyg_memory_input_stream_get_typeg_memory_input_stream_add_datag_mount_operation_get_typeg_mount_operation_get_usernameg_mount_operation_set_usernameg_mount_operation_get_passwordg_mount_operation_set_passwordg_mount_operation_get_anonymousg_mount_operation_set_anonymousg_mount_operation_get_domaing_mount_operation_set_domaing_mount_operation_get_password_saveg_password_save_get_typeg_mount_operation_set_password_saveg_mount_operation_get_choiceg_mount_operation_set_choiceg_mount_operation_result_get_typeg_mount_operation_replyg_output_stream_get_typeg_output_stream_writeg_output_stream_write_allg_output_stream_splice_flags_get_typeg_output_stream_spliceg_output_stream_flushg_output_stream_closeg_output_stream_write_asyncg_output_stream_write_finishg_output_stream_splice_asyncg_output_stream_splice_finishg_output_stream_flush_asyncg_output_stream_flush_finishg_output_stream_close_asyncg_output_stream_close_finishg_output_stream_is_closedg_output_stream_has_pendingg_output_stream_set_pendingg_output_stream_clear_pendingg_reallocg_memory_output_stream_newg_memory_output_stream_get_typeg_seekable_get_typeg_seekable_tellg_memory_output_stream_get_datag_memory_output_stream_get_sizeg_memory_output_stream_get_data_sizeg_filter_output_stream_get_typeg_filter_output_stream_get_base_streamg_filter_output_stream_get_close_base_streamg_filter_output_stream_set_close_base_streamg_buffered_output_stream_get_typeg_buffered_output_stream_get_buffer_sizeg_buffered_output_stream_set_buffer_sizeg_buffered_output_stream_get_auto_growg_buffered_output_stream_set_auto_growg_data_output_stream_get_typeg_data_output_stream_set_byte_orderg_data_output_stream_get_byte_orderg_data_output_stream_put_byteg_data_output_stream_put_int16g_data_output_stream_put_uint16g_data_output_stream_put_int32g_data_output_stream_put_uint32g_data_output_stream_put_int64g_data_output_stream_put_uint64g_data_output_stream_put_stringg_file_output_stream_get_typeg_file_output_stream_query_infog_file_output_stream_query_info_asyncg_file_output_stream_query_info_finishg_file_output_stream_get_etagg_snprintfPyExc_NotImplementedErrorg_simple_async_result_get_typeg_simple_async_result_set_op_res_gssizeg_simple_async_result_get_op_res_gssizeg_simple_async_result_set_op_res_gbooleang_simple_async_result_get_op_res_gbooleang_simple_async_result_set_handle_cancellationg_simple_async_result_completeg_simple_async_result_complete_in_idleg_simple_async_result_propagate_errorg_vfs_get_typeg_vfs_is_activeg_vfs_get_file_for_pathg_vfs_get_file_for_urig_vfs_parse_nameg_vfs_get_supported_uri_schemesg_volume_monitor_get_typeg_volume_monitor_get_connected_drivesg_volume_monitor_get_volumesg_volume_monitor_get_mountsg_volume_monitor_get_volume_for_uuidg_volume_monitor_get_mount_for_uuidg_volume_monitor_getg_file_icon_newg_file_icon_get_typeg_file_icon_get_fileg_file_get_uriPySequence_TuplePyTuple_SizePyTuple_GetItemg_themed_icon_get_typeg_themed_icon_prepend_nameg_themed_icon_get_namesg_themed_icon_append_nameg_string_newg_string_append_printfg_string_appendg_string_freeg_app_info_dupg_app_info_equalg_app_info_get_idg_app_info_get_nameg_app_info_get_descriptiong_app_info_get_executableg_app_info_get_icong_app_info_launchg_app_info_supports_urisg_app_info_supports_filesg_app_info_launch_urisg_app_info_should_showg_app_info_set_as_default_for_typeg_app_info_set_as_default_for_extensiong_app_info_add_supports_typeg_app_info_can_remove_supports_typeg_app_info_remove_supports_typeg_app_info_can_deleteg_app_info_deleteg_app_info_get_commandline_Py_TrueStruct_Py_ZeroStruct_Py_NotImplementedStructg_async_result_get_source_objectg_drive_get_typeg_drive_get_nameg_drive_get_icong_drive_has_volumesg_drive_get_volumesg_drive_is_media_removableg_drive_has_mediag_drive_is_media_check_automaticg_drive_can_poll_for_mediag_drive_can_ejectg_mount_unmount_flags_get_typeg_drive_ejectg_drive_eject_finishg_drive_poll_for_mediag_drive_poll_for_media_finishg_drive_get_identifierg_drive_enumerate_identifiersg_file_dupg_file_equalg_file_get_basenameg_file_get_pathg_file_get_parse_nameg_file_get_parentg_file_get_childg_file_get_child_for_display_nameg_file_has_prefixg_file_get_relative_pathg_file_resolve_relative_pathg_file_is_nativeg_file_has_uri_schemeg_file_get_uri_schemeg_file_readg_file_read_asyncg_file_read_finishg_file_create_flags_get_typeg_file_append_tog_file_createg_file_replaceg_file_append_to_asyncg_file_append_to_finishg_file_create_asyncg_file_create_finishPyObject_IsTrueg_file_replace_asyncg_file_replace_finishg_file_query_existsg_file_query_info_flags_get_typeg_file_query_file_typeg_file_query_infoPyErr_Restoreg_file_query_info_asyncg_file_query_info_finishg_file_query_filesystem_infog_file_query_filesystem_info_asyncg_file_query_filesystem_info_finishg_file_find_enclosing_mountg_file_find_enclosing_mount_asyncg_file_find_enclosing_mount_finishg_file_enumerate_childreng_file_enumerate_children_asyncg_file_enumerate_children_finishg_file_set_display_nameg_file_set_display_name_asyncg_file_set_display_name_finishg_file_deleteg_file_trashg_file_copy_flags_get_typeg_file_copyg_file_copy_asyncg_file_copy_finishg_file_moveg_file_make_directoryg_file_make_directory_with_parentsg_file_make_symbolic_linkg_file_query_settable_attributesg_file_attribute_info_list_unrefg_file_query_writable_namespacesg_file_set_attributeg_file_set_attributes_from_infog_file_set_attributes_asyncg_file_set_attributes_finishg_file_set_attribute_stringg_file_set_attribute_byte_stringg_file_set_attribute_uint32g_file_set_attribute_int32g_file_set_attribute_uint64g_file_set_attribute_int64g_mount_mount_flags_get_typeg_file_mount_enclosing_volumeg_file_mount_enclosing_volume_finishg_file_mount_mountableg_file_mount_mountable_finishg_file_unmount_mountableg_file_unmount_mountable_finishg_file_eject_mountableg_file_eject_mountable_finishg_file_copy_attributesg_file_monitor_flags_get_typeg_file_monitor_directoryg_file_monitor_fileg_file_monitorg_file_query_default_handlerg_file_load_contents_Py_BuildValue_SizeTg_file_load_contents_asyncg_file_load_contents_finishg_file_replace_contentsg_file_replace_contents_asyncg_file_replace_contents_finishg_file_hashg_icon_equalg_icon_to_stringg_icon_hashg_loadable_icon_get_typeg_loadable_icon_loadg_loadable_icon_load_asyncg_loadable_icon_load_finishg_mount_get_typeg_mount_get_rootg_mount_get_nameg_mount_get_icong_mount_get_uuidg_mount_get_volumeg_mount_get_driveg_mount_can_unmountg_mount_can_ejectg_mount_unmountg_mount_unmount_finishg_mount_ejectg_mount_eject_finishg_mount_remountg_mount_remount_finishg_mount_guess_content_typeg_mount_guess_content_type_finishg_mount_guess_content_type_syncg_mount_is_shadowedg_mount_shadowg_mount_unshadowg_seekable_can_seekg_seekable_seekg_seekable_can_truncateg_seekable_truncateg_volume_get_typeg_volume_get_nameg_volume_get_icong_volume_get_uuidg_volume_get_driveg_volume_get_mountg_volume_can_mountg_volume_can_ejectg_volume_should_automountg_volume_mountg_volume_mount_finishg_volume_ejectg_volume_eject_finishg_volume_get_identifierg_volume_enumerate_identifiersg_volume_get_activation_rootg_app_info_get_all_PyArg_ParseTuple_SizeTg_app_info_get_all_for_typeg_app_info_get_default_for_typeg_app_info_get_default_for_uri_schemeg_app_info_reset_type_associationsg_buffered_input_stream_new_sizedPyLong_AsUnsignedLongPyInt_TypePyInt_AsLongg_buffered_output_stream_new_sizedg_cancellable_get_currentg_content_type_equalsg_content_type_is_ag_content_type_is_unknowng_content_type_get_descriptiong_content_type_get_mime_typeg_content_type_get_icong_content_type_can_be_executableg_content_type_from_mime_typeg_content_type_guessg_content_types_get_registeredg_emblem_new_with_origing_file_parse_nameg_icon_new_for_stringg_io_error_from_errnog_io_error_enum_get_typeg_memory_input_stream_new_from_datag_vfs_get_defaultg_vfs_get_localg_volume_monitor_adopt_orphan_mountPyDict_Sizeg_file_new_for_commandline_argPyDict_GetItemStringg_file_new_for_pathg_file_new_for_urig_app_info_create_flags_get_typeg_app_info_create_from_commandlineg_ask_password_flags_get_typePyType_Readyg_native_volume_monitor_get_typelibgio-2.0.so.0libresolv.so.2libgmodule-2.0.so.0libdl.so.2libpyglib-2.0-python.so.0libgobject-2.0.so.0libgthread-2.0.so.0libpthread.so.0librt.so.1libglib-2.0.so.0libc.so.6_gio.soGLIBC_2.1.3GLIBC_2.090si -9ii 99ï8ii 99À;Ä;Ô;Ø;è;ì; <$<0<4<@<D<P<T<€<„<<”< <¤<À<Ä<Ð<Ô<à<ä<ð<ô<==== =$=@=D=P=T=€=„==”=À=Ä=Ð=Ô=à=ä=ì=ð=ô=ü=>>>> >$>0>4>@>D>P>T>€>„>>”> >¤>°>´>¼>À>Ä>Ð>Ô>à>ä>ð>ô>???? ?$?0?4?@?D?P?T?`?d?p?t?€?„??”? ?¤?°?´?À?Ä?Ð?Ô?à?ä?ð?ô?@@@@ @$@0@4@@@D@P@T@`@d@p@t@€@„@@”@ @¤@°@´@¼@À@Ä@Ð@Ô@à@ä@ð@ô@AAAA A$A0A4A@ADAPATA`AdApAtA€A„AA”A A¤A°A´AàAäAðAôABBBB@BDBLBPBTB\B`BdBpBtB€B„BB”B B¤B°B´BÀBÄBÐBÔBàBäBðBôBCCCC@CDCPCTC`CdC€C„CC”C C¤CÀCÄCÐCÔCàCäCðCôCDDDD D$D@DDDPDTD`DdDpDtD€D„DD”D D¤D°D´DÀDÄDÐDÔDàDäDðDôDüDEE EEE E$E0E4E@EDE`EdE€E„EE”E E¤E°E´EÀEÄEÐEÔEàEäEðEôEFFFF F$F0F4F@FDF`FdFlFpFtF€F„FF”F F¤F°F´F¼FÀFÄFÐFÔFàFäFðFôFGGGG G$G0G4G@GDGPGTG`GdG€G„GG”G G¤GÀGÄGÐGÔGàGäGHHHH H$H0H4H`HdHpHtH€H„HH”H H¤H°H´HÀHÄHÐHÔHàHäHðHôH I$I0I4I@IDIPITI€I„II”I I¤I°I´IÀIÄIÐIÔIàIäIðIôI J$J0J4J@JDJPJTJ`JdJlJ€J„JJ”J J¤J°J´JÀJÄJàJäJKKKK K$K@KDKPKTK`KdKpKtK€K„KK”K K¤K°K´K¼KÀKÄKÐKÔKàKäKìKðKôKLLLL L$L0L4L@LDLPLTL`LdLpLtL L¤LÀLÄLÐLÔLàLäLðLôLMMMM M$M0M4M@MDMPMTM`MdMpMtM€M„MM”M M¤MÀMÄMÐMÔMàMäMðMôMNNNN N$N0N4N@NDNPNTN`NdNpNtN€N„NN”N N¤N°N´N¼NÀNÄNÌNÐNÔNàNäNðNôNOOOOO O$O0O4OØZ?ÜZ@àZAäZBèZCìZDðZEôZFøZGüZH[I[J[L [M[N[O[P[Q [R$[S([T,[U0[V4[W8[X<[Y@[ZD[[H[\L[]P[^T[_X[`\[a`[bd[ch[dl[ep[ft[gx[h|[i€[j„[kˆ[lŒ[m[n”[o˜[pœ[q [r¤[s¨[t¬[u°[v´[w¸[x¼[yÀ[zÄ[{È[|Ì[}Ð[~Ô[Ø[€Ü[à[„ä[…è[†ì[‡ð[ˆô[‰ø[Šü[‹\Œ\\Ž \\‘\“\”\• \–$\—(\˜,\™0\š4\›8\œ<\@\žD\ŸH\ L\¡P\¢T\£X\¤\\¥`\¦d\§h\¨l\©p\ªt\«x\¬|\­€\®„\¯ˆ\±Œ\²\³”\´˜\µœ\¶ \·¤\¸¨\¹¬\º°\»´\¼¸\½¼\¾À\¿Ä\ÀÈ\ÁÌ\ÂÐ\ÃÔ\ÄØ\ÅÜ\Æà\Çä\Èè\Éì\Êð\Ëô\Ìø\Íü\Î]Ï]Ð]Ñ ]Ò]Ó]Ô]Õ]Ö ]×$]Ø(]Ù,]Ú0]Û4]Ü8]Ý<]Þ@]ßD]àH]áL]âP]ãT]äX]å\]æ`]çd]èh]él]ëp]ìt]íx]î|]ï€]ð„]ñˆ]òŒ]ó]ô”]õ˜]öœ]÷ ]ù¤]ú¨]û¬]ü°]ý´]þ¸]ÿ¼]À]Ä]È]Ì]Ð]Ô]Ø]Ü]à] ä] è] ì] ð] ô]ø]ü]^^^ ^^^^^ ^$^(^,^0^4^8^<^ @^!D^"H^#L^$P^&T^'X^(\^)`^*d^+h^,l^-p^.t^/x^0|^1€^2„^3ˆ^4Œ^5^6”^7˜^8œ^9 ^:¤^;¨^<¬^=°^>´^?¸^@¼^AÀ^BÄ^CÈ^DÌ^EÐ^FÔ^GØ^HÜ^Ià^Jä^Kè^Lì^Mð^Nô^Oø^Pü^Q_R_S_T _U_V_W_X_Y _Z$_[(_\,_]0_^4__8_`<_a@_bD_cH_dL_eP_gT_hX_i\_k`_ld_mh_nl_op_pt_qx_r|_s€_t„_uˆ_vŒ_w_x”_y˜_zœ_{ _|¤_}¨_~¬_°_€´_¸_‚¼_ƒÀ_„Ä_…È_‡Ì_ˆÐ_‰Ô_ŠØ_‹Ü_Œà_ä_Žè_ì_ð_‘ô_’ø_“ü_”`•`–`— `˜`™`š`›`œ `$`ž(`Ÿ,` 0`¡4`¢8`£<`¤@`¥D`¦H`§L`¨P`©T`ªX`«\`¬``­d`®h`¯l`°p`±t`²x`³|`´€`µ„`¶ˆ`·Œ`¸`¹”`º˜`»œ`¼ `½¤`¾¨`¿¬`À°`Á´`¸`ü`ÄÀ`ÅÄ`ÆÈ`ÇÌ`ÈÐ`ÉÔ`ÊØ`ËÜ`Ìà`Íä`Îè`Ïì`Ðð`Ñô`Òø`Óü`ÔaÖa×aØ aÙaÚaÛaÜaÝ aÞ$aß(aà,aá0aâ4aã8aäôÿÿ‰Eì‹Eà…Àt!‹Eà‹ƒê‰‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒ‹EÜ…Àt!‹EÜ‹ƒê‰‹…Àu‹EÜ‹@‹P‹E܉$ÿÒ‹EØ…Àt!‹EØ‹ƒê‰‹…Àu‹EØ‹@‹P‹E؉$ÿÒ‹Eì‰$è8Óÿÿ‰Â‹ƒœÿÿÿ‹‰T$ƒ¸1ÿÿ‰D$‰ $èÈÜÿÿ‹Eì‹Pÿ‹E쉋Eì‹…Àu-‹Eì‹@‹P‹Eì‰$ÿÒ닃œÿÿÿ‹ƒä1ÿÿ‰D$‰$èÅîÿÿÇEÀ釃2ÿÿ‰D$‹Eä‰$è$çÿÿ‰Eèƒ}èt0‹Eè‹P‹ƒðÿÿÿ9Âu ‹Eè‰$èÐâÿÿ‰Â‹ƒàÿÿÿ‰ƒ}ÿuRé3‹ƒœÿÿÿ‹ƒ 2ÿÿ‰D$‰$èQîÿÿ‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEÀéìƒ`2ÿÿ‰D$‹Eä‰$è‰æÿÿ‰Eðƒ}ðuƒr2ÿÿ‰D$‹Eä‰$èkæÿÿ‰Eðƒ}ðuM‹ƒœÿÿÿ‹ƒ€2ÿÿ‰D$‰$èÈíÿÿ‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEÀécẺD$EЉD$ EÔ‰D$ƒ«2ÿÿ‰D$‹Eð‰$è‹Ûÿÿ…Àut‹ƒœÿÿÿ‹ƒ°2ÿÿ‰D$‰$èMíÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEÀéÁ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹EÔ9Eu‹EÐ9E ‹EÐ9E u|‹EÌ9E~t‹UÌ‹MЋuÔ‹ƒœÿÿÿ‹8‰T$‰L$‰t$‹E‰D$‹E ‰D$ ‹E‰D$ƒè2ÿÿ‰D$‰<$è(Úÿÿ‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEÀë‹Eä‰EÀ‹EÀƒÄ\[^_]Ë$ÃU‰åSƒìèíÿÿÿÃÌtƒ}t ‹E‹“Üÿÿÿ9Ðu ‹E Çëq‹E‹P‹ƒìÿÿÿ9Ât‹E‹P‹ƒìÿÿÿ‰D$‰$è˜àÿÿ…Àt"è¯ðÿÿ‰Â‹E‹@‰T$‰$èkåÿÿ‰Â‹E ‰ë#‹ƒ¸ÿÿÿ‹ƒ<3ÿÿ‰D$‰$èˆëÿÿÇEøëÇEø‹EøƒÄ[]ÃU‰åSƒìè<ÿÿÿÃtƒ}t ‹E‹“Üÿÿÿ9Ðu ‹E Çëq‹E‹P‹ƒüÿÿÿ9Ât‹E‹P‹ƒüÿÿÿ‰D$‰$èçßÿÿ…Àt"èþãÿÿ‰Â‹E‹@‰T$‰$èºäÿÿ‰Â‹E ‰ë#‹ƒ¸ÿÿÿ‹ƒd3ÿÿ‰D$‰$è×êÿÿÇEøëÇEø‹EøƒÄ[]ÃU‰åSƒì$è‹þÿÿÃjsÇEì‹E‰$èJßÿÿ‰EôÇEøé‹‹Eø‰D$‹E‰$è‰Þÿÿ‰Eð‹Eð‹P‹ƒ”ÿÿÿ9ÂtJ‹Eð‹P‹ƒ”ÿÿÿ‰D$‰$èßÿÿ…Àu.‹ƒ¸ÿÿÿ‹ƒœ3ÿÿ‰D$‰$è0êÿÿ‹Eì‰$èeÔÿÿÇEèë<‹Eð‹@‰D$‹Eì‰$èWçÿÿ‰EìƒEø‹Eø;EôŒiÿÿÿ‹Eì‰$è™åÿÿ‰Eì‹Eì‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è¤ýÿÿÃrÇEì‹E‰$ècÞÿÿ‰EôÇEøé‹Eø‰D$‹E‰$è¢Ýÿÿ‰Eð‹Eð‹P‹ƒèÿÿÿ9ÂtJ‹Eð‹P‹ƒèÿÿÿ‰D$‰$è7Þÿÿ…Àu.‹ƒ¸ÿÿÿ‹ƒÃ3ÿÿ‰D$‰$èIéÿÿ‹Eì‰$è~ÓÿÿÇEèëA‹Eð‰$è:Íÿÿ‰D$‹Eì‰$èkæÿÿ‰EìƒEø‹Eø;EôŒdÿÿÿ‹Eì‰$è­äÿÿ‰Eì‹Eì‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è¸üÿÿ×qƒ}t‹E‰$è¸Öÿÿ‰EèëÇEè‹Eè‰Eð‹Eð‰$èûëÿÿ‰EøÇEôë.‹EôÀÀE‹‰$è»Úÿÿ‹Uô‰D$‰T$‹Eø‰$èEéÿÿƒEô‹Eô;EðrÊ‹EøƒÄ$[]ÃU‰åVSƒì è,üÿÿà q‹E Ç‹ƒÜÿÿÿ9Eu ÇEä鵋E‰$è²ßÿÿ…Àu&‹ƒ¸ÿÿÿ‹ƒÜ3ÿÿ‰D$‰$èÄÕÿÿÇEä逋E‰$èÜÿÿ‰Eìƒ}ìy ÇEäé`‹EìƒÀÀÀ‰$è†Óÿÿ‰EðÇEèë‹EèÀÀEðǃEè‹Eè;Eì~äÇEèéÿ‹Eè‰D$‹E‰$èÛÿÿ‰Eôƒ}ôu‹Eð‰$èLèÿÿÇEäéè‹Eô‹P‹ƒèÿÿÿ9Âtq‹Eô‹P‹ƒèÿÿÿ‰D$‰$èÜÿÿ…ÀuU‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eð‰$èâçÿÿ‹ƒ¸ÿÿÿ‹ƒ4ÿÿ‰D$‰$è¨ÔÿÿÇEäëg‹EèÀÀ‰Æuð‹Eô‰$èØÊÿÿ‰$èPÏÿÿ‰‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒƒEè‹Eè;EìŒõþÿÿ‹U ‹Eð‰ÇEä‹EäƒÄ [^]ÃU‰åSƒìè9úÿÿÃo‹ƒÀ2…Àuƒ,4ÿÿ‰$èÜÿÿ‰ƒÀ2‹ƒÀ2ƒÄ[]ÃU‰åSƒìèýùÿÿÃÜnÇ$èrêÿÿƒÄ[]ÃU‰åƒìèÑÿÿÿ‰Eüë ‹E‹@‰E‹E‹@…Àuí‹U‹Eü‰B‹EüÉÃU‰åƒì‹E‹@…Àt ÇEüë‹EÇ@ÇEü‹EüÉÃU‰åSƒì$èyùÿÿÃXn‹E‹@…Àu#‹ƒÐÿÿÿ‹ƒ<4ÿÿ‰D$‰$èvåÿÿÇEèë\‹E‹@‰$èÿèÿÿ…ÀuC‹E ‰D$ƒ`4ÿÿ‰$èvÔÿÿ‰Eø‹ƒ¸ÿÿÿ‹‹Eø‰D$‰$è,åÿÿ‹Eø‰$èÈÿÿÇEèëÇEè‹EèƒÄ$[]ÃU‰åSƒìèÕøÿÿômƒy4ÿÿ‰D$‹E‰$è5ÿÿÿƒÄ[]ÃU‰åƒì‹E‹…ÀuO‹EÇ‹E‹@…Àt ‹E‹P‹ƒÀ‰‹E‹@…Àt ‹E‹P‹ƒÀ‰‹E‹@…Àt‹E‹@‰$è¢ÿÿÿÉÃU‰åSƒìèHøÿÿÃ'mƒ}t#‹E ‰D$‹E‰$è±äÿÿ‰Â‹E‰P‹U‹E‰BƒÄ[]ÃU‰åSƒìèøÿÿÃælƒ} tP‹E ‰$è·Ùÿÿ‰Â‹E‰P‹E‹@…Àu*‹ƒÈÿÿÿ‹‹E ‰D$ƒ‚4ÿÿ‰D$‰$è¤ÑÿÿÇEøë‹U‹E ‰BÇEø‹EøƒÄ[]ÃU‰å‹EÇ@ ]ÃU‰åVSƒìè÷ÿÿÃ^lè/ýÿÿ‰Æ‹E‹@ÇD$P‰$èCÝÿÿ‰t$‰$è'åÿÿƒÄ[^]ÃU‰åSƒì$è=÷ÿÿÃlƒ}„ë‹E‹@…Àt‹E‹@‰$èÌÿÿÿ‹E‹…À„‘‹ƒàÿÿÿ‹‹€°ÿЉEø‹E‹@…Àt*‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‹@…Àt*‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹ƒàÿÿÿ‹‹´‹Eø‰$ÿÒ‹E‹@…Àt‹E‹P‹E‹@‰T$‰$èüåÿÿ‹E‰D$Ç$èéåÿÿƒÄ$[]ÃU‰åWVSƒì,è.öÿÿà k‹ƒàÿÿÿ‹‹€°ÿЉEð‹E‹…Àuƒ 4ÿÿ‰D$ÇD$Ç$èæÿÿ‹E‹@ …Àt9³Ø“ýÿè”ûÿÿ‰Ç‹E ÇD$P‰$è«Ûÿÿ‰Â‰t$ ‹E‰D$‰|$‰$èâßÿÿ‹E‹@…ÀtY‹E‹p‹ƒàÿÿÿ‹‹P‹E ‰$ÿ҉Njƒàÿÿÿ‹‹P‹E‰$ÿ҉‹E‹H‰t$‰|$ ‰T$ƒð4ÿÿ‰D$‰ $èDßÿÿ‰EìëM‹ƒàÿÿÿ‹‹P‹E ‰$ÿ҉Ƌƒàÿÿÿ‹‹P‹E‰$ÿ҉‹E‹H‰t$ ‰T$ƒô4ÿÿ‰D$‰ $è5Ëÿÿ‰Eìƒ}ìu èÝÿÿè²ßÿÿƒ}ìt'‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹E‹@ …Àu ‹E‰$è`ýÿÿ‹ƒàÿÿÿ‹‹´‹Eð‰$ÿÒƒÄ,[^_]ÃU‰åSƒìDèôÿÿÃ^i‹E‰Eà‹E ‰Eä‹E‰EØ‹E‰EÜ‹ƒàÿÿÿ‹‹€°ÿЉEô‹E‹@…ÀtC‹E‹P‹E‹H‰T$‹EØ‹U܉D$‰T$‹Eà‹Uä‰D$‰T$ ƒ÷4ÿÿ‰D$‰ $è=Êÿÿ‰Eðë7‹E‹H‹EØ‹U܉D$‰T$‹Eà‹Uä‰D$‰T$ ƒý4ÿÿ‰D$‰ $èÊÿÿ‰Eðƒ}ðu èÖÛÿÿèÞÿÿƒ}ðt'‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹ƒàÿÿÿ‹‹´‹Eô‰$ÿÒƒÄD[]ÃU‰åSƒì$èeóÿÿÃDhÇEø‹ƒÀÿÿÿ‹@‰$è^Öÿÿ‰Â‹ƒÀÿÿÿ‰D$‰$èºÔÿÿ‰Eô‹Uô‹Eø‰B‹EôƒÄ$[]ÃU‰åSƒì$èóÿÿÃñg‹E‹@‹‰Eøƒ}øt‹Eø‰$èGÑÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åVSƒì è¹òÿÿØg‹E‹@‹@‰Eô‹ƒàÿÿÿ‹‹°˜èëÔÿÿ‰Â‹Eô‰D$‰$ÿÖƒÄ [^]ÃU‰åWVSƒìèqòÿÿÃPg‹E‹@‹@‰Eð‹ƒàÿÿÿ‹‹¸¤‹uðèÐÍÿÿ‰t$‰$ÿ׃Ä[^_]ÃU‰åSƒì$è,òÿÿà g‹ƒÀÿÿÿ‹@‰$è,Õÿÿ‰Â‹ƒÀÿÿÿ‰D$‰$èˆÓÿÿ‰Eøƒ}øu ÇEèëƒ}t ‹Uø‹E‰B‹Eø‰Eè‹EèƒÄ$[]ÃU‰åSƒìèÅñÿÿäf‹ƒÔ2…Àu*‹ƒÄÿÿÿ‰Â‹ƒ¨ÿÿÿ‰T$‰D$ƒM5ÿÿ‰$è8ãÿÿ‰ƒÔ2‹ƒÔ2ƒÄ[]ÃU‰åSƒì4èsñÿÿÃRfEø‰D$ƒœ ‰D$ ƒp5ÿÿ‰D$‹E‰D$‹E ‰$ègßÿÿ…Àu ÇEèÿÿÿÿëhè]ÿÿÿ‰Â‹E‰P ‹EÇ@‹Eø‰$èèÆÿÿ‰Â‹E‰P‹E‹@…Àu#‹ƒÐÿÿÿ‹ƒ”5ÿÿ‰D$‰$è ÝÿÿÇEèÿÿÿÿë‹EÇ@ÇEè‹EèƒÄ4[]ÃU‰åSƒì4è¶ðÿÿÕeEô‰D$ƒ¤ ‰D$ ƒÌ5ÿÿ‰D$‹E‰D$‹E ‰$èªÞÿÿ…Àu ÇEèë&‹Uô‹E‹@‰T$‰$è˜Íÿÿ‰Eø‹Eø‰$èZÅÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4è;ðÿÿÃeEô‰D$ƒ¬ ‰D$ ƒð5ÿÿ‰D$‹E‰D$‹E ‰$è/Þÿÿ…Àu ÇEèë&‹Uô‹E‹@‰T$‰$è}Íÿÿ‰Eø‹Eø‰$èßÄÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èÀïÿÿßdEô‰D$ƒ´ ‰D$ ƒ6ÿÿ‰D$‹E‰D$‹E ‰$è´Ýÿÿ…Àu ÇEèë&‹Uô‹E‹@‰T$‰$è‚Èÿÿ‰Eø‹Eø‰$èdÄÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$èEïÿÿÃ$d‹E‹@‰$èÈÙÿÿ‰Eøƒ}øt‹Eø‰$ètÍÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìèçîÿÿÃÆcƒØ2‰D$ ƒœ6ÿÿ‰D$‹E‰D$‹E ‰$èâÜÿÿ…Àu ÇEøÿÿÿÿëZ‹ƒàÿÿÿ‹‹ÄÇD$ÇD$‹E‰$ÿÒ‹E‹@…Àu#‹ƒÐÿÿÿ‹ƒ¼6ÿÿ‰D$‰$è‹ÚÿÿÇEøÿÿÿÿëÇEø‹EøƒÄ[]ÃU‰åVSƒì0è>îÿÿÃcÇEðEè‰D$Eì‰D$ƒÜ$‰D$ƒ| ‰D$ ƒô6ÿÿ‰D$‹E‰D$‹E ‰$èÜÿÿ…Àu ÇEäéÌ‹Eè‰$èÑÿÿ…Àu&‹ƒ¸ÿÿÿ‹ƒ7ÿÿ‰D$‰$è¡ÇÿÿÇEäé—‹Eè‰$è ïÿÿ‰EðèÂÆÿÿ‰Â‹Eì‹@‰T$‰$ènÓÿÿ‰Æè—Òÿÿ‰Â‹E‹@‰T$‰$èSÓÿÿ‰Â‹Eð‰D$‰t$‰$èÔÿÿ‰Eô‹Eð‰$è°Ãÿÿƒ}ôt‹Eô‰$èËÿÿ‰Eä닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èíÿÿÃßaÇEðEè‰D$Eì‰D$ƒÜ$‰D$ƒˆ ‰D$ ƒP7ÿÿ‰D$‹E‰D$‹E ‰$èÜÚÿÿ…Àu ÇEäéÌ‹Eè‰$èQÐÿÿ…Àu&‹ƒ¸ÿÿÿ‹ƒ7ÿÿ‰D$‰$ècÆÿÿÇEäé—‹Eè‰$èÎíÿÿ‰Eðè„Åÿÿ‰Â‹Eì‹@‰T$‰$è0Òÿÿ‰ÆèYÑÿÿ‰Â‹E‹@‰T$‰$èÒÿÿ‰Â‹Eð‰D$‰t$‰$èPÒÿÿ‰Eô‹Eð‰$èrÂÿÿƒ}ôt‹Eô‰$èQÊÿÿ‰Eä닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èÂëÿÿá`Eô‰D$ƒ” ‰D$ ƒ”7ÿÿ‰D$‹E‰D$‹E ‰$è¶Ùÿÿ…Àu ÇEäëD‹uôè‘Ðÿÿ‰Â‹E‹@‰T$‰$èMÑÿÿ‰t$‰$èÑÀÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒìè(ëÿÿÃ`ƒÜ2‰D$ ƒþ7ÿÿ‰D$‹E‰D$‹E ‰$è#Ùÿÿ…Àu ÇEøÿÿÿÿëZ‹ƒàÿÿÿ‹‹ÄÇD$ÇD$‹E‰$ÿÒ‹E‹@…Àu#‹ƒÐÿÿÿ‹ƒ8ÿÿ‰D$‰$èÌÖÿÿÇEøÿÿÿÿëÇEø‹EøƒÄ[]ÃU‰åSƒì$è€êÿÿÃ__èŒÛÿÿ‰Â‹E‹@‰T$‰$èHÐÿÿ‰$èÜÿÿ‰Eø‹Eø‰$èR¿ÿÿƒÄ$[]ÃU‰åSƒì$è9êÿÿÃ_ÇEôè>Ûÿÿ‰Â‹E‹@‰T$‰$èúÏÿÿ‰ÂEô‰D$‰$è‰Âÿÿ‰Eø‹ƒàÿÿÿ‹‹PdEô‰$ÿÒ…Àt ÇEèë‹Eø‰$èÛ¾ÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è¼éÿÿÛ^èÈÚÿÿ‰Â‹E‹@‰T$‰$è„Ïÿÿ‰$èœÔÿÿ‰Eø‹Eø‰$è.ÈÿÿƒÄ$[]ÃU‰åSƒìèuéÿÿÃT^èÚÿÿ‰Â‹E‹@‰T$‰$è=Ïÿÿ‰$èEÄÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åSƒìè#éÿÿÃ^è/Úÿÿ‰Â‹E‹@‰T$‰$èëÎÿÿ‰$è#¿ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åSƒìèÑèÿÿð]èÝÙÿÿ‰Â‹E‹@‰T$‰$è™Îÿÿ‰$èÁ¹ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åSƒìèèÿÿÃ^]è‹Ùÿÿ‰Â‹E‹@‰T$‰$èGÎÿÿ‰$èÙÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åSì„è*èÿÿà ]‹ƒàÿÿÿ‹‹P ‹E‰$ÿÒ‰EôÇE¼ÇEÀƒ¡8ÿÿ‰E°ƒ¦8ÿÿ‰E´ÇE¸ƒ¡8ÿÿ‰E¤ƒ¦8ÿÿ‰E¨ÇE¬E¼ƒÀ‰D$E¼‰D$E°‰D$ ƒ­8ÿÿ‰D$‹E‰D$‹E ‰$èÁÕÿÿ…Àu ÇE˜ÿÿÿÿéîÇD$0ÇD$Eĉ$覾ÿÿ‹ƒàÿÿÿ‹‹„E¼‰D$E ‰D$EĉD$ E¤‰D$E°‰D$‹Eô‰$ÿÒ…Àu ÇE˜ÿÿÿÿ銋ƒàÿÿÿ‹‹ˆÄ‹U EĉD$‰T$‹E‰$ÿÑÇEøë!‹UøMĉÐÀÐÁàƒÀ‰$è·ÿÿƒEø‹E 9Eør׋E‹@…Àu#‹ƒÐÿÿÿ‹ƒÈ8ÿÿ‰D$‰$èÓÒÿÿÇE˜ÿÿÿÿëÇE˜‹E˜Ä„[]ÃU‰åSƒì$è„æÿÿÃc[èð¾ÿÿ‰Â‹E‹@‰T$‰$èLÌÿÿ‰$è”Âÿÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åVSƒì è4æÿÿÃ[è ¾ÿÿ‰Â‹E‹@‰T$‰$èüËÿÿ‰$褿ÿÿ‰Eô‹ƒàÿÿÿ‹‹°˜èn¸ÿÿ‰Â‹Eô‰D$‰$ÿÖƒÄ [^]ÃU‰åVSƒì@èÕåÿÿôZEð‰D$ƒ ‰D$Eô‰D$ƒü,‰D$ƒÜ ‰D$ ƒ9ÿÿ‰D$‹E‰D$‹E ‰$è®Óÿÿ…Àu ÇEäÿÿÿÿéèé½ÿÿ‰Â‹Eð‹@‰T$‰$èEËÿÿ‰ÆèÎÖÿÿ‰Â‹Eô‹@‰T$‰$è*Ëÿÿ‰t$‰$èî¶ÿÿ‰Â‹E‰P‹E‹@…Àu#‹ƒÐÿÿÿ‹ƒ49ÿÿ‰D$‰$è2ÑÿÿÇEäÿÿÿÿ닃àÿÿÿ‹‹P‹E‰$ÿÒÇEä‹EäƒÄ@[^]ÃU‰åSƒì$èÒäÿÿñYè~Æÿÿ‰Â‹E‹@‰T$‰$èšÊÿÿ‰$èB·ÿÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åVSƒì0è‚äÿÿÃaYEô‰D$ƒ ‰D$ƒè ‰D$ ƒ\9ÿÿ‰D$‹E‰D$‹E ‰$èlÒÿÿ…Àu ÇEäë\誼ÿÿ‰Â‹Eô‹@‰T$‰$èÊÿÿ‰ÆèÏÅÿÿ‰Â‹E‹@‰T$‰$èëÉÿÿ‰t$‰$èO»ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒìDèÆãÿÿÃ¥XÇEìÇEôÇEèEì‰D$ƒ¼ ‰D$ ƒ¤9ÿÿ‰D$‹E‰D$‹E ‰$è¥Ñÿÿ…Àu ÇEØé‹Eì‰Â‹ƒÜÿÿÿ9Âu ÇEôë~‹Eì…ÀtJ‹Eì‹Pƒ\ 9Ât‹Eì‹Pƒ\ ‰D$‰$èÄÿÿ…Àtè5Ôÿÿ‰Â‹Eì‹@‰T$‰$èñÈÿÿ‰Eôë-‹Eì…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è ÏÿÿÇEØéèÄÿÿ‰Â‹E‹@‰T$‰$è¦Èÿÿ‰ÂEè‰D$‹Eô‰D$‰$è>ºÿÿ‰Eø‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEØë-‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eðƒ}øt ‹Eø‰$èD¶ÿÿ‹Eð‰EØ‹E؃ÄD[]ÃU‰åSƒì4èBâÿÿÃ!WÇEðÇEøÇEìEð‰D$ƒÄ ‰D$ ƒñ9ÿÿ‰D$‹E‰D$‹E ‰$è!Ðÿÿ…Àu ÇEèéõ‹Eð‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$èšÂÿÿ…Àtè±Òÿÿ‰Â‹Eð‹@‰T$‰$èmÇÿÿ‰Eøë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è‡ÍÿÿÇEèëbè™Âÿÿ‰Â‹E‹@‰T$‰$è%Çÿÿ‰ÂEì‰D$‹Eø‰D$‰$èmÉÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèë‹Eô‰$èÿµÿÿ‰Eè‹EèƒÄ4[]ÃU‰åWVSƒì\èÞàÿÿýUÇEèÇEäÇEàèµæÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eà‰D$Eè‰D$‰T$Eì‰D$ƒÌ ‰D$ ƒ0:ÿÿ‰D$‹E‰D$‹E ‰$è“Îÿÿ…À„§‹Eð‰$èxçÿÿ…À„”‹EàUä‰T$‰$èFàÿÿ…Àt~‹Eð‰$è|çÿÿ³å”ýÿ‹}ä‹Eè‰EÈ‹Eì‰EÌè]Áÿÿ‰Â‹E‹@‰T$‰$èéÅÿÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$èbÑÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èièÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì@è“ßÿÿÃrTÇEÜEà‰D$ƒœ%‰D$ƒä ‰D$ ƒl:ÿÿ‰D$‹E‰D$‹E ‰$èvÍÿÿ…Àu ÇEÔéèA¯ÿÿ‰Â‹Eà‹@‰T$‰$è Åÿÿ‰ÆèfÀÿÿ‰Â‹E‹@‰T$‰$èòÄÿÿ‰ÂE܉D$‰t$‰$è Ãÿÿ‰E䋃àÿÿÿ‹‹PdE܉$ÿÒ…Àt ÇEÔé™Ç$è;Îÿÿ‰Eì‹Eä‰Eèëk‹E苉Eð‹ƒàÿÿÿ‹‹P‹Eð‰$ÿÒ‰Eô‹Eô‰D$‹Eì‰$è€Åÿÿ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eð‰$è>²ÿÿ‹Eè‹@‰Eèƒ}èu‹Eä‰$褴ÿÿ‹Eì‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒì<èÞÿÿÃþRÇEìÇEèèýãÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒì ‰D$ ƒ”:ÿÿ‰D$‹E‰D$‹E ‰$èâËÿÿ…À„š‹Eð‰$èÇäÿÿ…À„‡‹EèUä‰T$‰$è•Ýÿÿ…Àtq‹Eð‰$èËäÿÿ³å”ýÿ‹}ä‹Eì‰EÜè²¾ÿÿ‰Â‹E‹@‰T$‰$è>Ãÿÿ‰Â‹Eð‰D$‰t$ ‰|$‹E܉D$‰$è~±ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$èÅåÿÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì0èïÜÿÿÃÎQÇEìEð‰D$ƒœ%‰D$ƒ‰D$ ƒ¼:ÿÿ‰D$‹E‰D$‹E ‰$èÒÊÿÿ…Àu ÇEäëzè ¬ÿÿ‰Â‹Eð‹@‰T$‰$èlÂÿÿ‰ÆèŽÿÿ‰Â‹E‹@‰T$‰$èQÂÿÿ‰ÂEì‰D$‰t$‰$è¼»ÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$è.±ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èÜÿÿÃíPèJ½ÿÿ‰Â‹E‹@‰T$‰$èÖÁÿÿ‰$èN¶ÿÿ‰Eø‹Eø‰$èà°ÿÿƒÄ$[]ÃU‰åSƒì$èÇÛÿÿæPè½ÿÿ‰Â‹E‹@‰T$‰$èÁÿÿ‰$è÷»ÿÿ‰Eø‹Eø‰$è™°ÿÿƒÄ$[]ÃU‰åVSƒì0èÛÿÿÃ^PEô‰D$ƒ‰D$ ƒè:ÿÿ‰D$‹E‰D$‹E ‰$èsÉÿÿ…Àu ÇEäëD‹uôè~¼ÿÿ‰Â‹E‹@‰T$‰$è Áÿÿ‰t$‰$èÊÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èåÚÿÿÃÄOè!¼ÿÿ‰Â‹E‹@‰T$‰$è­Àÿÿ‰$èUµÿÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰å‹E‹P‹E‰‹E]ÃU‰åSƒì$èÚÿÿÃ`OÇEô‹E‹@…Àu‹ƒ¤ÿÿÿ‹‰$èÁÁÿÿÇEèéŠè»ÿÿ‰Â‹E‹@‰T$‰$èÀÿÿ‰ÂEô‰D$ÇD$‰$è³±ÿÿ‰Eø‹ƒàÿÿÿ‹‹PdEô‰$ÿÒ…Àt ÇEèë5ƒ}øu‹ƒ¤ÿÿÿ‹‰$èJÁÿÿÇEè닃àÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè¯ÙÿÿÃŽNƒà2‰D$ ƒÀ?ÿÿ‰D$‹E‰D$‹E ‰$èªÇÿÿ…Àu ÇEøÿÿÿÿëZ‹ƒàÿÿÿ‹‹ÄÇD$ÇD$‹E‰$ÿÒ‹E‹@…Àu#‹ƒÐÿÿÿ‹ƒØ?ÿÿ‰D$‰$èSÅÿÿÇEøÿÿÿÿëÇEø‹EøƒÄ[]ÃU‰åSƒì$èÙÿÿÃæMè#¬ÿÿ‰Â‹E‹@‰T$‰$èϾÿÿ‰$è7¶ÿÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$è¬ÿÿ‹EôƒÄ$[]ÃU‰åVSƒì0è ØÿÿÃMEô‰D$ƒ‰D$ƒÜ‰D$ ƒ@ÿÿ‰D$‹E‰D$‹E ‰$èŠÆÿÿ…Àu ÇEäë\èx«ÿÿ‰Â‹Eô‹@‰T$‰$è$¾ÿÿ‰Æè]«ÿÿ‰Â‹E‹@‰T$‰$è ¾ÿÿ‰t$‰$èM¶ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èã×ÿÿÃÂLEð‰D$ƒä‰D$ ƒ!@ÿÿ‰D$‹E‰D$‹E ‰$è×Åÿÿ…Àu ÇEäë9‹uðèªÿÿ‰Â‹E‹@‰T$‰$èn½ÿÿ‰t$‰$èR±ÿÿ‰Eô‹Eô‰$èt¬ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì@èS×ÿÿÃ2Lƒ>@ÿÿ‰EàÇEäÇEÜE܉D$Eà‰D$ ƒL@ÿÿ‰D$‹E‰D$‹E ‰$è3Åÿÿ…Àu ÇEÔ鯋uÜèªÿÿ‰Â‹E‹@‰T$‰$èǼÿÿ‰t$‰$蛩ÿÿ‰EèÇ$è<Æÿÿ‰Eð‹Eè‰EìëM‹E싉$èµÿÿ‰Eô‹Eô‰D$‹Eð‰$è½ÿÿ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒƒEìƒ}ìt ‹Eì‹…Àu¤‹Eè‰$èZÃÿÿ‹Eð‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì0è6ÖÿÿÃKEð‰D$ƒì‰D$ ƒl@ÿÿ‰D$‹E‰D$‹E ‰$è*Äÿÿ…Àu ÇEäëO‹uðè©ÿÿ‰Â‹E‹@‰T$‰$èÁ»ÿÿ‰t$‰$èuÄÿÿ‰Eô‹ƒàÿÿÿ‹‹°˜è¸ÿÿ‰Â‹Eô‰D$‰$ÿÖ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èÕÿÿÃoJEô‰D$ƒô‰D$ ƒ@ÿÿ‰D$‹E‰D$‹E ‰$è„Ãÿÿ…Àu ÇEäëD‹uôèo¨ÿÿ‰Â‹E‹@‰T$‰$è»ÿÿ‰t$‰$èºÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èõÔÿÿÃÔIEð‰D$ƒü‰D$ ƒ°@ÿÿ‰D$‹E‰D$‹E ‰$èéÂÿÿ…Àu ÇEäëO‹uðèÔ§ÿÿ‰Â‹E‹@‰T$‰$耺ÿÿ‰t$‰$è¼ÿÿ‰Eô‹ƒàÿÿÿ‹‹°˜èî¼ÿÿ‰Â‹Eô‰D$‰$ÿÖ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èOÔÿÿÃ.IEì‰D$ƒ‰D$ ƒÔ@ÿÿ‰D$‹E‰D$‹E ‰$èCÂÿÿ…Àu ÇEäën‹uìè.§ÿÿ‰Â‹E‹@‰T$‰$èÚ¹ÿÿ‰t$‰$èNÅÿÿ‰Eðƒ}ðt!‹Eð‰$è*²ÿÿ‰Eô‹Eð‰$èL£ÿÿ‹Eô‰Eä닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èŠÓÿÿÃiHEð‰D$ƒ ‰D$ ƒü@ÿÿ‰D$‹E‰D$‹E ‰$è~Áÿÿ…Àu ÇEäë]‹uðèi¦ÿÿ‰Â‹E‹@‰T$‰$è¹ÿÿ‰t$‰$è ¯ÿÿ‰Eôƒ}ôt‹Eô‰$èe±ÿÿ‰Eä닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èÖÒÿÿõGEð‰D$ƒ‰D$ ƒ Aÿÿ‰D$‹E‰D$‹E ‰$èÊÀÿÿ…Àu ÇEäë]‹uðèµ¥ÿÿ‰Â‹E‹@‰T$‰$èa¸ÿÿ‰t$‰$èõ©ÿÿ‰Eôƒ}ôt‹Eô‰$è±°ÿÿ‰Eä닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è"ÒÿÿÃGEð‰D$ƒ‰D$ ƒLAÿÿ‰D$‹E‰D$‹E ‰$èÀÿÿ…Àu ÇEäë9‹uðè¥ÿÿ‰Â‹E‹@‰T$‰$è­·ÿÿ‰t$‰$èñÂÿÿ‰Eô‹Eô‰$賦ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è’ÑÿÿÃqFEð‰D$ƒ$‰D$ ƒtAÿÿ‰D$‹E‰D$‹E ‰$膿ÿÿ…Àu ÇEäë9‹uðèq¤ÿÿ‰Â‹E‹@‰T$‰$è·ÿÿ‰t$‰$èÁ¤ÿÿ‰Eô‹Eô‰$è#¤ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èÑÿÿÃáEEð‰D$ƒ,‰D$ ƒ˜Aÿÿ‰D$‹E‰D$‹E ‰$èö¾ÿÿ…Àu ÇEäë9‹uðèá£ÿÿ‰Â‹E‹@‰T$‰$è¶ÿÿ‰t$‰$è1Âÿÿ‰Eô‹Eô‰$è3¯ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èrÐÿÿÃQEEì‰D$ƒ4‰D$ ƒ¼Aÿÿ‰D$‹E‰D$‹E ‰$èf¾ÿÿ…Àu ÇEäëC‹uìèQ£ÿÿ‰Â‹E‹@‰T$‰$èýµÿÿ‰t$‰$è²ÿÿ‰Eð‰Uô‹Eð‹Uô‰$‰T$èI£ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èØÏÿÿ÷DEì‰D$ƒ<‰D$ ƒàAÿÿ‰D$‹E‰D$‹E ‰$è̽ÿÿ…Àu ÇEäëC‹uìè·¢ÿÿ‰Â‹E‹@‰T$‰$ècµÿÿ‰t$‰$èW°ÿÿ‰Eð‰Uô‹Eð‹Uô‰$‰T$è_¸ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è>ÏÿÿÃDEð‰D$ƒD‰D$ ƒBÿÿ‰D$‹E‰D$‹E ‰$è2½ÿÿ…Àu ÇEäëA‹uðè¢ÿÿ‰Â‹E‹@‰T$‰$èÉ´ÿÿ‰t$‰$èm»ÿÿ‰Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì,è¥ÎÿÿÄCEì‰D$Eð‰D$ƒL‰D$ ƒ4Bÿÿ‰D$‹E‰D$‹E ‰$è’¼ÿÿ…Àu ÇEàëK‹uì‹}ðèz¡ÿÿ‰Â‹E‹@‰T$‰$è&´ÿÿ‰t$‰|$‰$è¶±ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eà‹EàƒÄ,[^_]ÃU‰åWVSƒì,èúÍÿÿÃÙBEì‰D$Eð‰D$ƒX‰D$ ƒ\Bÿÿ‰D$‹E‰D$‹E ‰$èç»ÿÿ…Àu ÇEàëK‹uì‹}ðèÏ ÿÿ‰Â‹E‹@‰T$‰$è{³ÿÿ‰t$‰|$‰$è»®ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eà‹EàƒÄ,[^_]ÃU‰åWVSƒì,èOÍÿÿÃ.BEì‰D$Eð‰D$ƒd‰D$ ƒˆBÿÿ‰D$‹E‰D$‹E ‰$è<»ÿÿ…Àu ÇEàëK‹uì‹}ðè$ ÿÿ‰Â‹E‹@‰T$‰$èвÿÿ‰t$‰|$‰$èªÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eà‹EàƒÄ,[^_]ÃU‰åWVSƒì,è¤ÌÿÿÃAEì‰D$Eð‰D$ƒp‰D$ ƒ°Bÿÿ‰D$‹E‰D$‹E ‰$葺ÿÿ…Àu ÇEàëK‹uì‹}ðèyŸÿÿ‰Â‹E‹@‰T$‰$è%²ÿÿ‰t$‰|$‰$èE«ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eà‹EàƒÄ,[^_]ÃU‰åWVSƒì,èùËÿÿÃØ@Eì‰D$Eð‰D$ƒ|‰D$ ƒØBÿÿ‰D$‹E‰D$‹E ‰$èæ¹ÿÿ…Àu ÇEàëK‹uì‹}ðèΞÿÿ‰Â‹E‹@‰T$‰$èz±ÿÿ‰t$‰|$‰$èš´ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eà‹EàƒÄ,[^_]ÃU‰åVSƒì@èOËÿÿÃ.@ÇEèEè‰D$‹ƒÔÿÿÿ‰D$Eì‰D$ƒˆ‰D$ ƒüBÿÿ‰D$‹E‰D$‹E ‰$è+¹ÿÿ…Àu ÇEäëe‹Eè‰$èS³ÿÿ‰Eð‰Uô‹uìèžÿÿ‰Â‹E‹@‰T$‰$è±°ÿÿ‰Á‹Eð‹Uô‰D$‰T$ ‰t$‰ $èe¯ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ@[^]ÃU‰åWVSƒì<èzÊÿÿÃY?Eà‰D$Eì‰D$ƒ”‰D$ ƒ$Cÿÿ‰D$‹E‰D$‹E ‰$èg¸ÿÿ…Àu ÇEØëX‹uà‹}ä‹Eì‰EÜèIÿÿ‰Â‹E‹@‰T$‰$èõ¯ÿÿ‰t$‰|$ ‹U܉T$‰$è~œÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EØ‹E؃Ä<[^_]ÃU‰åWVSƒì<èÂÉÿÿá>‹“ì2Eì‰D$‰T$Eð‰D$ƒ ‰D$ ƒHCÿÿ‰D$‹E‰D$‹E ‰$襷ÿÿ…Àu ÇEàë`‹Eì‹@ÇD$P‰$èB¯ÿÿ‰Æ‹}ðèxœÿÿ‰Â‹E‹@‰T$‰$è$¯ÿÿ‰t$‰|$‰$è4Ÿÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eà‹EàƒÄ<[^_]ÃU‰åSƒìèúÈÿÿÃÙ=èœÿÿ‰Â‹E‹@‰T$‰$è®ÿÿ‰$è:šÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åVSƒì è§ÈÿÿÆ=èÛÿÿ‰Â‹E‹@‰T$‰$èo®ÿÿ‰$è¶ÿÿ‰Eô‹ƒàÿÿÿ‹‹°˜è1˜ÿÿ‰Â‹Eô‰D$‰$ÿÖƒÄ [^]ÃU‰åSƒì$èIÈÿÿÃ(=èe›ÿÿ‰Â‹E‹@‰T$‰$è®ÿÿ‰$èy¶ÿÿ‰Eø‹Eø‰$èÿÿƒÄ$[]ÃU‰åSƒì$èÈÿÿÃá<è›ÿÿ‰Â‹E‹@‰T$‰$èÊ­ÿÿ‰$èb¯ÿÿ‰Eø‹Eø‰$èÔœÿÿƒÄ$[]ÃU‰åSƒì$è»ÇÿÿÚ<èךÿÿ‰Â‹E‹@‰T$‰$胭ÿÿ‰$苞ÿÿ‰Eø‹Eø‰$èœÿÿƒÄ$[]ÃU‰åSƒì$ètÇÿÿÃS<èšÿÿ‰Â‹E‹@‰T$‰$è<­ÿÿ‰$è$®ÿÿ‰Eøƒ}øt‹Eø‰$è¥ÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èÇÿÿÃâ;èšÿÿ‰Â‹E‹@‰T$‰$èˬÿÿ‰$è3˜ÿÿ‰Eøƒ}øt‹Eø‰$è¥ÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è’ÆÿÿÃq;è®™ÿÿ‰Â‹E‹@‰T$‰$èZ¬ÿÿ‰$èÒ¢ÿÿ‰Eøƒ}øt‹Eø‰$认ÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è!ÆÿÿÃ;è=™ÿÿ‰Â‹E‹@‰T$‰$èé«ÿÿ‰$èA·ÿÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒì$èÒÅÿÿñ:èî˜ÿÿ‰Â‹E‹@‰T$‰$èš«ÿÿ‰$èR°ÿÿ‰Eøƒ}øt‹Eø‰$èî£ÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èaÅÿÿÃ@:è}˜ÿÿ‰Â‹E‹@‰T$‰$è)«ÿÿ‰$èÑ–ÿÿ‰Eð‰Uô‹Eð‹Uô‰$‰T$è)®ÿÿƒÄ$[]ÃU‰åSƒì$èÅÿÿÃï9è,˜ÿÿ‰Â‹E‹@‰T$‰$èØªÿÿ‰ÂEô‰D$‰$è‡ÿÿ‹Eô‹Uø‰$‰T$è5©ÿÿƒÄ$[]ÃU‰åSƒì$è¼ÄÿÿÛ9èØ—ÿÿ‰Â‹E‹@‰T$‰$脪ÿÿ‰$è,›ÿÿ‰Eøƒ}øt‹Eø‰$èØ¢ÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èKÄÿÿÃ*9èg—ÿÿ‰Â‹E‹@‰T$‰$èªÿÿ‰$è³ÿÿ‰Eøƒ}øt‹Eø‰$èg¢ÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èÚÃÿÿù8èö–ÿÿ‰Â‹E‹@‰T$‰$袩ÿÿ‰$è¦ÿÿ‰Eø‹Eø‰$èL¢ÿÿƒÄ$[]ÃU‰åVSƒì0è’ÃÿÿÃq8ÇEôEð‰D$ƒ¬‰D$ ƒtCÿÿ‰D$‹E‰D$‹E ‰$è±ÿÿ…Àu ÇEäé·‹Eð‹P‹ƒàÿÿÿ‹‹@@9Ât!‹ƒàÿÿÿ‹‹P@‹Eð‹@‰T$‰$è ¤ÿÿ…Àt`‹Eð‹p è6Ñÿÿ9ÆuQ‹Eð‹@‰Eôè–ÿÿ‰Â‹E‹@‰T$‰$èȨÿÿ‰Â‹Eô‰D$‰$è¯ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eäë!‹ƒ¸ÿÿÿ‹ƒ˜Cÿÿ‰D$‰$è¿®ÿÿÇEä‹EäƒÄ0[^]ÃU‰åSƒìè{ÂÿÿÃZ7è—•ÿÿ‰Â‹E‹@‰T$‰$èC¨ÿÿ‰$èÛ ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åWVSƒì,è'ÂÿÿÃ7ÇEìEì‰D$ƒ´‰D$ ƒ¿Cÿÿ‰D$‹E‰D$‹E ‰$è°ÿÿ…Àu ÇEÜëx‹ƒàÿÿÿ‹‹@(‰Eàuð‹}ì莑ÿÿ‰t$‰|$‰$ÿUà…Àt ÇEÜëD‹uðèË”ÿÿ‰Â‹E‹@‰T$‰$èw§ÿÿ‰t$‰$èK—ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÜ‹E܃Ä,[^_]ÃU‰åVSƒì0èPÁÿÿÃ/6Eô‰D$ƒ¼‰D$ ƒæCÿÿ‰D$‹E‰D$‹E ‰$èD¯ÿÿ…Àu ÇEäëD‹uôè/”ÿÿ‰Â‹E‹@‰T$‰$èÛ¦ÿÿ‰t$‰$è¦ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èµÀÿÿÔ5Eô‰D$ƒÄ‰D$ ƒDÿÿ‰D$‹E‰D$‹E ‰$è©®ÿÿ…Àu ÇEäëD‹uô蔓ÿÿ‰Â‹E‹@‰T$‰$è@¦ÿÿ‰t$‰$è4•ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èÀÿÿÃù4Eô‰D$ƒÌ‰D$ ƒ,Dÿÿ‰D$‹E‰D$‹E ‰$è®ÿÿ…Àu ÇEäëD‹uôèù’ÿÿ‰Â‹E‹@‰T$‰$襥ÿÿ‰t$‰$èy¢ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è¿ÿÿÃ^4Eô‰D$ƒÔ‰D$ ƒTDÿÿ‰D$‹E‰D$‹E ‰$ès­ÿÿ…Àu ÇEäëD‹uôè^’ÿÿ‰Â‹E‹@‰T$‰$è ¥ÿÿ‰t$‰$è©ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èä¾ÿÿÃÃ3Eô‰D$ƒÜ‰D$ ƒ~Dÿÿ‰D$‹E‰D$‹E ‰$èØ¬ÿÿ…Àu ÇEäëD‹uôèÑÿÿ‰Â‹E‹@‰T$‰$èo¤ÿÿ‰t$‰$èó’ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èI¾ÿÿÃ(3Eô‰D$ƒü,‰D$ƒä‰D$ ƒ›Dÿÿ‰D$‹E‰D$‹E ‰$è3¬ÿÿ…Àu ÇEäë\èq¯ÿÿ‰Â‹Eô‹@‰T$‰$èÍ£ÿÿ‰Æè‘ÿÿ‰Â‹E‹@‰T$‰$è²£ÿÿ‰t$‰$èV¤ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0茽ÿÿÃk2Eô‰D$ƒì‰D$ ƒÄDÿÿ‰D$‹E‰D$‹E ‰$耫ÿÿ…Àu ÇEäëD‹uôèkÿÿ‰Â‹E‹@‰T$‰$è£ÿÿ‰t$‰$è[—ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì<èð¼ÿÿÃÏ1Eè‰D$ƒô‰D$ ƒéDÿÿ‰D$‹E‰D$‹E ‰$èäªÿÿ…Àu ÇEÜëK‹uè‹}ìèÌÿÿ‰Â‹E‹@‰T$‰$èx¢ÿÿ‰t$‰|$‰$èØ ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÜ‹E܃Ä<[^_]ÃU‰åVSƒì0èM¼ÿÿÃ,1Eô‰D$ƒü‰D$ ƒEÿÿ‰D$‹E‰D$‹E ‰$èAªÿÿ…Àu ÇEäëD‹uôè,ÿÿ‰Â‹E‹@‰T$‰$èØ¡ÿÿ‰t$‰$èüœÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è²»ÿÿÑ0Eô‰D$ƒ‰D$ ƒ=Eÿÿ‰D$‹E‰D$‹E ‰$覩ÿÿ…Àu ÇEäëD‹uô葎ÿÿ‰Â‹E‹@‰T$‰$è=¡ÿÿ‰t$‰$è«ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$è»ÿÿÃ÷/è$ÿÿ‰Â‹E‹@‰T$‰$èà ÿÿ‰$èX©ÿÿ‰Eø‹Eø‰$èêÿÿƒÄ$[]ÃU‰åSƒì$èѺÿÿð/èÝŽÿÿ‰Â‹E‹@‰T$‰$è™ ÿÿ‰$èQ£ÿÿ‰Eø‹Eø‰$è£ÿÿƒÄ$[]ÃU‰åVSƒì0艺ÿÿÃh/Eô‰D$ƒÜ‰D$ ƒœIÿÿ‰D$‹E‰D$‹E ‰$è}¨ÿÿ…Àu ÇEäëD‹uôèXŽÿÿ‰Â‹E‹@‰T$‰$è ÿÿ‰t$‰$èÈ“ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLèí¹ÿÿÃÌ.ÇEèEè‰D$ Eì‰D$ƒ,‰D$Eð‰D$ƒ,‰D$ƒä‰D$ ƒØIÿÿ‰D$‹E‰D$‹E ‰$踧ÿÿ…Àu ÇEØé½‹ƒàÿÿÿ‹‹@(‰EÜuä‹}èèÏšÿÿ‰t$‰|$‰$ÿUÜ…Àt ÇEØé†‹uäèÙ¡ÿÿ‰Â‹Eì‹@‰T$‰$èŸÿÿ‰Ç辡ÿÿ‰Â‹Eð‹@‰T$‰$èúžÿÿ‰Eàè"ÿÿ‰Â‹E‹@‰T$‰$èÞžÿÿ‰t$ ‰|$‹Uà‰T$‰$è÷šÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EØ‹E؃ÄL[^_]ÃU‰åWVSƒì\諸ÿÿÊ-ÇEàÇEÔÿÿÿÿÇEÐEà‰D$EÔ‰D$ƒ¼‰D$ ƒ)Jÿÿ‰D$‹E‰D$‹E ‰$胦ÿÿ…Àu ÇE¸é´‹EÔ…Àx‹EÔ‰E¼ëÇE¼ ‹E¼‰Eè‹EàU؉T$‰$è%¸ÿÿ…Àu ÇE¸év‹Eè‰D$Ç$è’ÿÿ‰EÜ‹EÜ…Àu ÇE¸éMÇEäÇEð‹ƒàÿÿÿ‹‹€¨…Àt臖ÿÿ‰Eðè‡ÿÿÇ‹uØ‹Uä‹Eè‰Ç)׋EÜP‹Eä‰UÀ艊ÿÿ‰Â‹E‹@‰T$‰$èeÿÿ‰ÂEЉD$‰t$ ‰|$‹EÀ‰D$‰$èÕ†ÿÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eð‰$è”ÿÿ‹ƒàÿÿÿ‹‹PdEЉ$ÿÒ…Àt*‹EÜ‹ƒê‰‹…Àu‹EÜ‹@‹P‹E܉$ÿÒÇE¸ëeƒ}ìt?‹EìEä‹Eä;Eèr1‹EÔ…Ày*Eè ‹Eè‰D$E܉$èТÿÿ…À‰ãþÿÿÇE¸ë ‹Eä;Eèt‹Eä‰D$E܉$襢ÿÿ‹E܉E¸‹E¸ƒÄ\[^_]ÃU‰åWVSƒì\è¶ÿÿÃ^+ÇEäÇEØÿÿÿÿÇEÔEä‰D$E؉D$ƒÈ‰D$ ƒ)Jÿÿ‰D$‹E‰D$‹E ‰$èW¤ÿÿ…Àu ÇE¸é¹‹EØ…Àx‹E؉E¼ëÇE¼ ‹E¼‰Eì‹EäU܉T$‰$èùµÿÿ…Àu ÇE¸é{‹Eì‰D$Ç$èfŽÿÿ‰Eà‹Eà…Àu ÇE¸éRÇEèÇEð‹ƒàÿÿÿ‹‹€¨…Àtè[”ÿÿ‰Eðèó„ÿÿÇ‹uÜ‹Uè‹Eì‰Ç)׋EàP‹Eè‰UÀè]ˆÿÿ‰Â‹E‹@‰T$‰$è9›ÿÿ‰ÂEÔ‰D$‰t$EЉD$ ‰|$‹EÀ‰D$‰$èâŒÿÿ‹ƒàÿÿÿ‹‹€¨…Àt ‹Eð‰$èÕ‘ÿÿ‹ƒàÿÿÿ‹‹PdEÔ‰$ÿÒ…Àt*‹Eà‹ƒê‰‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒÇE¸ëf‹EÐEè‹Eè;Eìr8‹EÐ…Àt1‹EØ…Ày*Eì ‹Eì‰D$Eà‰$蟠ÿÿ…À‰ÞþÿÿÇE¸ë ‹Eè;Eìt‹Eè‰D$Eà‰$èt ÿÿ‹Eà‰E¸‹E¸ƒÄ\[^_]ÃU‰åVSƒì@èO´ÿÿÃ.)ÇEìÇEðÇEäEì‰D$Eè‰D$ƒÔ‰D$ ƒ>Jÿÿ‰D$‹E‰D$‹E ‰$è'¢ÿÿ…Àu ÇEÔé‹Eì‰Â‹ƒÜÿÿÿ9Âu ÇEðë{‹Eì…ÀtJ‹Eì‹Pƒ\ 9Ât‹Eì‹Pƒ\ ‰D$‰$è ”ÿÿ…Àtè·¤ÿÿ‰Â‹Eì‹@‰T$‰$ès™ÿÿ‰Eðë*‹Eì…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èŸÿÿÇEÔën‹uèèL†ÿÿ‰Â‹E‹@‰T$‰$è(™ÿÿ‰ÂEä‰D$ ‹Eð‰D$‰t$‰$èl¡ÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë‹Eô™‰$‰T$èù›ÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åSƒì4èÙ²ÿÿø'ÇEðÇEøÇEìEð‰D$ƒà‰D$ ƒWJÿÿ‰D$‹E‰D$‹E ‰$踠ÿÿ…Àu ÇEèéõ‹Eð‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$è1“ÿÿ…ÀtèH£ÿÿ‰Â‹Eð‹@‰T$‰$è˜ÿÿ‰Eøë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èžÿÿÇEèëbèà„ÿÿ‰Â‹E‹@‰T$‰$è¼—ÿÿ‰ÂEì‰D$‹Eø‰D$‰$èdÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèë‹Eô‰$è–†ÿÿ‰Eè‹EèƒÄ4[]ÃU‰åWVSƒì\èu±ÿÿÃT&ÇEìÿÿÿÿÇEèÇEäèL·ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eä‰D$Eè‰D$‰T$Eì‰D$ƒè‰D$ ƒpJÿÿ‰D$‹E‰D$‹E ‰$è*Ÿÿÿ…À„ã‹Eð‰$è¸ÿÿ…À„ЋEäUà‰T$‰$èݰÿÿ…À„¶‹Eì‰D$‹Eð‰$詸ÿÿ…À„œ‹Eð‰$èõ·ÿÿ‹Eð‰$è¹ÿÿ³å”ýÿ‹}à‹Eè‰EÄ‹Eð‹@‰EÈ‹Eð‹@‰EÌèoƒÿÿ‰Â‹E‹@‰T$‰$èK–ÿÿ‰Â‹Eð‰D$‰t$‰|$‹EĉD$ ‹EȉD$‹ẺD$‰$è}–ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èĸÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èî¯ÿÿÃÍ$ÇEèEì‰D$ƒœ%‰D$ƒ‰D$ ƒJÿÿ‰D$‹E‰D$‹E ‰$èÑÿÿ…Àu ÇEäé­èœÿÿ‰Â‹Eì‹@‰T$‰$èh•ÿÿ‰Æèq‚ÿÿ‰Â‹E‹@‰T$‰$èM•ÿÿ‰ÂEè‰D$‰t$‰$è›ÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäëAƒ}ðuƒ¯Jÿÿ‰$èqÿÿ‰Eäë(‹Eì‰$è~·ÿÿ‰Eô‹Eô‹@‰Â‹Eð‰D$‰$臇ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì\èÕ®ÿÿô#ÇEìÿÿÿÿÇEèÇEä謴ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eä‰D$Eè‰D$‰T$Eì‰D$ƒ‰D$ ƒ°Jÿÿ‰D$‹E‰D$‹E ‰$芜ÿÿ…À„§‹Eð‰$èoµÿÿ…À„”‹EäUà‰T$‰$è=®ÿÿ…Àt~‹Eð‰$èsµÿÿ³å”ýÿ‹}à‹Eè‰EÈ‹Eì‰EÌèÿÿ‰Â‹E‹@‰T$‰$èà“ÿÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$虚ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$è`¶ÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0芭ÿÿÃi"ÇEìEð‰D$ƒœ%‰D$ƒ ‰D$ ƒÐJÿÿ‰D$‹E‰D$‹E ‰$èm›ÿÿ…Àu ÇEäëè;}ÿÿ‰Â‹Eð‹@‰T$‰$è“ÿÿ‰Æè€ÿÿ‰Â‹E‹@‰T$‰$èì’ÿÿ‰ÂEì‰D$‰t$‰$èG–ÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô™‰$‰T$èÄ•ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì<袬ÿÿÃ!ÇEìÇEè耲ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒ(‰D$ ƒïJÿÿ‰D$‹E‰D$‹E ‰$èešÿÿ…À„š‹Eð‰$èJ³ÿÿ…À„‡‹EèUä‰T$‰$è¬ÿÿ…Àtq‹Eð‰$èN³ÿÿ³å”ýÿ‹}ä‹Eì‰EÜèå~ÿÿ‰Â‹E‹@‰T$‰$èÁ‘ÿÿ‰Â‹Eð‰D$‰t$ ‰|$‹E܉D$‰$è‘ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$èH´ÿÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì0èr«ÿÿÃQ ÇEìEð‰D$ƒœ%‰D$ƒ<‰D$ ƒKÿÿ‰D$‹E‰D$‹E ‰$èU™ÿÿ…Àu ÇEäëzè#{ÿÿ‰Â‹Eð‹@‰T$‰$èïÿÿ‰Æèø}ÿÿ‰Â‹E‹@‰T$‰$èÔÿÿ‰ÂEì‰D$‰t$‰$诊ÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$è±ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$葪ÿÿÃpè}}ÿÿ‰Â‹E‹@‰T$‰$èYÿÿ‰$èŠÿÿ‰Eø‹Eø‰$ècÿÿƒÄ$[]ÃU‰åSƒì$èJªÿÿÃ)è6}ÿÿ‰Â‹E‹@‰T$‰$èÿÿ‰$èê‚ÿÿ‰Eø‹Eø‰$èÿÿƒÄ$[]ÃU‰åSƒì$èªÿÿÃâÇEôèè|ÿÿ‰Â‹E‹@‰T$‰$èÄÿÿ‰ÂEô‰D$‰$è#ÿÿ‰Eø‹ƒàÿÿÿ‹‹PdEô‰$ÿÒ…Àt ÇEèë‹Eø‰$è¥~ÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì膩ÿÿÃeèr|ÿÿ‰Â‹E‹@‰T$‰$èNÿÿ‰$èvÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åVSƒì@è3©ÿÿÃÇEèÇEðÇEäEè‰D$Eì‰D$ƒ‰D$ ƒÜOÿÿ‰D$‹E‰D$‹E ‰$è —ÿÿ…Àu ÇEÔé‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEðë{‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$脉ÿÿ…Àtè›™ÿÿ‰Â‹Eè‹@‰T$‰$èWŽÿÿ‰Eðë*‹Eè…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èq”ÿÿÇEÔëq‹uìè`}ÿÿ‰Â‹E‹@‰T$‰$è Žÿÿ‰ÂEä‰D$ ‹Eð‰D$‰t$‰$èˆÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔ닃àÿÿÿ‹‹P‹Eô‰$ÿÒ‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒì\踧ÿÿ×ÇEèÇEäè–­ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eè‰D$Eä‰D$‰T$Eà‰D$ƒ(‰D$ ƒPÿÿ‰D$‹E‰D$‹E ‰$èt•ÿÿ…Àu‹Eð‰$è]®ÿÿ…À„”‹EèUì‰T$‰$è+§ÿÿ…Àt~‹Eð‰$èa®ÿÿ³å”ýÿ‹}ì‹Eä‰EÈ‹Eà‰EÌè"|ÿÿ‰Â‹E‹@‰T$‰$èÎŒÿÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$è7xÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èN¯ÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èx¦ÿÿÃWÇEìEð‰D$ƒœ%‰D$ƒ@‰D$ ƒ,Pÿÿ‰D$‹E‰D$‹E ‰$è[”ÿÿ…Àu ÇEäé‚è&vÿÿ‰Â‹Eð‹@‰T$‰$èò‹ÿÿ‰Æè+{ÿÿ‰Â‹E‹@‰T$‰$è׋ÿÿ‰ÂEì‰D$‰t$‰$èÒwÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEä닃àÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$茥ÿÿÃkè¨ÿÿ‰Â‹E‹@‰T$‰$èT‹ÿÿ‰$è ÿÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒì$è=¥ÿÿÃèYÿÿ‰Â‹E‹@‰T$‰$è‹ÿÿ‰$èí‰ÿÿ‰Eø‹Eø‰$èzÿÿƒÄ$[]ÃU‰åVSƒì0èõ¤ÿÿÃÔEô‰D$ƒ‰D$ ƒ¤Pÿÿ‰D$‹E‰D$‹E ‰$èé’ÿÿ…Àu ÇEäëD‹uôèÔŒÿÿ‰Â‹E‹@‰T$‰$耊ÿÿ‰t$‰$è4Žÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒìdè[¤ÿÿÃ:‹ƒàÿÿÿ‹‹P ‹E‰$ÿÒ‰EôÇE؃$Qÿÿ‰EÐÇEÔƒ$Qÿÿ‰EÈÇEÌE؉D$EЉD$ ƒ0Qÿÿ‰D$‹E‰D$‹E ‰$è’ÿÿ…Àu ÇE¸ÿÿÿÿéîÇD$ÇD$E܉$èúzÿÿ‹ƒàÿÿÿ‹‹„E؉D$EĉD$E܉D$ EȉD$EЉD$‹Eô‰$ÿÒ…Àu ÇE¸ÿÿÿÿ銋ƒàÿÿÿ‹‹ˆÄ‹UÄE܉D$‰T$‹E‰$ÿÑÇEøë!‹UøM܉ÐÀÐÁàƒÀ‰$èWsÿÿƒEø‹EÄ9Eør׋E‹@…Àu#‹ƒÐÿÿÿ‹ƒTQÿÿ‰D$‰$è'ÿÿÇE¸ÿÿÿÿëÇE¸‹E¸ƒÄd[]ÃU‰åSƒì$èÛ¢ÿÿúèçÿÿ‰Â‹E‹@‰T$‰$裈ÿÿ‰$è |ÿÿ‰Eø‹Eøº‰$‰T$èôuÿÿƒÄ$[]ÃU‰åVSƒì0芢ÿÿÃiEô‰D$ƒü‰D$ ƒ„Qÿÿ‰D$‹E‰D$‹E ‰$è~ÿÿ…Àu ÇEäëD‹uôèYÿÿ‰Â‹E‹@‰T$‰$èˆÿÿ‰t$‰$è©ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èð¡ÿÿÃÏèüÿÿ‰Â‹E‹@‰T$‰$踇ÿÿ‰$è`‘ÿÿ‰Eø‹Eøº‰$‰T$è uÿÿƒÄ$[]ÃU‰åVSƒì@蟡ÿÿÃ~ÇEèÇEìÇEäEè‰D$Eà‰D$ƒ‰D$ ƒ°Qÿÿ‰D$‹E‰D$‹E ‰$èwÿÿ…Àu ÇEÔéB‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEìë~‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$èðÿÿ…Àtè’ÿÿ‰Â‹Eè‹@‰T$‰$èÆÿÿ‰Eìë-‹Eè…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÝŒÿÿÇEÔé¬ÇEô‹ƒàÿÿÿ‹‹€¨…ÀtèSÿÿ‰Eô‹uà蘎ÿÿ‰Â‹E‹@‰T$‰$èT†ÿÿ‰ÂEä‰D$ ‹Eì‰D$‰t$‰$èè€ÿÿ‰Eð‹ƒàÿÿÿ‹‹€¨…Àt ‹Eô‰$èø|ÿÿ‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë‹Eð™‰$‰T$è‰ÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒì\èæŸÿÿÃÅÇEìÿÿÿÿÇEèÇEäè½¥ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eä‰D$Eè‰D$‰T$Eì‰D$ƒ‰D$ ƒÔQÿÿ‰D$‹E‰D$‹E ‰$è›ÿÿ…À„§‹Eð‰$耦ÿÿ…À„”‹EäUà‰T$‰$èNŸÿÿ…Àt~‹Eð‰$脦ÿÿ³å”ýÿ‹}à‹Eè‰EÈ‹Eì‰EÌè5ÿÿ‰Â‹E‹@‰T$‰$èñ„ÿÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$èêÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èq§ÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0蛞ÿÿÃzÇEìEð‰D$ƒœ%‰D$ƒ(‰D$ ƒRÿÿ‰D$‹E‰D$‹E ‰$è~Œÿÿ…Àu ÇEäëèLnÿÿ‰Â‹Eð‹@‰T$‰$è„ÿÿ‰ÆèAŒÿÿ‰Â‹E‹@‰T$‰$èýƒÿÿ‰ÂEì‰D$‰t$‰$èwÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô™‰$‰T$èÕ†ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì4èµÿÿÔÇEðÇEøÇEìEð‰D$ƒ0‰D$ ƒ(Rÿÿ‰D$‹E‰D$‹E ‰$蔋ÿÿ…Àu ÇEèéõ‹Eð‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$è ~ÿÿ…Àtè$Žÿÿ‰Â‹Eð‹@‰T$‰$èà‚ÿÿ‰Eøë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èúˆÿÿÇEèëbèÜŠÿÿ‰Â‹E‹@‰T$‰$蘂ÿÿ‰ÂEì‰D$‹Eø‰D$‰$è°ˆÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèë‹Eô‰$è{ÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìdèSœÿÿÃ2‹ƒàÿÿÿ‹‹P ‹E‰$ÿÒ‰EôÇE؃$Qÿÿ‰EÐÇEÔƒ$Qÿÿ‰EÈÇEÌE؉D$EЉD$ ƒ¼Rÿÿ‰D$‹E‰D$‹E ‰$è Šÿÿ…Àu ÇE¸ÿÿÿÿéîÇD$ÇD$E܉$èòrÿÿ‹ƒàÿÿÿ‹‹„E؉D$EĉD$E܉D$ EȉD$EЉD$‹Eô‰$ÿÒ…Àu ÇE¸ÿÿÿÿ銋ƒàÿÿÿ‹‹ˆÄ‹UÄE܉D$‰T$‹E‰$ÿÑÇEøë!‹UøM܉ÐÀÐÁàƒÀ‰$èOkÿÿƒEø‹EÄ9Eør׋E‹@…Àu#‹ƒÐÿÿÿ‹ƒÜRÿÿ‰D$‰$è‡ÿÿÇE¸ÿÿÿÿëÇE¸‹E¸ƒÄd[]ÃU‰åWVSƒì,èÑšÿÿðÇEðEð‰D$ƒü‰D$ ƒSÿÿ‰D$‹E‰D$‹E ‰$辈ÿÿ…Àu ÇEÜëx‹ƒàÿÿÿ‹‹@(‰Eàuì‹}ðèèwÿÿ‰t$‰|$‰$ÿUà…Àt ÇEÜëD‹uìè5‡ÿÿ‰Â‹E‹@‰T$‰$è!€ÿÿ‰t$‰$èuÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÜ‹E܃Ä,[^_]ÃU‰åVSƒì èú™ÿÿÃÙèÖ†ÿÿ‰Â‹E‹@‰T$‰$èÂÿÿ‰$èúpÿÿ‰Eô‹ƒàÿÿÿ‹‹°˜è4wÿÿ‰Â‹Eô‰D$‰$ÿÖƒÄ [^]ÃU‰åWVSƒì,èš™ÿÿÃyÇEðEð‰D$ƒ‰D$ ƒ8Sÿÿ‰D$‹E‰D$‹E ‰$臇ÿÿ…Àu ÇEÜëx‹ƒàÿÿÿ‹‹@(‰Eàuì‹}ðèñtÿÿ‰t$‰|$‰$ÿUà…Àt ÇEÜëD‹uìèþ…ÿÿ‰Â‹E‹@‰T$‰$èê~ÿÿ‰t$‰$èî~ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÜ‹E܃Ä,[^_]ÃU‰åVSƒì èØÿÿâ 蟅ÿÿ‰Â‹E‹@‰T$‰$è‹~ÿÿ‰$èctÿÿ‰Eô‹ƒàÿÿÿ‹‹°˜è=tÿÿ‰Â‹Eô‰D$‰$ÿÖƒÄ [^]ÃU‰åSƒì4èe˜ÿÿÃD ÇEôÇEøÇEìEô‰D$ƒ ‰D$ ƒ`Sÿÿ‰D$‹E‰D$‹E ‰$èD†ÿÿ…Àu ÇEèéý‹Eô‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eô…ÀtJ‹Eô‹Pƒ\ 9Ât‹Eô‹Pƒ\ ‰D$‰$è½xÿÿ…ÀtèÔˆÿÿ‰Â‹Eô‹@‰T$‰$è}ÿÿ‰Eøë*‹Eô…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$誃ÿÿÇEèëjè\„ÿÿ‰Â‹E‹@‰T$‰$èH}ÿÿ‰ÂEì‰D$‹Eø‰D$‰$è@€ÿÿˆEó‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèëÇD$Eó‰$èªoÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èû–ÿÿÃÚ ÇEðÇEøÇEìEð‰D$ƒ‰D$ ƒ„Sÿÿ‰D$‹E‰D$‹E ‰$èÚ„ÿÿ…Àu ÇEèéö‹Eð‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$èSwÿÿ…Àtèj‡ÿÿ‰Â‹Eð‹@‰T$‰$è&|ÿÿ‰Eøë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è@‚ÿÿÇEèëcèò‚ÿÿ‰Â‹E‹@‰T$‰$èÞ{ÿÿ‰ÂEì‰D$‹Eø‰D$‰$èÖ}ÿÿ˜‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèë‹Eô‰$èWtÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4蘕ÿÿÃw ÇEðÇEøÇEìEð‰D$ƒ‰D$ ƒ¨Sÿÿ‰D$‹E‰D$‹E ‰$èwƒÿÿ…Àu ÇEèéø‹Eð‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$èðuÿÿ…Àtè†ÿÿ‰Â‹Eð‹@‰T$‰$èÃzÿÿ‰Eøë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÝ€ÿÿÇEèëeèÿÿ‰Â‹E‹@‰T$‰$è{zÿÿ‰ÂEì‰D$‹Eø‰D$‰$èóÿÿ·À‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèë‹Eô‰$èòrÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4è3”ÿÿà ÇEðÇEøÇEìEð‰D$ƒ$‰D$ ƒÌSÿÿ‰D$‹E‰D$‹E ‰$è‚ÿÿ…Àu ÇEèéõ‹Eð‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$è‹tÿÿ…Àt袄ÿÿ‰Â‹Eð‹@‰T$‰$è^yÿÿ‰Eøë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èxÿÿÇEèëbè*€ÿÿ‰Â‹E‹@‰T$‰$èyÿÿ‰ÂEì‰D$‹Eø‰D$‰$ènÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèë‹Eô‰$èqÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èÑ’ÿÿðÇEðÇEôÇEìEð‰D$ƒ,‰D$ ƒðSÿÿ‰D$‹E‰D$‹E ‰$è°€ÿÿ…Àu ÇEèéõ‹Eð‰Â‹ƒÜÿÿÿ9Âu ÇEôë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$è)sÿÿ…Àtè@ƒÿÿ‰Â‹Eð‹@‰T$‰$èüwÿÿ‰Eôë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è~ÿÿÇEèëbèÈ~ÿÿ‰Â‹E‹@‰T$‰$è´wÿÿ‰ÂEì‰D$‹Eô‰D$‰$èüsÿÿ‰Eø‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèë‹Eø‰$èŽdÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìDèo‘ÿÿÃNÇEäÇEôÇEàEä‰D$ƒ4‰D$ ƒTÿÿ‰D$‹E‰D$‹E ‰$èNÿÿ…Àu ÇEÔéÿ‹Eä‰Â‹ƒÜÿÿÿ9Âu ÇEôë{‹Eä…ÀtJ‹Eä‹Pƒ\ 9Ât‹Eä‹Pƒ\ ‰D$‰$èÇqÿÿ…ÀtèÞÿÿ‰Â‹Eä‹@‰T$‰$èšvÿÿ‰Eôë*‹Eä…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è´|ÿÿÇEÔëlèf}ÿÿ‰Â‹E‹@‰T$‰$èRvÿÿ‰ÂEà‰D$‹Eô‰D$‰$èuÿÿ‰Eè‰U싃àÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÔë‹Eè‹Uì‰$‰T$è"yÿÿ‰EÔ‹EÔƒÄD[]ÃU‰åSƒìDèÿÿÃâÇEèÇEìÇEäEè‰D$ƒ<‰D$ ƒ8Tÿÿ‰D$‹E‰D$‹E ‰$èâ}ÿÿ…Àu ÇEÔéÿ‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEìë{‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$è[pÿÿ…Àtèr€ÿÿ‰Â‹Eè‹@‰T$‰$è.uÿÿ‰Eìë*‹Eè…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èH{ÿÿÇEÔëlèú{ÿÿ‰Â‹E‹@‰T$‰$èætÿÿ‰ÂEä‰D$‹Eì‰D$‰$èlÿÿ‰Eð‰Uô‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë‹Eð‹Uô‰$‰T$èbÿÿ‰EÔ‹EÔƒÄD[]ÃU‰åVSƒì@è–ŽÿÿÃuÇEìÇEàEì‰D$ƒD‰D$ ƒ\Tÿÿ‰D$‹E‰D$‹E ‰$è||ÿÿ…Àu ÇEÔ飋EìUè‰T$‰$è:Žÿÿ…Àu ÇEÔé‹uèè{ÿÿ‰Â‹E‹@‰T$‰$èîsÿÿ‰ÂEà‰D$ ‰t$Eä‰D$‰$è²nÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÔë&‹Eä‰D$‹Eð‰$èMfÿÿ‰Eô‹Eð‰$è/]ÿÿ‹Eô‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒì<èŠÿÿÃiÇEäÇEØEä‰D$Eè‰D$ƒL‰D$ ƒˆTÿÿ‰D$‹E‰D$‹E ‰$èi{ÿÿ…Àu ÇEÐ骋EäUà‰T$‰$è'ÿÿ…Àu ÇEÐ鈋uà‹}èèìyÿÿ‰Â‹E‹@‰T$‰$èØrÿÿ‰ÂE؉D$‰t$ E܉D$‰|$‰$èˆxÿÿ‰E싃àÿÿÿ‹‹PdE؉$ÿÒ…Àt ÇEÐë&‹E܉D$‹Eì‰$è3eÿÿ‰Eð‹Eì‰$è\ÿÿ‹Eð‰EЋEЃÄ<[^_]ÃU‰åWVSƒì\èoŒÿÿÃNÇEèÇEäèM’ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eä‰D$Eè‰D$‰T$Eì‰D$ƒX‰D$ ƒ¬Tÿÿ‰D$‹E‰D$‹E ‰$è+zÿÿ…À„§‹Eð‰$è“ÿÿ…À„”‹EäUà‰T$‰$èÞ‹ÿÿ…Àt~‹Eð‰$è“ÿÿ³å”ýÿ‹}à‹Eè‰EÈ‹Eì‰EÌè•xÿÿ‰Â‹E‹@‰T$‰$èqÿÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$èú^ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$è”ÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì@è+‹ÿÿà ÇEèEì‰D$ƒœ%‰D$ƒp‰D$ ƒØTÿÿ‰D$‹E‰D$‹E ‰$èyÿÿ…Àu ÇEÔé™èÙZÿÿ‰Â‹Eì‹@‰T$‰$è¥pÿÿ‰Æèžwÿÿ‰Â‹E‹@‰T$‰$èŠpÿÿ‰ÂEè‰D$ Eä‰D$‰t$‰$è¾wÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEÔë&‹Eä‰D$‹Eð‰$èébÿÿ‰Eô‹Eð‰$èËYÿÿ‹Eô‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒì<è&ŠÿÿÃÿÇEìÇEèèÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒx‰D$ ƒUÿÿ‰D$‹E‰D$‹E ‰$èéwÿÿ…À„š‹Eð‰$èÎÿÿ…À„‡‹EèUä‰T$‰$蜉ÿÿ…Àtq‹Eð‰$èÒÿÿ³å”ýÿ‹}ä‹Eì‰EÜèYvÿÿ‰Â‹E‹@‰T$‰$èEoÿÿ‰Â‹Eð‰D$‰t$ ‰|$‹E܉D$‰$èeeÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$èÌ‘ÿÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì@èöˆÿÿÃÕýÇEèEì‰D$ƒœ%‰D$ƒŒ‰D$ ƒ0Uÿÿ‰D$‹E‰D$‹E ‰$èÙvÿÿ…Àu ÇEÔé™è¤Xÿÿ‰Â‹Eì‹@‰T$‰$èpnÿÿ‰Æèiuÿÿ‰Â‹E‹@‰T$‰$èUnÿÿ‰ÂEè‰D$ Eä‰D$‰t$‰$è9zÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEÔë&‹Eä‰D$‹Eð‰$è´`ÿÿ‰Eô‹Eð‰$è–Wÿÿ‹Eô‰EÔ‹EÔƒÄ@[^]ÃU‰åSƒìèó‡ÿÿÃÒüƒä2‰D$ ƒ„Wÿÿ‰D$‹E‰D$‹E ‰$èîuÿÿ…Àu ÇEøÿÿÿÿëZ‹ƒàÿÿÿ‹‹ÄÇD$ÇD$‹E‰$ÿÒ‹E‹@…Àu#‹ƒÐÿÿÿ‹ƒ¤Wÿÿ‰D$‰$è—sÿÿÇEøÿÿÿÿëÇEø‹EøƒÄ[]ÃU‰åVSƒì0èJ‡ÿÿÃ)üEì‰D$ƒ\‰D$ ƒØWÿÿ‰D$‹E‰D$‹E ‰$è>uÿÿ…Àu ÇEäé÷‹Eì‹“Üÿÿÿ9ЄʋEì‹P‹ƒèÿÿÿ9ÂtB‹Eì‹P‹ƒèÿÿÿ‰D$‰$èÅgÿÿ…Àu&‹ƒ¸ÿÿÿ‹ƒùWÿÿ‰D$‰$è×rÿÿÇEä锋Eì‰$è`ÿÿ‰Eô‹Eô‰$èr^ÿÿ‰Eð‹uô‹Eì‰$è±Vÿÿ‰t$‰D$‹Eð‰$èþdÿÿè™uÿÿ‰Â‹E‹@‰T$‰$è5lÿÿ‰Â‹ƒ˜ÿÿÿ‰D$ ‹Eô‰D$‹Eð‰D$‰$èceÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒìèú…ÿÿÃÙúƒè2‰D$ ƒ6Xÿÿ‰D$‹E‰D$‹E ‰$èõsÿÿ…Àu ÇEøÿÿÿÿëZ‹ƒàÿÿÿ‹‹ÄÇD$ÇD$‹E‰$ÿÒ‹E‹@…Àu#‹ƒÐÿÿÿ‹ƒTXÿÿ‰D$‰$èžqÿÿÇEøÿÿÿÿëÇEø‹EøƒÄ[]ÃU‰åSƒì$èR…ÿÿÃ1úèŽrÿÿ‰Â‹E‹@‰T$‰$èkÿÿ‰$èvÿÿ‰Eøƒ}øt‹Eø‰$èncÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åVSƒì0èà„ÿÿÿùEô‰D$ƒ<‰D$ ƒˆXÿÿ‰D$‹E‰D$‹E ‰$èÔrÿÿ…Àu ÇEäëD‹uôèßqÿÿ‰Â‹E‹@‰T$‰$èkjÿÿ‰t$‰$èÏoÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èF„ÿÿÃ%ùè‚qÿÿ‰Â‹E‹@‰T$‰$èjÿÿ‰$è&iÿÿ‰Eøƒ}øt‹Eø‰$èbbÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åVSƒì0èÔƒÿÿóøEô‰D$ƒD‰D$ ƒ´Xÿÿ‰D$‹E‰D$‹E ‰$èÈqÿÿ…Àu ÇEäëD‹uôèÓpÿÿ‰Â‹E‹@‰T$‰$è_iÿÿ‰t$‰$è#lÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$è:ƒÿÿÃøèvpÿÿ‰Â‹E‹@‰T$‰$èiÿÿ‰$èŠfÿÿ‰Eø‹Eø‰$è XÿÿƒÄ$[]ÃU‰åVSƒì0èò‚ÿÿÃÑ÷Eô‰D$ƒL‰D$ ƒàXÿÿ‰D$‹E‰D$‹E ‰$èæpÿÿ…Àu ÇEäëD‹uôèñoÿÿ‰Â‹E‹@‰T$‰$è}hÿÿ‰t$‰$è!^ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èX‚ÿÿÃ7÷è”oÿÿ‰Â‹E‹@‰T$‰$è hÿÿ‰$èkÿÿ‰Eøƒ}øt‹Eø‰$èt`ÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åVSƒì0èæÿÿÃÅöEô‰D$ƒT‰D$ ƒ Yÿÿ‰D$‹E‰D$‹E ‰$èÚoÿÿ…Àu ÇEäëD‹uôèånÿÿ‰Â‹E‹@‰T$‰$èqgÿÿ‰t$‰$èuRÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì èKÿÿÃ*öè‡nÿÿ‰Â‹E‹@‰T$‰$ègÿÿ‰$è‹Xÿÿ‰Eô‹ƒàÿÿÿ‹‹°˜è5nÿÿ‰Â‹Eô‰D$‰$ÿÖƒÄ [^]ÃU‰åWVSƒì,èë€ÿÿÃÊõÇEðEð‰D$ƒ\‰D$ ƒ4Yÿÿ‰D$‹E‰D$‹E ‰$èØnÿÿ…Àu ÇEÜëx‹ƒàÿÿÿ‹‹@(‰Eàuì‹}ðè²mÿÿ‰t$‰|$‰$ÿUà…Àt ÇEÜëD‹uìè¯mÿÿ‰Â‹E‹@‰T$‰$è;fÿÿ‰t$‰$è¿[ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÜ‹E܃Ä,[^_]ÃU‰åSƒì$è€ÿÿÃôôèQmÿÿ‰Â‹E‹@‰T$‰$èÝeÿÿ‰$èÕXÿÿ‰Eø‹Eø‰$è‡^ÿÿƒÄ$[]ÃU‰åVSƒì0èÍÿÿìôEô‰D$ƒd‰D$ ƒdYÿÿ‰D$‹E‰D$‹E ‰$èÁmÿÿ…Àu ÇEäëD‹uôèÌlÿÿ‰Â‹E‹@‰T$‰$èXeÿÿ‰t$‰$èÜ`ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì,è1ÿÿÃôÇEðEð‰D$ƒl‰D$ ƒ„Yÿÿ‰D$‹E‰D$‹E ‰$èmÿÿ…Àu ÇEÜëx‹ƒàÿÿÿ‹‹@(‰Eàuì‹}ðè¸fÿÿ‰t$‰|$‰$ÿUà…Àt ÇEÜëD‹uìèõkÿÿ‰Â‹E‹@‰T$‰$èdÿÿ‰t$‰$èUgÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÜ‹E܃Ä,[^_]ÃU‰åWVSƒìLèY~ÿÿÃ8óÇEèÇEàÇEØEè‰D$ƒ\ ‰D$Eà‰D$Eä‰D$ƒ<‰D$ ƒ_Zÿÿ‰D$‹E‰D$‹E ‰$è lÿÿ…Àu ÇEÌ騋EèU܉T$‰$èÞ}ÿÿ…Àu ÇEÌé¶ÇEð‹ƒàÿÿÿ‹‹€¨…Àtèp\ÿÿ‰Eð‹uÜ‹Eà‰Ç‹Eä‰EÐèŠhÿÿ‰Â‹E‹@‰T$‰$èfcÿÿ‰ÂE؉D$‰t$ ‰|$‹EЉD$‰$èF`ÿÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eð‰$èZÿÿ‹ƒàÿÿÿ‹‹PdE؉$ÿÒ…Àt ÇEÌë‹Eì‰$è»[ÿÿ‰EÌ‹ẼÄL[^_]ÃU‰åWVSƒìLèø|ÿÿÃ×ñÇEìÇEäÇEÜEì‰D$ƒ\ ‰D$Eä‰D$Eè‰D$ƒH‰D$ ƒ_Zÿÿ‰D$‹E‰D$‹E ‰$è¿jÿÿ…Àu ÇEÌéÜ‹EìUà‰T$‰$è}|ÿÿ…Àu ÇEÌéºÇEð‹ƒàÿÿÿ‹‹€¨…Àtè[ÿÿ‰Eð‹uà‹Eä‰Ç‹Eè‰EÐè)gÿÿ‰Â‹E‹@‰T$‰$èbÿÿ‰ÂE܉D$‰t$E؉D$ ‰|$‹EЉD$‰$èNkÿÿ‹ƒàÿÿÿ‹‹€¨…Àt ‹Eð‰$è¡Xÿÿ‹ƒàÿÿÿ‹‹PdE܉$ÿÒ…Àt ÇEÌë‹E؉$èVZÿÿ‰EÌ‹ẼÄL[^_]ÃU‰åWVSƒìLè“{ÿÿÃrðÇEèÇEäÇEìÇEàÇEØE؉D$Eä‰D$E܉D$ƒ\‰D$ƒT‰D$ ƒZÿÿ‰D$‹E‰D$‹E ‰$èLiÿÿ…Àu ÇEÌéa‹Eä…Àt7‹ƒàÿÿÿ‹‹@,‰EÐuà‹}äèÌdÿÿ‰t$‰|$‰$ÿUÐ…Àt ÇEÌé#‹E؉‹ƒÜÿÿÿ9Âu ÇEìë~‹EØ…ÀtJ‹EØ‹Pƒ\ 9Ât‹EØ‹Pƒ\ ‰D$‰$è‡[ÿÿ…Àtèžkÿÿ‰Â‹EØ‹@‰T$‰$èZ`ÿÿ‰Eìë-‹EØ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$ètfÿÿÇEÌé‹uàè0Mÿÿ‰Â‹EÜ‹@‰T$‰$è `ÿÿ‰Çèeÿÿ‰Â‹E‹@‰T$‰$èñ_ÿÿ‰ÂEè‰D$‹Eì‰D$ ‰t$‰|$‰$èÑ`ÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEÌë‹Eð™‰$‰T$è¾bÿÿ‰EÌ‹ẼÄL[^_]ÃU‰åSƒì4èyÿÿÃ|îÇEðÇEøÇEìEð‰D$ƒd‰D$ ƒZÿÿ‰D$‹E‰D$‹E ‰$è|gÿÿ…Àu ÇEèéõ‹Eð‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$èõYÿÿ…Àtè jÿÿ‰Â‹Eð‹@‰T$‰$èÈ^ÿÿ‰Eøë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èâdÿÿÇEèëbè¤cÿÿ‰Â‹E‹@‰T$‰$è€^ÿÿ‰ÂEì‰D$‹Eø‰D$‰$èˆPÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèë‹Eô‰$èZMÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4è;xÿÿÃíÇEðÇEøÇEìEð‰D$ƒl‰D$ ƒ·Zÿÿ‰D$‹E‰D$‹E ‰$èfÿÿ…Àu ÇEèéõ‹Eð‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$è“Xÿÿ…Àtèªhÿÿ‰Â‹Eð‹@‰T$‰$èf]ÿÿ‰Eøë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è€cÿÿÇEèëbèBbÿÿ‰Â‹E‹@‰T$‰$è]ÿÿ‰ÂEì‰D$‹Eø‰D$‰$èJÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEèë‹Eô‰$èøKÿÿ‰Eè‹EèƒÄ4[]ÃU‰åWVSƒì\è×vÿÿöëÇEèÿÿÿÿÇEäÇEàè®|ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$$Eà‰D$ Eä‰D$‰T$Eè‰D$Eì‰D$ƒt‰D$ ƒÔZÿÿ‰D$‹E‰D$‹E ‰$è…dÿÿ…À„׋Eð‰$èj}ÿÿ…À„Ä‹EàU܉T$‰$è8vÿÿ…À„ª‹Eð‰$èj}ÿÿ‹Eè‹Uì‰D$‰T$‹Eð‰$è±}ÿÿ³å”ýÿ‹}Ü‹Eä‰EÄ‹Eð‹@‰EÈ‹Eð‹@‰EÌèÖ`ÿÿ‰Â‹E‹@‰T$‰$è²[ÿÿ‰Â‹Eð‰D$‰t$‰|$‹EĉD$ ‹EȉD$‹ẺD$‰$è”Yÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$è+~ÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èUuÿÿÃ4êÇEìEð‰D$ƒœ%‰D$ƒŒ‰D$ ƒøZÿÿ‰D$‹E‰D$‹E ‰$è8cÿÿ…Àu ÇEäëèEÿÿ‰Â‹Eð‹@‰T$‰$èÒZÿÿ‰ÆèÛ_ÿÿ‰Â‹E‹@‰T$‰$è·Zÿÿ‰ÂEì‰D$‰t$‰$è"Rÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô™‰$‰T$è]ÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìlèmtÿÿÃLéÇEìÇEèÇEäÇEÜè=zÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$(E܉D$$Eì‰D$ Eä‰D$‰T$Eà‰D$ƒ\‰D$ƒ”‰D$ ƒ[ÿÿ‰D$‹E‰D$‹E ‰$è bÿÿ…À„‹Eð‰$èïzÿÿ…À„ñ‹Eä…Àt/‹ƒàÿÿÿ‹‹@,‰EÀuè‹}äè]ÿÿ‰t$‰|$‰$ÿUÀ…À…»‹EÜU؉T$‰$è‡sÿÿ…À„¡‹Eð‰$è¹zÿÿ³å”ýÿ‹}Ø‹Eì‰EÄ‹Eè‰EÈèJFÿÿ‰Â‹Eà‹@‰T$‰$è&Yÿÿ‰EÌè.^ÿÿ‰Â‹E‹@‰T$‰$è Yÿÿ‰Â‹Eð‰D$‰t$‰|$‹EĉD$ ‹EȉD$‹ẺD$‰$è\Qÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èƒ{ÿÿÇEЋEЃÄl[^_]ÃU‰åVSƒì0è­rÿÿÃŒçÇEìEð‰D$ƒœ%‰D$ƒ°‰D$ ƒ@[ÿÿ‰D$‹E‰D$‹E ‰$è`ÿÿ…Àu ÇEäëè^Bÿÿ‰Â‹Eð‹@‰T$‰$è*Xÿÿ‰Æè3]ÿÿ‰Â‹E‹@‰T$‰$èXÿÿ‰ÂEì‰D$‰t$‰$èê`ÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô™‰$‰T$èçZÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì<èÅqÿÿäæÇEìÇEèè£wÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒ¸‰D$ ƒd[ÿÿ‰D$‹E‰D$‹E ‰$èˆ_ÿÿ…À„š‹Eð‰$èmxÿÿ…À„‡‹EèUä‰T$‰$è;qÿÿ…Àtq‹Eð‰$èqxÿÿ³å”ýÿ‹}ä‹Eì‰EÜè\ÿÿ‰Â‹E‹@‰T$‰$èäVÿÿ‰Â‹Eð‰D$‰t$ ‰|$‹E܉D$‰$èTKÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$èkyÿÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì0è•pÿÿÃtåÇEìEð‰D$ƒœ%‰D$ƒÌ‰D$ ƒ„[ÿÿ‰D$‹E‰D$‹E ‰$èx^ÿÿ…Àu ÇEäëzèF@ÿÿ‰Â‹Eð‹@‰T$‰$èVÿÿ‰Æè[ÿÿ‰Â‹E‹@‰T$‰$è÷Uÿÿ‰ÂEì‰D$‰t$‰$èòIÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$èÔDÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì<è²oÿÿÑäÇEìÇEèèuÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒÔ‰D$ ƒ¨[ÿÿ‰D$‹E‰D$‹E ‰$èu]ÿÿ…À„š‹Eð‰$èZvÿÿ…À„‡‹EèUä‰T$‰$è(oÿÿ…Àtq‹Eð‰$è^vÿÿ³å”ýÿ‹}ä‹Eì‰EÜèõYÿÿ‰Â‹E‹@‰T$‰$èÑTÿÿ‰Â‹Eð‰D$‰t$ ‰|$‹E܉D$‰$èWÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$èXwÿÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì0è‚nÿÿÃaãÇEìEð‰D$ƒœ%‰D$ƒè‰D$ ƒÈ[ÿÿ‰D$‹E‰D$‹E ‰$èe\ÿÿ…Àu ÇEäëzè3>ÿÿ‰Â‹Eð‹@‰T$‰$èÿSÿÿ‰ÆèYÿÿ‰Â‹E‹@‰T$‰$èäSÿÿ‰ÂEì‰D$‰t$‰$èOTÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$èÁBÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$è¡mÿÿÀâèXÿÿ‰Â‹E‹@‰T$‰$èiSÿÿ‰$èÑUÿÿ‰Eø‹Eø‰$èsBÿÿƒÄ$[]ÃU‰åSƒì$èZmÿÿÃ9âèFXÿÿ‰Â‹E‹@‰T$‰$è"Sÿÿ‰$è\ÿÿ‰Eø‹Eø‰$è,BÿÿƒÄ$[]ÃU‰åSƒì$èmÿÿÃòáÇEôèøWÿÿ‰Â‹E‹@‰T$‰$èÔRÿÿ‰ÂEô‰D$‰$è“Oÿÿ‰Eø‹ƒàÿÿÿ‹‹PdEô‰$ÿÒ…Àt ÇEèë‹Eø‰$èµAÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè–lÿÿÃuáè‚Wÿÿ‰Â‹E‹@‰T$‰$è^Rÿÿ‰$è>ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åSƒìèDlÿÿÃ#ዃ˜ÿÿÿ‰D$ ‹ƒØÿÿÿ‰D$ÇD$Ç$èVÿÿ‰Â‹E‰P‹E‹@…Àu#‹ƒÐÿÿÿ‹ƒŒ`ÿÿ‰D$‰$èXÿÿÇEøÿÿÿÿ닃àÿÿÿ‹‹P‹E‰$ÿÒÇEø‹EøƒÄ[]ÃU‰åVSƒì è±kÿÿÃàèíNÿÿ‰Â‹E‹@‰T$‰$èyQÿÿ‰EôèaGÿÿ‹Uô‰D$‰$èbQÿÿ‰$èzRÿÿ‰Æ‹Eô‰$èíQÿÿ‰t$‰$èñCÿÿƒÄ [^]ÃU‰åSƒì$èGkÿÿÃ&àèƒNÿÿ‰Â‹E‹@‰T$‰$èQÿÿ‰$è7Qÿÿ‰Eø‹Eøº‰$‰T$è`>ÿÿƒÄ$[]ÃU‰åSƒì$è÷jÿÿÃÖßè3Nÿÿ‰Â‹E‹@‰T$‰$è¿Pÿÿ‰$èÇHÿÿ‰Eø‹Eøº‰$‰T$è>ÿÿƒÄ$[]ÃU‰åSƒì$è§jÿÿÆßè³Uÿÿ‰Â‹E‹@‰T$‰$èoPÿÿ‰$è—Yÿÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒì$èXjÿÿÃ7ßèdUÿÿ‰Â‹E‹@‰T$‰$è Pÿÿ‰$èXMÿÿ‰Eø‹Eø‰$è*?ÿÿƒÄ$[]ÃU‰åVSƒì0èjÿÿÃïÞEô‰D$ƒ|‰D$ ƒð`ÿÿ‰D$‹E‰D$‹E ‰$èXÿÿ…Àu ÇEäëD‹uôèßTÿÿ‰Â‹E‹@‰T$‰$è›Oÿÿ‰t$‰$èß>ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒìdèviÿÿÃUÞ‹ƒàÿÿÿ‹‹P ‹E‰$ÿÒ‰EôÇE؃$Qÿÿ‰EÐÇEÔƒ$Qÿÿ‰EÈÇEÌE؉D$EЉD$ ƒ8aÿÿ‰D$‹E‰D$‹E ‰$è0Wÿÿ…Àu ÇE¸ÿÿÿÿéîÇD$ÇD$E܉$è@ÿÿ‹ƒàÿÿÿ‹‹„E؉D$EĉD$E܉D$ EȉD$EЉD$‹Eô‰$ÿÒ…Àu ÇE¸ÿÿÿÿ銋ƒàÿÿÿ‹‹ˆÄ‹UÄE܉D$‰T$‹E‰$ÿÑÇEøë!‹UøM܉ÐÀÐÁàƒÀ‰$èr8ÿÿƒEø‹EÄ9Eør׋E‹@…Àu#‹ƒÐÿÿÿ‹ƒ\aÿÿ‰D$‰$èBTÿÿÇE¸ÿÿÿÿëÇE¸‹E¸ƒÄd[]ÃU‰åSƒì$èögÿÿÃÕÜèòUÿÿ‰Â‹E‹@‰T$‰$è¾Mÿÿ‰$èöFÿÿ‰Eø‹Eøº‰$‰T$è;ÿÿƒÄ$[]ÃU‰åVSƒì0è¥gÿÿÄÜEô‰D$ƒ\‰D$ ƒaÿÿ‰D$‹E‰D$‹E ‰$è™Uÿÿ…Àu ÇEäëD‹uôèdUÿÿ‰Â‹E‹@‰T$‰$è0Mÿÿ‰t$‰$èTNÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$è gÿÿÃêÛèUÿÿ‰Â‹E‹@‰T$‰$èÓLÿÿ‰$è{Nÿÿ‰Eø‹Eø‰$èÝ;ÿÿƒÄ$[]ÃU‰åVSƒì0èÃfÿÿâÛEô‰D$ƒd‰D$ ƒÈaÿÿ‰D$‹E‰D$‹E ‰$è·Tÿÿ…Àu ÇEäëD‹uôè‚Tÿÿ‰Â‹E‹@‰T$‰$èNLÿÿ‰t$‰$èPÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒìdè)fÿÿÃÛ‹ƒàÿÿÿ‹‹P ‹E‰$ÿÒ‰EôÇE؃$Qÿÿ‰EÐÇEÔƒ$Qÿÿ‰EÈÇEÌE؉D$EЉD$ ƒ(bÿÿ‰D$‹E‰D$‹E ‰$èãSÿÿ…Àu ÇE¸ÿÿÿÿéîÇD$ÇD$E܉$èÈ<ÿÿ‹ƒàÿÿÿ‹‹„E؉D$EĉD$E܉D$ EȉD$EЉD$‹Eô‰$ÿÒ…Àu ÇE¸ÿÿÿÿ銋ƒàÿÿÿ‹‹ˆÄ‹UÄE܉D$‰T$‹E‰$ÿÑÇEøë!‹UøM܉ÐÀÐÁàƒÀ‰$è%5ÿÿƒEø‹EÄ9Eør׋E‹@…Àu#‹ƒÐÿÿÿ‹ƒHbÿÿ‰D$‰$èõPÿÿÇE¸ÿÿÿÿëÇE¸‹E¸ƒÄd[]ÃU‰åWVSƒì,è§dÿÿÆÙÇEðEð‰D$ƒ<‰D$ ƒxbÿÿ‰D$‹E‰D$‹E ‰$è”Rÿÿ…Àu ÇEÜëx‹ƒàÿÿÿ‹‹@(‰Eàuì‹}ðè¾Aÿÿ‰t$‰|$‰$ÿUà…Àt ÇEÜëD‹uìèkAÿÿ‰Â‹E‹@‰T$‰$è÷Iÿÿ‰t$‰$èkNÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÜ‹E܃Ä,[^_]ÃU‰åVSƒì èÐcÿÿïØè Aÿÿ‰Â‹E‹@‰T$‰$è˜Iÿÿ‰$èàGÿÿ‰Eô‹ƒàÿÿÿ‹‹°˜è Aÿÿ‰Â‹Eô‰D$‰$ÿÖƒÄ [^]ÃU‰åVSƒì@èqcÿÿÃPØÇEèÇEôÇEäEè‰D$Eï‰D$ƒD‰D$ ƒ bÿÿ‰D$‹E‰D$‹E ‰$èIQÿÿ…Àu ÇEÔé‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEôë{‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$èÂCÿÿ…ÀtèÙSÿÿ‰Â‹Eè‹@‰T$‰$è•Hÿÿ‰Eôë*‹Eè…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è¯NÿÿÇEÔëm¶Eï¶ðèº?ÿÿ‰Â‹E‹@‰T$‰$èFHÿÿ‰ÂEä‰D$ ‹Eô‰D$‰t$‰$èªMÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë‹Eð‰$è7ÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@èûaÿÿÃÚÖÇEèÇEôÇEäEè‰D$Eì‰D$ƒP‰D$ ƒÄbÿÿ‰D$‹E‰D$‹E ‰$èÓOÿÿ…Àu ÇEÔéÿ‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEôë{‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$èLBÿÿ…ÀtècRÿÿ‰Â‹Eè‹@‰T$‰$èGÿÿ‰Eôë*‹Eè…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è9MÿÿÇEÔël‹Eì¿ðèE>ÿÿ‰Â‹E‹@‰T$‰$èÑFÿÿ‰ÂEä‰D$ ‹Eô‰D$‰t$‰$è%Hÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë‹Eð‰$è§5ÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@è†`ÿÿÃeÕÇEèÇEôÇEäEè‰D$Eì‰D$ƒ\‰D$ ƒèbÿÿ‰D$‹E‰D$‹E ‰$è^Nÿÿ…Àu ÇEÔéÿ‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEôë{‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$è×@ÿÿ…ÀtèîPÿÿ‰Â‹Eè‹@‰T$‰$èªEÿÿ‰Eôë*‹Eè…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÄKÿÿÇEÔël‹Eì·ðèÐ<ÿÿ‰Â‹E‹@‰T$‰$è\Eÿÿ‰ÂEä‰D$ ‹Eô‰D$‰t$‰$è9ÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë‹Eð‰$è24ÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@è_ÿÿÃðÓÇEèÇEôÇEäEè‰D$Eì‰D$ƒh‰D$ ƒ cÿÿ‰D$‹E‰D$‹E ‰$èéLÿÿ…Àu ÇEÔéü‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEôë{‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$èb?ÿÿ…ÀtèyOÿÿ‰Â‹Eè‹@‰T$‰$è5Dÿÿ‰Eôë*‹Eè…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èOJÿÿÇEÔëi‹uìè^;ÿÿ‰Â‹E‹@‰T$‰$èêCÿÿ‰ÂEä‰D$ ‹Eô‰D$‰t$‰$èž.ÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë‹Eð‰$èÀ2ÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@èŸ]ÿÿÃ~ÒÇEìÇEôÇEäEì‰D$Eè‰D$ƒt‰D$ ƒ0cÿÿ‰D$‹E‰D$‹E ‰$èwKÿÿ…Àu ÇEÔéü‹Eì‰Â‹ƒÜÿÿÿ9Âu ÇEôë{‹Eì…ÀtJ‹Eì‹Pƒ\ 9Ât‹Eì‹Pƒ\ ‰D$‰$èð=ÿÿ…ÀtèNÿÿ‰Â‹Eì‹@‰T$‰$èÃBÿÿ‰Eôë*‹Eì…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÝHÿÿÇEÔëi‹uèèì9ÿÿ‰Â‹E‹@‰T$‰$èxBÿÿ‰ÂEä‰D$ ‹Eô‰D$‰t$‰$èÌAÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë‹Eð‰$èN1ÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒìLè,\ÿÿà ÑÇEäÇEìÇEÔEä‰D$E؉D$ƒ€‰D$ ƒTcÿÿ‰D$‹E‰D$‹E ‰$èJÿÿ…Àu ÇEÌé‹Eä‰Â‹ƒÜÿÿÿ9Âu ÇEìë{‹Eä…ÀtJ‹Eä‹Pƒ\ 9Ât‹Eä‹Pƒ\ ‰D$‰$è}<ÿÿ…Àtè”Lÿÿ‰Â‹Eä‹@‰T$‰$èPAÿÿ‰Eìë*‹Eä…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èjGÿÿÇEÌëp‹uØ‹}Üèv8ÿÿ‰Â‹E‹@‰T$‰$èAÿÿ‰ÂEÔ‰D$‹Eì‰D$ ‰t$‰|$‰$è2ÿÿ‰E苃àÿÿÿ‹‹PdEÔ‰$ÿÒ…Àt ÇEÌë‹Eè‰$èÔ/ÿÿ‰EÌ‹ẼÄL[^_]ÃU‰åSƒìTè³ZÿÿÃ’ÏÇEäÇEèÇEàÇEÜE܉D$Eä‰D$‹ƒÔÿÿÿ‰D$ƒŒ‰D$ ƒxcÿÿ‰D$‹E‰D$‹E ‰$èzHÿÿ…Àu ÇEÔé‹Eä‰$èŸBÿÿ‰Eð‰Uô‹E܉‹ƒÜÿÿÿ9Âu ÇEèë{‹EÜ…ÀtJ‹EÜ‹Pƒ\ 9Ât‹EÜ‹Pƒ\ ‰D$‰$èâ:ÿÿ…ÀtèùJÿÿ‰Â‹EÜ‹@‰T$‰$èµ?ÿÿ‰Eèë*‹EÜ…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÏEÿÿÇEÔëpèá6ÿÿ‰Â‹E‹@‰T$‰$èm?ÿÿ‰ÁEà‰D$‹Eè‰D$ ‹Eð‹Uô‰D$‰T$‰ $è‡1ÿÿ‰E싃àÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÔë‹Eì‰$è9.ÿÿ‰EÔ‹EÔƒÄT[]ÃU‰åVSƒì@èYÿÿÃøÍÇEèÇEôÇEäEè‰D$Eì‰D$ƒ˜‰D$ ƒ¤cÿÿ‰D$‹E‰D$‹E ‰$èñFÿÿ…Àu ÇEÔéü‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEôë{‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$èj9ÿÿ…ÀtèIÿÿ‰Â‹Eè‹@‰T$‰$è=>ÿÿ‰Eôë*‹Eè…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èWDÿÿÇEÔëi‹uìèf5ÿÿ‰Â‹E‹@‰T$‰$èò=ÿÿ‰ÂEä‰D$ ‹Eô‰D$‰t$‰$è¶)ÿÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë‹Eð‰$èÈ,ÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@è§WÿÿÆÌÇEèÇEðÇEäEè‰D$Eì‰D$ƒ|‰D$ ƒ0dÿÿ‰D$‹E‰D$‹E ‰$èEÿÿ…Àu ÇEÔé‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEðë{‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$èø7ÿÿ…ÀtèHÿÿ‰Â‹Eè‹@‰T$‰$èË<ÿÿ‰Eðë*‹Eè…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èåBÿÿÇEÔëq‹uìè4Fÿÿ‰Â‹E‹@‰T$‰$è€<ÿÿ‰ÂEä‰D$ ‹Eð‰D$‰t$‰$èôDÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔ닃àÿÿÿ‹‹P‹Eô‰$ÿÒ‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒì\è,Vÿÿà ËÇEèÇEäè \ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eè‰D$Eä‰D$‰T$Eà‰D$ƒˆ‰D$ ƒTdÿÿ‰D$‹E‰D$‹E ‰$èèCÿÿ…Àu‹Eð‰$èÑ\ÿÿ…À„”‹EèUì‰T$‰$èŸUÿÿ…Àt~‹Eð‰$èÕ\ÿÿ³å”ýÿ‹}ì‹Eä‰EÈ‹Eà‰EÌèöDÿÿ‰Â‹E‹@‰T$‰$èB;ÿÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$è;7ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èÂ]ÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èìTÿÿÃËÉÇEìEð‰D$ƒœ%‰D$ƒ ‰D$ ƒ„dÿÿ‰D$‹E‰D$‹E ‰$èÏBÿÿ…Àu ÇEäé‚èš$ÿÿ‰Â‹Eð‹@‰T$‰$èf:ÿÿ‰ÆèÿCÿÿ‰Â‹E‹@‰T$‰$èK:ÿÿ‰ÂEì‰D$‰t$‰$è4ÿÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEä닃àÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èTÿÿÃßÈè|Cÿÿ‰Â‹E‹@‰T$‰$èÈ9ÿÿ‰$è(ÿÿ‰Eôƒ}ôt!‹Eô‰$è2ÿÿ‰Eø‹Eô‰$è>#ÿÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSìè{SÿÿÃZÈ‹E‹@‹@ ‰D$ ƒÃdÿÿ‰D$ÇD$…üýÿÿ‰$èÿ2ÿÿ‹ƒäÿÿÿ‹…üýÿÿ‰D$‰$èU?ÿÿ¸ÿÿÿÿÄ[]ÃU‰åVSƒì0èSÿÿÃòÇEô‰D$ƒ|‰D$ ƒädÿÿ‰D$‹E‰D$‹E ‰$èAÿÿ…Àu ÇEäëD‹uôèr(ÿÿ‰Â‹E‹@‰T$‰$èž8ÿÿ‰t$‰$è9ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èyRÿÿÃXÇè(ÿÿ‰Â‹E‹@‰T$‰$èA8ÿÿ‰$è¹>ÿÿ‰Eø‹Eø™‰$‰T$èF;ÿÿƒÄ$[]ÃU‰åVSƒì0è,Rÿÿà ÇEô‰D$ƒ„‰D$ ƒeÿÿ‰D$‹E‰D$‹E ‰$è @ÿÿ…Àu ÇEäëD‹uôè‹'ÿÿ‰Â‹E‹@‰T$‰$è·7ÿÿ‰t$‰$èû<ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$è’QÿÿÃqÆè.'ÿÿ‰Â‹E‹@‰T$‰$èZ7ÿÿ‰$èr#ÿÿ‰Eø‹Eø‰$èd&ÿÿƒÄ$[]ÃU‰åVSƒì0èJQÿÿÃ)ÆEô‰D$ƒŒ‰D$ ƒPeÿÿ‰D$‹E‰D$‹E ‰$è>?ÿÿ…Àu ÇEäëD‹uôè©&ÿÿ‰Â‹E‹@‰T$‰$èÕ6ÿÿ‰t$‰$èY/ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒìè°PÿÿÃÅèL&ÿÿ‰Â‹E‹@‰T$‰$èx6ÿÿ‰$è`6ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åSƒìè^PÿÿÃ=Åèú%ÿÿ‰Â‹E‹@‰T$‰$è&6ÿÿ‰$è~,ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åSƒì$è PÿÿÃëÄÇEôè¡%ÿÿ‰Â‹E‹@‰T$‰$èÍ5ÿÿ‰ÂEô‰D$‰$èÌ?ÿÿ‰Eø‹ƒàÿÿÿ‹‹PdEô‰$ÿÒ…Àt ÇEèë‹Eø‰$è®$ÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èOÿÿÃnÄè%ÿÿ‰Â‹E‹@‰T$‰$èW5ÿÿ‰$è(ÿÿ‰Eø‹Eø‰$èa$ÿÿƒÄ$[]ÃU‰åVSƒì0èGOÿÿÃ&ÄEì‰D$ƒ\ ‰D$ ƒ)fÿÿ‰D$‹E‰D$‹E ‰$è;=ÿÿ…Àu ÇEäëX‹uìè–$ÿÿ‰Â‹E‹@‰T$‰$èÒ4ÿÿ‰t$‰$è/ÿÿ‰Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$èœ"ÿÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è˜NÿÿÃwÃEì‰D$ƒd ‰D$ ƒIfÿÿ‰D$‹E‰D$‹E ‰$èŒ<ÿÿ…Àu ÇEäëX‹uìèç#ÿÿ‰Â‹E‹@‰T$‰$è#4ÿÿ‰t$‰$è72ÿÿ‰Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$èí!ÿÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èéMÿÿÃÈÂEì‰D$ƒl ‰D$ ƒofÿÿ‰D$‹E‰D$‹E ‰$èÝ;ÿÿ…Àu ÇEäëX‹uìè8#ÿÿ‰Â‹E‹@‰T$‰$èt3ÿÿ‰t$‰$èh8ÿÿ‰Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$è>!ÿÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$è;MÿÿÃÂèÇ"ÿÿ‰Â‹E‹@‰T$‰$è3ÿÿ‰$è«0ÿÿ‰EðÇ$è|<ÿÿ‰EôëM‹Eð‹‰$èJ+ÿÿ‰Eø‹Eø‰D$‹Eô‰$èÕ3ÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒEðƒ}ðt ‹Eð‹…Àu¤‹EôƒÄ$[]ÃU‰åSƒì4èLÿÿÃnÁè[ÿÿ‰Â‹E‹@‰T$‰$èW2ÿÿ‰$è"ÿÿ‰EèÇ$èÐ;ÿÿ‰Eð‹Eè‰Eìëk‹E싉Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eø‹Eø‰D$‹Eð‰$è3ÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eô‰$èÓÿÿ‹Eì‹@‰Eìƒ}ìu‹Eè‰$è9"ÿÿ‹EðƒÄ4[]ÃU‰åSƒì4è½KÿÿÜÀè‰ÿÿ‰Â‹E‹@‰T$‰$è…1ÿÿ‰$èÍ9ÿÿ‰EèÇ$èþ:ÿÿ‰Eð‹Eè‰Eìëk‹E싉Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eø‹Eø‰D$‹Eð‰$èC2ÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eô‰$èÿÿ‹Eì‹@‰Eìƒ}ìu‹Eè‰$èg!ÿÿ‹EðƒÄ4[]ÃU‰åSƒì4èëJÿÿÃÊ¿è·ÿÿ‰Â‹E‹@‰T$‰$è³0ÿÿ‰$è«/ÿÿ‰EèÇ$è,:ÿÿ‰Eð‹Eè‰Eìëk‹E싉Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eø‹Eø‰D$‹Eð‰$èq1ÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eô‰$è/ÿÿ‹Eì‹@‰Eìƒ}ìu‹Eè‰$è• ÿÿ‹EðƒÄ4[]ÃU‰åVSƒì0èJÿÿÃ÷¾Eì‰D$ƒÿÿÃÛ³èÿÿ‰Â‹E‹@‰T$‰$èÄ$ÿÿ‰$è\ÿÿ‰Eøƒ}øt‹Eø‰$èÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è‹>ÿÿÃj³è§ÿÿ‰Â‹E‹@‰T$‰$èS$ÿÿ‰$èkÿÿ‰Eøƒ}øt‹Eø‰$è§ÿÿ‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è>ÿÿÃù²è6ÿÿ‰Â‹E‹@‰T$‰$èâ#ÿÿ‰$èš.ÿÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åVSƒì@èÊ=ÿÿé²ÇEðÇE싃Üÿÿÿ‰EäÇEàEì‰D$Eä‰D$ƒ¤$‰D$ ƒ×iÿÿ‰D$‹E‰D$‹E ‰$è™+ÿÿ…Àu ÇEÔéî‹EìUè‰T$‰$è>ÿÿ…Àu ÇEÔéÌ‹Eä‹“Üÿÿÿ9Ðu ÇEðëB‹Eä‰$èÖ ÿÿ…Àt‹Eä‰$èy>ÿÿ‰Eðë#‹ƒ¸ÿÿÿ‹ƒðiÿÿ‰D$‰$è)ÿÿÇEÔët‹uèèÿÿ‰Â‹E‹@‰T$‰$è³"ÿÿ‰ÂEà‰D$ ‰t$‹Eð‰D$‰$è÷ÿÿ‰Eô‹Eð‰$è ÿÿ‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÔë‹Eô‰$è~ÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åSƒì$è^<ÿÿÃ=±èzÿÿ‰Â‹E‹@‰T$‰$è&"ÿÿ‰$è.*ÿÿ‰Eø‹Eø‰$è0ÿÿƒÄ$[]ÃU‰åSƒì$è<ÿÿÃö°è3ÿÿ‰Â‹E‹@‰T$‰$èß!ÿÿ‰$è ÿÿ‰Eø‹Eø‰$èéÿÿƒÄ$[]ÃU‰åVSƒì@èÏ;ÿÿî°ÇEðÇE싃Üÿÿÿ‰EäÇEàEì‰D$Eä‰D$ƒ°$‰D$ ƒjÿÿ‰D$‹E‰D$‹E ‰$èž)ÿÿ…Àu ÇEÔéî‹EìUè‰T$‰$è <ÿÿ…Àu ÇEÔéÌ‹Eä‹“Üÿÿÿ9Ðu ÇEðëB‹Eä‰$èÛÿÿ…Àt‹Eä‰$èe=ÿÿ‰Eðë#‹ƒ¸ÿÿÿ‹ƒðiÿÿ‰D$‰$è'ÿÿÇEÔët‹uèè ÿÿ‰Â‹E‹@‰T$‰$è¸ ÿÿ‰ÂEà‰D$ ‰t$‹Eð‰D$‰$èŒ ÿÿ‰Eô‹Eð‰$èÿÿ‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÔë‹Eô‰$èƒÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åSƒì$èc:ÿÿÃB¯èÿÿ‰Â‹E‹@‰T$‰$è+ ÿÿ‰$èÿÿ‰Eø‹Eø‰$è5ÿÿƒÄ$[]ÃU‰åVSƒì0è:ÿÿÃú®ÇEìEð‰D$ƒ¼$‰D$ ƒÿÿ‰Eð‹ƒàÿÿÿ‹‹€¨…Àt ‹Eø‰$èÿÿƒ}ðt$‹Eð‹…Àt‹Eð‰$èi-ÿÿ‰Eô‹Eð‰$è&ÿÿ닃Üÿÿÿ‰Eô‹Eô‹P‹Eô‰‹EôƒÄ$[]ÃU‰åSƒì$èò)ÿÿÃÑžèþÿÿ‰Â‹E‹@‰T$‰$èºÿÿ‰$èBÿÿ‰Eðƒ}ðt9‹E‹@‹P ‹Eð‰D$ ‹E‰D$‰T$ƒGhÿÿ‰$èðÿÿ‰Eô‹Eð‰$èùþÿë%‹E‹@‹P ‹E‰D$‰T$ƒÛqÿÿ‰$è¾ÿÿ‰Eô‹Eô‰$è°ÿÿ‰Eø‹Eô‰$èÒøþÿ‹EøƒÄ$[]ÃU‰åSƒì$è6)ÿÿÞèÂÿÿ‰Â‹E‹@‰T$‰$èþÿÿ‰$èÿÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$èÌüþÿ‹EôƒÄ$[]ÃU‰åVSƒì0èÏ(ÿÿîEð‰D$ƒ,‰D$ƒ\'‰D$ ƒrÿÿ‰D$‹E‰D$‹E ‰$è¹ÿÿ…Àu ÇEäëQèÿÿ‰Â‹Eð‹@‰T$‰$èSÿÿ‰Æèüÿÿ‰Â‹E‹@‰T$‰$è8ÿÿ‰t$‰$è ÿÿ‰Eô‹Eô‰$è>ýþÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$è(ÿÿÃýœèªÿÿ‰Â‹E‹@‰T$‰$èæ ÿÿ‰$ènûþÿ‰Eôƒ}ôt!‹Eô‰$è:ÿÿ‰Eø‹Eô‰$è\÷þÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èœ'ÿÿÃ{œè(ÿÿ‰Â‹E‹@‰T$‰$èd ÿÿ‰$è ÿÿ‰Eôƒ}ôt!‹Eô‰$è¸ÿÿ‰Eø‹Eô‰$èÚöþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è'ÿÿÃù›è¦ÿÿ‰Â‹E‹@‰T$‰$èâ ÿÿ‰$èŠ ÿÿ‰Eôƒ}ôt!‹Eô‰$è6ÿÿ‰Eø‹Eô‰$èXöþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è˜&ÿÿÃw›è$ÿÿ‰Â‹E‹@‰T$‰$è` ÿÿ‰$èh ÿÿ‰Eôƒ}ôt!‹Eô‰$è´ÿÿ‰Eø‹Eô‰$èÖõþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è&ÿÿÃõšè¢ÿÿ‰Â‹E‹@‰T$‰$èÞ ÿÿ‰$èFüþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$è¬ùþÿ‹EôƒÄ$[]ÃU‰åVSƒì0è¯%ÿÿÃŽšEì‰D$ƒd'‰D$ ƒrÿÿ‰D$‹E‰D$‹E ‰$è£ÿÿ…Àu ÇEäëX‹uìèþ ÿÿ‰Â‹E‹@‰T$‰$è: ÿÿ‰t$‰$èžýþÿ‰Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$èùþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è%ÿÿÃß™ÇEèEì‰D$ƒl'‰D$ ƒ,rÿÿ‰D$‹E‰D$‹E ‰$èíÿÿ…Àu ÇEäé‹uìèE ÿÿ‰Â‹E‹@‰T$‰$è ÿÿ‰ÂEè‰D$‰t$‰$èÌùþÿ‰Eô‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$è"øþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è$ÿÿÃý˜Eð‰D$ƒ,‰D$ƒt'‰D$ ƒ]rÿÿ‰D$‹E‰D$‹E ‰$èÿÿ…Àu ÇEäëQèf ÿÿ‰Â‹Eð‹@‰T$‰$è¢ ÿÿ‰ÆèK ÿÿ‰Â‹E‹@‰T$‰$è‡ ÿÿ‰t$‰$èûöþÿ‰Eô‹Eô‰$èøþÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èl#ÿÿÃK˜Eì‰D$ƒ,‰D$ƒ|'‰D$ ƒtrÿÿ‰D$‹E‰D$‹E ‰$èVÿÿ…Àu ÇEäé†è± ÿÿ‰Â‹Eì‹@‰T$‰$èíÿÿ‰Æè– ÿÿ‰Â‹E‹@‰T$‰$èÒÿÿ‰t$‰$èVÿÿ‰Eðƒ}ðt!‹Eð‰$è"ÿÿ‰Eô‹Eð‰$èDòþÿ‹Eô‰Eä닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è‚"ÿÿÃa—Eì‰D$ƒ„'‰D$ ƒ rÿÿ‰D$‹E‰D$‹E ‰$èvÿÿ…Àu ÇEäëX‹uìèÑ ÿÿ‰Â‹E‹@‰T$‰$è ÿÿ‰t$‰$èqÿÿ‰Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$è×õþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èÔ!ÿÿó–è` ÿÿ‰Â‹E‹@‰T$‰$èœÿÿ‰$è$ ÿÿ‰Eø‹Eø‰$è¦öþÿƒÄ$[]ÃU‰åVSƒì0èŒ!ÿÿÃk–Eð‰D$ƒŒ'‰D$ ƒÌrÿÿ‰D$‹E‰D$‹E ‰$è€ÿÿ…Àu ÇEäë9‹uðèÛ ÿÿ‰Â‹E‹@‰T$‰$èÿÿ‰t$‰$è‹ÿÿ‰Eô‹Eô‰$èöþÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$èý ÿÿÃÜ•è‰ ÿÿ‰Â‹E‹@‰T$‰$èÅÿÿ‰$èÍùþÿ‰Eôƒ}ôt!‹Eô‰$èÿþÿ‰Eø‹Eô‰$è;ðþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìDè{ ÿÿÃZ•ÇEèÇEðÇEäEè‰D$ƒ”'‰D$ ƒærÿÿ‰D$‹E‰D$‹E ‰$èZÿÿ…Àu ÇEØéU‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEðë~‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$èÓÿÿ…Àtèêÿÿ‰Â‹Eè‹@‰T$‰$è¦ÿÿ‰Eðë-‹Eè…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÀ ÿÿÇEØé¿ÇEø‹ƒàÿÿÿ‹‹€¨…Àtè6þþÿ‰Eøèþÿÿ‰Â‹E‹@‰T$‰$è:ÿÿ‰ÂEä‰D$‹Eð‰D$‰$è‚ïþÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eø‰$èâûþÿ‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEØë-‹ƒàÿÿÿ‹‹P‹Eì‰$ÿÒ‰Eôƒ}ìt ‹Eì‰$è»òþÿ‹Eô‰EØ‹E؃ÄD[]ÃU‰åWVSƒì<è·ÿÿÖ“ÇEìÇEèè•$ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒœ'‰D$ ƒ÷rÿÿ‰D$‹E‰D$‹E ‰$èz ÿÿ…À„š‹Eð‰$è_%ÿÿ…À„‡‹EèUä‰T$‰$è-ÿÿ…Àtq‹Eð‰$èc%ÿÿ³å”ýÿ‹}ä‹Eì‰EÜèšÿÿ‰Â‹E‹@‰T$‰$èÖÿÿ‰Â‹Eð‰D$‰t$ ‰|$‹E܉D$‰$è¶ÿÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$è]&ÿÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì0è‡ÿÿÃf’ÇEèEì‰D$ƒœ%‰D$ƒ°'‰D$ ƒsÿÿ‰D$‹E‰D$‹E ‰$èj ÿÿ…Àu ÇEäé™è5íþÿ‰Â‹Eì‹@‰T$‰$èÿÿ‰Æèªÿÿ‰Â‹E‹@‰T$‰$èæÿÿ‰ÂEè‰D$‰t$‰$èþþÿ‰Eô‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$è‡ðþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLè‚ÿÿÃa‘ÇEàÇEèÇEÜÇEØÇEÔE؉D$Eà‰D$ƒ¸'‰D$ ƒ)sÿÿ‰D$‹E‰D$‹E ‰$èL ÿÿ…Àu ÇEÌéš‹Eà…Àt7‹ƒàÿÿÿ‹‹@,‰EÐuÔ‹}àè¼ÿÿ‰t$‰|$‰$ÿUÐ…Àt ÇEÌé\‹E؉‹ƒÜÿÿÿ9Âu ÇEèë~‹EØ…ÀtJ‹EØ‹Pƒ\ 9Ât‹EØ‹Pƒ\ ‰D$‰$è‡üþÿ…Àtèž ÿÿ‰Â‹EØ‹@‰T$‰$èZÿÿ‰Eèë-‹EØ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$ètÿÿÇEÌéÆÇEð‹ƒàÿÿÿ‹‹€¨…Àtèêùþÿ‰Eð‹uÔè¯ÿÿ‰Â‹E‹@‰T$‰$èëÿÿ‰ÂE܉D$ ‹Eè‰D$‰t$‰$èoïþÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eð‰$è÷þÿ‹ƒàÿÿÿ‹‹PdE܉$ÿÒ…Àt ÇEÌë-‹ƒàÿÿÿ‹‹P‹Eì‰$ÿÒ‰Eäƒ}ìt ‹Eì‰$èhîþÿ‹Eä‰EÌ‹ẼÄL[^_]ÃU‰åWVSƒìLèbÿÿÃAÇEàÇEèÇEÜÇEØÇEÔE؉D$Eà‰D$ƒÄ'‰D$ ƒ@sÿÿ‰D$‹E‰D$‹E ‰$è,ÿÿ…Àu ÇEÌéš‹Eà…Àt7‹ƒàÿÿÿ‹‹@,‰EÐuÔ‹}àèœÿÿ‰t$‰|$‰$ÿUÐ…Àt ÇEÌé\‹E؉‹ƒÜÿÿÿ9Âu ÇEèë~‹EØ…ÀtJ‹EØ‹Pƒ\ 9Ât‹EØ‹Pƒ\ ‰D$‰$ègúþÿ…Àtè~ ÿÿ‰Â‹EØ‹@‰T$‰$è:ÿþÿ‰Eèë-‹EØ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èTÿÿÇEÌéÆÇEð‹ƒàÿÿÿ‹‹€¨…ÀtèÊ÷þÿ‰Eð‹uÔèÿÿ‰Â‹E‹@‰T$‰$èËþþÿ‰ÂE܉D$ ‹Eè‰D$‰t$‰$èŸ ÿÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eð‰$èoõþÿ‹ƒàÿÿÿ‹‹PdE܉$ÿÒ…Àt ÇEÌë-‹ƒàÿÿÿ‹‹P‹Eì‰$ÿÒ‰Eäƒ}ìt ‹Eì‰$èHìþÿ‹Eä‰EÌ‹ẼÄL[^_]ÃU‰åWVSƒì\èBÿÿÃ!ÇEäÇEÜÇEÔÇEÐÇEÌEЉD$EÔ‰D$Eà‰D$E؉D$ƒÐ'‰D$ ƒesÿÿ‰D$‹E‰D$‹E ‰$èþÿÿ…Àu ÇE¸é®‹EÔ…Àt7‹ƒàÿÿÿ‹‹@,‰E¼uÌ‹}Ôènÿÿ‰t$‰|$‰$ÿU¼…Àt ÇE¸ép‹EЉ‹ƒÜÿÿÿ9Âu ÇEäë~‹EÐ…ÀtJ‹EЋPƒ\ 9Ât‹EЋPƒ\ ‰D$‰$è9øþÿ…ÀtèPÿÿ‰Â‹EЋ@‰T$‰$è ýþÿ‰Eäë-‹EÐ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è&ÿÿÇE¸éÚÇEð‹ƒàÿÿÿ‹‹€¨…Àtèœõþÿ‰Eð‹uÌ‹}à‹E؉EÀèXÿþÿ‰Â‹E‹@‰T$‰$è”üþÿ‰ÂE܉D$‹Eä‰D$‰t$ ‰|$‹EÀ‰D$‰$èôþÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eð‰$è-óþÿ‹ƒàÿÿÿ‹‹PdE܉$ÿÒ…Àt ÇE¸ë-‹ƒàÿÿÿ‹‹P‹Eì‰$ÿÒ‰Eèƒ}ìt ‹Eì‰$èêþÿ‹Eè‰E¸‹E¸ƒÄ\[^_]ÃU‰åWVSƒì\èÿÿÃߊÇEäÇEàÇEìÇEÜèÐÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eä‰D$E܉D$Eà‰D$‰T$ƒä'‰D$ ƒ|sÿÿ‰D$‹E‰D$‹E ‰$è®ÿÿ…À„Ú‹Eð‰$è“ÿÿ…À„ǃ}ìt-‹ƒàÿÿÿ‹‹x,uàèÿþÿ‰Â‰t$‹Eì‰D$‰$ÿ×…À…”‹EäUè‰T$‰$è.ÿÿ…Àt~‹Eð‰$èdÿÿ³å”ýÿ‹}è‹E܉EÈ‹Eà‰EÌè•ýþÿ‰Â‹E‹@‰T$‰$èÑúþÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$èêòþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èQÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0è{ÿÿÃZ‰ÇEèEì‰D$ƒœ%‰D$ƒü'‰D$ ƒ˜sÿÿ‰D$‹E‰D$‹E ‰$è^ÿÿ…Àu ÇEäé™è)äþÿ‰Â‹Eì‹@‰T$‰$èõùþÿ‰Æèžüþÿ‰Â‹E‹@‰T$‰$èÚùþÿ‰ÂEè‰D$‰t$‰$èeôþÿ‰Eô‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$è{çþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì\èvÿÿÃUˆÇEäÇEàÇEìÇEÜèFÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eä‰D$E܉D$Eà‰D$‰T$ƒ(‰D$ ƒµsÿÿ‰D$‹E‰D$‹E ‰$è$ÿÿ…À„Ú‹Eð‰$è ÿÿ…À„ǃ}ìt-‹ƒàÿÿÿ‹‹x,uàèüþÿ‰Â‰t$‹Eì‰D$‰$ÿ×…À…”‹EäUè‰T$‰$è¤ÿÿ…Àt~‹Eð‰$èÚÿÿ³å”ýÿ‹}è‹E܉EÈ‹Eà‰EÌè ûþÿ‰Â‹E‹@‰T$‰$èGøþÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$èàæþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èÇÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èñÿÿÃІÇEèEì‰D$ƒœ%‰D$ƒ(‰D$ ƒÎsÿÿ‰D$‹E‰D$‹E ‰$èÔÿþÿ…Àu ÇEäé™èŸáþÿ‰Â‹Eì‹@‰T$‰$èk÷þÿ‰Æèúþÿ‰Â‹E‹@‰T$‰$èP÷þÿ‰ÂEè‰D$‰t$‰$èKðþÿ‰Eô‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$èñäþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìlèìÿÿÃË…ÇEàÇEÜÇEèÇEØÇEÔÇE싃Ìÿÿÿ‰EÐè¥ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$(Eà‰D$$E؉D$ E܉D$EЉD$EÔ‰D$‰T$ƒ<(‰D$ ƒèsÿÿ‰D$‹E‰D$‹E ‰$èuþþÿ…À„‹EЉ$èçþÿ…À•À¶À‰Eì‹Eð‰$èDÿÿ…À„߃}èt-‹ƒàÿÿÿ‹‹x,uÜèËùþÿ‰Â‰t$‹Eè‰D$‰$ÿ×…À…¬‹EàUä‰T$‰$èßÿÿ…À„’‹Eð‰$èÿÿ³å”ýÿ‹}ä‹E؉E´‹E܉E¸‹EÔ‰E¼è<øþÿ‰Â‹E‹@‰T$‰$èxõþÿ‰Â‹Eð‰D$‰t$‰|$‹E´‰D$‹E¸‰D$ ‹Eì‰D$‹E¼‰D$‰$èsíþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÀë‹Eð‰$èêÿÿÇEÀ‹EÀƒÄl[^_]ÃU‰åVSƒì0èÿÿÃóƒÇEèEì‰D$ƒœ%‰D$ƒ\(‰D$ ƒtÿÿ‰D$‹E‰D$‹E ‰$è÷üþÿ…Àu ÇEäé™èÂÞþÿ‰Â‹Eì‹@‰T$‰$èŽôþÿ‰Æè7÷þÿ‰Â‹E‹@‰T$‰$èsôþÿ‰ÂEè‰D$‰t$‰$èNðþÿ‰Eô‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$èâþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åSƒì4èÿÿÃð‚ÇEðÇEøEð‰D$ƒd(‰D$ ƒtÿÿ‰D$‹E‰D$‹E ‰$è÷ûþÿ…Àu ÇEèé΋Eð‰Â‹ƒÜÿÿÿ9Âu ÇEøë{‹Eð…ÀtJ‹Eð‹Pƒ\ 9Ât‹Eð‹Pƒ\ ‰D$‰$èpîþÿ…Àtè‡þþÿ‰Â‹Eð‹@‰T$‰$èCóþÿ‰Eøë*‹Eð…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è]ùþÿÇEèë;è¿õþÿ‰Â‹E‹@‰T$‰$èûòþÿ‰Â‹Eø‰D$‰$èªîþÿ‰Eô‹Eô‰$èüáþÿ‰Eè‹EèƒÄ4[]ÃU‰åWVSƒì<èÛ ÿÿúÇEìEè‰D$ƒ\ ‰D$Eì‰D$ƒl(‰D$ ƒ8tÿÿ‰D$‹E‰D$‹E ‰$è·úþÿ…Àu ÇEÜ颋ƒàÿÿÿ‹‹@,‰Eàuä‹}ìèþñþÿ‰t$‰|$‰$ÿUà…Àt ÇEÜënè^ýþÿ‰Â‹Eè‹@‰T$‰$èòþÿ‰Æ‹}äèÀôþÿ‰Â‹E‹@‰T$‰$èüñþÿ‰t$‰|$‰$èüèþÿ‰Eð‹ƒàÿÿÿ‹‹°˜è¶Ûþÿ‰Â‹Eð‰D$‰$ÿÖ‰EÜ‹E܃Ä<[^_]ÃU‰åWVSƒì\èÅ ÿÿä€ÇEàÇEÜÇEèÇEØÇEÐEЉD$E܉D$EÔ‰D$ƒx(‰D$ ƒUtÿÿ‰D$‹E‰D$‹E ‰$èˆùþÿ…Àu ÇE¼é¡‹EÜ…Àt7‹ƒàÿÿÿ‹‹@,‰EÀuà‹}ÜèÈðþÿ‰t$‰|$‰$ÿUÀ…Àt ÇE¼éc‹EЉ‹ƒÜÿÿÿ9Âu ÇEèë~‹EÐ…ÀtJ‹EЋPƒ\ 9Ât‹EЋPƒ\ ‰D$‰$èÃëþÿ…ÀtèÚûþÿ‰Â‹EЋ@‰T$‰$è–ðþÿ‰Eèë-‹EÐ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è°öþÿÇE¼éÍÇEð‹ƒàÿÿÿ‹‹€¨…Àtè&éþÿ‰Eð‹uà‹}Ôèèòþÿ‰Â‹E‹@‰T$‰$è$ðþÿ‰ÂE؉D$‹Eè‰D$ ‰t$‰|$‰$èôÜþÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eð‰$èÄæþÿ‹ƒàÿÿÿ‹‹PdE؉$ÿÒ…Àt ÇE¼ë-‹ƒàÿÿÿ‹‹P‹Eì‰$ÿÒ‰Eäƒ}ìt ‹Eì‰$èÝþÿ‹Eä‰E¼‹E¼ƒÄ\[^_]ÃU‰åWVSƒìlè— ÿÿÃv~ÇEäÇEàÇEìÇEÜègÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$$Eä‰D$ E܉D$Eà‰D$‰T$E؉D$ƒ¤(‰D$ ƒntÿÿ‰D$‹E‰D$‹E ‰$è>÷þÿ…À…ẺD$EЉD$EÔ‰$è-ìþÿ‹EðƒÀ‹UðƒÂ‰D$$Eä‰D$ E܉D$Eà‰D$E؉D$‰T$ƒˆ(‰D$ ƒŒtÿÿ‰D$‹E‰D$‹E ‰$èÇöþÿ…Àt‹Eð‰$è°ÿÿ…Àu‹EÌ‹UЋMÔ‰D$‰T$‰ $è»èþÿéc‹EÔ…Àt!‹EÔ‹ƒê‰‹…Àu‹EÔ‹@‹P‹EÔ‰$ÿÒ‹EÐ…Àt!‹EЋƒê‰‹…Àu‹EЋ@‹P‹EЉ$ÿÒ‹EÌ…Àt!‹EÌ‹ƒê‰‹…Àu‹EÌ‹@‹P‹Ẻ$ÿÒ‹Eð‰$è ÿÿ…À„؃}ìt-‹ƒàÿÿÿ‹‹x,uàè’ñþÿ‰Â‰t$‹Eì‰D$‰$ÿ×…À…¥‹EäUè‰T$‰$è¦ÿÿ…À„‹‹Eð‰$èØÿÿ³å”ýÿ‹}è‹E܉E´‹Eà‰E¸‹E؉E¼èðþÿ‰Â‹E‹@‰T$‰$è?íþÿ‰Â‹Eð‰D$‰t$‰|$‹E´‰D$ ‹E¸‰D$‹E¼‰D$‰$èãþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÀë‹Eð‰$è¸ÿÿÇEÀ‹EÀƒÄl[^_]ÃU‰åVSƒì0èâÿÿÃÁ{ÇEèEì‰D$ƒœ%‰D$ƒÀ(‰D$ ƒªtÿÿ‰D$‹E‰D$‹E ‰$èÅôþÿ…Àu ÇEäé™èÖþÿ‰Â‹Eì‹@‰T$‰$è\ìþÿ‰Æèïþÿ‰Â‹E‹@‰T$‰$èAìþÿ‰ÂEè‰D$‰t$‰$èÌÛþÿ‰Eô‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$èâÙþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì@èÞÿÿýzÇEìÇEäÇEÜE܉D$Eà‰D$ƒÈ(‰D$ ƒÈtÿÿ‰D$‹E‰D$‹E ‰$è¶óþÿ…Àu ÇEÔé\‹E܉‹ƒÜÿÿÿ9Âu ÇEìë~‹EÜ…ÀtJ‹EÜ‹Pƒ\ 9Ât‹EÜ‹Pƒ\ ‰D$‰$è/æþÿ…ÀtèFöþÿ‰Â‹EÜ‹@‰T$‰$èëþÿ‰Eìë-‹EÜ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èñþÿÇEÔéÆÇEô‹ƒàÿÿÿ‹‹€¨…Àtè’ãþÿ‰Eô‹uàèWíþÿ‰Â‹E‹@‰T$‰$è“êþÿ‰ÂEä‰D$ ‹Eì‰D$‰t$‰$è÷ôþÿ‰Eð‹ƒàÿÿÿ‹‹€¨…Àt ‹Eô‰$è7áþÿ‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë-‹ƒàÿÿÿ‹‹P‹Eð‰$ÿÒ‰Eèƒ}ðt ‹Eð‰$èØþÿ‹Eè‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒì\è ÿÿÃêxÇEèÇEäÇEàèâ ÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eà‰D$Eè‰D$‰T$Eì‰D$ƒÔ(‰D$ ƒìtÿÿ‰D$‹E‰D$‹E ‰$èÀñþÿ…À„§‹Eð‰$è¥ ÿÿ…À„”‹EàUä‰T$‰$èsÿÿ…Àt~‹Eð‰$è© ÿÿ³å”ýÿ‹}ä‹Eè‰EÈ‹Eì‰EÌèÚëþÿ‰Â‹E‹@‰T$‰$èéþÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$èß×þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$è– ÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èÀÿÿßwÇEìEð‰D$ƒœ%‰D$ƒì(‰D$ ƒuÿÿ‰D$‹E‰D$‹E ‰$è£ðþÿ…Àu ÇEäé‚ènÒþÿ‰Â‹Eð‹@‰T$‰$è:èþÿ‰Æèãêþÿ‰Â‹E‹@‰T$‰$èèþÿ‰ÂEì‰D$‰t$‰$èjÙþÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEä닃àÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eä‹EäƒÄ0[^]ÃU‰åSƒìDèÔÿÿóvÇEèÇEðÇEäEè‰D$ƒô(‰D$ ƒDuÿÿ‰D$‹E‰D$‹E ‰$è³ïþÿ…Àu ÇEØéU‹Eè‰Â‹ƒÜÿÿÿ9Âu ÇEðë~‹Eè…ÀtJ‹Eè‹Pƒ\ 9Ât‹Eè‹Pƒ\ ‰D$‰$è,âþÿ…ÀtèCòþÿ‰Â‹Eè‹@‰T$‰$èÿæþÿ‰Eðë-‹Eè…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èíþÿÇEØé¿ÇEø‹ƒàÿÿÿ‹‹€¨…Àtèßþÿ‰EøèWéþÿ‰Â‹E‹@‰T$‰$è“æþÿ‰ÂEä‰D$‹Eð‰D$‰$èÛÑþÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eø‰$è;Ýþÿ‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEØë-‹ƒàÿÿÿ‹‹P‹Eì‰$ÿÒ‰Eôƒ}ìt ‹Eì‰$èÔþÿ‹Eô‰EØ‹E؃ÄD[]ÃU‰åWVSƒì<èÿÿÃïtÇEìÇEèèîÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒü(‰D$ ƒhuÿÿ‰D$‹E‰D$‹E ‰$èÓíþÿ…À„š‹Eð‰$è¸ÿÿ…À„‡‹EèUä‰T$‰$è†ÿþÿ…Àtq‹Eð‰$è¼ÿÿ³å”ýÿ‹}ä‹Eì‰EÜèóçþÿ‰Â‹E‹@‰T$‰$è/åþÿ‰Â‹Eð‰D$‰t$ ‰|$‹E܉D$‰$è¯Ðþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$è¶ÿÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì0èàþþÿÿsÇEèEì‰D$ƒœ%‰D$ƒ)‰D$ ƒŒuÿÿ‰D$‹E‰D$‹E ‰$èÃìþÿ…Àu ÇEäé™èŽÎþÿ‰Â‹Eì‹@‰T$‰$èZäþÿ‰Æèçþÿ‰Â‹E‹@‰T$‰$è?äþÿ‰ÂEè‰D$‰t$‰$è:Òþÿ‰Eð‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eð‰$ÿÒ‰Eôƒ}ðt ‹Eð‰$èàÑþÿ‹Eô‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì\èÛýþÿúrÇEàÇEÜÇEìÇEØÇEÐEЉD$E܉D$EÔ‰D$ƒ)‰D$ ƒ´uÿÿ‰D$‹E‰D$‹E ‰$èžëþÿ…Àu ÇE¼é¡‹EÜ…Àt7‹ƒàÿÿÿ‹‹@,‰EÀuà‹}ÜèÞâþÿ‰t$‰|$‰$ÿUÀ…Àt ÇE¼éc‹EЉ‹ƒÜÿÿÿ9Âu ÇEìë~‹EÐ…ÀtJ‹EЋPƒ\ 9Ât‹EЋPƒ\ ‰D$‰$èÙÝþÿ…Àtèðíþÿ‰Â‹EЋ@‰T$‰$è¬âþÿ‰Eìë-‹EÐ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÆèþÿÇE¼éÍÇEð‹ƒàÿÿÿ‹‹€¨…Àtè<Ûþÿ‰Eð‹uà‹}Ôèþäþÿ‰Â‹E‹@‰T$‰$è:âþÿ‰ÂE؉D$‹Eì‰D$ ‰t$‰|$‰$èúâþÿ‰E䋃àÿÿÿ‹‹€¨…Àt ‹Eð‰$èÚØþÿ‹ƒàÿÿÿ‹‹PdE؉$ÿÒ…Àt ÇE¼ë-‹ƒàÿÿÿ‹‹P‹Eä‰$ÿÒ‰Eèƒ}ät ‹Eä‰$è³Ïþÿ‹Eè‰E¼‹E¼ƒÄ\[^_]ÃU‰åWVSƒì\è­ûþÿÃŒpÇEèÇEäÇEàÇEÜÇEØèvÿÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$$E؉D$ Eä‰D$Eè‰D$‰T$Eì‰D$ƒ()‰D$ ƒØuÿÿ‰D$‹E‰D$‹E ‰$èMéþÿ…À„î‹Eð‰$è2ÿÿ…À„Û‹Eè…Àt/‹ƒàÿÿÿ‹‹@,‰EÀuà‹}èè‚àþÿ‰t$‰|$‰$ÿUÀ…À…¥‹EØU܉T$‰$èÊúþÿ…À„‹‹Eð‰$èüÿÿ³å”ýÿ‹}Ü‹Eä‰EÄ‹Eà‰EÈ‹Eì‰EÌè'ãþÿ‰Â‹E‹@‰T$‰$ècàþÿ‰Â‹Eð‰D$‰t$‰|$‹EĉD$ ‹EȉD$‹ẺD$‰$èåÊþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èÜÿÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èúþÿÃånÇEèEì‰D$ƒœ%‰D$ƒD)‰D$ ƒvÿÿ‰D$‹E‰D$‹E ‰$èéçþÿ…Àu ÇEäé™è´Éþÿ‰Â‹Eì‹@‰T$‰$è€ßþÿ‰Æè)âþÿ‰Â‹E‹@‰T$‰$èeßþÿ‰ÂEè‰D$‰t$‰$èÎþÿ‰Eð‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eð‰$ÿÒ‰Eôƒ}ðt ‹Eð‰$èÍþÿ‹Eô‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì@èùþÿÃámÇEìÇEäÇEÜE܉D$Eà‰D$ƒL)‰D$ ƒ*vÿÿ‰D$‹E‰D$‹E ‰$èÚæþÿ…Àu ÇEÔé\‹E܉‹ƒÜÿÿÿ9Âu ÇEìë~‹EÜ…ÀtJ‹EÜ‹Pƒ\ 9Ât‹EÜ‹Pƒ\ ‰D$‰$èSÙþÿ…Àtèjéþÿ‰Â‹EÜ‹@‰T$‰$è&Þþÿ‰Eìë-‹EÜ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è@äþÿÇEÔéÆÇEô‹ƒàÿÿÿ‹‹€¨…Àtè¶Öþÿ‰Eô‹uàè{àþÿ‰Â‹E‹@‰T$‰$è·Ýþÿ‰ÂEä‰D$ ‹Eì‰D$‰t$‰$è Èþÿ‰Eð‹ƒàÿÿÿ‹‹€¨…Àt ‹Eô‰$è[Ôþÿ‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë-‹ƒàÿÿÿ‹‹P‹Eð‰$ÿÒ‰Eèƒ}ðt ‹Eð‰$è4Ëþÿ‹Eè‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒì\è/÷þÿÃlÇEèÇEäÇEàèýþÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$ Eà‰D$Eè‰D$‰T$Eì‰D$ƒX)‰D$ ƒHvÿÿ‰D$‹E‰D$‹E ‰$èääþÿ…À„§‹Eð‰$èÉýþÿ…À„”‹EàUä‰T$‰$è—öþÿ…Àt~‹Eð‰$èÍýþÿ³å”ýÿ‹}ä‹Eè‰EÈ‹Eì‰EÌèþÞþÿ‰Â‹E‹@‰T$‰$è:Üþÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$èÃÕþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èºþþÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èäõþÿÃÃjÇEèEì‰D$ƒœ%‰D$ƒp)‰D$ ƒpvÿÿ‰D$‹E‰D$‹E ‰$èÇãþÿ…Àu ÇEäé™è’Åþÿ‰Â‹Eì‹@‰T$‰$è^Ûþÿ‰ÆèÞþÿ‰Â‹E‹@‰T$‰$èCÛþÿ‰ÂEè‰D$‰t$‰$èÌþÿ‰Eô‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$èäÈþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åSƒìDèáôþÿÃÀiÇEìÇEôÇEèEì‰D$ƒx)‰D$ ƒ”vÿÿ‰D$‹E‰D$‹E ‰$èÀâþÿ…Àu ÇEØé6‹Eì‰Â‹ƒÜÿÿÿ9Âu ÇEôë~‹Eì…ÀtJ‹Eì‹Pƒ\ 9Ât‹Eì‹Pƒ\ ‰D$‰$è9Õþÿ…ÀtèPåþÿ‰Â‹Eì‹@‰T$‰$è Úþÿ‰Eôë-‹Eì…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è&àþÿÇEØé ÇEø‹ƒàÿÿÿ‹‹€¨…ÀtèœÒþÿ‰EøèdÜþÿ‰Â‹E‹@‰T$‰$è Ùþÿ‰ÂEè‰D$‹Eô‰D$‰$èÈþÿ‰Eð‹ƒàÿÿÿ‹‹€¨…Àt ‹Eø‰$èHÐþÿ‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEØë‹Eð‰$è]Èþÿ‰EØ‹E؃ÄD[]ÃU‰åSƒìDè>óþÿÃhÇEìÇEôÇEèEì‰D$ƒ€)‰D$ ƒ§vÿÿ‰D$‹E‰D$‹E ‰$èáþÿ…Àu ÇEØé6‹Eì‰Â‹ƒÜÿÿÿ9Âu ÇEôë~‹Eì…ÀtJ‹Eì‹Pƒ\ 9Ât‹Eì‹Pƒ\ ‰D$‰$è–Óþÿ…Àtè­ãþÿ‰Â‹Eì‹@‰T$‰$èiØþÿ‰Eôë-‹Eì…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èƒÞþÿÇEØé ÇEø‹ƒàÿÿÿ‹‹€¨…ÀtèùÐþÿ‰EøèÁÚþÿ‰Â‹E‹@‰T$‰$èý×þÿ‰ÂEè‰D$‹Eô‰D$‰$èÕÞþÿ‰Eð‹ƒàÿÿÿ‹‹€¨…Àt ‹Eø‰$è¥Îþÿ‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEØë‹Eð‰$èºÆþÿ‰EØ‹E؃ÄD[]ÃU‰åWVSƒìlè™ñþÿÃxfÇEàÇEÜÇEØÇEÔÇEÌÇEìè[÷þÿ‰Eä‹EäƒÀ‹UäƒÂ‰D$$E؉D$ Eà‰D$‰T$E܉D$ƒ,‰D$ƒˆ)‰D$ ƒ×vÿÿ‰D$‹E‰D$‹E ‰$è/ßþÿ…À„W‹Eä‰$èA÷þÿ…Àtƒ––ýÿ‰Eì‹Eä‰$èü÷þÿ…À„,‹Eà…Àt/‹ƒàÿÿÿ‹‹@,‰E¸uÔ‹}àè Åþÿ‰t$‰|$‰$ÿU¸…À…ö‹EØUЉT$‰$è”ðþÿ…À„ÜÇEð‹ƒàÿÿÿ‹‹€¨…Àtè.Ïþÿ‰Eð‹uЋ}ÔèðØþÿ‰Â‹EÜ‹@‰T$‰$è,Öþÿ‰E¼èÔØþÿ‰Â‹E‹@‰T$‰$èÖþÿ‰ÂẺD$‹Eä‰D$‹Eì‰D$‰t$ ‰|$‹E¼‰D$‰$è’¿þÿ‰E苃àÿÿÿ‹‹€¨…Àt ‹Eð‰$è¢Ìþÿ‹ƒàÿÿÿ‹‹PdẺ$ÿÒ…Àu‹Eä‰$èpøþÿ‹Eè‰$èµÄþÿ‰EÀë‹Eä‰$èUøþÿÇEÀ‹EÀƒÄl[^_]ÃU‰åWVSƒì|è~ïþÿÃ]dÇEÜÇEØÇEèÇEìÇEÔÇEÐÇEðè9õþÿ‰Eà‹Eà‰$èOõþÿ‰Eä‹EäƒÀ‹UàƒÂ‹MäƒÁ‹uàƒÆ‰D$0‰T$,EЉD$(EÔ‰D$$E܉D$ ‰L$‰t$E؉D$ƒ,‰D$ƒ¼)‰D$ ƒwÿÿ‰D$‹E‰D$‹E ‰$èäÜþÿ…À„%‹Eà‰$èÉõþÿ…À„ẺD$‹Eè‰$è—îþÿ…À„ø‹Eä‰$èÉôþÿ…Àt&ƒ––ýÿ‰EðƒÅvÿÿ‰D$‹Eä‰$èÖôþÿ…À„ËEÐỦT$‰$èHîþÿ…À„©‹Eà‰$èzõþÿ³å”ýÿ‹}Ì‹EÔ‰E¸è±Öþÿ‰Â‹EØ‹@‰T$‰$èíÓþÿ‰E¼è•Öþÿ‰Â‹E‹@‰T$‰$èÑÓþÿ‰Â‹Eà‰D$ ‰t$‹Eä‰D$‹Eð‰D$‰|$‹E¸‰D$ ‹Eì‰D$‹E¼‰D$‰$è•¿þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÀë‹Eà‰$è<öþÿÇEÀ‹EÀƒÄ|[^_]ÃU‰åVSƒì0èfíþÿÃEbÇEìEð‰D$ƒœ%‰D$ƒà)‰D$ ƒwÿÿ‰D$‹E‰D$‹E ‰$èIÛþÿ…Àu ÇEäëzè½þÿ‰Â‹Eð‹@‰T$‰$èãÒþÿ‰ÆèŒÕþÿ‰Â‹E‹@‰T$‰$èÈÒþÿ‰ÂEì‰D$‰t$‰$èƒÇþÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$è¥Áþÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìlèƒìþÿÃbaÇEàÇEÜÇEØÇEÔÇEÌÇEìèEòþÿ‰Eä‹EäƒÀ‹UäƒÂ‰D$$E؉D$ Eà‰D$‰T$E܉D$ƒ,‰D$ƒè)‰D$ ƒ3wÿÿ‰D$‹E‰D$‹E ‰$èÚþÿ…À„W‹Eä‰$è+òþÿ…Àtƒ––ýÿ‰Eì‹Eä‰$èæòþÿ…À„,‹Eà…Àt/‹ƒàÿÿÿ‹‹@,‰E¸uÔ‹}àèö¿þÿ‰t$‰|$‰$ÿU¸…À…ö‹EØUЉT$‰$è~ëþÿ…À„ÜÇEð‹ƒàÿÿÿ‹‹€¨…ÀtèÊþÿ‰Eð‹uЋ}ÔèÚÓþÿ‰Â‹EÜ‹@‰T$‰$èÑþÿ‰E¼è¾Óþÿ‰Â‹E‹@‰T$‰$èúÐþÿ‰ÂẺD$‹Eä‰D$‹Eì‰D$‰t$ ‰|$‹E¼‰D$‰$èüÅþÿ‰E苃àÿÿÿ‹‹€¨…Àt ‹Eð‰$èŒÇþÿ‹ƒàÿÿÿ‹‹PdẺ$ÿÒ…Àu‹Eä‰$èZóþÿ‹Eè‰$蟿þÿ‰EÀë‹Eä‰$è?óþÿÇEÀ‹EÀƒÄl[^_]ÃU‰åSƒìDèjêþÿÃI_ÇEìÇEôÇEèEì‰D$ƒ*‰D$ ƒEwÿÿ‰D$‹E‰D$‹E ‰$èIØþÿ…Àu ÇEØé6‹Eì‰Â‹ƒÜÿÿÿ9Âu ÇEôë~‹Eì…ÀtJ‹Eì‹Pƒ\ 9Ât‹Eì‹Pƒ\ ‰D$‰$èÂÊþÿ…ÀtèÙÚþÿ‰Â‹Eì‹@‰T$‰$è•Ïþÿ‰Eôë-‹Eì…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è¯ÕþÿÇEØé ÇEø‹ƒàÿÿÿ‹‹€¨…Àtè%Èþÿ‰EøèíÑþÿ‰Â‹E‹@‰T$‰$è)Ïþÿ‰ÂEè‰D$‹Eô‰D$‰$è±Ñþÿ‰Eð‹ƒàÿÿÿ‹‹€¨…Àt ‹Eø‰$èÑÅþÿ‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEØë‹Eð‰$èæ½þÿ‰EØ‹E؃ÄD[]ÃU‰åVSƒì0èÆèþÿÃ¥]ÇEèEì‰D$ƒ\ ‰D$ƒ*‰D$ ƒ`wÿÿ‰D$‹E‰D$‹E ‰$è©Öþÿ…Àu ÇEäé¸ÇEô‹ƒàÿÿÿ‹‹€¨…ÀtèÇþÿ‰EôècÙþÿ‰Â‹Eì‹@‰T$‰$èÎþÿ‰ÆèÈÐþÿ‰Â‹E‹@‰T$‰$èÎþÿ‰ÂEè‰D$‰t$‰$è?»þÿ‰Eð‹ƒàÿÿÿ‹‹€¨…Àt ‹Eô‰$è¯Äþÿ‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë‹Eð‰$èļþÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì@è£çþÿÂ\ÇEäÇEðÇEàEä‰D$Eè‰D$ƒ*‰D$ ƒ˜wÿÿ‰D$‹E‰D$‹E ‰$è{Õþÿ…Àu ÇEÔé=‹Eä‰Â‹ƒÜÿÿÿ9Âu ÇEðë~‹Eä…ÀtJ‹Eä‹Pƒ\ 9Ât‹Eä‹Pƒ\ ‰D$‰$èôÇþÿ…Àtè Øþÿ‰Â‹Eä‹@‰T$‰$èÇÌþÿ‰Eðë-‹Eä…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èáÒþÿÇEÔé§ÇEô‹ƒàÿÿÿ‹‹€¨…ÀtèWÅþÿ‰Eô‹uèèÏþÿ‰Â‹E‹@‰T$‰$èXÌþÿ‰ÂEà‰D$ ‹Eð‰D$‰t$‰$èÔþÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eô‰$èüÂþÿ‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÔë‹Eì‰$è»þÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@èðåþÿÃÏZÇEàÇEÜÇEØEà‰D$ƒ*‰D$ ƒ¸wÿÿ‰D$‹E‰D$‹E ‰$èÏÓþÿ…Àu ÇEÔé‹EàU܉T$‰$èåþÿ…Àu ÇEÔéî‹uÜèÎþÿ‰Â‹E‹@‰T$‰$èAËþÿ‰ÂE؉D$‰t$‰$è¬Èþÿ‰E䋃àÿÿÿ‹‹PdE؉$ÿÒ…Àt ÇEÔé—‹Eä‹@‰Eì‹E䋉Eðƒ}ì~d‹Eì‰$ètÔþÿ‰EôÇEèë2‹Uè‰ÐÀÐÀÀEð‰$è¡òþÿ‰D$‹Eè‰D$‹Eô‰$èºÑþÿƒEè‹Eè;Eì|Æ‹Eä‰$è3»þÿ‹Eô‰EÔ닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@èqäþÿÃPYÇEàÇEÜÇEØEà‰D$ƒ$*‰D$ ƒàwÿÿ‰D$‹E‰D$‹E ‰$èPÒþÿ…Àu ÇEÔé‹EàU܉T$‰$èäþÿ…Àu ÇEÔéî‹uÜè†Ìþÿ‰Â‹E‹@‰T$‰$èÂÉþÿ‰ÂE؉D$‰t$‰$èMÏþÿ‰E䋃àÿÿÿ‹‹PdE؉$ÿÒ…Àt ÇEÔé—‹Eä‹@‰Eì‹E䋉Eðƒ}ì~d‹Eì‰$èõÒþÿ‰EôÇEèë2‹Uè‰ÐÀÐÀÀEð‰$è"ñþÿ‰D$‹Eè‰D$‹Eô‰$è;ÐþÿƒEè‹Eè;Eì|Æ‹Eä‰$è´¹þÿ‹Eô‰EÔ닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒìlèñâþÿÃÐWÇEìÇEèÇEäÇEÜÇEØÇEÐEЉD$ E؉D$EÔ‰D$E܉D$Eà‰D$ƒ,*‰D$ ƒxÿÿ‰D$‹E‰D$‹E ‰$èŸÐþÿ…Àu ÇE¬é'‹ƒàÿÿÿ‹‹@(‰E°uÌ‹}Üè¦Äþÿ‰t$‰|$‰$ÿU°…Àt ÇE¬éð‹EØ…Àt7‹ƒàÿÿÿ‹‹@,‰E´uì‹}Øè¨Çþÿ‰t$‰|$‰$ÿU´…Àt ÇE¬é²‹EÐUè‰T$‰$èèáþÿ…Àu ÇE¬é‹uè‹}ì‹EÔ‰E¸‹ẺE¼‹Eà‰EÀèKÊþÿ‰Â‹E‹@‰T$‰$è‡Çþÿ‰ÂEä‰D$‰t$‰|$‹E¸‰D$ ‹E¼‰D$‹EÀ‰D$‰$è™Åþÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇE¬ë‹Eð‰$èK¶þÿ‰E¬‹E¬ƒÄl[^_]ÃU‰åWVSƒìLè(áþÿÃVÇEèÇEäÇEìÇEàÇEØE؉D$Eä‰D$E܉D$ƒ‰D$ƒD*‰D$ ƒ,xÿÿ‰D$‹E‰D$‹E ‰$èáÎþÿ…Àu ÇEÌé\‹Eä…Àt7‹ƒàÿÿÿ‹‹@,‰EÐuè‹}äè!Æþÿ‰t$‰|$‰$ÿUÐ…Àt ÇEÌé‹E؉‹ƒÜÿÿÿ9Âu ÇEìë~‹EØ…ÀtJ‹EØ‹Pƒ\ 9Ât‹EØ‹Pƒ\ ‰D$‰$èÁþÿ…Àtè3Ñþÿ‰Â‹EØ‹@‰T$‰$èïÅþÿ‰Eìë-‹EØ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è ÌþÿÇEÌ鈋uèèõ²þÿ‰Â‹EÜ‹@‰T$‰$è¡Åþÿ‰ÇèJÈþÿ‰Â‹E‹@‰T$‰$è†Åþÿ‰ÂEà‰D$‹Eì‰D$ ‰t$‰|$‰$膳þÿ‰Eð‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÌë‹Eð‰$èX´þÿ‰EÌ‹ẼÄL[^_]ÃU‰åWVSƒì\è5ßþÿÃTÇEèÇEäÇEàÇEÜèåþÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$(E܉D$$Eä‰D$ Eè‰D$‰T$Eì‰D$ƒ‰D$ƒT*‰D$ ƒTxÿÿ‰D$‹E‰D$‹E ‰$èÒÌþÿ…À„΋Eð‰$è·åþÿ…À„»‹EÜUà‰T$‰$è…Þþÿ…À„¡‹Eð‰$è·åþÿ³å”ýÿ‹}à‹Eä‰EÄ‹Eè‰EÈèx±þÿ‰Â‹Eì‹@‰T$‰$è$Äþÿ‰EÌèÌÆþÿ‰Â‹E‹@‰T$‰$èÄþÿ‰Â‹Eð‰D$‰t$‰|$‹EĉD$ ‹EȉD$‹ẺD$‰$è:½þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èæþÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì@è«ÝþÿÊRÇEèÇEäEì‰D$ƒœ%‰D$ƒp*‰D$ ƒ{xÿÿ‰D$‹E‰D$‹E ‰$è‡Ëþÿ…Àu ÇEÔé­èR­þÿ‰Â‹Eì‹@‰T$‰$èÃþÿ‰ÆèÇÅþÿ‰Â‹E‹@‰T$‰$èÃþÿ‰ÂEä‰D$ Eè‰D$‰t$‰$è‡Çþÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë:ƒ}ðt‹ƒàÿÿÿ‹‹P‹Eè‰$ÿÒ‰Eô닃Üÿÿÿ‰Eô‹Eô‹P‹Eô‰‹Eô‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒìLè‹ÜþÿÃjQÇEèÇEäÇEìÇEàÇEÔEÔ‰D$Eä‰D$E؉D$E܉D$ƒx*‰D$ ƒ xÿÿ‰D$‹E‰D$‹E ‰$èGÊþÿ…Àu ÇEÈéN‹Eä…Àt7‹ƒàÿÿÿ‹‹@,‰EÌuè‹}äè‡Áþÿ‰t$‰|$‰$ÿUÌ…Àt ÇEÈé‹Eԉ‹ƒÜÿÿÿ9Âu ÇEìë{‹EÔ…ÀtJ‹EÔ‹Pƒ\ 9Ât‹EÔ‹Pƒ\ ‰D$‰$肼þÿ…Àtè™Ìþÿ‰Â‹EÔ‹@‰T$‰$èUÁþÿ‰Eìë*‹EÔ…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èoÇþÿÇEÈë}‹uè‹}Ø‹E܉EÐèÅÃþÿ‰Â‹E‹@‰T$‰$èÁþÿ‰ÂEà‰D$‹Eì‰D$‰t$ ‰|$‹EЉD$‰$èZ«þÿ‰Eð‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÈë‹Eð‰$è̯þÿ‰EÈ‹EȃÄL[^_]ÃU‰åWVSƒìLè©ÚþÿÈOÇEèÇEäÇEìÇEàÇEÔEÔ‰D$Eä‰D$E؉D$E܉D$ƒŒ*‰D$ ƒÄxÿÿ‰D$‹E‰D$‹E ‰$èeÈþÿ…Àu ÇEÈéN‹Eä…Àt7‹ƒàÿÿÿ‹‹@,‰EÌuè‹}ä西þÿ‰t$‰|$‰$ÿUÌ…Àt ÇEÈé‹Eԉ‹ƒÜÿÿÿ9Âu ÇEìë{‹EÔ…ÀtJ‹EÔ‹Pƒ\ 9Ât‹EÔ‹Pƒ\ ‰D$‰$è ºþÿ…Àtè·Êþÿ‰Â‹EÔ‹@‰T$‰$ès¿þÿ‰Eìë*‹EÔ…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÅþÿÇEÈë}‹uè‹}Ø‹E܉EÐèãÁþÿ‰Â‹E‹@‰T$‰$è¿þÿ‰ÂEà‰D$‹Eì‰D$‰t$ ‰|$‹EЉD$‰$踿þÿ‰Eð‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÈë‹Eð‰$èê­þÿ‰EÈ‹EȃÄL[^_]ÃU‰åWVSƒìLèÇØþÿæMÇEèÇEäÇEìÇEàÇEÔEÔ‰D$Eä‰D$E؉D$E܉D$ƒ *‰D$ ƒðxÿÿ‰D$‹E‰D$‹E ‰$èƒÆþÿ…Àu ÇEÈéN‹Eä…Àt7‹ƒàÿÿÿ‹‹@,‰EÌuè‹}äèýþÿ‰t$‰|$‰$ÿUÌ…Àt ÇEÈé‹Eԉ‹ƒÜÿÿÿ9Âu ÇEìë{‹EÔ…ÀtJ‹EÔ‹Pƒ\ 9Ât‹EÔ‹Pƒ\ ‰D$‰$辸þÿ…ÀtèÕÈþÿ‰Â‹EÔ‹@‰T$‰$葽þÿ‰Eìë*‹EÔ…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è«ÃþÿÇEÈë}‹uè‹}Ø‹E܉EÐèÀþÿ‰Â‹E‹@‰T$‰$è=½þÿ‰ÂEà‰D$‹Eì‰D$‰t$ ‰|$‹EЉD$‰$èf¾þÿ‰Eð‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÈë‹Eð‰$è¬þÿ‰EÈ‹EȃÄL[^_]ÃU‰åWVSƒìLèåÖþÿÃÄKÇEèÇEðÇEàÇEØÇEÔEÔ‰D$E؉D$Eä‰D$E܉D$ƒ´*‰D$ ƒyÿÿ‰D$‹E‰D$‹E ‰$è¡Äþÿ…Àu ÇEÈéN‹EØ…Àt7‹ƒàÿÿÿ‹‹@,‰EÌuè‹}Øèá»þÿ‰t$‰|$‰$ÿUÌ…Àt ÇEÈé‹Eԉ‹ƒÜÿÿÿ9Âu ÇEðë{‹EÔ…ÀtJ‹EÔ‹Pƒ\ 9Ât‹EÔ‹Pƒ\ ‰D$‰$èܶþÿ…ÀtèóÆþÿ‰Â‹EÔ‹@‰T$‰$读þÿ‰Eðë*‹EÔ…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÉÁþÿÇEÈë}‹uè‹}ä‹E܉EÐè¾þÿ‰Â‹E‹@‰T$‰$è[»þÿ‰ÂEà‰D$‹Eð‰D$‰t$ ‰|$‹EЉD$‰$è³þÿ‰E싃àÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÈë‹Eì‰$è&ªþÿ‰EÈ‹EȃÄL[^_]ÃU‰åWVSƒìlèÕþÿÃâIÇEÜÇEØÇEÔÇEàÇEÐÇEÈEȉD$ EÔ‰D$E؉D$‹ƒÔÿÿÿ‰D$ẺD$ƒÈ*‰D$ ƒ8yÿÿ‰D$‹E‰D$‹E ‰$è®Âþÿ…Àu ÇE¸é`‹E؉$èÓ¼þÿ‰Eè‰Uì‹EÔ…Àt7‹ƒàÿÿÿ‹‹@,‰E¼uÜ‹}Ôèݹþÿ‰t$‰|$‰$ÿU¼…Àt ÇE¸é‹Eȉ‹ƒÜÿÿÿ9Âu ÇEàë{‹EÈ…ÀtJ‹EÈ‹Pƒ\ 9Ât‹EÈ‹Pƒ\ ‰D$‰$èØ´þÿ…ÀtèïÄþÿ‰Â‹EÈ‹@‰T$‰$諹þÿ‰Eàë*‹EÈ…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èÅ¿þÿÇE¸ë~‹uÜ‹}Ìè!¼þÿ‰Â‹E‹@‰T$‰$è]¹þÿ‰ÁEЉD$‹Eà‰D$‰t$‹Eè‹Uì‰D$‰T$ ‰|$‰ $è§þÿ‰E䋃àÿÿÿ‹‹PdEЉ$ÿÒ…Àt ÇE¸ë‹Eä‰$è!¨þÿ‰E¸‹E¸ƒÄl[^_]ÃU‰åWVSƒìlèþÒþÿÃÝGÇEäÇEàÇEèÇEÜÇEÔEÔ‰D$Eà‰D$EȉD$E؉D$ƒÜ*‰D$ ƒ`yÿÿ‰D$‹E‰D$‹E ‰$èºÀþÿ…Àu ÇE°é^‹Eà…Àt7‹ƒàÿÿÿ‹‹@,‰E´uä‹}àèú·þÿ‰t$‰|$‰$ÿU´…Àt ÇE°é ‹Eԉ‹ƒÜÿÿÿ9Âu ÇEèë~‹EÔ…ÀtJ‹EÔ‹Pƒ\ 9Ât‹EÔ‹Pƒ\ ‰D$‰$èõ²þÿ…Àtè Ãþÿ‰Â‹EÔ‹@‰T$‰$èÈ·þÿ‰Eèë-‹EÔ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èâ½þÿÇE°éŠ‹Eä‰E¸‹uÈ‹}Ì‹E؉E¼è/ºþÿ‰Â‹E‹@‰T$‰$èk·þÿ‰ÂE܉D$‹Eè‰D$‹E¸‰D$‰t$‰|$ ‹E¼‰D$‰$è=§þÿ‰E싃àÿÿÿ‹‹PdE܉$ÿÒ…Àt ÇE°ë‹Eì‰$è/¦þÿ‰E°‹E°ƒÄl[^_]ÃU‰åWVSƒì\è ÑþÿÃëEÇEìÇEäÇEàèãÖþÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$$Eä‰D$ Eì‰D$‰T$Eè‰D$ƒ|‰D$ƒð*‰D$ ƒ”yÿÿ‰D$‹E‰D$‹E ‰$è·¾þÿ…À„÷‹Eð‰$èœ×þÿ…À„ä‹Eì…Àt/‹ƒàÿÿÿ‹‹@,‰EÄuà‹}ìè ¯þÿ‰t$‰|$‰$ÿUÄ…À…®‹EäU܉T$‰$è4Ðþÿ…À„”‹Eð‰$èf×þÿ³å”ýÿ‹}ÜèS½þÿ‰Â‹Eè‹@‰T$‰$èßµþÿ‰EÈ‹Eà‰EÌè¸þÿ‰Â‹E‹@‰T$‰$è½µþÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$èF¾þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$è=ØþÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0ègÏþÿÃFDÇEìEð‰D$ƒœ%‰D$ƒ+‰D$ ƒ¸yÿÿ‰D$‹E‰D$‹E ‰$èJ½þÿ…Àu ÇEäëzèŸþÿ‰Â‹Eð‹@‰T$‰$èä´þÿ‰Æè·þÿ‰Â‹E‹@‰T$‰$èÉ´þÿ‰ÂEì‰D$‰t$‰$èTŸþÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$覣þÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì\è„ÎþÿÃcCÇEìÇEäÇEàè[Ôþÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$$Eä‰D$ Eì‰D$‰T$Eè‰D$ƒ|‰D$ƒ+‰D$ ƒâyÿÿ‰D$‹E‰D$‹E ‰$è/¼þÿ…À„÷‹Eð‰$èÕþÿ…À„ä‹Eì…Àt/‹ƒàÿÿÿ‹‹@,‰EÄuà‹}ì脬þÿ‰t$‰|$‰$ÿUÄ…À…®‹EäU܉T$‰$è¬Íþÿ…À„”‹Eð‰$èÞÔþÿ³å”ýÿ‹}Üè˺þÿ‰Â‹Eè‹@‰T$‰$èW³þÿ‰EÈ‹Eà‰EÌèùµþÿ‰Â‹E‹@‰T$‰$è5³þÿ‰Â‹Eð‰D$‰t$‰|$ ‹EȉD$‹ẺD$‰$è.¤þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èµÕþÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èßÌþÿþAÇEèEì‰D$ƒœ%‰D$ƒ(+‰D$ ƒzÿÿ‰D$‹E‰D$‹E ‰$èºþÿ…Àu ÇEäé™èœþÿ‰Â‹Eì‹@‰T$‰$èY²þÿ‰Æèµþÿ‰Â‹E‹@‰T$‰$è>²þÿ‰ÂEè‰D$‰t$‰$詵þÿ‰Eô‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäë-‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eðƒ}ôt ‹Eô‰$èߟþÿ‹Eð‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLèÚËþÿù@ÇEìÇEèÇEäè±Ñþÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒ0+‰D$ ƒ#zÿÿ‰D$‹E‰D$‹E ‰$è–¹þÿ…À„ЋEð‰$è{Òþÿ…À„½‹Eì…Àt/‹ƒàÿÿÿ‹‹@,‰EÈuä‹}ìè{£þÿ‰t$‰|$‰$ÿUÈ…À…‡‹EèUà‰T$‰$èËþÿ…Àtq‹Eð‰$èIÒþÿ³å”ýÿ‹}à‹Eä‰EÌ耳þÿ‰Â‹E‹@‰T$‰$è¼°þÿ‰Â‹Eð‰D$‰t$ ‰|$‹ẺD$‰$è¼°þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èCÓþÿÇEЋEЃÄL[^_]ÃU‰åVSƒì0èmÊþÿÃL?ÇEìEð‰D$ƒœ%‰D$ƒD+‰D$ ƒ@zÿÿ‰D$‹E‰D$‹E ‰$èP¸þÿ…Àu ÇEäëzèšþÿ‰Â‹Eð‹@‰T$‰$èê¯þÿ‰Æè“²þÿ‰Â‹E‹@‰T$‰$èϯþÿ‰ÂEì‰D$‰t$‰$èµþÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$謞þÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLèŠÉþÿÃi>ÇEäÇEàÇEìèaÏþÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eä‰D$Eà‰D$‰T$ƒL+‰D$ ƒezÿÿ‰D$‹E‰D$‹E ‰$èF·þÿ…À„Í‹Eð‰$è+Ðþÿ…À„ºƒ}ìt-‹ƒàÿÿÿ‹‹x,uàè²²þÿ‰Â‰t$‹Eì‰D$‰$ÿ×…À…‡‹EäUè‰T$‰$èÆÈþÿ…Àtq‹Eð‰$èüÏþÿ³å”ýÿ‹}è‹Eà‰EÌè3±þÿ‰Â‹E‹@‰T$‰$èo®þÿ‰Â‹Eð‰D$‰t$ ‰|$‹ẺD$‰$è/¬þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èöÐþÿÇEЋEЃÄL[^_]ÃU‰åVSƒì0è ÈþÿÃÿ<ÇEìEð‰D$ƒœ%‰D$ƒ`+‰D$ ƒ€zÿÿ‰D$‹E‰D$‹E ‰$è¶þÿ…Àu ÇEäëzèÑ—þÿ‰Â‹Eð‹@‰T$‰$è­þÿ‰ÆèF°þÿ‰Â‹E‹@‰T$‰$è‚­þÿ‰ÂEì‰D$‰t$‰$èM­þÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$è_œþÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLè=ÇþÿÃ<ÇEèÇEðÇEäÇEàÇEØE؉D$Eà‰D$E܉D$ƒ,‰D$ƒh+‰D$ ƒ¤zÿÿ‰D$‹E‰D$‹E ‰$èö´þÿ…Àu ÇEÌé\‹Eà…Àt7‹ƒàÿÿÿ‹‹@,‰EÐuè‹}àèöšþÿ‰t$‰|$‰$ÿUÐ…Àt ÇEÌé‹E؉‹ƒÜÿÿÿ9Âu ÇEðë~‹EØ…ÀtJ‹EØ‹Pƒ\ 9Ât‹EØ‹Pƒ\ ‰D$‰$è1§þÿ…ÀtèH·þÿ‰Â‹EØ‹@‰T$‰$è¬þÿ‰Eðë-‹EØ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è²þÿÇEÌ鈋uèèz®þÿ‰Â‹EÜ‹@‰T$‰$è¶«þÿ‰Çè_®þÿ‰Â‹E‹@‰T$‰$蛫þÿ‰ÂEä‰D$‹Eð‰D$ ‰t$‰|$‰$è+¯þÿ‰E싃àÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÌë‹Eì‰$èmšþÿ‰EÌ‹ẼÄL[^_]ÃU‰åWVSƒìLèJÅþÿÃ):ÇEäÇEìÇEàÇEÜÇEØE؉D$Eä‰D$ƒx+‰D$ ƒÄzÿÿ‰D$‹E‰D$‹E ‰$è³þÿ…Àu ÇEÌé\‹Eä…Àt7‹ƒàÿÿÿ‹‹@,‰EÐuÜ‹}äèt”þÿ‰t$‰|$‰$ÿUÐ…Àt ÇEÌé‹E؉‹ƒÜÿÿÿ9Âu ÇEìë~‹EØ…ÀtJ‹EØ‹Pƒ\ 9Ât‹EØ‹Pƒ\ ‰D$‰$èO¥þÿ…Àtèfµþÿ‰Â‹EØ‹@‰T$‰$è"ªþÿ‰Eìë-‹EØ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è<°þÿÇEÌ鈋uÜ蘬þÿ‰Â‹E‹@‰T$‰$èÔ©þÿ‰ÂEà‰D$ ‹Eì‰D$‰t$‰$èx þÿ‰Eð‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÌë-‹ƒàÿÿÿ‹‹P‹Eð‰$ÿÒ‰Eèƒ}ðt ‹Eð‰$èn—þÿ‹Eè‰EÌ‹ẼÄL[^_]ÃU‰åWVSƒìLèhÃþÿÃG8ÇEäÇEìÇEàÇEÜÇEØE؉D$Eä‰D$ƒ„+‰D$ ƒãzÿÿ‰D$‹E‰D$‹E ‰$è2±þÿ…Àu ÇEÌé\‹Eä…Àt7‹ƒàÿÿÿ‹‹@,‰EÐuÜ‹}äè’’þÿ‰t$‰|$‰$ÿUÐ…Àt ÇEÌé‹E؉‹ƒÜÿÿÿ9Âu ÇEìë~‹EØ…ÀtJ‹EØ‹Pƒ\ 9Ât‹EØ‹Pƒ\ ‰D$‰$èm£þÿ…Àt脳þÿ‰Â‹EØ‹@‰T$‰$è@¨þÿ‰Eìë-‹EØ…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èZ®þÿÇEÌ鈋uÜ趪þÿ‰Â‹E‹@‰T$‰$èò§þÿ‰ÂEà‰D$ ‹Eì‰D$‰t$‰$è6•þÿ‰Eð‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÌë-‹ƒàÿÿÿ‹‹P‹Eð‰$ÿÒ‰Eèƒ}ðt ‹Eð‰$茕þÿ‹Eè‰EÌ‹ẼÄL[^_]ÃU‰åWVSƒìLè†ÁþÿÃe6ÇEèÇEìÇEäÇEàÇEÜE܉D$Eè‰D$ƒ+‰D$ ƒýzÿÿ‰D$‹E‰D$‹E ‰$èP¯þÿ…Àu ÇEÌéB‹Eè…Àt7‹ƒàÿÿÿ‹‹@,‰EÐuà‹}èè°þÿ‰t$‰|$‰$ÿUÐ…Àt ÇEÌé‹E܉‹ƒÜÿÿÿ9Âu ÇEìë{‹EÜ…ÀtJ‹EÜ‹Pƒ\ 9Ât‹EÜ‹Pƒ\ ‰D$‰$è‹¡þÿ…Àt袱þÿ‰Â‹EÜ‹@‰T$‰$è^¦þÿ‰Eìë*‹EÜ…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$èx¬þÿÇEÌëq‹uàèרþÿ‰Â‹E‹@‰T$‰$è¦þÿ‰ÂEä‰D$ ‹Eì‰D$‰t$‰$è·£þÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÌ닃àÿÿÿ‹‹P‹Eð‰$ÿÒ‰EÌ‹ẼÄL[^_]ÃU‰åSƒìDèÀ¿þÿß4ÇEìÇEôÇEèEì‰D$ƒœ+‰D$ ƒ{ÿÿ‰D$‹E‰D$‹E ‰$蟭þÿ…Àu ÇEØé‹Eì‰Â‹ƒÜÿÿÿ9Âu ÇEôë~‹Eì…ÀtJ‹Eì‹Pƒ\ 9Ât‹Eì‹Pƒ\ ‰D$‰$è þÿ…Àtè/°þÿ‰Â‹Eì‹@‰T$‰$èë¤þÿ‰Eôë-‹Eì…Àt&‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è«þÿÇEØéèd§þÿ‰Â‹E‹@‰T$‰$è ¤þÿ‰ÂEè‰D$‹Eô‰D$‰$舙þÿ‰Eð‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEØë-‹ƒàÿÿÿ‹‹P‹Eð‰$ÿÒ‰Eøƒ}ðt ‹Eð‰$è>’þÿ‹Eø‰EØ‹E؃ÄD[]ÃU‰åVSƒìPè;¾þÿÃ3ÇEäÇEÔEä‰D$ƒ¤+‰D$ ƒ6{ÿÿ‰D$‹E‰D$‹E ‰$è!¬þÿ…Àu ÇEÄé6‹EäUè‰T$‰$èß½þÿ…Àu ÇEÄéÇEð‹ƒàÿÿÿ‹‹€¨…Àtèqœþÿ‰Eð‹uèè6¦þÿ‰Â‹E‹@‰T$‰$èr£þÿ‰ÂEÔ‰D$E܉D$E؉D$ Eà‰D$‰t$‰$踭þÿ‰E싃àÿÿÿ‹‹€¨…Àt ‹Eð‰$èšþÿ‹ƒàÿÿÿ‹‹PdEÔ‰$ÿÒ…Àt ÇEÄëmƒ}ìtK‹EÜ‹UØ‹MØ‹uà‰D$‰T$ ‰L$‰t$ƒL{ÿÿ‰$èØ­þÿ‰Eô‹Eà‰$èjŒþÿ‹E܉$è_Œþÿ‹Eô‰EÄ닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÄ‹EăÄP[^]ÃU‰åWVSƒì<蜼þÿÃ{1ÇEèèÂþÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$‰T$ƒ¬+‰D$ ƒS{ÿÿ‰D$‹E‰D$‹E ‰$èmªþÿ…À„‰‹Eð‰$èRÃþÿ…Àtz‹EèUì‰T$‰$è$¼þÿ…Àtd‹Eð‰$èZÃþÿ³å”ýÿ‹}ìè—¤þÿ‰Â‹E‹@‰T$‰$èÓ¡þÿ‰Â‹Eð‰D$ ‰t$‰|$‰$è þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$èaÄþÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì@è‹»þÿÃj0ÇEÜEì‰D$ƒœ%‰D$ƒ¼+‰D$ ƒq{ÿÿ‰D$‹E‰D$‹E ‰$èn©þÿ…Àu ÇEÔéîè9‹þÿ‰Â‹Eì‹@‰T$‰$è¡þÿ‰Æè®£þÿ‰Â‹E‹@‰T$‰$èê þÿ‰ÂE܉D$Eä‰D$Eà‰D$ Eè‰D$‰t$‰$è€þÿ‰Eð‹ƒàÿÿÿ‹‹PdE܉$ÿÒ…Àt ÇEÔëmƒ}ðtK‹Eä‹Uà‹Mà‹uè‰D$‰T$ ‰L$‰t$ƒL{ÿÿ‰$èm«þÿ‰Eô‹Eè‰$èÿ‰þÿ‹Eä‰$èô‰þÿ‹Eô‰EÔ닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åWVSƒì|è1ºþÿÃ/ÇEàÇEØÇEäÇEÐÇEÈÇEÄÇEÀE܉D$$E؉D$ EЉD$EȉD$EÔ‰D$ẺD$ƒÄ+‰D$ ƒ—{ÿÿ‰D$‹E‰D$‹E ‰$èѧþÿ…Àu ÇE énƒ}ät5‹ƒàÿÿÿ‹‹x,uØèH£þÿ‰Â‰t$‹Eä‰D$‰$ÿ×…Àt ÇE é3E܉D$‹Eà‰$èT¹þÿ…Àu ÇE éÇEð‹ƒàÿÿÿ‹‹€¨…Àtèæ—þÿ‰Eð‹uÜ‹}Ø‹EЉE¤‹EȉE¨‹EÔ‰E¬‹ẺE°è¡þÿ‰Â‹E‹@‰T$‰$èÌžþÿ‰ÂEÀ‰D$ ‰t$EĉD$‰|$‹E¤‰D$‹E¨‰D$ ‹E¬‰D$‹E°‰D$‰$èðŸþÿ‰E苃àÿÿÿ‹‹€¨…Àt ‹Eð‰$èP•þÿ‹ƒàÿÿÿ‹‹PdEÀ‰$ÿÒ…Àt ÇE ë=ƒ}èt‹Eĉ$诖þÿ‰Eì닃Üÿÿÿ‰Eì‹Eì‹P‹E쉋Eĉ$蹇þÿ‹Eì‰E ‹E ƒÄ|[^_]ÃU‰åWVSƒì|è¸þÿÃò,ÇEèÇEäÇEàÇEØÇEÐèܽþÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$,Eè‰D$(Eà‰D$$E؉D$ EЉD$‰T$E܉D$EÔ‰D$ƒÜ+‰D$ ƒ¸{ÿÿ‰D$‹E‰D$‹E ‰$襥þÿ…À„'‹Eð‰$芾þÿ…À„‹Eà…Àt/‹ƒàÿÿÿ‹‹@,‰E¨uä‹}àè ¡þÿ‰t$‰|$‰$ÿU¨…À…Þ‹EèUì‰T$‰$è"·þÿ…À„Ä‹Eð‰$èT¾þÿ‹EÜ‹UÔ‰D$‰T$‹Eð‰$蛾þÿ³å”ýÿ‹}ì‹Eä‰E¬‹E؉E°‹EЉE´‹Eð‹@‰E¸‹Eð‹@‰E¼èTŸþÿ‰Â‹E‹@‰T$‰$èœþÿ‰Â‹Eð‰D$ ‰t$‰|$‹E¬‰D$‹E°‰D$‹E´‰D$ ‹E¸‰D$‹E¼‰D$‰$èt‡þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÀë‹Eð‰$èû¾þÿÇEÀ‹EÀƒÄ|[^_]ÃU‰åVSƒì@è%¶þÿÃ+ÇEèÇEäEì‰D$ƒœ%‰D$ƒü+‰D$ ƒà{ÿÿ‰D$‹E‰D$‹E ‰$è¤þÿ…Àu ÇEÔé¶èÌ…þÿ‰Â‹Eì‹@‰T$‰$蘛þÿ‰ÆèAžþÿ‰Â‹E‹@‰T$‰$è}›þÿ‰ÂEä‰D$ Eè‰D$‰t$‰$èa†þÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔëCƒ}ðt‹Eè‰$è“þÿ‰Eô‹Eô‰EÔë'‹ƒÜÿÿÿ‰Eô‹Eô‹P‹Eô‰‹Eè‰$è¡„þÿ‹Eô‰EÔ‹EÔƒÄ@[^]ÃU‰åSƒì$èþ´þÿÃÝ)èŠþÿ‰Â‹E‹@‰T$‰$èÆšþÿ‰$èn—þÿ‰Eðƒ}ðt9‹E‹@‹P ‹Eð‰D$ ‹E‰D$‰T$ƒGhÿÿ‰$èüþÿ‰Eô‹Eð‰$è„þÿë%‹E‹@‹P ‹E‰D$‰T$ƒVhÿÿ‰$èÊþÿ‰Eô‹Eô‰$è¼’þÿ‰Eø‹Eô‰$èÞƒþÿ‹EøƒÄ$[]ÃU‰åSƒìèB´þÿÃ!)èΜþÿ‰Â‹E‹@‰T$‰$è šþÿ‰$袘þÿƒÄ[]ÃU‰åSƒì$è ´þÿÃè(‹E‹Pƒ,9Ât ‹E‹Pƒ,‰D$‰$èÒ”þÿ…À„ë‹E ‹Pƒ,9Ât ‹E ‹Pƒ,‰D$‰$袔þÿ…À„»è5œþÿ‰Â‹E‹@‰T$‰$èq™þÿ‰Eôèœþÿ‰Â‹E ‹@‰T$‰$èU™þÿ‰Eø‹E‰Eàƒ}àtƒ}àt4ëd‹Eø‰D$‹Eô‰$è ¥þÿ…Àt ‹ƒÌÿÿÿ‰Eäë ‹ƒ ÿÿÿ‰Eä‹Eä‰EðëF‹Eø‰D$‹Eô‰$èÚ¤þÿ…Àu ‹ƒÌÿÿÿ‰Eèë ‹ƒ ÿÿÿ‰Eè‹Eè‰Eð닃´ÿÿÿ‰Eðë ‹ƒ´ÿÿÿ‰Eð‹Eð‹P‹Eð‰‹EðƒÄ$[]ÃU‰åVSƒì0è¼²þÿÛ'Eð‰D$ƒü,‰D$ƒÜ,‰D$ ƒu¹ÿÿ‰D$‹E‰D$‹E ‰$覠þÿ…Àu ÇEäëQèä£þÿ‰Â‹Eð‹@‰T$‰$è@˜þÿ‰ÆèÉ£þÿ‰Â‹E‹@‰T$‰$è%˜þÿ‰t$‰$è9“þÿ‰Eô‹Eô‰$è+‡þÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$è ²þÿÃê&èw£þÿ‰Â‹E‹@‰T$‰$èÓ—þÿ‰$è Œþÿ‰Eôƒ}ôt!‹Eô‰$è'þÿ‰Eø‹Eô‰$èIþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì艱þÿÃh&èõ¢þÿ‰Â‹E‹@‰T$‰$èQ—þÿ‰$è9œþÿƒÄ[]ÃU‰åSƒì$èP±þÿÃ/&‹E‹Pƒü,9Ât ‹E‹Pƒü,‰D$‰$è’þÿ…À„ë‹E ‹Pƒü,9Ât ‹E ‹Pƒü,‰D$‰$èé‘þÿ…À„»è\¢þÿ‰Â‹E‹@‰T$‰$踖þÿ‰Eôè@¢þÿ‰Â‹E ‹@‰T$‰$蜖þÿ‰Eø‹E‰Eàƒ}àtƒ}àt4ëd‹Eø‰D$‹Eô‰$è“‘þÿ…Àt ‹ƒÌÿÿÿ‰Eäë ‹ƒ ÿÿÿ‰Eä‹Eä‰EðëF‹Eø‰D$‹Eô‰$èa‘þÿ…Àu ‹ƒÌÿÿÿ‰Eèë ‹ƒ ÿÿÿ‰Eè‹Eè‰Eð닃´ÿÿÿ‰Eðë ‹ƒ´ÿÿÿ‰Eð‹Eð‹P‹Eð‰‹EðƒÄ$[]ÃU‰åWVSƒì<è°þÿÃá$ÇEèÇEäÇEàÇEØEà‰D$Eè‰D$ƒ¼-‰D$ ƒš¹ÿÿ‰D$‹E‰D$‹E ‰$èÓþÿ…Àu ÇEÐéÄ‹EàU܉T$‰$葯þÿ…Àu ÇEÐ颋uÜ‹}èèƒþÿ‰Â‹E‹@‰T$‰$èB•þÿ‰ÂE؉D$‰t$ Eä‰D$‰|$‰$èò”þÿ‰E싃àÿÿÿ‹‹PdE؉$ÿÒ…Àt ÇEÐë@‹u䋃àÿÿÿ‹‹P‹Eì‰$ÿÒ‰t$‰D$ƒ´¹ÿÿ‰$èÓŸþÿ‰Eð‹Eä‰$èe~þÿ‹Eð‰EЋEЃÄ<[^_]ÃU‰åWVSƒì<è¿®þÿÞ#ÇEìÇEèè´þÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒÈ-‰D$ ƒ¸¹ÿÿ‰D$‹E‰D$‹E ‰$肜þÿ…À„š‹Eð‰$ègµþÿ…À„‡‹EèUä‰T$‰$è5®þÿ…Àtq‹Eð‰$èkµþÿ³å”ýÿ‹}ä‹Eì‰EÜè²þÿ‰Â‹E‹@‰T$‰$èÞ“þÿ‰Â‹Eð‰D$‰t$ ‰|$‹E܉D$‰$èÎþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$èe¶þÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì@è­þÿÃn"ÇEèÇEäEì‰D$ƒœ%‰D$ƒÜ-‰D$ ƒÜ¹ÿÿ‰D$‹E‰D$‹E ‰$èk›þÿ…Àu ÇEÔé³è6}þÿ‰Â‹Eì‹@‰T$‰$è“þÿ‰Æè»€þÿ‰Â‹E‹@‰T$‰$èç’þÿ‰ÂEä‰D$ Eè‰D$‰t$‰$è»|þÿ‰Eð‹ƒàÿÿÿ‹‹PdEä‰$ÿÒ…Àt ÇEÔë@‹u苃àÿÿÿ‹‹P‹Eð‰$ÿÒ‰t$‰D$ƒ´¹ÿÿ‰$è|þÿ‰Eô‹Eè‰$è|þÿ‹Eô‰EÔ‹EÔƒÄ@[^]ÃU‰åSƒì$èk¬þÿÃJ!è˜þÿ‰Â‹E‹@‰T$‰$è3’þÿ‰$èˈþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$è€þÿ‹EôƒÄ$[]ÃU‰åSƒì$è¬þÿÃä è¡—þÿ‰Â‹E‹@‰T$‰$èÍ‘þÿ‰$èUˆþÿ‰Eôƒ}ôt!‹Eô‰$è!Šþÿ‰Eø‹Eô‰$èC{þÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$胫þÿÃb è—þÿ‰Â‹E‹@‰T$‰$èK‘þÿ‰$裛þÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$èþÿ‹EôƒÄ$[]ÃU‰åSƒì$è«þÿÃüè¹–þÿ‰Â‹E‹@‰T$‰$èåþÿ‰$èm{þÿ‰Eôƒ}ôt!‹Eô‰$è9‰þÿ‰Eø‹Eô‰$è[zþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$蛪þÿÃzè7–þÿ‰Â‹E‹@‰T$‰$ècþÿ‰$èëƒþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$è1~þÿ‹EôƒÄ$[]ÃU‰åSƒì$è5ªþÿÃèÑ•þÿ‰Â‹E‹@‰T$‰$èýþÿ‰$èe„þÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$èË}þÿ‹EôƒÄ$[]ÃU‰åSƒì$èÏ©þÿîèk•þÿ‰Â‹E‹@‰T$‰$è—þÿ‰$è¿…þÿ‰Eø‹Eø‰$è¡~þÿƒÄ$[]ÃU‰åSƒì$舩þÿÃgè$•þÿ‰Â‹E‹@‰T$‰$èPþÿ‰$è8†þÿ‰Eø‹Eø‰$èZ~þÿƒÄ$[]ÃU‰åWVSƒìLè?©þÿÃÇEèÇEäÇEàè¯þÿ‰Eì‹EìƒÀ‹UìƒÂ‰D$Eä‰D$Eè‰D$‰T$ƒ¼.‰D$ ƒx¾ÿÿ‰D$‹E‰D$‹E ‰$èû–þÿ…À„‹Eì‰$èà¯þÿ…À„ÿ‹Eè…Àt/‹ƒàÿÿÿ‹‹@,‰EÈuà‹}èèà€þÿ‰t$‰|$‰$ÿUÈ…À…É‹EäU܉T$‰$èx¨þÿ…À„¯‹Eì‰$誯þÿÇEð‹ƒàÿÿÿ‹‹€¨…Àtè‡þÿ‰Eð³å”ýÿ‹}Ü‹Eà‰EÌèГþÿ‰Â‹E‹@‰T$‰$èüþÿ‰Â‹Eì‰D$‰t$ ‰|$‹ẺD$‰$èÜ•þÿ‹ƒàÿÿÿ‹‹€¨…Àt ‹Eð‰$蟄þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eì‰$èf°þÿÇEЋEЃÄL[^_]ÃU‰åVSƒì0è§þÿÃoÇEìEð‰D$ƒœ%‰D$ƒÐ.‰D$ ƒ¾ÿÿ‰D$‹E‰D$‹E ‰$ès•þÿ…Àu ÇEäëzèAwþÿ‰Â‹Eð‹@‰T$‰$è þÿ‰ÆèÆ’þÿ‰Â‹E‹@‰T$‰$èòŒþÿ‰ÂEì‰D$‰t$‰$èýƒþÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$èÏ{þÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLè­¦þÿÃŒÇEèÇEäÇEà脬þÿ‰Eì‹EìƒÀ‹UìƒÂ‰D$Eà‰D$Eè‰D$‰T$ƒØ.‰D$ ƒ¬¾ÿÿ‰D$‹E‰D$‹E ‰$èi”þÿ…À„‹Eì‰$èN­þÿ…À„ÿ‹Eè…Àt/‹ƒàÿÿÿ‹‹@,‰EÈuä‹}èèN~þÿ‰t$‰|$‰$ÿUÈ…À…É‹EàU܉T$‰$èæ¥þÿ…À„¯‹Eì‰$è­þÿÇEð‹ƒàÿÿÿ‹‹€¨…Àtèu„þÿ‰Eð³å”ýÿ‹}Ü‹Eä‰EÌè>‘þÿ‰Â‹E‹@‰T$‰$èj‹þÿ‰Â‹Eì‰D$‰t$ ‰|$‹ẺD$‰$芀þÿ‹ƒàÿÿÿ‹‹€¨…Àt ‹Eð‰$è ‚þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eì‰$èÔ­þÿÇEЋEЃÄL[^_]ÃU‰åVSƒì0èþ¤þÿÃÝÇEìEð‰D$ƒœ%‰D$ƒì.‰D$ ƒÂ¾ÿÿ‰D$‹E‰D$‹E ‰$èá’þÿ…Àu ÇEäëzè¯tþÿ‰Â‹Eð‹@‰T$‰$è{Šþÿ‰Æè4þÿ‰Â‹E‹@‰T$‰$è`Šþÿ‰ÂEì‰D$‰t$‰$èKþÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$è=yþÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì\è¤þÿÃúÇEäÇEà‹ƒÜÿÿÿ‰EÜÇEìÇEØèâ©þÿ‰Eè‹EèƒÀ‹UèƒÂ‰D$ E؉D$E܉D$Eä‰D$‰T$ƒô.‰D$ ƒÜ¾ÿÿ‰D$‹E‰D$‹E ‰$èÀ‘þÿ…À„‹Eè‰$襪þÿ…À„z‹EÜ‹“Üÿÿÿ9Ðtg‹EÜ‹Pƒ|9Ât;‹EÜ‹Pƒ|‰D$‰$è@„þÿ…Àu‹ƒ¸ÿÿÿ‹ƒø¾ÿÿ‰D$‰$èRþÿé"èhþÿ‰Â‹EÜ‹@‰T$‰$èôˆþÿ‰Eì‹Eä…Àt/‹ƒàÿÿÿ‹‹@,‰EÈuà‹}äè1{þÿ‰t$‰|$‰$ÿUÈ…À…ЋEØUÔ‰T$‰$èÉ¢þÿ…À„¶‹Eè‰$èû©þÿÇEð‹ƒàÿÿÿ‹‹€¨…ÀtèXþÿ‰Eð³å”ýÿ‹}Ô‹Eà‰EÌè!Žþÿ‰Â‹E‹@‰T$‰$èMˆþÿ‰Â‹Eè‰D$‰t$‰|$ ‹Eì‰D$‹ẺD$‰$è&’þÿ‹ƒàÿÿÿ‹‹€¨…Àt ‹Eð‰$èé~þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eè‰$è°ªþÿÇEЋEЃÄ\[^_]ÃU‰åVSƒì0èÚ¡þÿùÇEìEð‰D$ƒœ%‰D$ƒ /‰D$ ƒ-¿ÿÿ‰D$‹E‰D$‹E ‰$è½þÿ…Àu ÇEäëzè‹qþÿ‰Â‹Eð‹@‰T$‰$èW‡þÿ‰Æèþÿ‰Â‹E‹@‰T$‰$è<‡þÿ‰ÂEì‰D$‰t$‰$èg†þÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$èvþÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì<è÷ þÿÃÖÇEìèܦþÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eì‰D$Eä‰D$‰T$ƒ/‰D$ ƒX¿ÿÿ‰D$‹E‰D$‹E ‰$èÁŽþÿ…À„š‹Eð‰$覧þÿ…À„‡‹EìUè‰T$‰$èt þÿ…Àtq‹Eð‰$誧þÿ³å”ýÿ‹}è‹Eä‰EÜèñ‹þÿ‰Â‹E‹@‰T$‰$è†þÿ‰Â‹Eð‰D$‰t$ ‰|$‹E܉D$‰$è]þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eàë‹Eð‰$褨þÿÇEà‹EàƒÄ<[^_]ÃU‰åVSƒì0èΟþÿíÇEèEì‰D$ƒœ%‰D$ƒ(/‰D$ ƒx¿ÿÿ‰D$‹E‰D$‹E ‰$è±þÿ…Àu ÇEäé²è|oþÿ‰Â‹Eì‹@‰T$‰$èH…þÿ‰Æè‹þÿ‰Â‹E‹@‰T$‰$è-…þÿ‰ÂEè‰D$‰t$‰$舋þÿ‰Eð‹ƒàÿÿÿ‹‹PdEè‰$ÿÒ…Àt ÇEäëFƒ}ðt$‹Eð‹…Àt‹Eð‰$è0¢þÿ‰Eô‹Eð‰$èí‹þÿ닃Üÿÿÿ‰Eô‹Eô‹P‹Eô‰‹Eô‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒì<è°žþÿÃÇEäÇEÜEä‰D$Eè‰D$ƒ0/‰D$ ƒœ¿ÿÿ‰D$‹E‰D$‹E ‰$èŒþÿ…Àu ÇEÐéËEäUà‰T$‰$èMžþÿ…Àu ÇEÐé¡‹uà‹}èèÒ‰þÿ‰Â‹E‹@‰T$‰$èþƒþÿ‰ÂE܉D$ ‰t$‰|$‰$è%…þÿ‰E싃àÿÿÿ‹‹PdE܉$ÿÒ…Àt ÇEÐëFƒ}ìt$‹Eì‹…Àt‹Eì‰$èý þÿ‰Eð‹Eì‰$躊þÿ닃Üÿÿÿ‰Eð‹Eð‹P‹Eð‰‹Eð‰EЋEЃÄ<[^_]ÃU‰åSƒì$è~þÿÃ]è‰þÿ‰Â‹E‹@‰T$‰$èFƒþÿ‰$è~ˆþÿ‰Eø‹Eø‰$èPrþÿƒÄ$[]ÃU‰åSƒìè7þÿÃèÓˆþÿ‰Â‹E‹@‰T$‰$èÿ‚þÿ‰$èyþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åSƒìèåœþÿÃÄèˆþÿ‰Â‹E‹@‰T$‰$è­‚þÿ‰$èõwþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿƒÄ[]ÃU‰åSƒì$蓜þÿÃrè/ˆþÿ‰Â‹E‹@‰T$‰$è[‚þÿ‰$èãxþÿ‰Eìè ˆþÿ‰Â‹E‹@‰T$‰$è7‚þÿ‰$è¿lþÿ‰Eðƒ}ìtiƒ}ðt5‹E‹@‹P ‹Eð‰D$‹Eì‰D$ ‹E‰D$‰T$ƒüÃÿÿ‰$è`wþÿ‰EôëS‹E‹@‹P ‹Eì‰D$ ‹E‰D$‰T$ƒGhÿÿ‰$è2wþÿ‰Eôë%‹E‹@‹P ‹E‰D$‰T$ƒÛqÿÿ‰$è wþÿ‰Eô‹Eì‰$è-kþÿ‹Eð‰$è"kþÿ‹Eô‰$èçyþÿ‰Eø‹Eô‰$è kþÿ‹EøƒÄ$[]ÃU‰åSƒì$èm›þÿÃLè9wþÿ‰Â‹E‹@‰T$‰$è5þÿ‰$èM‚þÿ‰Eð‰Uô‹Eð‹Uô‰$‰T$è5„þÿƒÄ$[]ÃU‰åSƒì$è›þÿÃûèèvþÿ‰Â‹E‹@‰T$‰$èä€þÿ‰$èl‹þÿ‰Eø‹Eø‰$èîoþÿƒÄ$[]ÃU‰åWVSƒìLèÓšþÿòÇEäÇEàÇEìÇEÔEà‰D$Eä‰D$E؉D$ƒü/‰D$ ƒ!Äÿÿ‰D$‹E‰D$‹E ‰$èˆþÿ…Àu ÇEÈé‹Eà‰Â‹ƒÜÿÿÿ9Âu ÇEìë{‹Eà…ÀtJ‹Eà‹Pƒ\ 9Ât‹Eà‹Pƒ\ ‰D$‰$è{þÿ…Àtè-‹þÿ‰Â‹Eà‹@‰T$‰$èéþÿ‰Eìë*‹Eà…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è†þÿÇEÈë}‹Eä‰EÌ‹uØ‹}Üè™uþÿ‰Â‹E‹@‰T$‰$è•þÿ‰ÂEÔ‰D$‹Eì‰D$‹ẺD$ ‰t$‰|$‰$è~yþÿ‰E苃àÿÿÿ‹‹PdEÔ‰$ÿÒ…Àt ÇEÈë‹Eè‰$è`nþÿ‰EÈ‹EȃÄL[^_]ÃU‰åSƒì$è?™þÿÃè uþÿ‰Â‹E‹@‰T$‰$èþÿ‰$è/kþÿ‰Eø‹Eø‰$ènþÿƒÄ$[]ÃU‰åWVSƒìLèö˜þÿÃÕ ÇEäÇEìÇEÔEä‰D$E؉D$ƒ 0‰D$ ƒ8Äÿÿ‰D$‹E‰D$‹E ‰$èΆþÿ…Àu ÇEÌé‹Eä‰Â‹ƒÜÿÿÿ9Âu ÇEìë{‹Eä…ÀtJ‹Eä‹Pƒ\ 9Ât‹Eä‹Pƒ\ ‰D$‰$èGyþÿ…Àtè^‰þÿ‰Â‹Eä‹@‰T$‰$è~þÿ‰Eìë*‹Eä…Àt#‹ƒ¸ÿÿÿ‹ƒÄ9ÿÿ‰D$‰$è4„þÿÇEÌëp‹uØ‹}ÜèÐsþÿ‰Â‹E‹@‰T$‰$èÌ}þÿ‰ÂEÔ‰D$‹Eì‰D$ ‰t$‰|$‰$è|tþÿ‰E苃àÿÿÿ‹‹PdEÔ‰$ÿÒ…Àt ÇEÌë‹Eè‰$èžlþÿ‰EÌ‹ẼÄL[^_]ÃU‰åSƒì$è}—þÿÃ\ è tþÿ‰Â‹E‹@‰T$‰$èE}þÿ‰$èlþÿ‰Eôƒ}ôt!‹Eô‰$è™uþÿ‰Eø‹Eô‰$è»fþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èû–þÿÃÚ è‡sþÿ‰Â‹E‹@‰T$‰$èÃ|þÿ‰$è+xþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$è‘jþÿ‹EôƒÄ$[]ÃU‰åSƒì$è•–þÿÃt è!sþÿ‰Â‹E‹@‰T$‰$è]|þÿ‰$è5nþÿ‰Eôƒ}ôt!‹Eô‰$è±tþÿ‰Eø‹Eô‰$èÓeþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è–þÿÃò èŸrþÿ‰Â‹E‹@‰T$‰$èÛ{þÿ‰$èÃsþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$è©iþÿ‹EôƒÄ$[]ÃU‰åSƒì$è­•þÿÃŒ è9rþÿ‰Â‹E‹@‰T$‰$èu{þÿ‰$è-mþÿ‰Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eøƒ}ôt ‹Eô‰$èCiþÿ‹EøƒÄ$[]ÃU‰åSƒì$èG•þÿÃ& èÓqþÿ‰Â‹E‹@‰T$‰$è{þÿ‰$èÇþÿ‰Eø‹Eø‰$èjþÿƒÄ$[]ÃU‰åSƒì$è•þÿÃß èŒqþÿ‰Â‹E‹@‰T$‰$èÈzþÿ‰$è~þÿ‰Eø‹Eø‰$èÒiþÿƒÄ$[]ÃU‰åSƒì$è¹”þÿØ èEqþÿ‰Â‹E‹@‰T$‰$èzþÿ‰$蹄þÿ‰Eø‹Eø‰$è‹iþÿƒÄ$[]ÃU‰åWVSƒì\èp”þÿÃO ÇEèÇEäÇEðÇEàÇEÜè9šþÿ‰Eì‹EìƒÀ‹UìƒÂ‰D$ Eà‰D$Eè‰D$‰T$Eä‰D$ƒÜ0‰D$ ƒˆÄÿÿ‰D$‹E‰D$‹E ‰$è‚þÿ…À„m‹Eä‰Â‹ƒÜÿÿÿ9Âu ÇEðë~‹Eä…ÀtJ‹Eä‹Pƒ|9Ât‹Eä‹Pƒ|‰D$‰$è˜tþÿ…Àtè߀þÿ‰Â‹Eä‹@‰T$‰$èkyþÿ‰Eðë-‹Eä…Àt&‹ƒ¸ÿÿÿ‹ƒœÄÿÿ‰D$‰$è…þÿÇEÈéé‹Eì‰$èfšþÿ…À„Ä‹Eè…Àt/‹ƒàÿÿÿ‹‹@,‰EÌuÜ‹}èèÖqþÿ‰t$‰|$‰$ÿUÌ…À…Ž‹EàU؉T$‰$èþ’þÿ…Àtx‹Eì‰$è4šþÿ³å”ýÿ‹}Ø‹E܉EÐèkoþÿ‰Â‹E‹@‰T$‰$è§xþÿ‰Â‹Eì‰D$‰t$‰|$ ‹Eð‰D$‹EЉD$‰$èà{þÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÈë‹Eì‰$è'›þÿÇEÈ‹EȃÄ\[^_]ÃU‰åVSƒì0èQ’þÿÃ0ÇEìEð‰D$ƒœ%‰D$ƒô0‰D$ ƒÐÄÿÿ‰D$‹E‰D$‹E ‰$è4€þÿ…Àu ÇEäëzèbþÿ‰Â‹Eð‹@‰T$‰$èÎwþÿ‰Æèwnþÿ‰Â‹E‹@‰T$‰$è³wþÿ‰ÂEì‰D$‰t$‰$ènþÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$èfþÿ‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLèn‘þÿÃMÇEìÇEèÇEäèE—þÿ‰Eð‹EðƒÀ‹UðƒÂ‰D$Eè‰D$Eì‰D$‰T$ƒü0‰D$ ƒëÄÿÿ‰D$‹E‰D$‹E ‰$è*þÿ…À„ЋEð‰$è˜þÿ…À„½‹Eì…Àt/‹ƒàÿÿÿ‹‹@,‰EÈuä‹}ìèiþÿ‰t$‰|$‰$ÿUÈ…À…‡‹EèUà‰T$‰$è§þÿ…Àtq‹Eð‰$èÝ—þÿ³å”ýÿ‹}à‹Eä‰EÌèmþÿ‰Â‹E‹@‰T$‰$èPvþÿ‰Â‹Eð‰D$‰t$ ‰|$‹ẺD$‰$èjþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰EÐë‹Eð‰$èטþÿÇEЋEЃÄL[^_]ÃU‰åVSƒì0èþÿÃàÇEìEð‰D$ƒœ%‰D$ƒ1‰D$ ƒþÄÿÿ‰D$‹E‰D$‹E ‰$èä}þÿ…Àu ÇEäëzè²_þÿ‰Â‹Eð‹@‰T$‰$è~uþÿ‰Æè'lþÿ‰Â‹E‹@‰T$‰$ècuþÿ‰ÂEì‰D$‰t$‰$è>xþÿ‰Eô‹ƒàÿÿÿ‹‹PdEì‰$ÿÒ…Àt ÇEäë‹Eô‰$è@dþÿ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0èþÿÃþEì‰D$ƒ1‰D$ ƒÅÿÿ‰D$‹E‰D$‹E ‰$è}þÿ…Àu ÇEäën‹uìènkþÿ‰Â‹E‹@‰T$‰$èªtþÿ‰t$‰$èž^þÿ‰Eðƒ}ðt!‹Eð‰$èúlþÿ‰Eô‹Eð‰$è^þÿ‹Eô‰Eä닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì$è[ŽþÿÃ:ÇEø‹ƒàÿÿÿ‹‹€¨…Àtèþlþÿ‰EøèÆjþÿ‰Â‹E‹@‰T$‰$ètþÿ‰$èJwþÿ‰Eð‹ƒàÿÿÿ‹‹€¨…Àt ‹Eø‰$èºjþÿƒ}ðt$‹Eð‹…Àt‹Eð‰$è‘þÿ‰Eô‹Eð‰$èÒzþÿ닃Üÿÿÿ‰Eô‹Eô‹P‹Eô‰‹EôƒÄ$[]ÃU‰åSƒì$èžþÿÃ}è*jþÿ‰Â‹E‹@‰T$‰$èfsþÿ‰$è®fþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒì$èOþÿÃ.èÛiþÿ‰Â‹E‹@‰T$‰$èsþÿ‰$èïaþÿ‰Eðƒ}ðt9‹E‹@‹P ‹Eð‰D$ ‹E‰D$‰T$ƒGhÿÿ‰$èMhþÿ‰Eô‹Eð‰$èo\þÿë%‹E‹@‹P ‹E‰D$‰T$ƒÛqÿÿ‰$èhþÿ‰Eô‹Eô‰$è kþÿ‰Eø‹Eô‰$è/\þÿ‹EøƒÄ$[]ÃU‰åSƒì4蓌þÿÃrèoxþÿ‰EèÇ$èð{þÿ‰Eð‹Eè‰Eìë`‹E싉Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eø‹Eø‰D$‹Eð‰$è5sþÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eì‹@‰Eìƒ}ìuš‹Eè‰$èdbþÿ‹EðƒÄ4[]ÃU‰åSƒì4èè‹þÿÃÇEä‰D$ƒŒÅÿÿ‰D$‹E ‰$è½`þÿ…Àu ÇEØéœ‹Eä‰$èbzþÿ‰EèÇ$è{þÿ‰Eð‹Eè‰Eìë`‹E싉Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eø‹Eø‰D$‹Eð‰$èXrþÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eì‹@‰Eìƒ}ìuš‹Eè‰$è‡aþÿ‹Eð‰EØ‹E؃Ä4[]ÃU‰åSƒì4è‹þÿÃäÿEð‰D$Eô‰D$ƒü1‰D$ ƒ¼Åÿÿ‰D$‹E‰D$‹E ‰$èòxþÿ…Àu ÇEèë+‹Eð‹Uô‰D$‰$èãvþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4è~ŠþÿÃ]ÿEô‰D$ƒ2‰D$ ƒàÅÿÿ‰D$‹E‰D$‹E ‰$èrxþÿ…Àu ÇEèë$‹Eô‰$èŠmþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èŠþÿÃäþEø‰D$ƒ2‰D$ ƒÆÿÿ‰D$‹E‰D$‹E ‰$èùwþÿ…Àu ÇEèë'‹Eø‰$è‘lþÿ‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åVSƒì0舉þÿÃgþEì‰D$Eð‰D$ƒ\‰D$ƒ2‰D$ ƒ,Æÿÿ‰D$‹E‰D$‹E ‰$èkwþÿ…Àu ÇEäëA‹uìè&\þÿ‰Â‹Eð‹@‰T$‰$èoþÿ‰t$‰$è†_þÿ‰Eô‹ƒàÿÿÿ‹‹P‹Eô‰$ÿÒ‰Eä‹EäƒÄ0[^]ÃU‰åSƒì4èàˆþÿÿýÇEìÇEôEì‰D$Eð‰D$ƒü‰D$ƒ$2‰D$ ƒPÆÿÿ‰D$‹E‰D$‹E ‰$èµvþÿ…Àu ÇEèéò‹Eì…À„¤‹Eì‹P‹ƒÔÿÿÿ9Ât‹Eì‹P‹ƒÔÿÿÿ‰D$‰$èBiþÿ…Àt‹Eì‰$è“yþÿ‰EôëV‹Eì‹P‹ƒ¼ÿÿÿ9Ât‹Eì‹P‹ƒ¼ÿÿÿ‰D$‰$èiþÿ…Àt‹Eì‰$èghþÿ‰Eô닃¸ÿÿÿ‹ƒxÆÿÿ‰D$‰$ètþÿècbþÿ…Àt ÇEèëCèÁrþÿ‰Â‹Eð‹@‰T$‰$èmþÿ‰Â‹Eô‰D$‰$èlXþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèw‡þÿÃVüè#Zþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ[]ÃU‰åSƒì4èD‡þÿÃ#üEð‰D$Eô‰D$ƒ02‰D$ ƒ®Æÿÿ‰D$‹E‰D$‹E ‰$è1uþÿ…Àu ÇEèë#‹Eð‹Uô‰D$‰$èbiþÿ‰Eø‹Eø‰$èä[þÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èņþÿäûEð‰D$Eô‰D$ƒ<2‰D$ ƒÏÆÿÿ‰D$‹E‰D$‹E ‰$è²tþÿ…Àu ÇEèë#‹Eð‹Uô‰D$‰$è³dþÿ‰Eø‹Eø‰$èe[þÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èF†þÿÃ%ûEô‰D$ƒH2‰D$ ƒäÆÿÿ‰D$‹E‰D$‹E ‰$è:tþÿ…Àu ÇEèë‹Eô‰$èò[þÿ‰Eø‹Eø‰$èôZþÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èÕ…þÿôúEð‰D$ƒP2‰D$ ƒÇÿÿ‰D$‹E‰D$‹E ‰$èÉsþÿ…Àu ÇEèëQ‹Eð‰$èrþÿ‰Eôƒ}ôt!‹Eô‰$èÍcþÿ‰Eø‹Eô‰$èïTþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4è/…þÿÃúEð‰D$ƒX2‰D$ ƒÇÿÿ‰D$‹E‰D$‹E ‰$è#sþÿ…Àu ÇEèëQ‹Eð‰$ègþÿ‰Eôƒ}ôt!‹Eô‰$è'cþÿ‰Eø‹Eô‰$èITþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4艄þÿÃhùEð‰D$ƒ`2‰D$ ƒ<Çÿÿ‰D$‹E‰D$‹E ‰$è}rþÿ…Àu ÇEèë;‹Eð‰$èlþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$èûWþÿ‹Eô‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èùƒþÿÃØøEô‰D$ƒh2‰D$ ƒTÇÿÿ‰D$‹E‰D$‹E ‰$èíqþÿ…Àu ÇEèë‹Eô‰$èÕUþÿ‰Eø‹Eø‰$è§Xþÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4舃þÿÃgøEð‰D$ƒp2‰D$ ƒÇÿÿ‰D$‹E‰D$‹E ‰$è|qþÿ…Àu ÇEèëQ‹Eð‰$èÔsþÿ‰Eôƒ}ôt!‹Eô‰$è€aþÿ‰Eø‹Eô‰$è¢Rþÿ‹Eø‰Eè닃Üÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åVSƒì`èá‚þÿÃÀ÷ƒÇÿÿ‰EàƒÒWÿÿ‰E䃦Çÿÿ‰EèÇEìÇEÜÇEØÇEÔÇEÌẺD$EÔ‰D$E؉D$E܉D$Eà‰D$ ƒµÇÿÿ‰D$‹E‰D$‹E ‰$è…pþÿ…Àu ÇEÄé§‹EÜ…Àu*‹EØ…Àu#‹ƒ¸ÿÿÿ‹ƒÐÇÿÿ‰D$‰$èMnþÿÇEÄëv‹EԉƋE؉‹MÜEЉD$ ‰t$‰T$‰ $èðYþÿ‰Eð‹EÌ…Àt)‹EЉ$èëVþÿ‰D$‹Eð‰D$ƒëÇÿÿ‰$è²rþÿ‰Eôë‹Eð‰$è`þÿ‰Eô‹Eð‰$è4Qþÿ‹Eô‰EÄ‹EăÄ`[^]ÃU‰åSƒì4è‘þÿÃpöèMpþÿ‰EèÇ$èîpþÿ‰Eð‹Eè‰Eìëc‹E싉Eô‹Eô‰$è°_þÿ‰Eø‹Eø‰D$‹Eð‰$è;hþÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eô‰$è™Pþÿ‹Eì‹@‰Eìƒ}ìu—‹Eè‰$è_Wþÿ‹EðƒÄ4[]ÃU‰åWVSƒì<èá€þÿÃÀõÇEèEè‰D$Eì‰D$ƒü,‰D$ƒx2‰D$ ƒîÇÿÿ‰D$‹E‰D$‹E ‰$è½nþÿ…Àu ÇEÜëu‹ƒàÿÿÿ‹‹@(‰Eàuä‹}èèçRþÿ‰t$‰|$‰$ÿUà…Àt ÇEÜëA‹uäèÄqþÿ‰Â‹Eì‹@‰T$‰$è fþÿ‰t$‰$è¤Wþÿ‰Eð‹ƒàÿÿÿ‹‹P‹Eð‰$ÿÒ‰EÜ‹E܃Ä<[^_]ÃU‰åSƒì4èýþÿÃÜôEð‰D$ƒ„2‰D$ ƒ Èÿÿ‰D$‹E‰D$‹E ‰$èñmþÿ…Àu ÇEèë;‹Eð‰$è‰^þÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eôƒ}øt ‹Eø‰$èoSþÿ‹Eô‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èmþÿÃLôÇEðEô‰D$ƒŒ2‰D$ ƒÈÿÿ‰D$‹E‰D$‹E ‰$èZmþÿ…Àu ÇEèëK‹UôEð‰D$‰$è;eþÿ‰Eø‹ƒàÿÿÿ‹‹PdEð‰$ÿÒ…Àt ÇEè닃àÿÿÿ‹‹P‹Eø‰$ÿÒ‰Eè‹EèƒÄ4[]ÃU‰åVSƒì0èÅ~þÿäóEð‰D$ƒ”2‰D$ ƒ8Èÿÿ‰D$‹E‰D$‹E ‰$è¹lþÿ…Àu ÇEäë2‹Eð‰$èdþÿ‰Eô‹ƒàÿÿÿ‹‹°˜è Uþÿ‰Â‹Eô‰D$‰$ÿÖ‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì0è<~þÿÃóÇEìEè‰D$ƒœ2‰D$ ƒPÈÿÿ‰D$‹E‰D$‹E ‰$è)lþÿ…Àu ÇEäéÒ‹Eè‹“Üÿÿÿ9Є«‹Eè‹P‹ƒèÿÿÿ9Ât?‹Eè‹P‹ƒèÿÿÿ‰D$‰$è°^þÿ…Àu#‹ƒ¸ÿÿÿ‹ƒùWÿÿ‰D$‰$èÂiþÿÇEäër‹Eè‰$èîVþÿ‰Eô‹Eô‰$è`Uþÿ‰Eð‹uô‹Eè‰$èŸMþÿ‰t$‰D$‹Eð‰$èì[þÿ‹ƒ˜ÿÿÿ‰D$‹Eô‰D$‹Eð‰$è€Xþÿ‰E싃àÿÿÿ‹‹P‹Eì‰$ÿÒ‰Eä‹EäƒÄ0[^]ÃU‰åSƒìè }þÿÃéñèÖ`þÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ[]ÃU‰åSƒìè×|þÿöñèsWþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ[]ÃU‰åSƒìè¤|þÿÃñè`Wþÿ‰Eø‹ƒàÿÿÿ‹‹P‹Eø‰$ÿÒƒÄ[]ÃU‰åSƒì4èq|þÿÃPñEô‰D$ƒÉÿÿ‰D$‹E ‰$èmNþÿ…Àu ÇEèë/‹Uø‹ƒÀ‰‹Eø‰ƒ ,‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è%yþÿÃîEø‰D$ƒ>Éÿÿ‰D$‹E ‰$èúMþÿ…Àu ÇEèë/‹Uø‹ƒÀ‰‹Eø‰ƒà$‹ƒÜÿÿÿ‹P‹ƒÜÿÿÿ‰‹ƒÜÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åWVSƒìLè°xþÿÃíÇEèÇEäÇEàÇEÜEä‰D$Eè‰D$Eì‰D$ƒ¬2‰D$ ƒ]Éÿÿ‰D$‹E‰D$‹E ‰$èzfþÿ…Àu ÇEÌ锋Eä…Àt4‹ƒàÿÿÿ‹‹@,‰EÐuÜ‹}äèºeþÿ‰t$‰|$‰$ÿUÐ…Àt ÇEÌëY‹UÜ‹Mè‹uìEà‰D$ ‰T$‰L$‰4$è\þÿ‰Eð‹ƒàÿÿÿ‹‹PdEà‰$ÿÒ…Àt ÇEÌ닃àÿÿÿ‹‹P‹Eð‰$ÿÒ‰EÌ‹ẼÄL[^_]ÃU‰åVSƒìè—wþÿÃv싃àÿÿÿ‹‹° èeþÿ‰D$ ‹E ‰D$ƒ®Íÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”èÅTþÿ‰D$ ‹E ‰D$ƒÁÍÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”èÕRþÿ‰D$ ‹E ‰D$ƒÕÍÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”èEYþÿ‰D$ ‹E ‰D$ƒëÍÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹° èERþÿ‰D$ ‹E ‰D$ƒýÍÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”è_þÿ‰D$ ‹E ‰D$ƒÎÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹° èõ[þÿ‰D$ ‹E ‰D$ƒ(Îÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹° èõ_þÿ‰D$ ‹E ‰D$ƒ;Îÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹° èENþÿ‰D$ ‹E ‰D$ƒKÎÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹° è%Jþÿ‰D$ ‹E ‰D$ƒ]Îÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹° èUEþÿ‰D$ ‹E ‰D$ƒkÎÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”è5Eþÿ‰D$ ‹E ‰D$ƒ|Îÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”è¥Vþÿ‰D$ ‹E ‰D$ƒ…Îÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”èµKþÿ‰D$ ‹E ‰D$ƒ–Îÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹° è…Eþÿ‰D$ ‹E ‰D$ƒ Îÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”èÕaþÿ‰D$ ‹E ‰D$ƒ±Îÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”èe\þÿ‰D$ ‹E ‰D$ƒ¾Îÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹° è%^þÿ‰D$ ‹E ‰D$ƒÓÎÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹°”è•Fþÿ‰D$ ‹E ‰D$ƒëÎÿÿ‰D$‹E‰$ÿÖèƒNþÿ…Àtè \þÿƒÄ[^]ÃU‰åWVSƒì,èÞsþÿýèƒÏÿÿ‰$è!^þÿ‰Eðƒ}ðtXƒÏÿÿ‰D$‹Eð‰$èSXþÿ‰ƒì2‹ƒì2…Àu‹ƒœÿÿÿ‹ƒ Ïÿÿ‰D$‰$è©_þÿéü ‹ƒÀÿÿÿ‰$è¦Eþÿ…Àx!ë^‹ƒœÿÿÿ‹ƒHÏÿÿ‰D$‰$èv_þÿéÉ ƒøÎÿÿ‰D$ÇD$”ƒaÏÿÿ‰D$ ƒ|Ïÿÿ‰D$ÇD$Ç$è'cþÿéŠ ‹ƒÀÿÿÿ‰D$ƒ©Ïÿÿ‰D$‹E‰$èãBþÿ…Ày?ƒøÎÿÿ‰D$ÇD$˜ƒaÏÿÿ‰D$ ƒ|Ïÿÿ‰D$ÇD$Ç$èÅbþÿé( ‹ƒàÿÿÿ‹‹pDèÈ€þÿ‰Âƒ¼ ‰D$ ‰T$ƒ»Ïÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹p<èŽKþÿ‰ÂƒÜ$‰D$ ‰T$ƒÐÏÿÿ‰D$‹E‰$ÿÖ‹ƒàÿÿÿ‹‹p<èþÿ‰Â‰t$ƒœ‰D$ ‰T$ƒaÑÿÿ‰D$‹E‰$ÿ׋ƒàÿÿÿ‹‹8‹ƒì2‰D$ƒÐÿÿ‰$èOYþÿ‰Æèø=þÿ‰Â‰t$ƒ| ‰D$ ‰T$ƒtÑÿÿ‰D$‹E‰$ÿ׋ƒàÿÿÿ‹‹°Ìè¿=þÿ‰$ÿÖ‹ƒàÿÿÿ‹‹8‹ƒì2‰D$ƒÐÿÿ‰$èèXþÿ‰ÆèÑ9þÿ‰Â‰t$ƒ\!‰D$ ‰T$ƒyÑÿÿ‰D$‹E‰$ÿ׋ƒàÿÿÿ‹‹°Ìè˜9þÿ‰$ÿÖ‹ƒàÿÿÿ‹‹8ƒ\!‰D$ƒÐÿÿ‰$èXþÿ‰Æèj?þÿ‰Â‰t$ƒ"‰D$ ‰T$ƒˆÑÿÿ‰D$‹E‰$ÿ׋ƒàÿÿÿ‹‹°Ìè1?þÿ‰$ÿÖ‹ƒàÿÿÿ‹‹8‹“ì2ƒü-‰D$ ƒü,‰D$‰T$ƒÑÿÿ‰$èXþÿ‰Æèo9þÿ‰Â‰t$ƒü"‰D$ ‰T$ƒ£Ñÿÿ‰D$‹E‰$ÿ׋ƒàÿÿÿ‹‹8‹“ì2ƒü,‰D$‰T$ƒ­Ñÿÿ‰$è­Wþÿ‰ÆèVHþÿ‰Â‰t$ƒÜ#‰D$ ‰T$ƒ²Ñÿÿ‰D$‹E‰$ÿ׋ƒàÿÿÿ‹‹°ÌèHþÿ‰$ÿÖƒÄ,[^_]ÃU‰åVSè[ÃJÛƒÈáÿÿPü‹@üƒøÿt‰Ö¶¿ÿЋFüƒîƒøÿuó[^]ÃU‰åSƒìè[ÃÛèXþÿZ[]Ãgio._gioG_IO_ERRORgio.ErrorErrorstandard::typeFILE_ATTRIBUTE_STANDARD_TYPEstandard::is-hiddenFILE_ATTRIBUTE_STANDARD_IS_HIDDENstandard::is-backupFILE_ATTRIBUTE_STANDARD_IS_BACKUPstandard::is-symlinkFILE_ATTRIBUTE_STANDARD_IS_SYMLINKstandard::is-virtualFILE_ATTRIBUTE_STANDARD_IS_VIRTUALstandard::nameFILE_ATTRIBUTE_STANDARD_NAMEstandard::display-nameFILE_ATTRIBUTE_STANDARD_DISPLAY_NAMEstandard::edit-nameFILE_ATTRIBUTE_STANDARD_EDIT_NAMEstandard::copy-nameFILE_ATTRIBUTE_STANDARD_COPY_NAMEstandard::descriptionFILE_ATTRIBUTE_STANDARD_DESCRIPTIONstandard::iconFILE_ATTRIBUTE_STANDARD_ICONstandard::content-typeFILE_ATTRIBUTE_STANDARD_CONTENT_TYPEstandard::fast-content-typeFILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPEstandard::sizeFILE_ATTRIBUTE_STANDARD_SIZEstandard::symlink-targetFILE_ATTRIBUTE_STANDARD_SYMLINK_TARGETstandard::target-uriFILE_ATTRIBUTE_STANDARD_TARGET_URIstandard::sort-orderFILE_ATTRIBUTE_STANDARD_SORT_ORDERetag::valueFILE_ATTRIBUTE_ETAG_VALUEid::fileFILE_ATTRIBUTE_ID_FILEid::filesystemFILE_ATTRIBUTE_ID_FILESYSTEMaccess::can-readFILE_ATTRIBUTE_ACCESS_CAN_READaccess::can-writeFILE_ATTRIBUTE_ACCESS_CAN_WRITEaccess::can-executeFILE_ATTRIBUTE_ACCESS_CAN_EXECUTEaccess::can-deleteFILE_ATTRIBUTE_ACCESS_CAN_DELETEaccess::can-trashFILE_ATTRIBUTE_ACCESS_CAN_TRASHaccess::can-renameFILE_ATTRIBUTE_ACCESS_CAN_RENAMEmountable::can-mountFILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNTmountable::can-unmountFILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNTmountable::can-ejectFILE_ATTRIBUTE_MOUNTABLE_CAN_EJECTmountable::unix-deviceFILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICEmountable::hal-udiFILE_ATTRIBUTE_MOUNTABLE_HAL_UDItime::modifiedFILE_ATTRIBUTE_TIME_MODIFIEDtime::modified-usecFILE_ATTRIBUTE_TIME_MODIFIED_USECtime::accessFILE_ATTRIBUTE_TIME_ACCESStime::access-usecFILE_ATTRIBUTE_TIME_ACCESS_USECtime::changedFILE_ATTRIBUTE_TIME_CHANGEDtime::changed-usecFILE_ATTRIBUTE_TIME_CHANGED_USECtime::createdFILE_ATTRIBUTE_TIME_CREATEDtime::created-usecFILE_ATTRIBUTE_TIME_CREATED_USECunix::deviceFILE_ATTRIBUTE_UNIX_DEVICEunix::inodeFILE_ATTRIBUTE_UNIX_INODEunix::modeFILE_ATTRIBUTE_UNIX_MODEunix::nlinkFILE_ATTRIBUTE_UNIX_NLINKunix::uidFILE_ATTRIBUTE_UNIX_UIDunix::gidFILE_ATTRIBUTE_UNIX_GIDunix::rdevFILE_ATTRIBUTE_UNIX_RDEVunix::block-sizeFILE_ATTRIBUTE_UNIX_BLOCK_SIZEunix::blocksFILE_ATTRIBUTE_UNIX_BLOCKSunix::is-mountpointFILE_ATTRIBUTE_UNIX_IS_MOUNTPOINTdos::is-archiveFILE_ATTRIBUTE_DOS_IS_ARCHIVEdos::is-systemFILE_ATTRIBUTE_DOS_IS_SYSTEMowner::userFILE_ATTRIBUTE_OWNER_USERowner::user-realFILE_ATTRIBUTE_OWNER_USER_REALowner::groupFILE_ATTRIBUTE_OWNER_GROUPthumbnail::pathFILE_ATTRIBUTE_THUMBNAIL_PATHthumbnail::failedFILE_ATTRIBUTE_THUMBNAILING_FAILEDfilesystem::sizeFILE_ATTRIBUTE_FILESYSTEM_SIZEfilesystem::freeFILE_ATTRIBUTE_FILESYSTEM_FREEfilesystem::typeFILE_ATTRIBUTE_FILESYSTEM_TYPEfilesystem::readonlyFILE_ATTRIBUTE_FILESYSTEM_READONLYfilesystem::use-previewFILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEWgvfs::backendFILE_ATTRIBUTE_GVFS_BACKENDselinux::contextFILE_ATTRIBUTE_SELINUX_CONTEXTtrash::item-countFILE_ATTRIBUTE_TRASH_ITEM_COUNT(iii)pygio_versiongobjectcould not import gobject (error was: %s)could not import gobject (no error given)_PyGObject_APIcould not import gobject (could not find _PyGObject_API object)pygobject_versionpygtk_versioncould not import gobject (version too old)iiicould not import gobject (version has invalid format)could not import gobject (version mismatch, %d.%d.%d is required, found %d.%d.%d)cancellable should be a gio.Cancellablelaunch_context should be a GAppLaunchContext or Nonefiles must be a list or tuple of GFilefiles must be stringsargument must be a list or tuple of stringsargument must be a list of stringspygio::notifyinternal error: callback is not set%s argument not callablecallbackfailed to allocate %d bytespygio_notify_reference_callback() hasn't been called before using the structureNNONN(KKO)(KK)nametypeflagsgio.FileAttributeInfoHolds information about an attributeGFileAttributeMatcherattributess:gio.FileAttributeMatcher.__init__could not create GFileAttributeMatcher objectattributes:gio.FileAttributeMatcher.matchess:gio.FileAttributeMatcher.matches_onlynss:gio.FileAttributeMatcher.enumerate_namespacematchesmatches_onlyenumerate_namespaceenumerate_nextgio.FileAttributeMatcher:gio.AppLaunchContext.__init__could not create gio.AppLaunchContext objectinfofilesO!O:gio.AppLaunchContext.get_displayargument must be a list or tuple of GFile objectsO!O:gio.AppLaunchContext.get_startup_notify_idstartup_notify_ids:gio.AppLaunchContext.launch_failedget_displayget_startup_notify_idlaunch_failedgio.AppLaunchContext:gio.Cancellable.__init__could not create gio.Cancellable objectis_cancelledset_error_if_cancelledget_fdpush_currentpop_currentresetcancelgio.CancellableiconoriginO|O:gio.Emblem.__init__could not create gio.Emblem objectget_iconget_origingio.EmblememblemO!O!:gio.EmblemedIcon.__init__could not create GEmblemedIcon objectO!:gio.EmblemedIcon.add_emblemadd_emblemgio.EmblemedIconcancellable|O:gio.FileEnumerator.next_filecancellable should be a GCancellable or None|O:gio.FileEnumerator.closenum_filesio_priorityuser_dataiO|iOO:gio.FileEnumerator.enumerate_next_files_asyncresultO!:gio.FileEnumerator.next_files_finishO|iOO:gio.FileEnumerator.close_asyncO!:gio.FileEnumerator.close_finishpendingi:gio.FileEnumerator.set_pendingnext_fileclosenext_files_asyncFE.next_files_async(num_files, callback, [io_priority, cancellable, user_data]) Request information for a number of files from the enumerator asynchronously. When all i/o for the operation is finished the callback will be called with the requested information. The callback can be called with less than num_files files in case of error or at the end of the enumerator. In case of a partial error the callback will be called with any succeeding items and no error, and on the next request the error will be reported. If a request is cancelled the callback will be called with gio.ERROR_CANCELLED. During an async request no other sync and async calls are allowed, and will result in gio.ERROR_PENDING errors. Any outstanding i/o request with higher priority (lower numerical value) will be executed before an outstanding request with lower priority. Default priority is gobject.PRIORITY_DEFAULT.next_files_finishFE.next_files_finish(result) -> a list of gio.FileInfos Finishes the asynchronous operation started with gio.FileEnumerator.next_files_async().close_asyncclose_finishis_closedhas_pendingset_pendingget_containergio.FileEnumerator:gio.FileInfo.__init__could not create gio.FileInfo objectdest_infoO!:gio.FileInfo.copy_intos:gio.FileInfo.has_attributename_space|z:gio.FileInfo.list_attributess:gio.FileInfo.get_attribute_types:gio.FileInfo.remove_attributes:gio.FileInfo.get_attribute_statuss:gio.FileInfo.get_attribute_as_strings:gio.FileInfo.get_attribute_strings:gio.FileInfo.get_attribute_byte_strings:gio.FileInfo.get_attribute_booleans:gio.FileInfo.get_attribute_uint32s:gio.FileInfo.get_attribute_int32s:gio.FileInfo.get_attribute_uint64s:gio.FileInfo.get_attribute_int64s:gio.FileInfo.get_attribute_objectattr_valuess:gio.FileInfo.set_attribute_stringss:gio.FileInfo.set_attribute_byte_stringsi:gio.FileInfo.set_attribute_booleansk:gio.FileInfo.set_attribute_uint32si:gio.FileInfo.set_attribute_int32sO!:gio.FileInfo.set_attribute_uint64sL:gio.FileInfo.set_attribute_int64sO!:gio.FileInfo.set_attribute_objectmaskO:gio.FileInfo.set_attribute_maskmask should be a GFileAttributeMatcherO:gio.FileInfo.set_file_typeis_hiddeni:gio.FileInfo.set_is_hiddenis_symlinki:gio.FileInfo.set_is_symlinks:gio.FileInfo.set_namedisplay_names:gio.FileInfo.set_display_nameedit_names:gio.FileInfo.set_edit_nameO!:gio.FileInfo.set_iconcontent_types:gio.FileInfo.set_content_typesizeL:gio.FileInfo.set_sizesymlink_targets:gio.FileInfo.set_symlink_targetsort_orderi:gio.FileInfo.set_sort_orderdupcopy_intohas_attributelist_attributesINFO.list_attributes(name_space) -> Attribute list Lists the file info structure's attributes.get_attribute_typeremove_attributeget_attribute_statusget_attribute_as_stringget_attribute_stringget_attribute_byte_stringget_attribute_booleanget_attribute_uint32get_attribute_int32get_attribute_uint64get_attribute_int64get_attribute_objectset_attribute_stringset_attribute_byte_stringset_attribute_booleanset_attribute_uint32set_attribute_int32set_attribute_uint64set_attribute_int64set_attribute_objectclear_statusget_file_typeget_is_hiddenget_is_backupget_is_symlinkget_nameget_display_nameget_edit_nameget_content_typeget_sizeget_modification_timeINFO.get_modification_time() -> modification time Returns the modification time, in UNIX time format get_symlink_targetget_etagget_sort_orderset_attribute_maskunset_attribute_maskset_file_typeset_is_hiddenset_is_symlinkset_nameset_display_nameset_edit_nameset_iconset_content_typeset_sizeset_symlink_targetset_sort_ordergio.FileInfolimit_msecsi:gio.FileMonitor.set_rate_limitfileother_fileevent_typeO!O!O:gio.FileMonitor.emit_eventset_rate_limitemit_eventgio.FileMonitorcount|lO:InputStream.readk|O:gio.InputStream.skip|O:gio.InputStream.closelO|iOO:InputStream.read_asyncO!:gio.InputStream.read_finishlO|iOO:InputStream.skip_asyncO!:gio.InputStream.skip_finishO|iOO:InputStream.close_asyncO!:gio.InputStream.close_finishread_partSTREAM.read_part([count, [cancellable]]) -> string Read 'count' bytes from the stream. If 'count' is not specified or is omitted, read until the end of the stream. This method is allowed to stop at any time after reading at least 1 byte from the stream. E.g. when reading over a (relatively slow) HTTP connection, it will often stop after receiving one packet. Therefore, to reliably read requested number of bytes, you need to use a loop. See also gio.InputStream.read for easier to use (though less efficient) method. Note: this method roughly corresponds to C GIO g_input_stream_read.readSTREAM.read([count, [cancellable]]) -> string Read 'count' bytes from the stream. If 'count' is not specified or is omitted, read until the end of the stream. This method will stop only after reading requested number of bytes, reaching end of stream or triggering an I/O error. See also gio.InputStream.read_part for more efficient, but more cumbersome to use method. Note: this method roughly corresponds to C GIO g_input_stream_read_all. It was renamed for consistency with Python standard file.read.skipread_asyncread_finishskip_asyncskip_finishclear_pendinggio.InputStreams|O:gio.FileInputStream.query_infosO|iOO:gio.FileInputStream.query_info_asyncO!:gio.FileInputStream.query_info_finishquery_infoquery_info_asyncquery_info_finishgio.FileInputStreamclose_basei:gio.FilterInputStream.set_close_base_streamget_base_streamget_close_base_streamset_close_base_streamgio.FilterInputStreambase_streamO:gio.BufferedInputStream.__init__could not create gio.BufferedInputStream objectk:gio.BufferedInputStream.set_buffer_sizel|O:gio.BufferedInputStream.filllO|iOO:gio.BufferedInputStream.fill_asyncO!:gio.BufferedInputStream.fill_finish|O:gio.BufferedInputStream.read_byteget_buffer_sizeset_buffer_sizeget_availablefillfill_asyncfill_finishread_bytegio.BufferedInputStreamO:gio.DataInputStream.__init__could not create gio.DataInputStream objectorderO:gio.DataInputStream.set_byte_orderO:gio.DataInputStream.set_newline_type|O:gio.DataInputStream.read_byte|O:gio.DataInputStream.read_int16|O:gio.DataInputStream.read_uint16|O:gio.DataInputStream.read_int32|O:gio.DataInputStream.read_uint32|O:gio.DataInputStream.read_int64|O:gio.DataInputStream.read_uint64|O:gio.DataInputStream.read_linestop_charss|O:gio.DataInputStream.read_linesO|iOO:gio.DataInputStream.read_until_asyncO!:gio.DataInputStream.read_until_finishO|iOO:gio.DataInputStream.read_line_asyncO!:gio.DataInputStream.read_line_finishset_byte_orderget_byte_orderset_newline_typeget_newline_typeread_int16read_uint16read_int32read_uint32read_int64read_uint64read_lineS.read_line([cancellable]) -> str Read a line from the stream. Return value includes ending newline character.read_untilS.read_until(stop_chars, [cancellable]) -> str Read characters from the string, stopping at the end or upon reading any character in stop_chars. Return value does not include the stopping character.read_until_asyncread_until_finishread_line_asyncread_line_finishgio.DataInputStream:gio.MemoryInputStream.__init__could not create gio.MemoryInputStream objectdataO:gio.MemoryInputStream.add_datadata must be a string or Noneadd_datagio.MemoryInputStream:gio.MountOperation.__init__could not create gio.MountOperation objectusernames:gio.MountOperation.set_usernamepasswords:gio.MountOperation.set_passwordanonymousi:gio.MountOperation.set_anonymousdomains:gio.MountOperation.set_domainsaveO:gio.MountOperation.set_password_savechoicei:gio.MountOperation.set_choiceO:gio.MountOperation.replyget_usernameset_usernameget_passwordset_passwordget_anonymousset_anonymousget_domainset_domainget_password_saveset_password_saveget_choiceset_choicereplygio.MountOperationbuffers#|O!:OutputStream.writesourceO!|OO:gio.OutputStream.splice|O:gio.OutputStream.flush|O:gio.OutputStream.closes#O|iOO:OutputStream.write_asyncO!:gio.OutputStream.write_finishO!O|OiOO:OutputStream.splice_asyncO!:gio.OutputStream.splice_finishO|iOO:OutputStream.flush_asyncO!:gio.OutputStream.flush_finishO|iOO:OutputStream.close_asyncO!:gio.OutputStream.close_finishwrite_partSTREAM.write_part(buffer, [cancellable]) -> int Write the bytes in 'buffer' to the stream. Return the number of bytes successfully written. This method is allowed to stop at any time after writing at least 1 byte. Therefore, to reliably write the whole buffer, you need to use a loop. See also gio.OutputStream.write for easier to use (though less efficient) method. Note: this method roughly corresponds to C GIO g_output_stream_write.writespliceflushwrite_asyncS.write_async(buffer, callback [,io_priority] [,cancellable] [,user_data]) Request an asynchronous write of count bytes from buffer into the stream. When the operation is finished callback will be called. You can then call gio.OutputStream.write_finish() to get the result of the operation. On success, the number of bytes written will be passed to the callback. It is not an error if this is not the same as the requested size, as it can happen e.g. on a partial I/O error, but generally tries to write as many bytes as requested. For the synchronous, blocking version of this function, see gio.OutputStream.write(). write_finishsplice_asyncsplice_finishflush_asyncflush_finishgio.OutputStreamcould not create gio.MemoryOutputStream objectget_contentsget_data_sizegio.MemoryOutputStreami:gio.FilterOutputStream.set_close_base_streamgio.FilterOutputStreamO:gio.BufferedOutputStream.__init__could not create gio.BufferedOutputStream objectk:gio.BufferedOutputStream.set_buffer_sizeauto_growi:gio.BufferedOutputStream.set_auto_growget_auto_growset_auto_growgio.BufferedOutputStreamO:gio.DataOutputStream.__init__could not create gio.DataOutputStream objectO:gio.DataOutputStream.set_byte_orderc|O:gio.DataOutputStream.put_bytei|O:gio.DataOutputStream.put_int16i|O:gio.DataOutputStream.put_uint16i|O:gio.DataOutputStream.put_int32k|O:gio.DataOutputStream.put_uint32L|O:gio.DataOutputStream.put_int64O!|O:gio.DataOutputStream.put_uint64strs|O:gio.DataOutputStream.put_stringput_byteput_int16put_uint16put_int32put_uint32put_int64put_uint64put_stringgio.DataOutputStreams|O:gio.FileOutputStream.query_infosO|iOO:gio.FileOutputStream.query_info_asyncO!:gio.FileOutputStream.query_info_finishgio.FileOutputStream%s is an abstract widgetop_resl:gio.SimpleAsyncResult.set_op_res_gssizei:gio.SimpleAsyncResult.set_op_res_gbooleanhandle_cancellationi:gio.SimpleAsyncResult.set_handle_cancellationset_op_res_gssizeget_op_res_gssizeset_op_res_gbooleanget_op_res_gbooleanset_handle_cancellationcompletecomplete_in_idlepropagate_errorgio.SimpleAsyncResultpaths:gio.Vfs.get_file_for_pathuris:gio.Vfs.get_file_for_uriparse_names:gio.Vfs.parse_nameis_activeget_file_for_pathget_file_for_uriget_supported_uri_schemesVFS.get_supported_uri_schemes() -> [uri, ..] Gets a list of URI schemes supported by vfs.gio.Vfsuuids:gio.VolumeMonitor.get_volume_for_uuids:gio.VolumeMonitor.get_mount_for_uuidget_connected_drivesget_volumesget_mountsget_volume_for_uuidget_mount_for_uuidgio.VolumeMonitorgio.NativeVolumeMonitorO!:gio.FileIcon.__init__could not create GFileIcon objectget_file<%s at %p: %s><%s at %p: UNKNOWN URI>gio.FileIconuse_default_fallbacksO|i:gio.ThemedIcon.__init__use-default-fallbacksnamesargument 1 of gio.ThemedIcon.__init__ must be either a string or a sequence of stringsiconnames:gio.ThemedIcon.prepend_names:gio.ThemedIcon.append_nameprepend_nameget_namesappend_name<%s at %p: , >gio.ThemedIconappinfo2O!:gio.AppInfo.equallaunch_context|OO:gio.AppInfo.launchfile_list should be a list of strings or None|OO:gio.AppInfo.launch_uriss:gio.AppInfo.set_as_default_for_typeextensions:gio.AppInfo.set_as_default_for_extensions:gio.AppInfo.add_supports_types:gio.AppInfo.remove_supports_typeequalget_idget_descriptionget_executablelaunchlaunch (files=None, launch_context=None) -> gboolean Launches the application. Passes files to the launched application as arguments, using the optional launch_context to get information about the details of the launcher (like what screen it is on). On error, error will be set accordingly. Note that even if the launch is successful the application launched can fail to start if it runs into problems during startup. There is no way to detect this. Some URIs can be changed when passed through a gio.File (for instance unsupported uris with strange formats like mailto:), so if you have a textual uri you want to pass in as argument, consider using gio.AppInfo.launch_uris() instead.supports_urissupports_fileslaunch_urislaunch_uris (files=None, launch_context=None) -> gboolean Launches the application. Passes files to the launched application as arguments, using the optional launch_context to get information about the details of the launcher (like what screen it is on). On error, error will be set accordingly. Note that even if the launch is successful the application launched can fail to start if it runs into problems during startup. There is no way to detect this. should_showset_as_default_for_typeset_as_default_for_extensionadd_supports_typecan_remove_supports_typeremove_supports_typecan_deletedeleteget_commandlineUNKNOWN NAMEgio.AppInfoget_source_objectgio.AsyncResultO|OOO:gio.Drive.ejectO!:gio.Drive.eject_finishO|OO:gio.Drive.ejectO!:gio.Drive.poll_for_media_finishkinds:gio.Drive.get_identifierhas_volumesis_media_removablehas_mediais_media_check_automaticcan_poll_for_mediacan_ejectejecteject_finishpoll_for_mediapoll_for_media_finishget_identifierenumerate_identifiers<%s at %p: UNKNOWN NAME>gio.Drivefile2O!:gio.File.equals:gio.File.get_childs:gio.File.get_child_for_display_namedescendantO!:gio.File.has_prefixO!:gio.File.get_relative_pathrelative_paths:gio.File.resolve_relative_pathuri_schemes:gio.File.has_uri_scheme|O:gio.File.readO|iOO:File.read_asyncresO!:gio.File.read_finish|OO:gio.File.append_to|OO:gio.File.createetagmake_backupsi|OO:gio.File.replaceO|OiOO:File.append_to_asyncO!:gio.File.append_to_finishO|OiOO:File.create_asyncO!:gio.File.create_finishO|zOOiOO:File.replace_asyncO!:gio.File.replace_finish|O:gio.File.query_existsOO!:gio.File.query_file_types|OO:gio.File.query_infosO|OiOO:File.query_info_asyncOs|OiOO:File.query_info_asyncO!:gio.File.query_info_finishs|O:gio.File.query_filesystem_infosO|iOO:gio.File.query_filesystem_info_asyncO!:gio.File.query_filesystem_info_finish|O:gio.File.find_enclosing_mountO|iOO:File.enclosing_mount_asyncO!:gio.File.find_enclosing_mount_finishs|OO:gio.File.enumerate_childrensO|OiOO:gio.File.enumerate_children_asyncO!:gio.File.enumerate_children_finishs|O:gio.File.set_display_namesO|iOO:gio.File.set_display_name_asyncO!:gio.File.set_display_name_finish|O:gio.File.delete|O:gio.File.trashdestinationprogress_callbackO!|OOOO:File.copyprogress_callback_dataO!O|OOiOOO:File.copy_asyncO!:gio.File.copy_finishO!|OOOO:File.move|O:gio.File.make_directoryO!:gio.File.make_directory_with_parentssymlink_values|O:gio.File.make_symbolic_link|O:gio.File.query_settable_attributes|O:gio.File.query_writable_namespacesvalue_psOO|OO:gio.File.set_attributeO!|OO:gio.File.set_attributes_from_infoO!O|OiOO:gio.File.set_attributes_asyncO!:File.set_attributes_finishvaluess|OO:gio.File.set_attribute_stringss|OO:gio.File.set_attribute_byte_stringsk|OO:gio.File.set_attribute_uint32si|OO:gio.File.set_attribute_int32sO!|OO:gio.File.set_attribute_uint64sL|OO:gio.File.set_attribute_int64mount_operationO!O|OOO:File.mount_enclosing_volumeO!:gio.File.mount_enclosing_volume_finishO!O|OOO:File.mount_mountableO!:gio.File.mount_mountable_finishO|OOO:File.unmount_mountableO!:gio.File.unmount_mountable_finishO|OOO:File.eject_mountableO!:gio.File.eject_mountable_finishO!|OO:gio.File.copy_attributes|OO:gio.File.monitor_directory|OO:gio.File.monitor_file|OO:gio.File.monitor|O:gio.File.query_default_handler|O:File.load_contents(s#ks)O|OO:File.load_contents_asyncO!:File.load_contents_finishcontentss#|zbOO:File.replace_contentss#O|zbOOO:File.replace_contents_asyncO!:File.replace_contents_finishget_basenameget_pathget_uriget_parse_nameget_parentget_childget_child_for_display_namehas_prefixget_relative_pathresolve_relative_pathis_nativehas_uri_schemeget_uri_schemeF.read([cancellable]) -> input stream Opens a file for reading. The result is a GFileInputStream that can be used to read the contents of the file. If cancellable is specified, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned. If the file does not exist, the gio.IO_ERROR_NOT_FOUND error will be returned. If the file is a directory, the gio.IO_ERROR_IS_DIRECTORY error will be returned. Other errors are possible too, and depend on what kind of filesystem the file is on.F.read_async(callback [,io_priority [,cancellable [,user_data]]]) -> start read For more details, see gio.File.read() which is the synchronous version of this call. Asynchronously opens file for reading. When the operation is finished, callback will be called. You can then call g_file_read_finish() to get the result of the operation. append_tocreatereplaceappend_to_asyncF.append_to_async(callback [flags, [,io_priority [,cancellable [,user_data]]]]) -> open for append Asynchronously opens file for appending. For more details, see gio.File.append_to() which is the synchronous version of this call. When the operation is finished, callback will be called. You can then call F.append_to_finish() to get the result of the operation.append_to_finishcreate_asyncF.create_async(callback [flags, [,io_priority [,cancellable [,user_data]]]]) -> file created Asynchronously creates a new file and returns an output stream for writing to it. The file must not already exist. For more details, see F.create() which is the synchronous version of this call. When the operation is finished, callback will be called. You can then call F.create_finish() to get the result of the operation.create_finishreplace_asyncF.replace_async(callback [etag, [make_backup, [flags, [io_priority, [cancellable, [user_data]]]]]]) -> file replace Asynchronously overwrites the file, replacing the contents, possibly creating a backup copy of the file first. For more details, see F.replace() which is the synchronous version of this call. When the operation is finished, callback will be called. You can then call F.replace_finish() to get the result of the operation.replace_finishquery_existsquery_file_typeF.query_info_async(attributes, callback, [flags, [io_priority, [cancellable, [user_data]]]]) -> query attributes Asynchronously gets the requested information about specified file. The result is a GFileInfo object that contains key-value attributes (such as type or size for the file). For more details, see F.query_info() which is the synchronous version of this call. When the operation is finished, callback will be called. You can then call F.query_info_finish() to get the result of the operation. query_filesystem_infoquery_filesystem_info_asyncquery_filesystem_info_finishfind_enclosing_mountfind_enclosing_mount_asyncfind_enclosing_mount_finishenumerate_childrenF.enumerate_children(attributes, [flags, cancellable]) -> enumerator Gets the requested information about the files in a directory. The result is a gio.FileEnumerator object that will give out gio.FileInfo objects for all the files in the directory. The attribute value is a string that specifies the file attributes that should be gathered. It is not an error if it's not possible to read a particular requested attribute from a file - it just won't be set. attribute should be a comma-separated list of attribute or attribute wildcards. The wildcard "*" means all attributes, and a wildcard like "standard::*" means all attributes in the standard namespace. An example attribute query be "standard::*,owner::user". The standard attributes are available as defines, like gio.FILE_ATTRIBUTE_STANDARD_NAME. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned. If the file does not exist, the gio.ERROR_NOT_FOUND error will be returned. If the file is not a directory, the gio.FILE_ERROR_NOTDIR error will be returned. Other errors are possible too.enumerate_children_asyncF.enumerate_children_async(attributes, callback, [flags, io_priority, cancellable, user_data]) Asynchronously gets the requested information about the files in a directory. The result is a GFileEnumerator object that will give out GFileInfo objects for all the files in the directory. For more details, see gio.File.enumerate_children() which is the synchronous version of this call. When the operation is finished, callback will be called. You can then call gio.File.enumerate_children_finish() to get the result of the operation.enumerate_children_finishset_display_name_asyncset_display_name_finishtrashcopyF.copy(destination, [callback, flags, cancellable, user_data]) Copies the file source to the location specified by destination. Can not handle recursive copies of directories. If the flag gio.FILE_COPY_OVERWRITE is specified an already existing destination file is overwritten. If the flag gio.FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlink will be copied as symlinks, otherwise the target of the source symlink will be copied. If cancellable is not None, then the operation can be cancelled b triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned. If progress_callback is not None, then the operation can be monitored by setting this to a callable. if specified progress_callback_data will be passed to this function. It is guaranteed that this callback will be called after all data has been transferred with the total number of bytes copied during the operation. If the source file does not exist then the gio.ERROR_NOT_FOUND error is returned, independent on the status of the destination. If gio.FILE_COPY_OVERWRITE is not specified and the target exists then the error gio.ERROR_EXISTS is returned. If trying to overwrite a file over a directory the gio.ERROR_IS_DIRECTORY error is returned. If trying to overwrite a directory with a directory the gio.ERROR_WOULD_MERGE error is returned. If the source is a directory and the target does not exist or gio.FILE_COPY_OVERWRITE is specified and the target is a file then the gio.ERROR_WOULD_RECURSE error is returned. If you are interested in copying the GFile object itself (not the on-disk file), see gio.File.dup().copy_asyncF.copy_async(destination, callback, [flags, io_priority, user_data, cancellable, progress_callback]) -> start copy For more details, see gio.File.copy() which is the synchronous version of this call. Asynchronously copies file. When the operation is finished, callback will be called. You can then call g_file_copy_finish() to get the result of the operation. copy_finishmoveF.move(destination, [callback, flags, cancellable, user_data]) Tries to move the file or directory source to the location specified by destination. If native move operations are supported then this is used, otherwise a copy + delete fallback is used. The native implementation may support moving directories (for instance on moves inside the same filesystem), but the fallback code does not. If the flag gio.FILE_COPY_OVERWRITE is specified an already existing destination file is overwritten. If the flag gio.FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlink will be copied as symlinks, otherwise the target of the source symlink will be copied. If cancellable is not None, then the operation can be cancelled b triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned. If progress_callback is not None, then the operation can be monitored by setting this to a callable. if specified progress_callback_data will be passed to this function. It is guaranteed that this callback will be called after all data has been transferred with the total number of bytes copied during the operation. If the source file does not exist then the gio.ERROR_NOT_FOUND error is returned, independent on the status of the destination. If gio.FILE_COPY_OVERWRITE is not specified and the target exists then the error gio.ERROR_EXISTS is returned. If trying to overwrite a file over a directory the gio.ERROR_IS_DIRECTORY error is returned. If trying to overwrite a directory with a directory the gio.ERROR_WOULD_MERGE error is returned. If the source is a directory and the target does not exist or gio.FILE_COPY_OVERWRITE is specified and the target is a file then the gio.ERROR_WOULD_RECURSE error is returned.make_directorymake_directory_with_parentsmake_symbolic_linkquery_settable_attributesF.query_settable_attributes([cancellable]) -> list Obtain the list of settable attributes for the file. Returns the type and full attribute name of all the attributes that can be set on this file. This doesn't mean setting it will always succeed though, you might get an access failure, or some specific file may not support a specific attribute. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.query_writable_namespacesF.query_writable_namespaces([cancellable]) -> list Obtain the list of attribute namespaces where new attributes can be created by a user. An example of this is extended attributes (in the xattr namespace). If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.set_attributeF.set_attribute(attribute, type, value_p [,flags [,cancellable ]])->bool Sets an attribute in the file with attribute name attribute to value_p. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned.set_attributes_from_infoset_attributes_asyncset_attributes_finishmount_enclosing_volumeF.mount_enclosing_volume(mount_operation, callback, [cancellable, user_data]) Starts a mount_operation, mounting the volume that contains the file location. When this operation has completed, callback will be called with user_user data, and the operation can be finalized with gio.File.mount_enclosing_volume_finish(). If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned.mount_enclosing_volume_finishmount_mountableF.mount_mountable(mount_operation, callback, [flags, cancellable, user_data]) Mounts a file of type gio.FILE_TYPE_MOUNTABLE. Using mount_operation, you can request callbacks when, for instance, passwords are needed during authentication. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned. When the operation is finished, callback will be called. You can then call g_file_mount_mountable_finish() to get the result of the operation. mount_mountable_finishunmount_mountableF.unmount_mountable(callback, [flags, cancellable, user_data]) Unmounts a file of type gio.FILE_TYPE_MOUNTABLE. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned. When the operation is finished, callback will be called. You can then call gio.File.unmount_mountable_finish() to get the result of the operation. unmount_mountable_finisheject_mountableeject_mountable_finishcopy_attributesmonitor_directorymonitor_filemonitorquery_default_handlerload_contentsF.load_contents([cancellable]) -> contents, length, etag_out Loads the content of the file into memory, returning the size of the data. The data is always zero terminated, but this is not included in the resultant length. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned. load_contents_asyncF.load_contents_async(callback, [cancellable, [user_data]])->start loading Starts an asynchronous load of the file's contents. For more details, see F.load_contents() which is the synchronous version of this call. When the load operation has completed, callback will be called with user data. To finish the operation, call F.load_contents_finish() with the parameter 'res' returned by the callback. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned. load_contents_finishF.load_contents_finish(res) -> contents, length, etag_out Finishes an asynchronous load of the file's contents. The contents are placed in contents, and length is set to the size of the contents string. If etag_out is present, it will be set to the new entity tag for the file. replace_contentsF.replace_contents(contents, [etag, [make_backup, [flags, [cancellable]]]]) -> etag_out Replaces the content of the file, returning the new etag value for the file. If an etag is specified, any existing file must have that etag, or the error gio.IO_ERROR_WRONG_ETAG will be returned. If make_backup is True, this method will attempt to make a backup of the file. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned. replace_contents_asyncF.replace_contents_async(contents, callback, [etag, [make_backup, [flags, [cancellable]]]]) -> etag_out Starts an asynchronous replacement of the file with the given contents. For more details, see F.replace_contents() which is the synchronous version of this call. When the load operation has completed, callback will be called with user data. To finish the operation, call F.replace_contents_finish() with the parameter 'res' returned by the callback. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.IO_ERROR_CANCELLED will be returned. replace_contents_finishF.replace_contents_finish(res) -> etag_out Finishes an asynchronous replacement of the file's contents. The new entity tag for the file is returned. gio.FileFile(arg, path=None, uri=None) -> gio.File subclass If arg is specified; creates a GFile with the given argument from the command line. The value of arg can be either a URI, an absolute path or a relative path resolved relative to the current working directory. If path is specified, create a file from an absolute or relative path. If uri is specified, create a file from a URI. This operation never fails, but the returned object might not support any I/O operation if arg points to a malformed path.icon2O!:gio.Icon.equalto_stringgio.Icon|iO:gio.LoadableIcon.loadNsO|iOO:gio.LoadableIcon.load_asyncO!:gio.LoadableIcon.load_finishloadICON.load([size, [cancellable]]) -> input stream, type Opens a stream of icon data for reading. The result is a tuple of gio.InputStream and type (either a string or None). The stream can be read to retrieve icon data. Optional size is a hint at desired icon size. Not all implementations support it and the hint will be just ignored in such cases. If cancellable is specified, then the operation can be cancelled by triggering the cancellable object from another thread. See gio.File.read for details.load_asyncICON.load_async(callback, [size, [cancellable, [user_data]]]) -> start loading For more information, see gio.LoadableIcon.load() which is the synchronous version of this call. Asynchronously opens icon data for reading. When the operation is finished, callback will be called. You can then call gio.LoadableIcon.load_finish() to get the result of the operation. load_finishF.load_finish(res) -> start loading Finish asynchronous icon loading operation. Must be called from callback as specified to gio.LoadableIcon.load_async. Returns a tuple of gio.InputStream and type, just as gio.LoadableIcon.load.gio.LoadableIconO|OOO:gio.Mount.unmountO!:gio.Mount.unmount_finishO|OOO:gio.Mount.ejectO!:gio.Mount.eject_finishO|OOOO:gio.Mount.remountmount_operation must be a gio.MountOperation or NoneO!:gio.Mount.remount_finishforce_rescanOi|OO:Mount.guess_content_typeO!:Mount.guess_content_type_finishi|O:Mount.guess_content_type_syncget_rootget_uuidget_volumeget_drivecan_unmountunmountM.unmount(callback, [flags, cancellable, user_data]) Unmounts a mount. This is an asynchronous operation, and is finished by calling gio.Mount.unmount_finish() with the mount and gio.AsyncResults data returned in the callback.unmount_finishF.eject(callback, [flags, cancellable, user_data]) Ejects a volume. If cancellable is not None, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the error gio.ERROR_CANCELLED will be returned. When the operation is finished, callback will be called. You can then call gio.Volume.eject_finish() to get the result of the operation. remountM.remount(callback, [flags, [mount_operation, [cancellable, [user_data]]]]) Remounts a mount. This is an asynchronous operation, and is finished by calling gio.Mount.remount_finish with the mount and gio.AsyncResults data returned in the callback.remount_finishguess_content_typeguess_content_type_finishguess_content_type_syncis_shadowedshadowunshadow<%s at %p: %s (%s)>gio.MountoffsetL|iO:gio.Seekable.seekL|O:gio.Seekable.truncatetellcan_seekseekcan_truncatetruncategio.SeekableOO|OOO:Volume.mountmount_operation should be a GMountOperation or NoneO!:gio.Volume.mount_finishO|OOO:Volume.ejectO!:gio.Volume.eject_finishs:gio.Volume.get_identifierget_mountcan_mountshould_automountmountmount_finishget_activation_rootgio.Volumes:app_info_get_all_for_typemust_support_urissi:app_info_get_default_for_types:app_info_get_default_for_uri_schemes:app_info_reset_type_associationsO!k:buffered_input_stream_new_sizedO!O:buffered_output_stream_new_sizedParameter 'size' must be an int or a longtype1type2ss:content_type_equalssupertypess:content_type_is_as:content_type_is_unknowns:content_type_get_descriptions:content_type_get_mime_types:content_type_get_icons:content_type_can_be_executablemime_types:content_type_from_mime_typefilenamewant_uncertain|zz#i:g_content_type_guessneed at least one argumentzNO!O:emblem_new_with_origins:file_parse_names:icon_new_for_stringerr_noi:io_error_from_errnoO:gio.memory_input_stream_new_from_dataO!:volume_monitor_adopt_orphan_mounts:gio.File.__init__unknowngio.File() got an unexpected keyword argument '%s'gio.File() takes exactly 1 argument (%zd given)could not create GFile objectOcommandlineapplication_names|zO:gio.AppInfoapp_info_get_allapp_info_get_all_for_typeapp_info_get_default_for_typeapp_info_get_default_for_uri_schemeapp_info_reset_type_associationsbuffered_input_stream_new_sizedbuffered_output_stream_new_sizedcancellable_get_currentcontent_type_equalscontent_type_is_acontent_type_is_unknowncontent_type_get_descriptioncontent_type_get_mime_typecontent_type_get_iconcontent_type_can_be_executablecontent_type_from_mime_typecontent_type_guesscontent_type_guess([filename, data, want_uncertain]) -> mime type Guesses the content type based on the parameters passed. Either filename or data must be specified Returns a string containing the mime type. If want_uncertain is set to True, return a tuple with the mime type and True/False if the type guess was uncertain or not.content_types_get_registeredemblem_new_with_originfile_parse_nameicon_new_for_stringio_error_from_errnomemory_input_stream_new_from_datavfs_get_defaultvfs_get_localvolume_monitor_getvolume_monitor_adopt_orphan_mount_file_init_install_file_meta_install_app_info_meta_app_info_initAppInfoCreateFlagsDataStreamByteOrderDataStreamNewlineTypeFileAttributeTypeFileAttributeInfoFlagsFileAttributeStatusFileQueryInfoFlagsFileCreateFlagsMountUnmountFlagsFileCopyFlagsFileMonitorFlagsFileTypeFileMonitorEventErrorEnumAskPasswordFlagsPasswordSaveMountOperationResultOutputStreamSpliceFlagsEmblemOriginpygio_register_classesgobjectGObjectcannot import name GObject from gobjectcould not import gobjectgfileattribute.overridefile %s: line %d (%s): should not be reachedFileAttributeInfoFileAttributeMatcherAppInfoAsyncResultDriveFileIconLoadableIconMountSeekableVolume(O)GAppLaunchContextGCancellableGEmblemGEmblemedIconGFileEnumeratorGFileInfoGFileMonitorGInputStreamGFileInputStreamGFilterInputStreamGBufferedInputStreamGDataInputStreamGMemoryInputStreamGMountOperationGOutputStreamGMemoryOutputStreamGFilterOutputStreamGBufferedOutputStreamGDataOutputStreamGFileOutputStreamGSimpleAsyncResultGVfsGVolumeMonitorGNativeVolumeMonitor(OOO)GFileIcon(OO)GThemedIconÿÿÿÿÿÿÿÿæŽçñëŽ?òðކò/Cô7¾ôD9õX´õ‘ºö©‘ø÷¿‘6ù$’yú1’ÀúH’=ûO’„û\’Öûh’(ün’züÏ’uþØ’ÄþÏ’'_“ví”3÷”·ý”•¦˜e¸˜H™ØT™ a™ëk™2 w™y ƒ™ ?Ÿò CŸX MŸ [Ÿ¥ lŸÌŸÂߟh🠩 n2 "L Öb fw ö‹ †   ´ ºÉ RÞ ýø ¨¡S#¡þ7¡©L¡}`¡5u¡ÿ‚¡Q¡°ž¡÷¬¡>»¡…Ä¡öÕ¡gÏ’Øã¡'ô¡˜ý¡é¢z¢= ¢® –¢!¥¢f!¸¢~"Í¢Ð"Û¢¨#é¢C$ø¢Þ$£y%£& £¯&)£l':£(C£«(V£F)n’á)$’(*Ý£o*ì£ +¥L, ¥n§x.t§m©©0÷” 2r©‚3}© 5‰©"6”©n7H™U8T™†9a™h:k™¯:w™ö: ©s;9ªÅ;Dª?=Uª€>¶ªm?ƪ¼?ܪ@1¬BA¬nBQ¬ C_¬YCd¬Eo¬]F{¬DG<¯&JK¯þJZ¯]Kk¯5L{¬”L|¯þM‡¯aO“¯ÆPž¯(Rª¯ŠSµ¯öTÁ¯bV̯;°mWH°±ˆX ±ÍY2±ÑZB±\û±®]ƒ³§_³`³³`ª³$a·³¿aųbÓ³¡bÞ³cé³­cû³ d ´äd´+e#´Æe͵žfص·ÿg•·diœ·\k÷”¾l¢· n°·º£o*ºŠp7ºKrEº2sQºctH™EuT™vva™Xwk™Ÿww™æw ©cxŸºGyô¡²y¬ºz¶ªRzƪ¡zܪèz1¬}A¬S}Õ»î}ã»5~<¯P€K¯(¬½‡µ½ý‚¿½r„ʽç…Ô½Y‡ß½ˈé½FŠô½ß‹9ªQDªËŽUª ¢ùd¿å‘v¿€’ˆ¿Ì’œ¿g“°¿®“È¿I”Ñ¿›”â¿í”hÀj•rÀ±•„À`–HÀ—•À¾—°ÀgÁj˜|Á<™ˆÁš“Áàš§Á›"ÂLKáXù¡bÃe¢?Ÿ¤¿Äi¤ÅÄ¥»¡Œ¥ÌÄý¥ÜÄn¦Ï’ߦëÄ.§ôĤǛ¨²Çâ¨ÁÇ)©ÐǛɖª§Éݪ¿É«ÜÉ]¬îÉ­Êd­Ê$®'Êk®.ʲ®WÊ ±»¡Y±Ï’Û±ËA²|Áˆ²Ë˜³"Ëß³,Ë&´EËm´XË´´bËû´hËi¶uËK·„Ë£¸šË…¹©ËJº?Ÿû¿Ä)¼äÕÛ¼ñÕ]½úÕß½Öa¾Öã¾ÖI¿&Öø¿AÖÚÀLÖŒÁ^ÖvÂtÖ%Ã~ÖlÃÖüÃn§~ÄœÖr©@ÆøØ}©qÇJÚuÈTÚ•Ê[ÚµÌcÚ÷ÎtÚñÛ}ÐÜÑÜÁÝÓÏÝ ÔàݧßäÕ¶ßèÖÃߨ9ª2ÙDª`ÛÔßUªÞááß÷áìàâ8â0â%ãEâçä`âæ|âçâ@çJé\çéòê£öë§éÈí¾éï'ÊðÖé»ñÜé^óäéhðyõtðÞñ’÷êñtøðñçøúöø2üùUý%ùÿ@ùjû‡„û ý0ýþϨþ½þMÉ lÞ N ¡0 #¡7¡ôL¡ùÓþëìþ‘.s@´È˜‹±mÁØØºè­ú!q#9%%½&4á[(øY m)p ˆ Æ*œ Ö ä,ð  Ó.¸¿Ä<2kî2àõ4èá86ìXi7d¢Ž8»¡ô8Ï’v9«Ü9´^:¿Ä:É*;XËq;Õ¸;àÃh=bËJ>ÔhËú?nÜ@xpCD’*E¬GFÄ{GÐÂG×H6ŒI;ÝID$JIºKVL»¡|MÏ’þM«dN¿æNLO#²OXËùO-@P>‡PD§RbˉShË÷TšËÙU©ËžVQ[WR#fXc#Y}#ôYœ#{ZÀ#ôZä#p[$\%$‚]=$µ]Q$4^c$³^{$$_˜$Ê_³$p`Ì$aë$qa%b%i&hc†&d&üd­&ŒeÁ&3fØ&¼fú&ïg '"h'Uh,'ˆhN'!iY'akl'Ôkƒ'Glo88Ž8¢8­8Ç8Û8ï8ÿ8 99%9 ,´ Ô~´¤5Ô C9 äYH䢴s0/þÿÿodsÿÿÿoðÿÿoènúÿÿoцÀbÔŒ@e`V€d`Xr´‚´’´¢´²´Â´Ò´â´ò´µµ"µ2µBµRµbµrµ‚µ’µ¢µ²µÂµÒµâµòµ¶¶"¶2¶B¶R¶b¶r¶‚¶’¶¢¶²¶Â¶Ò¶â¶ò¶··"·2·B·R·b·r·‚·’·¢·²·Â·Ò·â·ò·¸¸"¸2¸B¸R¸b¸r¸‚¸’¸¢¸²¸Â¸Ò¸â¸ò¸¹¹"¹2¹B¹R¹b¹r¹‚¹’¹¢¹²¹Â¹Ò¹â¹ò¹ºº"º2ºBºRºbºrº‚º’º¢º²ºÂºÒºâºòº»»"»2»B»R»b»r»‚»’»¢»²»Â»Ò»â»ò»¼¼"¼2¼B¼R¼b¼r¼‚¼’¼¢¼²¼Â¼Ò¼â¼ò¼½½"½2½B½R½b½r½‚½’½¢½²½Â½Ò½â½ò½¾¾"¾2¾B¾R¾b¾r¾‚¾’¾¢¾²¾Â¾Ò¾â¾ò¾¿¿"¿2¿B¿R¿b¿r¿‚¿’¿¢¿²¿Â¿Ò¿â¿ò¿ÀÀ"À2ÀBÀRÀbÀrÀ‚À’À¢À²ÀÂÀÒÀâÀòÀÁÁ"Á2ÁBÁRÁbÁrÁ‚Á’Á¢Á²ÁÂÁÒÁâÁòÁÂÂ"Â2ÂBÂRÂbÂr‚’¢²ÂÂÂÒÂâÂòÂÃÃ"Ã2ÃBÃRÃbÃrÂÒâòÃÂÃÒÃâÃòÃÄÄ"Ä2ÄBÄRÄbÄrĂĒĢIJÄÂÄÒÄâÄòÄÅÅ"Å2ÅBÅRÅbÅrłŒŢŲÅÂÅÒÅâÅòÅÆÆ"Æ2ÆBÆRÆbÆrƂƒƢƲÆÂÆÒÆâÆòÆÇÇ"Ç2ÇBÇRÇbÇrǂǒǢDzÇÂÇÒÇâÇòÇÈÈ"È2ÈBÈRÈbÈrȂȒȢȲÈÂÈÒÈâÈòÈÉÉ"É2ÉBÉRÉbÉrɂɒɢɲÉÂÉÒÉâÉòÉÊÊ"Ê2ÊBÊRÊbÊrʂʒʢʲÊÂÊÒÊâÊòÊËË"Ë2ËBËRËbËr˂˒ˢ˲ËÂËÒËâËòËÌÌ"Ì2ÌBÌRÌbÌr̢̲̂̒ÌÂÌÒÌâÌòÌÍÍ"Í2ÍBÍRÍbÍr͂͒͢ͲÍÂÍÒÍâÍòÍÎÎ"Î2ÎBÎRÎbÎr΂Β΢βÎÂÎÒÎâÎòÎÏÏ"Ï2ÏBÏRÏbÏrςϒϢϲÏÂÏÒÏâÏòÏÐÐ"Ð2ÐBÐRÐbÐrЂВТвÐÂÐÒÐâÐòÐÑÑ"Ñ2ÑBÑRÑbÑrтђѢѲÑÂÑÒÑâÑòÑÒÒ"Ò2ÒBÒRÒbÒrÒ‚Ò’Ò¢Ò²ÒÂÒÒÒâÒòÒÓÓ"Ó2ÓBÓRÓbÓrÓ‚Ó’Ó¢Ó²ÓÂÓÒÓâÓòÓÔÔ"Ô2ÔBÔRÔbÔrÔ‚Ô’Ô¢Ô²ÔÂÔÒÔâÔòÔÕÕ"Õ2ÕBÕRÕbÕrÕ‚Õ’Õ¢Õ²ÕÂÕÒÕâÕòÕÖÖ"Ö2ÖBÖRÖbÖrÖ‚Ö’Ö¢Ö²ÖÂÖÒÖâÖòÖ b´;öŽ ë ¨ŒÀ;”ñG¦¦ügë <†óÍÒÍÒc‘Í‘ë€< öu’ëÀ< Ñùã’ë@= Ìü…’î’î’j“ë€= #ÿ{“{“ñ“]Žû“{“”I”]Žû“{“”I”Ô‘™ëc x À= ᙦ¦¦¦¦¦¦¦¦¦¦¦¦¦ œ¦ œ¦ œ¦ œ¦ œ¦ œ¦ œ¦ œRëŽÀçæŽ(žXž…’˜žÈžåžŸe£ë€> J r£¡£¦£±£÷£ëàA ¤{“¤{“¤{“{“¤]Žû“{“”I”¤]Žû“{“”I”]Žû“{“”I”®©ë@B G{“G]Žû“{“”I”gªë@C {ªòªë€C Èž¤{“¤]Žû“{“”I”{“…¬ëÀC ž@ì¬ëŽ{“{“{“{“{“{“{“{“a®{“a®]Žû“{“”I”]Žû“{“”I”S±ë@D ¦H¶±²ë`E ]c²޲º²ç²³?³I”)´ë€E ÿ^<´{“<´{“\´ðŽ{“{“{“<´]Žû“{“”I”\´]ŽðŽû“{“”I”]Žû“{“”I”]Žû“{“”I”^ºë`F ººë€G µx{ª»ëÀG ÈžŸ»ñ»ëH ƒ{쬶±{“¶±{“¶±{“¶±{“¶±{“¶±{“¶±{“½{“ÿ½ë`H Ð~G{“G]Žû“{“”I”’¾ë I À¾À¾ ¿ò¿ë€I {‘À)ÀHÀ Áë J ÁÁºÁë€J >œÌÁë ¡£R›ëàJ }œæŽ_ÂÃÃãëK zžŽÃÒ¬ÃҬØžFĘž˜žKÊ#¯ë¾¯@KiÊë L]ŽðŽ{“”I”]Ž{“”I”ãÊØË»ëÀLâËæŽ(ž6Ì6ÌvÌ¥Ì{“]Žû“{“”ñÌðŽ{“ðŽ{“8Í=ÍðŽ{“]ŽðŽû“{“”ñÌ]ŽðŽû“{“”ñÌ]Ž8Í=ÍðŽû“{“”ñÌ{“ðŽ{“GðŽ{“]ŽGðŽû“{“”G]ŽðŽû“{“”ñÌG{“G]Žû“{“”ñÌ{“]Žû“{“”ñÌGðŽ{“G]ŽðŽû“{“”ñÌ(ž{“(ž]Žû“{“”ñÌ{“{“ЩÐðŽ{“”Ð]Ž©ÐðŽû“{“”ÍÐñÌЩÐðŽ{“”{“{“lÑ{“{“{“¦ëŽêÑðŽ{“ÍðŽ{“Í]ŽðŽû“{“”I”¦}ÒðŽ{“¦}ÒðŽ{“¦}ÒðŽ{“¦}ÒðŽ{“¦}ÒðŽ{“¦}ÒðŽ{“gÓ]ŽðŽ{“”I”gÓ]ŽðŽ{“”I”]ŽðŽ{“”I”]ŽðŽ{“”I”ÐðŽ{“ðŽ{“ðŽ{“ðŽ{“{“{“]Ž{“”ñÌrÕ8Í=ÍðŽ{“rÕ]Ž8Í=ÍðŽ{“”I”Oû/·0ëXð0ÀMSup3ë©3 SÈž{“]ŽÈž{“”ñÌKë`S]ŽðŽ{“”I”]ŽðŽ{“”I”]ŽðŽgÓ{“”I”]Ž-{“”I”-{“ôfHë SþëŽ{“þ{“_ëUgÓ]ŽðŽ{“”I”]ŽðŽ{“”I”ãÊeªWë`U˜žŒ¥Ì˜ž«Èž«Èž† Œ 뎩 ëŽëŽëŽëŽëŽY!…’Š’HÀ½"¶±>$#0#ðŽGCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2.symtab.strtab.shstrtab.hash.dynsym.dynstr.gnu.version.gnu.version_r.rel.dyn.rel.plt.init.text.fini.rodata.eh_frame.ctors.dtors.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.comment´´ ! ÔÔÐ#)¤5¤5C91ÿÿÿoènènz>þÿÿodsdsPM ´s´s0/V ä¢ä¢H _,´,´/Z\´\´ "e××Ô§kÔ~Ô~qð~ð~²¬y¤+¤+ƒ¨;¨+а;°+‘¸;¸+–À;À+  £`X`H¬xYxIl±äYäI°º b R* À Œ |8Å |~}Î$‚ YV DÛÒˆ¨;°;¸;*× @ ŒO¤bVp× b¬;o´;|¤+ Џ;–~ ¬áç »¤ŒÇÀê< çüê$ ø ë1 Që/ 4€ë¤ X$ì- wQì` —±ìA °òìx Íjí ëyíC ¼í  Éî± 5zð T”ñS u¨Œ•çñX ·?òG Ù†òG üÀ;P¸Œ+4óR N€c[†ó½ ~ˆc‹Cô{ ²c¿¾ô{ ë˜cø9õ{ +´õ^ Y <Pz¼Œ‡ö¨ ¦`d ³ºö> Úld çø÷> xd%6ù› N€<@kÀŒxÑù¨ yúG ±Àú} Ü=ûG ÷„ûR ÖûR 8(üR RzüR mÀ<€…Ìü© ˜uþO °Äþ_ Ê@=0ÝÀf ê#ÿ 'O #Ìf0v½ Q€=0j gw3„ ™¨g¦·b İgÑL úÈges 1Ðg>Ø1 bägo â ”ëG ¶2 G Úìgçy ›  O 1 À=°L c  l x Ò ÄŒ J ¨ ³ ò f É ÀhÖ X ½ ò Èhÿ    ¥  A ÐhN ¦ s Øh€ h› £ àh° ¦ × èhä ©Å  ðh n´ B øhO "´ { iˆ Ö ° i½ f ä iñ ö  i$ †š K iX š ~ (i‹ º˜ ² 0i ¿ R« æ G …q !öq Dgq dØO 'q ¢˜Q ½éT å= q ® q %!G FiSf! x~"R Ÿ˜i¬Ð"Ø Ì iÙ¨#› ù¨iC$› '°i4Þ$› O¸i\y%› ÀiŒ&› ¬Èi¹¯&½ ÔÐiál'› Øi(¤ ,ài9«(› ^èikF)› Œ€>P¡á)G ½(*G ßÀjìo*› Èj +B =àAPU k bL,, |¬k ‰x.1 §¸k ´©0w ÎÄkÛ 2b öÌk‚3ˆ #äk0 5 Qìk^"6L ~l‹n7ç ¬ l¹U81 Ú lç†9â h:G (¯:G Iö:} js;R @Bð¥m ²Å;z × mä?=A $m€>í H@C@dm?O ¼?G ÂnÏ@› €C@ž@€ ABP oàn|nB› ª CP Öèn ãYC¸ ônEL < oI]Fç so€DGb ¨ÀC€È¦H€ æàoó&JØ þJ_ EèoR]KØ }5L_ ¨ðoµ”Lj ÙøoæþMc paOe >pKÆPb pp}(Rb £p°ŠSl Õ pâöTl (pbV  90p FmW kœ? ž+À|«+}œÏ Á+LO Ü+àJ ñ+›ß , } ,zž¤ 0,¬}=,¡› ^,¹¡¬ |,´}‰,e¢› ©,K@À,£ Ü,¤f ñ,€~þ,i¤² -¥q --Œ¥q G-ý¥q h-n¦q ˆ-ߦO ¢-ˆ~ ¯-.§m Ç-›¨G æ-â¨G .”~ .)©m 0.–ªG M. ~Z.ݪÀ ƒ.¨~.«À ¾.°~Ë.]¬À î.­G /¸~%/d­À K/$®G g/k®G /²®q  /@KP´/#¯› Í/¾¯L í/ ±O 0 L ,0Y±‚ C0Û±f Z0A²G t0ˆ² Ž0˜³G ¯0ß³G Ç0&´G î0m´G 1´´G '1@€41û´n H1T€U1i¶â p1\€}1K·X š1l€§1£¸â Ë1t€Ø1…¹Å õ1Jº½ 2ÀL+2»¼ A2ûf R2@_2)¼² r2Û¼‚ Œ2]½‚ ¢2ß½‚ ·2a¾‚ Ó2ã¾f ë2Hø2I¿¯ 3P3ø¿â D3XQ3ÚÀ² i3`v3ŒÁê •3h¢3v¯ Å3%ÃG Ü3pé3là 4ü !4x.4~Ä @4€M4@Æ1 e4”r4qÇ ‹4œ ˜4uÈ  ¯4¨ ¼4•Ê  Ð4´Ý4µÌB ò4Èÿ4÷Ά 5à)5}Ð G5èT5ц n5‚{5Ó –5 ‚ £5 ÔÙ ¾5@‚Ë5äÕ ç5H‚ô5èÖ4 6P‚ 6Ø 86\‚E62Ù. ]6l‚n6ˆ‚{6`Û¶ ™6¤‚¦6Þ Å6¬‚ Ò6ßÒ õ6¸‚7ìàL +7Ђ878âí b7Ø‚o7%ã ‘7à‚ž7çä1 Æ7ô‚Ó7æ ü7ü‚ 8ç. )8 ƒ68Jé¨ \8(ƒi8òê 80ƒ 8öëÒ »8<ƒÈ8ÈíL ì8Tƒù8ï 9\ƒ+9ð£ ?9dƒL9»ñ£ _9lƒl9^ó ~9 ƒ$‹9yõ £9ă°9’÷â É9̃Ö9tø è9äƒõ9ú£ :ìƒ:2ü# G:ôƒ T:Uý³ t:„:ÿ ¨:„µ:‡ Ü:„é:É ;(„;Ïó 7;8„D;‹ f;T„s;M –;\„£;lâ Å;p„Ò;N â ù;„„<0 â (<˜„5<â V<¬„c<ô …<À„’<ùò ³<Ô„À<ë¦ ä<ì„ñ<‘â =ô„)=s¦ F= …S= w=…„=n £=(…°=‹â Ö=0…ã=mk >D… >Øâ 1>L…>>ºó [>\… h>­â ‡>h… ”>!â ®>t… »>q#È Ð>€…Ý>9%„ ?ˆ… ?½&ž (?…5?[( V? …c?m)Y …?¨…’?Æ* °?À… ½?ä,ï á?à…î?Ó.( @ÀMP$@û/¼ 9@·09 N@ð0L j@À†w@<2² Š@î2‚ ¡@ S0²@p39 Ç@©3L ã@ ‡ ð@õ4C A¬‡A861 9AÀ‡FAi7% hA`S@AŽ8f ˜Aô8‚ ¯Av9f ÆAÜ9‚ ÝA^:f öAÄ:f B*;G (Bq;G @B ˆMB¸;° cB´ˆpBh=â B¼ˆšBJ>° ®BЈ»Bú?â ÖB؈ãBÜ@B ùBðˆCCâ #Cøˆ0CD* QC ‰^C*E †C‰ “CGF4 ¹C{GG ÓCÂGR èCHR ÿC SPDfH& 'DŒIQ =DÝIG WDà‰dD$J– zDºKG ˜Dð‰ ¥DL{ ¿DU`ÔD|M‚ ìDþMf EdN‚ EæNf 5ELOf NE²OG gEùOG €E@PG  EÀŠ­E‡P  ÂEØŠÏE§Râ ëEàŠøE‰Sn FôŠF÷Tâ 6FüŠCFÙUÅ aFžV½ †F[WO ©F`U¼FªW¼ ÓFfX« ìFYã Gà‹ GôY‡ AGì‹NG{Zy zGô‹‡GôZ| °Gü‹ ½Gp[© åGŒ òG\i H‚]3 ;HŒ HHµ] dH Œ qH4^ ‹H,Œ˜H³^q ¸H4ŒÅH$_¦ êH<Œ÷HÊ_¦ IDŒ'Ip` EILŒRIaq yITŒ†Iqa¦ ªIbQ ÅIhc® êI\Œ ÷Idæ JhŒ#Jüd ;JpŒHJŒe§ dJxŒqJ3f‰ J€ŒšJ¼f3 ÄJïg3 ÜJ"h3 òJUh3 KˆŒKˆh™ DK!i@ UKaks nKÔks ‹KŒ˜KGl ­KÜ( ÇK†ÀÔKÔ~ ÚK`rÀñKäYñÿLà†ÀL|À0L nÀJLAè‹ YLhÀpLÀbÀŠL`qÀ¤L½å± ¿LàsÀÔLjÀåLqs  üLfÀ M ‹ÀM cÀ7Mam¸ KMÀ}À^M€pÀvMà|À‡M xÀ M€uÀ»MàfÀÐM bÝM€yÀ÷M å± N@mÀ'N`zÀ3N@lÀGN`vÀdN tÀN Œñÿ‹N@{À¡N wÀºNÀ~ÀÊN€€ÀØNŠÀéNnæç OÔŒO oÀ0O ‰À>OØŒñÿCO€ÀWOàjÀkO ŒñÿrO@eÀ†OUçì  O`V°OÍòg ÌO€dÀåOå üOà‡ÀP`XñÿP,´ PÌèò ´Ô¤5ènds´sä¢,´\´ × Ô~ ð~ ¤+ ¨;°;¸;À;`XxYäY b Œ/PKP_P;fPxP„PÉŸPj½PjÒPâîPQQ3QÉMQŽ[QjQ|QGˆQœQŽ´QrÑQ>íQÉþQÞ#RæCRjaR*€RߣRÞºRúÙRÏöRkS0(SÜCS0^S>zSá—SȰS;ÕSØ÷Sî T *Tê>T ^T–xTuŠT˰T¦ÚTÉòTŽU UE:UOUñsUjŒUý¬U¦ÅU6áUCûUbVO)V¶?V–WVoVŠV–ŸVÁÂV2ÖVòVpWÉWy=Wû^WŽwW †W šWJ¶W|ÑWTàWÛX—#X–;XYXÉkX–‰Xj¤XG²X ÌXNÝXÛþXâYbYÉ-YßPYákYƒY“YÈ£YÕÀYÞíYZF*ZéNZäqZÛŠZ–™ZθZ¶ÞZáøZ‰[J0[lJ[lk[܆[³ [½[ÞÏ[Éá[#í[ß\á0\áO\jh\î\\Û¼\ÛÚ\áõ\4 ]“+]D]T]¨w]I‰]Û­]9È]©ì]^û+^G^ÉZ^Yr^É„^¥^¬×r  ®^‰·^Â^N×^*í^  _*_É>_j]_ãn_t{_Î_l²_Í_Jï_¶ÿ_°`É1`©N`Éd`ëˆ`'µ`É`Üæ`Éø`© a.aÉAaÉ\a¦paÈŽa®a’Ía'Üaúöabè bÉ:bmHbÅYb vb‡bÉ™b¯µbzÑbàb¨cGcÞ#cv8cD`c5}c…˜c3·cxÃc'Ñc¢âc3d&dD6dÅZdjdÅŸd‰­djÑd©öd eû+eDHeyWeÉkePe¦¡eÿÈeæàeáúeÉ fÉf.fNGfñ[fpfÉ‚fÛ—fù®fÛÅfÖföf–g5gGg½Wgètgj–gc©g¸ÏgRägêh>!hÉ4hÉUh©zhs‰hðžh­hâÄh-Úhfîhi6iœMi¶ni7€iij¬i¾icÐiçiÞüiÛjê2j©[j5zjg–jp§jÈÆjpßj…k %k1k4q©^qq¶Ÿqr®q¿q-ÖqTèqÛúqrî-rèQr£fr¨Šr˜rô­rFÇrÉØrÉäržssý?s±^s¶Šs–s¶²sÉÈs¨çs¤ñs–tÛ&t&7tÃZt*ztC—tɦtÿ¼tjÝtá÷tå uÞ*u+Iuduʼnu-¢u©ÂudØu\vv§EvèbvÉvv¨–v_«v>Ìv\ívüvOwá+wùBwPwÖ`w˜‰w&©w>ÅwýÝwüw x +xáEx©lx¦’x§xî¿x>Îxjðx y y,yKy|gyµy®™y³yjÔyGêyúyyzÍ5z·MzÛcz©€zÜžz²zêÒzÜåzÜ{.{è.{ÞL{h[{j{O{Þ­{ÒÔ{jñ{j|Ü-|A| ^|Üp|'~|ô–|£|¹|ÃÝ|zø|f}å=}áZ}}}‰}É•}î¦}–¿}8Ô}ô}Œ~®2~ÞR~Ïq~Õ~É ~kÁ~ÉÑ~ë~ü~-è6ÜTúgwˆªºôÚCùÛ€¦C€¤b€Ho€û€Ü£€ƒ¾€ÒØ€Gå€Jc0jIW‰}–˜µË ëá‚j&‚¦;‚ÛQ‚Èk‚É~‚'ނɧ‚É‚ê‚ ƒ¶*ƒƒ>ƒáXƒnƒtŽƒ  ƒ4¾ƒ ݃ûùƒ„È6„E„°a„áv„®”„¦»„ÉÏ„Õî„' …}#…É4…?…Õ]…¶ƒ…Ä‘…Ú"­…¾…¡Î….Þ…Ö†'†.!†Ü;†áV†Ég†d|†H™†É­†I¼†3Ú†Éî†ü† ‡©2‡G‡¦_‡Éj‡–‡š–‡û¸‡J͇ã‡Mˆˆ>:ˆûZˆ\wˆ0’ˆpŸˆN­ˆ‰__CTOR_LIST____DTOR_LIST____JCR_LIST____do_global_dtors_auxcompleted.5958p.5956frame_dummy__CTOR_END____DTOR_END____FRAME_END____JCR_END____do_global_ctors_auxpygobject_initquark.21269pygio_notify_get_internal_quarkpygio_notify_newpygio_notify_new_slavepygio_notify_using_optional_callbackpygio_notify_callback_is_valid_fullpygio_notify_callback_is_validpygio_notify_reference_callbackpygio_notify_copy_bufferpygio_notify_allocate_bufferpygio_notify_attach_to_resultpygio_notify_get_attachedpygio_notify_freeasync_result_callback_marshalfile_progress_callback_marshalpygio_file_attribute_info_tp_newpyg_file_attribute_info_methodspyg_file_attribute_info__get_namepyg_file_attribute_info__get_typepyg_file_attribute_info__get_flagspyg_file_attribute_info_getsetsour_type.21606_g_file_attribute_matcher_get_typekwlist.21657_wrap_g_file_attribute_matcher_newkwlist.21676_wrap_g_file_attribute_matcher_matcheskwlist.21695_wrap_g_file_attribute_matcher_matches_onlykwlist.21714_wrap_g_file_attribute_matcher_enumerate_namespace_wrap_g_file_attribute_matcher_enumerate_next_PyGFileAttributeMatcher_methodskwlist.21750_wrap_g_app_launch_context_newkwlist.21767_wrap_g_app_launch_context_get_displaykwlist.21806_wrap_g_app_launch_context_get_startup_notify_idkwlist.21845_wrap_g_app_launch_context_launch_failed_PyGAppLaunchContext_methodskwlist.21867_wrap_g_cancellable_new_wrap_g_cancellable_is_cancelled_wrap_g_cancellable_set_error_if_cancelled_wrap_g_cancellable_get_fd_wrap_g_cancellable_push_current_wrap_g_cancellable_pop_current_wrap_g_cancellable_reset_wrap_g_cancellable_cancel_PyGCancellable_methods_wrap_g_emblem_new_wrap_g_emblem_get_icon_wrap_g_emblem_get_origin_PyGEmblem_methodskwlist.22053_wrap_g_emblemed_icon_new_wrap_g_emblemed_icon_get_iconkwlist.22103_wrap_g_emblemed_icon_add_emblem_PyGEmblemedIcon_methodskwlist.22130_wrap_g_file_enumerator_next_filekwlist.22188_wrap_g_file_enumerator_closekwlist.22240_wrap_g_file_enumerator_next_files_asynckwlist.22275_wrap_g_file_enumerator_next_files_finishkwlist.22326_wrap_g_file_enumerator_close_asynckwlist.22359_wrap_g_file_enumerator_close_finish_wrap_g_file_enumerator_is_closed_wrap_g_file_enumerator_has_pendingkwlist.22417_wrap_g_file_enumerator_set_pending_wrap_g_file_enumerator_get_container_PyGFileEnumerator_methods_wrap_g_file_enumerator_tp_iter_wrap_g_file_enumerator_tp_iternextkwlist.22491_wrap_g_file_info_new_wrap_g_file_info_dupkwlist.22527_wrap_g_file_info_copy_intokwlist.22552_wrap_g_file_info_has_attribute_wrap_g_file_info_list_attributeskwlist.22611_wrap_g_file_info_get_attribute_typekwlist.22635_wrap_g_file_info_remove_attributekwlist.22655_wrap_g_file_info_get_attribute_statuskwlist.22679_wrap_g_file_info_get_attribute_as_stringkwlist.22705_wrap_g_file_info_get_attribute_stringkwlist.22730_wrap_g_file_info_get_attribute_byte_stringkwlist.22755_wrap_g_file_info_get_attribute_booleankwlist.22776_wrap_g_file_info_get_attribute_uint32kwlist.22797_wrap_g_file_info_get_attribute_int32kwlist.22818_wrap_g_file_info_get_attribute_uint64kwlist.22839_wrap_g_file_info_get_attribute_int64kwlist.22860_wrap_g_file_info_get_attribute_objectkwlist.22883_wrap_g_file_info_set_attribute_stringkwlist.22905_wrap_g_file_info_set_attribute_byte_stringkwlist.22927_wrap_g_file_info_set_attribute_booleankwlist.22949_wrap_g_file_info_set_attribute_uint32kwlist.22971_wrap_g_file_info_set_attribute_int32kwlist.22993_wrap_g_file_info_set_attribute_uint64kwlist.23017_wrap_g_file_info_set_attribute_int64kwlist.23039_wrap_g_file_info_set_attribute_object_PyGObject_Type_wrap_g_file_info_clear_status_wrap_g_file_info_get_file_type_wrap_g_file_info_get_is_hidden_wrap_g_file_info_get_is_backup_wrap_g_file_info_get_is_symlink_wrap_g_file_info_get_name_wrap_g_file_info_get_display_name_wrap_g_file_info_get_edit_name_wrap_g_file_info_get_icon_wrap_g_file_info_get_content_type_wrap_g_file_info_get_size_wrap_g_file_info_get_modification_time_wrap_g_file_info_get_symlink_target_wrap_g_file_info_get_etag_wrap_g_file_info_get_sort_orderkwlist.23290_wrap_g_file_info_set_attribute_mask_wrap_g_file_info_unset_attribute_maskkwlist.23344_wrap_g_file_info_set_file_typekwlist.23373_wrap_g_file_info_set_is_hiddenkwlist.23393_wrap_g_file_info_set_is_symlinkkwlist.23413_wrap_g_file_info_set_namekwlist.23433_wrap_g_file_info_set_display_namekwlist.23453_wrap_g_file_info_set_edit_namekwlist.23473_wrap_g_file_info_set_iconkwlist.23498_wrap_g_file_info_set_content_typekwlist.23518_wrap_g_file_info_set_sizekwlist.23538_wrap_g_file_info_set_symlink_targetkwlist.23558_wrap_g_file_info_set_sort_order_PyGFileInfo_methods_wrap_g_file_monitor_cancel_wrap_g_file_monitor_is_cancelledkwlist.23606_wrap_g_file_monitor_set_rate_limitkwlist.23626_wrap_g_file_monitor_emit_event_PyGFileMonitor_methodskwlist.23671_wrap_g_input_stream_readkwlist.23757_wrap_g_input_stream_read_allkwlist.23844_wrap_g_input_stream_skipkwlist.23899_wrap_g_input_stream_closekwlist.23951_wrap_g_input_stream_read_asynckwlist.23991_wrap_g_input_stream_read_finishkwlist.24031_wrap_g_input_stream_skip_asynckwlist.24067_wrap_g_input_stream_skip_finishkwlist.24100_wrap_g_input_stream_close_asynckwlist.24133_wrap_g_input_stream_close_finish_wrap_g_input_stream_is_closed_wrap_g_input_stream_has_pending_wrap_g_input_stream_set_pending_wrap_g_input_stream_clear_pending_PyGInputStream_methodskwlist.24224_wrap_g_file_input_stream_query_infokwlist.24281_wrap_g_file_input_stream_query_info_asynckwlist.24317_wrap_g_file_input_stream_query_info_finish_PyGFileInputStream_methods_wrap_g_filter_input_stream_get_base_stream_wrap_g_filter_input_stream_get_close_base_streamkwlist.24383_wrap_g_filter_input_stream_set_close_base_stream_PyGFilterInputStream_methods_wrap_g_buffered_input_stream_new_wrap_g_buffered_input_stream_get_buffer_sizekwlist.24458_wrap_g_buffered_input_stream_set_buffer_size_wrap_g_buffered_input_stream_get_availablekwlist.24492_wrap_g_buffered_input_stream_fillkwlist.24557_wrap_g_buffered_input_stream_fill_asynckwlist.24592_wrap_g_buffered_input_stream_fill_finishkwlist.24625_wrap_g_buffered_input_stream_read_byte_PyGBufferedInputStream_methods_wrap_g_data_input_stream_newkwlist.24718_wrap_g_data_input_stream_set_byte_order_wrap_g_data_input_stream_get_byte_orderkwlist.24763_wrap_g_data_input_stream_set_newline_type_wrap_g_data_input_stream_get_newline_typekwlist.24808_wrap_g_data_input_stream_read_bytekwlist.24861_wrap_g_data_input_stream_read_int16kwlist.24913_wrap_g_data_input_stream_read_uint16kwlist.24965_wrap_g_data_input_stream_read_int32kwlist.25017_wrap_g_data_input_stream_read_uint32kwlist.25069_wrap_g_data_input_stream_read_int64kwlist.25121_wrap_g_data_input_stream_read_uint64kwlist.25173_wrap_g_data_input_stream_read_linekwlist.25209_wrap_g_data_input_stream_read_untilkwlist.25247_wrap_g_data_input_stream_read_until_asynckwlist.25282_wrap_g_data_input_stream_read_until_finishkwlist.25318_wrap_g_data_input_stream_read_line_asynckwlist.25351_wrap_g_data_input_stream_read_line_finish_PyGDataInputStream_methodskwlist.25389_wrap_g_memory_input_stream_newkwlist.25406_wrap_g_memory_input_stream_add_data_PyGMemoryInputStream_methodskwlist.25449_wrap_g_mount_operation_new_wrap_g_mount_operation_get_usernamekwlist.25483_wrap_g_mount_operation_set_username_wrap_g_mount_operation_get_passwordkwlist.25520_wrap_g_mount_operation_set_password_wrap_g_mount_operation_get_anonymouskwlist.25553_wrap_g_mount_operation_set_anonymous_wrap_g_mount_operation_get_domainkwlist.25590_wrap_g_mount_operation_set_domain_wrap_g_mount_operation_get_password_savekwlist.25626_wrap_g_mount_operation_set_password_save_wrap_g_mount_operation_get_choicekwlist.25668_wrap_g_mount_operation_set_choicekwlist.25688_wrap_g_mount_operation_reply_PyGMountOperation_methodskwlist.25719_wrap_g_output_stream_writekwlist.25766_wrap_g_output_stream_write_allkwlist.25814_wrap_g_output_stream_splicekwlist.25888_wrap_g_output_stream_flushkwlist.25940_wrap_g_output_stream_closekwlist.25992_wrap_g_output_stream_write_asynckwlist.26032_wrap_g_output_stream_write_finishkwlist.26065_wrap_g_output_stream_splice_asynckwlist.26118_wrap_g_output_stream_splice_finishkwlist.26151_wrap_g_output_stream_flush_asynckwlist.26184_wrap_g_output_stream_flush_finishkwlist.26216_wrap_g_output_stream_close_asynckwlist.26249_wrap_g_output_stream_close_finish_wrap_g_output_stream_is_closed_wrap_g_output_stream_has_pending_wrap_g_output_stream_set_pending_wrap_g_output_stream_clear_pending_PyGOutputStream_methods_wrap_g_memory_output_stream_new_wrap_g_memory_output_stream_get_data_wrap_g_memory_output_stream_get_size_wrap_g_memory_output_stream_get_data_size_PyGMemoryOutputStream_methods_wrap_g_filter_output_stream_get_base_stream_wrap_g_filter_output_stream_get_close_base_streamkwlist.26432_wrap_g_filter_output_stream_set_close_base_stream_PyGFilterOutputStream_methods_wrap_g_buffered_output_stream_new_wrap_g_buffered_output_stream_get_buffer_sizekwlist.26507_wrap_g_buffered_output_stream_set_buffer_size_wrap_g_buffered_output_stream_get_auto_growkwlist.26540_wrap_g_buffered_output_stream_set_auto_grow_PyGBufferedOutputStream_methods_wrap_g_data_output_stream_newkwlist.26601_wrap_g_data_output_stream_set_byte_order_wrap_g_data_output_stream_get_byte_orderkwlist.26646_wrap_g_data_output_stream_put_bytekwlist.26702_wrap_g_data_output_stream_put_int16kwlist.26758_wrap_g_data_output_stream_put_uint16kwlist.26814_wrap_g_data_output_stream_put_int32kwlist.26868_wrap_g_data_output_stream_put_uint32kwlist.26922_wrap_g_data_output_stream_put_int64kwlist.26976_wrap_g_data_output_stream_put_uint64kwlist.27032_wrap_g_data_output_stream_put_string_PyGDataOutputStream_methodskwlist.27088_wrap_g_file_output_stream_query_infokwlist.27145_wrap_g_file_output_stream_query_info_asynckwlist.27181_wrap_g_file_output_stream_query_info_finish_wrap_g_file_output_stream_get_etag_PyGFileOutputStream_methodspygobject_no_constructorkwlist.27247_wrap_g_simple_async_result_set_op_res_gssize_wrap_g_simple_async_result_get_op_res_gssizekwlist.27281_wrap_g_simple_async_result_set_op_res_gboolean_wrap_g_simple_async_result_get_op_res_gbooleankwlist.27314_wrap_g_simple_async_result_set_handle_cancellation_wrap_g_simple_async_result_complete_wrap_g_simple_async_result_complete_in_idle_wrap_g_simple_async_result_propagate_error_PyGSimpleAsyncResult_methods_wrap_g_vfs_is_activekwlist.27392_wrap_g_vfs_get_file_for_pathkwlist.27419_wrap_g_vfs_get_file_for_urikwlist.27446_wrap_g_vfs_parse_name_wrap_g_vfs_get_supported_uri_schemes_PyGVfs_methods_wrap_g_volume_monitor_get_connected_drives_wrap_g_volume_monitor_get_volumes_wrap_g_volume_monitor_get_mountskwlist.27600_wrap_g_volume_monitor_get_volume_for_uuidkwlist.27627_wrap_g_volume_monitor_get_mount_for_uuid_PyGVolumeMonitor_methods_wrap_g_volume_monitor_tp_newkwlist.27671_wrap_g_file_icon_new_wrap_g_file_icon_get_file_PyGFileIcon_methods_wrap_g_file_icon_tp_reprkwlist.27746_wrap_g_themed_icon_newkwlist.27833_wrap_g_themed_icon_prepend_name_wrap_g_themed_icon_get_nameskwlist.27882_wrap_g_themed_icon_append_name_PyGThemedIcon_methods_wrap_g_themed_icon_tp_repr_wrap_g_app_info_dupkwlist.27953_wrap_g_app_info_equal_wrap_g_app_info_get_id_wrap_g_app_info_get_name_wrap_g_app_info_get_description_wrap_g_app_info_get_executable_wrap_g_app_info_get_iconkwlist.28063_wrap_g_app_info_launch_wrap_g_app_info_supports_uris_wrap_g_app_info_supports_fileskwlist.28135_wrap_g_app_info_launch_uris_wrap_g_app_info_should_showkwlist.28194_wrap_g_app_info_set_as_default_for_typekwlist.28221_wrap_g_app_info_set_as_default_for_extensionkwlist.28248_wrap_g_app_info_add_supports_type_wrap_g_app_info_can_remove_supports_typekwlist.28288_wrap_g_app_info_remove_supports_type_wrap_g_app_info_can_delete_wrap_g_app_info_delete_wrap_g_app_info_get_commandline_PyGAppInfo_methods_wrap_g_app_info_tp_repr_wrap_g_app_info_tp_richcompare_wrap_g_async_result_get_source_object_PyGAsyncResult_methods_wrap_g_drive_get_name_wrap_g_drive_get_icon_wrap_g_drive_has_volumes_wrap_g_drive_get_volumes_wrap_g_drive_is_media_removable_wrap_g_drive_has_media_wrap_g_drive_is_media_check_automatic_wrap_g_drive_can_poll_for_media_wrap_g_drive_can_ejectkwlist.28602_wrap_g_drive_ejectkwlist.28646_wrap_g_drive_eject_finishkwlist.28678_wrap_g_drive_poll_for_mediakwlist.28719_wrap_g_drive_poll_for_media_finishkwlist.28751_wrap_g_drive_get_identifier_wrap_g_drive_enumerate_identifiers_PyGDrive_methods_wrap_g_drive_tp_repr_wrap_g_file_dupkwlist.28853_wrap_g_file_equal_wrap_g_file_get_basename_wrap_g_file_get_path_wrap_g_file_get_uri_wrap_g_file_get_parse_name_wrap_g_file_get_parentkwlist.28970_wrap_g_file_get_childkwlist.28997_wrap_g_file_get_child_for_display_namekwlist.29030_wrap_g_file_has_prefixkwlist.29056_wrap_g_file_get_relative_pathkwlist.29087_wrap_g_file_resolve_relative_path_wrap_g_file_is_nativekwlist.29127_wrap_g_file_has_uri_scheme_wrap_g_file_get_uri_schemekwlist.29166_wrap_g_file_readkwlist.29234_wrap_g_file_read_asynckwlist.29267_wrap_g_file_read_finishkwlist.29305_wrap_g_file_append_tokwlist.29387_wrap_g_file_createkwlist.29469_wrap_g_file_replacekwlist.29555_wrap_g_file_append_to_asynckwlist.29599_wrap_g_file_append_to_finishkwlist.29637_wrap_g_file_create_asynckwlist.29681_wrap_g_file_create_finishkwlist.29719_wrap_g_file_replace_asynckwlist.29770_wrap_g_file_replace_finishkwlist.29808_wrap_g_file_query_existskwlist.29854_wrap_g_file_query_file_typekwlist.29894_wrap_g_file_query_infoold_kwlist.29986kwlist.29978_wrap_g_file_query_info_asynckwlist.30078_wrap_g_file_query_info_finishkwlist.30116_wrap_g_file_query_filesystem_infokwlist.30186_wrap_g_file_query_filesystem_info_asynckwlist.30221_wrap_g_file_query_filesystem_info_finishkwlist.30256_wrap_g_file_find_enclosing_mountkwlist.30324_wrap_g_file_find_enclosing_mount_asynckwlist.30357_wrap_g_file_find_enclosing_mount_finishkwlist.30395_wrap_g_file_enumerate_childrenkwlist.30479_wrap_g_file_enumerate_children_asynckwlist.30527_wrap_g_file_enumerate_children_finishkwlist.30565_wrap_g_file_set_display_namekwlist.30635_wrap_g_file_set_display_name_asynckwlist.30670_wrap_g_file_set_display_name_finishkwlist.30708_wrap_g_file_deletekwlist.30770_wrap_g_file_trashkwlist.30832_wrap_g_file_copykwlist.30902_wrap_g_file_copy_asynckwlist.30957_wrap_g_file_copy_finishkwlist.30989_wrap_g_file_movekwlist.31059_wrap_g_file_make_directorykwlist.31121_wrap_g_file_make_directory_with_parentskwlist.31163_wrap_g_file_make_symbolic_linkkwlist.31227_wrap_g_file_query_settable_attributeskwlist.31275_wrap_g_file_query_writable_namespaceskwlist.31323_wrap_g_file_set_attributekwlist.31384_wrap_g_file_set_attributes_from_infokwlist.31457_wrap_g_file_set_attributes_asynckwlist.31499_wrap_g_file_set_attributes_finishkwlist.31542_wrap_g_file_set_attribute_stringkwlist.31612_wrap_g_file_set_attribute_byte_stringkwlist.31682_wrap_g_file_set_attribute_uint32kwlist.31752_wrap_g_file_set_attribute_int32kwlist.31822_wrap_g_file_set_attribute_uint64kwlist.31894_wrap_g_file_set_attribute_int64kwlist.31964_wrap_g_file_mount_enclosing_volumekwlist.32015_wrap_g_file_mount_enclosing_volume_finishkwlist.32047_wrap_g_file_mount_mountablekwlist.32098_wrap_g_file_mount_mountable_finishkwlist.32136_wrap_g_file_unmount_mountablekwlist.32180_wrap_g_file_unmount_mountable_finishkwlist.32212_wrap_g_file_eject_mountablekwlist.32254_wrap_g_file_eject_mountable_finishkwlist.32286_wrap_g_file_copy_attributeskwlist.32359_wrap_g_file_monitor_directorykwlist.32431_wrap_g_file_monitor_filekwlist.32503_wrap_g_file_monitorkwlist.32572_wrap_g_file_query_default_handlerkwlist.32630_wrap_g_file_load_contentskwlist.32686_wrap_g_file_load_contents_asynckwlist.32717_wrap_g_file_load_contents_finishkwlist.32763_wrap_g_file_replace_contentskwlist.32833_wrap_g_file_replace_contents_asynckwlist.32888_wrap_g_file_replace_contents_finish_PyGFile_methods_wrap_g_file_tp_repr_wrap_g_file_tp_hash_wrap_g_file_tp_richcomparekwlist.33010_wrap_g_icon_equal_wrap_g_icon_to_string_PyGIcon_methods_wrap_g_icon_tp_hash_wrap_g_icon_tp_richcomparekwlist.33112_wrap_g_loadable_icon_loadkwlist.33154_wrap_g_loadable_icon_load_asynckwlist.33187_wrap_g_loadable_icon_load_finish_PyGLoadableIcon_methods_wrap_g_mount_get_root_wrap_g_mount_get_name_wrap_g_mount_get_icon_wrap_g_mount_get_uuid_wrap_g_mount_get_volume_wrap_g_mount_get_drive_wrap_g_mount_can_unmount_wrap_g_mount_can_ejectkwlist.33367_wrap_g_mount_unmountkwlist.33421_wrap_g_mount_unmount_finishkwlist.33453_wrap_g_mount_ejectkwlist.33507_wrap_g_mount_eject_finishkwlist.33539_wrap_g_mount_remountkwlist.33614_wrap_g_mount_remount_finishkwlist.33646_wrap_g_mount_guess_content_typekwlist.33679_wrap_g_mount_guess_content_type_finishkwlist.33719_wrap_g_mount_guess_content_type_sync_wrap_g_mount_is_shadowed_wrap_g_mount_shadow_wrap_g_mount_unshadow_PyGMount_methods_wrap_g_mount_tp_repr_wrap_g_seekable_tell_wrap_g_seekable_can_seekkwlist.33863_wrap_g_seekable_seek_wrap_g_seekable_can_truncatekwlist.33933_wrap_g_seekable_truncate_PyGSeekable_methods_wrap_g_volume_get_name_wrap_g_volume_get_icon_wrap_g_volume_get_uuid_wrap_g_volume_get_drive_wrap_g_volume_get_mount_wrap_g_volume_can_mount_wrap_g_volume_can_eject_wrap_g_volume_should_automountkwlist.34121_wrap_g_volume_mountkwlist.34192_wrap_g_volume_mount_finishkwlist.34224_wrap_g_volume_ejectkwlist.34268_wrap_g_volume_eject_finishkwlist.34300_wrap_g_volume_get_identifier_wrap_g_volume_enumerate_identifiers_wrap_g_volume_get_activation_root_PyGVolume_methods_wrap_g_volume_tp_repr_wrap_g_app_info_get_all_wrap_g_app_info_get_all_for_typekwlist.34457_wrap_g_app_info_get_default_for_typekwlist.34478_wrap_g_app_info_get_default_for_uri_schemekwlist.34497_wrap_g_app_info_reset_type_associationskwlist.34512_wrap_g_buffered_input_stream_new_sizedkwlist.34538_wrap_g_buffered_output_stream_new_sized_wrap_g_cancellable_get_currentkwlist.34604_wrap_g_content_type_equalskwlist.34622_wrap_g_content_type_is_akwlist.34640_wrap_g_content_type_is_unknownkwlist.34656_wrap_g_content_type_get_descriptionkwlist.34677_wrap_g_content_type_get_mime_typekwlist.34698_wrap_g_content_type_get_iconkwlist.34720_wrap_g_content_type_can_be_executablekwlist.34736_wrap_g_content_type_from_mime_type_wrap_g_content_type_guess_wrap_g_content_types_get_registeredkwlist.34820_wrap_g_emblem_new_with_originkwlist.34855_wrap_g_file_parse_namekwlist.34877_wrap_g_icon_new_for_stringkwlist.34902_wrap_g_io_error_from_errnokwlist.34921_wrap_g_memory_input_stream_new_from_data_wrap_g_vfs_get_default_wrap_g_vfs_get_local_wrap_g_volume_monitor_getkwlist.34994_wrap_g_volume_monitor_adopt_orphan_mount_wrap__file_init_wrap__install_file_meta_wrap__install_app_info_metakwlist.35113_wrap__app_info_init__PRETTY_FUNCTION__.35218PyGFile_Type_finiPyGMountOperation_Type_GLOBAL_OFFSET_TABLE_PyGIcon_TypePyGNativeVolumeMonitor_TypePyGFilterInputStream_Typestrv_to_pylistPyGFileEnumerator_TypePyGFileAttributeInfo_TypePyGMemoryInputStream_Typepygio_check_launch_contextPyGOutputStream_TypePyGFileInfo_Typepygio_register_classesPyGEmblem_TypePyGVolume_TypePyGFileAttributeMatcher_Typepygio_add_constantsPyGThemedIcon_TypePyGDataInputStream_TypePyGFileIcon_TypePyGFileOutputStream_TypePyGFilterOutputStream_TypePyGEmblemedIcon_Type__dso_handlePyGSimpleAsyncResult_Typepygio_check_cancellablePyGFileInputStream_TypePyGVfs_TypePyGInputStream_TypePyGBufferedOutputStream_TypePyGMemoryOutputStream_Type__bss_startPyGVolumeMonitor_TypePyGDataOutputStream_TypePyGAppInfo_TypePyGDrive_TypePyGSeekable_Typepygio_pylist_to_gfile_glist_PyGObject_APIPyGBufferedInputStream_TypePyGMount_Type_endPyGAsyncResult_TypePyGFileMonitor_Type_edataPyGCancellable_Typepygio_pylist_to_uri_glistpygio_functionspyg_file_attribute_info_newPyGAppLaunchContext_Type__i686.get_pc_thunk.bxPyGLoadableIcon_Type_DYNAMIC_initpylist_to_strv__errno_location@@GLIBC_2.0g_input_stream_readg_freePyExc_ImportErrorg_file_copyg_drive_is_media_removableg_file_monitor_flags_get_typeg_file_type_get_typeg_loadable_icon_load_finishg_volume_get_identifierPyDict_SetItemStringg_async_result_get_typeg_app_info_supports_filesg_value_unset_Py_ZeroStructPyString_AsStringg_file_readPyExc_StopIterationg_file_set_display_nameg_file_attribute_matcher_refg_file_set_attribute_stringg_mount_get_uuidg_file_mount_enclosing_volume_finishg_file_enumerate_children_asyncg_ask_password_flags_get_typeg_data_output_stream_put_int32g_buffered_output_stream_new_sizedg_app_info_launch_urisg_file_replace_contents_finishg_mount_operation_set_domaing_file_replace_contents_asyncg_cancellable_resetg_drive_can_poll_for_mediag_file_load_contents_asyncg_file_find_enclosing_mountg_file_info_get_display_nameg_file_info_clear_statusg_file_input_stream_query_info_asyncg_file_find_enclosing_mount_asyncg_file_info_get_sizeg_output_stream_clear_pendingg_emblemed_icon_newg_data_output_stream_put_stringg_volume_monitor_get_typeg_file_copy_asyncg_file_input_stream_query_info_finishg_simple_async_result_get_op_res_gbooleang_seekable_can_truncateg_content_type_can_be_executablePyType_Readyg_themed_icon_append_nameg_file_icon_get_typeg_volume_monitor_get_mount_for_uuidg_emblem_origin_get_typeg_file_info_set_attribute_int64g_emblemed_icon_get_icong_file_load_contents_finishg_cancellable_get_currentg_file_info_list_attributesg_file_query_infog_output_stream_closeg_input_stream_get_typePyLong_FromUnsignedLongPyModule_AddStringConstantg_file_info_get_typeg_file_make_directory_with_parentsg_file_monitor_filePyLong_FromUnsignedLongLongg_file_has_prefixg_file_get_basenameg_data_input_stream_read_until_asyncg_file_info_get_attribute_uint32g_loadable_icon_get_type__gmon_start___Jv_RegisterClassesg_file_set_attribute_uint64g_input_stream_close_asyncg_object_unrefg_file_find_enclosing_mount_finishg_file_set_attributes_from_infog_file_monitor_get_typeg_file_output_stream_get_etagg_app_info_get_idg_file_enumerator_close_asyncg_file_copy_flags_get_typeg_file_deleteg_file_info_set_edit_nameg_file_append_tog_file_enumerate_children_finishg_file_create_asyncg_strdupg_volume_get_nameg_file_query_filesystem_info_asyncg_file_info_set_is_symlink_PyArg_ParseTuple_SizeTPyBool_FromLongg_file_icon_newg_file_input_stream_get_typeg_filter_output_stream_set_close_base_streamg_file_get_child_for_display_nameg_input_stream_set_pendingg_volume_monitor_adopt_orphan_mountg_app_launch_context_launch_failedg_file_query_info_finishg_vfs_get_typeg_simple_async_result_get_typeg_volume_monitor_get_connected_drivesg_file_info_set_file_typeg_file_attribute_matcher_newg_file_set_attribute_int64g_content_type_is_unknowng_file_info_set_attribute_objectg_app_info_get_commandlineg_cancellable_pop_current_PyObject_CallFunction_SizeTg_app_info_launchg_file_get_parentg_list_freeg_buffered_input_stream_new_sizedg_file_attribute_info_list_unrefg_file_info_get_symlink_targetg_io_error_enum_get_typeg_volume_monitor_get_volume_for_uuidPyObject_IsTrueg_file_set_display_name_finishg_drive_poll_for_media_finishg_file_info_get_is_symlinkg_file_mount_mountableg_data_output_stream_put_int64_Py_NotImplementedStructPyExc_TypeErrorg_data_input_stream_get_byte_ordermemset@@GLIBC_2.0g_file_query_filesystem_info_finishg_emblemed_icon_add_emblemg_mount_operation_get_password_saveg_emblem_new_with_origing_file_info_get_attribute_byte_stringg_file_enumerator_next_fileg_volume_get_mountg_input_stream_read_allg_volume_get_uuidg_native_volume_monitor_get_typeinit_giog_mallocPyInt_Typeg_content_type_guessg_output_stream_flushg_input_stream_clear_pendingg_data_output_stream_put_uint64g_drive_get_volumesg_mount_unmount_flags_get_typeg_file_get_childg_string_newg_emblem_get_typeg_cancellable_set_error_if_cancelledPyString_FromStringAndSizeg_file_info_get_modification_timeg_vfs_is_activeg_input_stream_has_pendingg_app_info_should_showg_mount_operation_get_choiceg_file_get_uri_schemeg_buffered_input_stream_fill_finishg_file_attribute_matcher_enumerate_namespaceg_app_info_get_typeg_volume_get_activation_rootg_drive_has_mediag_buffered_input_stream_get_buffer_sizePyString_Sizeg_mount_get_volumeg_app_info_get_descriptiong_emblem_get_origing_file_monitor_set_rate_limitg_data_output_stream_put_uint16g_file_attribute_matcher_unrefg_volume_ejectg_file_info_has_attributePyErr_Formatg_output_stream_flush_finishg_app_info_get_executableg_strv_lengthg_icon_to_stringg_file_info_set_content_typePyArg_ParseTupleg_mount_get_driveg_file_enumerator_is_closedg_output_stream_flush_asyncPyErr_Occurredg_file_enumerator_get_containerg_vfs_get_localg_file_copy_finishg_volume_monitor_getg_app_info_set_as_default_for_extensiong_file_query_default_handlerg_cancellable_push_currentg_data_input_stream_read_int32g_file_moveg_mount_ejectg_mount_unshadowg_memory_input_stream_new_from_datag_strdup_printfg_app_info_remove_supports_typeg_mount_operation_set_password_saveg_file_attribute_info_flags_get_typeg_mount_operation_set_anonymousg_string_freeg_data_stream_newline_type_get_typeg_data_input_stream_get_newline_typeg_seekable_get_typeg_file_info_get_attribute_stringg_app_info_add_supports_typeg_mount_shadowg_mount_can_unmountg_data_input_stream_read_line_asyncg_emblem_get_icong_simple_async_result_complete_in_idleg_file_query_info_asyncg_file_info_get_edit_nameg_mount_get_nameg_mount_get_rootg_volume_get_typeg_file_monitor_directoryg_seekable_truncatePyEval_RestoreThreadg_mount_can_ejectg_mount_eject_finishg_file_query_file_typeg_mount_unmount_finishg_drive_get_typeg_data_input_stream_read_uint64g_file_attribute_matcher_matchesg_data_output_stream_get_typePyExc_MemoryErrorg_file_info_dupg_output_stream_write_finishg_data_stream_byte_order_get_typeg_file_new_for_urig_file_attribute_matcher_matches_onlyg_input_stream_closeg_file_info_set_attribute_booleang_file_set_attribute_int32g_volume_get_driveg_drive_is_media_check_automaticg_memory_output_stream_get_data_sizeg_file_replaceg_file_replace_async_Py_TrueStructg_file_append_to_asyncg_file_info_copy_intog_content_type_is_aPyString_FromStringg_output_stream_splice_asyncg_simple_async_result_set_handle_cancellationg_file_info_unset_attribute_maskmemcpy@@GLIBC_2.0PyInt_FromLongg_mount_mount_flags_get_typePyEval_SaveThreadg_file_parse_nameg_drive_get_identifierg_file_create_finishg_drive_eject_finishg_file_info_set_attribute_uint32g_buffered_output_stream_get_buffer_sizeg_memory_input_stream_add_datag_file_set_attributes_asyncg_app_info_equalg_file_enumerator_close_finishg_file_get_relative_pathg_buffered_input_stream_set_buffer_sizeg_file_set_display_name_asyncPyDict_Sizeg_snprintfg_file_output_stream_query_info_finishg_input_stream_close_finishPyModule_GetDictg_seekable_seekg_file_input_stream_query_infog_input_stream_is_closedg_vfs_get_file_for_pathPySequence_GetItemPyErr_Restoreg_file_enumerator_has_pendingPyInt_AsLongPyCObject_AsVoidPtrg_file_append_to_finishg_buffered_input_stream_fillg_async_result_get_source_objectpyglib_register_exception_for_domaing_data_input_stream_read_linePySequence_SizePyExc_RuntimeErrorg_file_info_get_attribute_int64PyType_IsSubtypeg_icon_equalg_file_info_set_symlink_targetg_file_read_finishg_file_info_set_attribute_byte_stringg_file_enumerator_get_typeg_volume_get_icong_file_monitor_event_get_typeg_mount_operation_set_choicePyObject_Initg_themed_icon_get_typeg_file_query_existsg_emblemed_icon_get_typeg_slice_allocg_file_replace_finishg_quark_from_stringg_file_info_get_attribute_uint64g_file_output_stream_query_info_asyncg_file_monitor_emit_eventg_file_new_for_commandline_argg_content_type_get_mime_typeg_data_input_stream_read_uint32g_file_attribute_type_get_typeg_file_info_get_sort_orderg_content_type_equalsg_drive_can_ejectg_file_get_urig_app_info_can_remove_supports_typeg_output_stream_set_pendingg_file_info_set_nameg_app_info_reset_type_associationsg_output_stream_writeg_loadable_icon_load_asyncg_buffered_input_stream_fill_asyncPyObject_Mallocg_filter_output_stream_get_close_base_streamPyErr_Fetchg_memory_output_stream_get_typeg_app_info_get_default_for_uri_schemeg_file_query_settable_attributesg_mount_operation_get_anonymousg_file_info_set_attribute_stringg_vfs_get_supported_uri_schemesg_file_monitorPySequence_Checkg_file_eject_mountableg_vfs_get_defaultg_file_read_asyncg_output_stream_write_asyncg_vfs_get_file_for_urig_file_enumerator_next_files_finishg_file_set_attributeg_data_output_stream_get_byte_orderPy_BuildValueg_file_info_set_sizepyglib_float_from_timevalg_drive_get_nameg_file_hashg_app_info_create_from_commandlinePyObject_GetAttrStringg_file_info_set_attribute_uint64g_data_input_stream_read_int64g_filter_input_stream_get_close_base_streamPyLong_Typeg_volume_monitor_get_mountsg_file_get_parse_nameg_mount_operation_get_passwordg_reallocg_app_launch_context_get_typeg_mount_remount_finishg_io_error_quarkg_data_input_stream_set_byte_orderg_data_output_stream_put_uint32g_file_info_remove_attributeg_app_info_dupg_io_error_from_errnog_file_query_info_flags_get_typeg_file_info_set_is_hiddeng_loadable_icon_loadg_file_eject_mountable_finishg_simple_async_result_completeg_type_check_instance_castg_data_input_stream_set_newline_typeg_file_unmount_mountableg_memory_output_stream_get_sizeg_icon_new_for_stringg_app_launch_context_get_startup_notify_idg_input_stream_read_asyncg_simple_async_result_set_op_res_gssizeg_output_stream_close_finishg_app_info_get_nameg_memory_output_stream_get_datag_file_info_set_icong_file_set_attribute_byte_stringg_app_launch_context_get_display_Py_NoneStructg_file_enumerate_childreng_file_info_get_nameg_output_stream_splicePyList_Appendg_seekable_tellg_buffered_output_stream_set_buffer_sizeg_mount_guess_content_type_syncg_file_set_attribute_uint32g_file_replace_contentsg_data_output_stream_put_int16PyErr_SetNoneg_file_info_get_attribute_statusg_file_info_get_is_backupg_buffered_output_stream_get_auto_growg_filter_input_stream_get_base_streamPyDict_GetItemStringg_content_type_get_icong_list_reverseg_mount_operation_result_get_typeg_data_input_stream_read_int16PySequence_TuplePyErr_Printg_filter_input_stream_get_typeg_output_stream_close_asyncg_file_enumerator_closeg_output_stream_is_closedPyLong_AsUnsignedLongLongg_file_attribute_status_get_typeg_file_make_directoryg_file_get_typeg_file_monitor_is_cancelledg_mount_operation_set_passwordg_mount_operation_replyg_volume_eject_finishg_mount_operation_get_domaing_data_input_stream_read_bytePyLong_FromLongLongg_file_info_set_attribute_int32g_volume_can_ejectg_volume_enumerate_identifiersg_volume_mountg_input_stream_skip_finishg_file_mount_mountable_finishg_list_prependPy_InitModule4g_file_copy_attributesg_filter_input_stream_set_close_base_streamg_buffered_output_stream_set_auto_growg_file_create_flags_get_typeg_output_stream_splice_flags_get_typeg_app_info_can_deletePyEval_CallFunctiong_file_info_set_display_nameg_app_info_deleteg_drive_ejectg_object_set_qdata_fullPyTuple_SizePyImport_ImportModuleg_data_output_stream_set_byte_orderg_memory_output_stream_newg_file_set_attributes_finishg_file_attribute_matcher_enumerate_nextg_file_info_get_content_typeg_app_info_set_as_default_for_typePyErr_Clearg_icon_hashg_vfs_parse_nameg_output_stream_get_typeg_cancellable_get_fdg_filter_output_stream_get_typeg_mount_is_shadowedg_simple_async_result_set_op_res_gbooleang_file_unmount_mountable_finishg_mount_operation_set_usernameg_data_output_stream_put_byteg_file_is_nativeg_file_query_writable_namespacesg_file_get_pathPyExc_NotImplementedErrorg_mount_get_typeg_data_input_stream_read_untilg_input_stream_read_finishg_drive_enumerate_identifiersg_app_info_get_allPyTuple_GetItem_PyString_Resizeg_buffered_input_stream_read_bytePyErr_SetStringg_app_info_get_default_for_typeg_file_info_set_attribute_maskg_mount_guess_content_type_finishg_simple_async_result_get_op_res_gssizeg_content_type_get_descriptiong_slice_copyg_file_info_get_attribute_objectg_volume_can_mountg_themed_icon_prepend_nameg_input_stream_skip_asyncg_file_trashg_data_input_stream_get_typePyList_SetItemg_strfreevg_file_new_for_pathg_password_save_get_typePyString_Typeg_data_input_stream_read_until_finishg_mount_operation_get_typeg_file_resolve_relative_pathg_file_has_uri_schemeg_data_input_stream_read_uint16g_file_info_get_file_typeg_app_info_create_flags_get_typeg_file_icon_get_fileg_volume_mount_finishg_file_make_symbolic_linkg_object_get_qdatag_mount_unmountg_app_info_supports_urisg_buffered_output_stream_get_typeg_buffered_input_stream_get_type_PyArg_ParseTupleAndKeywords_SizeTg_volume_monitor_get_volumesg_input_stream_skipg_file_info_get_is_hiddeng_file_monitor_cancelg_file_output_stream_query_infog_quark_to_stringg_file_mount_enclosing_volumeg_file_info_get_attribute_typeg_app_info_get_all_for_typeg_content_types_get_registeredg_output_stream_splice_finishPyCObject_Typeg_output_stream_has_pendingg_file_info_get_etagg_file_enumerator_set_pendingg_filter_output_stream_get_base_streamg_drive_has_volumesg_memory_input_stream_get_typeg_mount_guess_content_typeg_output_stream_write_allg_drive_get_iconPyList_Newg_file_output_stream_get_typeg_buffered_input_stream_get_availableg_slice_free1__cxa_finalize@@GLIBC_2.1.3PyCallable_Checkg_string_appendg_mount_remountg_simple_async_result_propagate_errorg_string_append_printfg_logg_volume_should_automountg_file_info_set_sort_orderg_mount_get_icong_file_load_contentsg_file_query_filesystem_infog_seekable_can_seekg_slice_alloc0g_content_type_from_mime_typeg_app_info_get_iconPyObject_Reprg_drive_poll_for_mediag_mount_operation_get_username_Py_BuildValue_SizeTg_themed_icon_get_namesg_file_dupg_cancellable_get_typeg_cancellable_cancelg_file_info_get_attribute_booleang_file_info_get_iconPyLong_AsUnsignedLongg_file_info_get_attribute_as_stringg_icon_get_typeg_file_enumerator_next_files_asyncg_file_info_get_attribute_int32g_boxed_type_register_staticg_cancellable_is_cancelledg_file_equalg_file_createg_data_input_stream_read_line_finish./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gio/__init__.py0000644000000000000000000000246011272036653024733 0ustar rootroot# -*- Mode: Python -*- # pygobject - Python bindings for the GObject library # Copyright (C) 2008 Johan Dahlin # # gio/__init__.py: initialisation file for gio module # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA from gobject import GObjectMeta from _gio import * from _gio import \ _app_info_init, _install_app_info_meta, \ _file_init, _install_file_meta try: import unix unix # pyflakes except ImportError: unix = None del _gio class GFileMeta(GObjectMeta): __call__ = _file_init _install_file_meta(GFileMeta) class GAppInfoMeta(GObjectMeta): __call__ = _app_info_init _install_app_info_meta(GAppInfoMeta) ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gio/_gio.la0000755000000000000000000000215711272036652024062 0ustar rootroot# _gio.la - a libtool library file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='_gio.so' # Names of this library. library_names='_gio.so _gio.so _gio.so' # The name of the static archive. old_library='' # Linker flags that can not go in dependency_libs. inherited_linker_flags=' -pthread' # Libraries that this one depends upon. dependency_libs=' /usr/lib/libgio-2.0.la -lresolv /usr/lib/libgmodule-2.0.la -ldl /usr/lib/libpyglib-2.0-python.la /usr/lib/libgobject-2.0.la /usr/lib/libgthread-2.0.la -lpthread -lrt /usr/lib/libglib-2.0.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for _gio. current=0 age=0 revision=0 # Is this an already installed library? installed=yes # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/lib/python2.5/site-packages/gtk-2.0/gio' ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/dsextras.py0000644000000000000000000003602011272036655024254 0ustar rootroot# # dsextras.py - Extra classes and utilities for distutils, adding # pkg-config support from distutils.command.build_ext import build_ext from distutils.command.install_lib import install_lib from distutils.command.install_data import install_data from distutils.extension import Extension import distutils.dep_util import fnmatch import os import re import string import sys GLOBAL_INC = [] GLOBAL_MACROS = [] def get_m4_define(varname): """Return the value of a m4_define variable as set in configure.in.""" pattern = re.compile("m4_define\(" + varname + "\,\s*(.+)\)") if os.path.exists('configure.ac'): fname = 'configure.ac' elif os.path.exists('configure.in'): fname = 'configure.in' else: raise SystemExit('could not find configure file') for line in open(fname).readlines(): match_obj = pattern.match(line) if match_obj: return match_obj.group(1) return None def getoutput(cmd): """Return output (stdout or stderr) of executing cmd in a shell.""" return getstatusoutput(cmd)[1] def getstatusoutput(cmd): """Return (status, output) of executing cmd in a shell.""" if sys.platform == 'win32': pipe = os.popen(cmd, 'r') text = pipe.read() sts = pipe.close() or 0 if text[-1:] == '\n': text = text[:-1] return sts, text else: from commands import getstatusoutput return getstatusoutput(cmd) def have_pkgconfig(): """Checks for the existence of pkg-config""" if (sys.platform == 'win32' and os.system('pkg-config --version > NUL') == 0): return 1 else: if getstatusoutput('pkg-config')[0] == 256: return 1 def list_files(dir): """List all files in a dir, with filename match support: for example: glade/*.glade will return all files in the glade directory that matches *.glade. It also looks up the full path""" if dir.find(os.sep) != -1: parts = dir.split(os.sep) dir = string.join(parts[:-1], os.sep) pattern = parts[-1] else: pattern = dir dir = '.' dir = os.path.abspath(dir) retval = [] for file in os.listdir(dir): if fnmatch.fnmatch(file, pattern): retval.append(os.path.join(dir, file)) return retval def pkgc_version_check(name, req_version): """Check the existence and version number of a package: returns 0 if not installed or too old, 1 otherwise.""" is_installed = not os.system('pkg-config --exists %s' % name) if not is_installed: return 0 orig_version = getoutput('pkg-config --modversion %s' % name) version = map(int, orig_version.split('.')) pkc_version = map(int, req_version.split('.')) if version >= pkc_version: return 1 return 0 class BuildExt(build_ext): def init_extra_compile_args(self): self.extra_compile_args = [] if sys.platform == 'win32' and \ self.compiler.compiler_type == 'mingw32': # MSVC compatible struct packing is required. # Note gcc2 uses -fnative-struct while gcc3 # uses -mms-bitfields. Based on the version # the proper flag is used below. msnative_struct = { '2' : '-fnative-struct', '3' : '-mms-bitfields' } gcc_version = getoutput('gcc -dumpversion') print 'using MinGW GCC version %s with %s option' % \ (gcc_version, msnative_struct[gcc_version[0]]) self.extra_compile_args.append(msnative_struct[gcc_version[0]]) def modify_compiler(self): if sys.platform == 'win32' and \ self.compiler.compiler_type == 'mingw32': # Remove '-static' linker option to prevent MinGW ld # from trying to link with MSVC import libraries. if self.compiler.linker_so.count('-static'): self.compiler.linker_so.remove('-static') def build_extensions(self): # Init self.extra_compile_args self.init_extra_compile_args() # Modify default compiler settings self.modify_compiler() # Invoke base build_extensions() build_ext.build_extensions(self) def build_extension(self, ext): # Add self.extra_compile_args to ext.extra_compile_args ext.extra_compile_args += self.extra_compile_args # Generate eventual templates before building if hasattr(ext, 'generate'): ext.generate() # Filter out 'c' and 'm' libs when compilic w/ msvc if sys.platform == 'win32' and self.compiler.compiler_type == 'msvc': save_libs = ext.libraries ext.libraries = [lib for lib in ext.libraries if lib not in ['c', 'm']] else: save_libs = ext.libraries # Invoke base build_extension() build_ext.build_extension(self, ext) if save_libs != None and save_libs != ext.libraries: ext.libraries = save_libs class InstallLib(install_lib): local_outputs = [] local_inputs = [] def set_install_dir(self, install_dir): self.install_dir = install_dir def get_outputs(self): return install_lib.get_outputs(self) + self.local_outputs def get_inputs(self): return install_lib.get_inputs(self) + self.local_inputs class InstallData(install_data): local_outputs = [] local_inputs = [] template_options = {} def prepare(self): if os.name == "nt": self.prefix = os.sep.join(self.install_dir.split(os.sep)[:-3]) else: # default: os.name == "posix" self.prefix = os.sep.join(self.install_dir.split(os.sep)[:-4]) self.exec_prefix = '${prefix}/bin' self.includedir = '${prefix}/include' self.libdir = '${prefix}/lib' self.datarootdir = '${prefix}/share' self.datadir = '${prefix}/share' self.add_template_option('prefix', self.prefix) self.add_template_option('exec_prefix', self.exec_prefix) self.add_template_option('includedir', self.includedir) self.add_template_option('libdir', self.libdir) self.add_template_option('datarootdir', self.datarootdir) self.add_template_option('datadir', self.datadir) self.add_template_option('PYTHON', sys.executable) self.add_template_option('THREADING_CFLAGS', '') def set_install_dir(self, install_dir): self.install_dir = install_dir def add_template_option(self, name, value): self.template_options['@%s@' % name] = value def install_template(self, filename, install_dir): """Install template filename into target directory install_dir.""" output_file = os.path.split(filename)[-1][:-3] template = open(filename).read() for key, value in self.template_options.items(): template = template.replace(key, value) output = os.path.join(install_dir, output_file) self.mkpath(install_dir) open(output, 'w').write(template) self.local_inputs.append(filename) self.local_outputs.append(output) return output def get_outputs(self): return install_data.get_outputs(self) + self.local_outputs def get_inputs(self): return install_data.get_inputs(self) + self.local_inputs class PkgConfigExtension(Extension): # Name of pygobject package extension depends on, can be None pygobject_pkc = 'pygobject-2.0' can_build_ok = None def __init__(self, **kwargs): name = kwargs['pkc_name'] kwargs['include_dirs'] = self.get_include_dirs(name) + GLOBAL_INC kwargs['define_macros'] = GLOBAL_MACROS kwargs['libraries'] = self.get_libraries(name) kwargs['library_dirs'] = self.get_library_dirs(name) if 'pygobject_pkc' in kwargs: self.pygobject_pkc = kwargs.pop('pygobject_pkc') if self.pygobject_pkc: kwargs['include_dirs'] += self.get_include_dirs(self.pygobject_pkc) kwargs['libraries'] += self.get_libraries(self.pygobject_pkc) kwargs['library_dirs'] += self.get_library_dirs(self.pygobject_pkc) self.name = kwargs['name'] self.pkc_name = kwargs['pkc_name'] self.pkc_version = kwargs['pkc_version'] del kwargs['pkc_name'], kwargs['pkc_version'] Extension.__init__(self, **kwargs) def get_include_dirs(self, names): if type(names) != tuple: names = (names,) retval = [] for name in names: output = getoutput('pkg-config --cflags-only-I %s' % name) retval.extend(output.replace('-I', '').split()) return retval def get_libraries(self, names): if type(names) != tuple: names = (names,) retval = [] for name in names: output = getoutput('pkg-config --libs-only-l %s' % name) retval.extend(output.replace('-l', '').split()) return retval def get_library_dirs(self, names): if type(names) != tuple: names = (names,) retval = [] for name in names: output = getoutput('pkg-config --libs-only-L %s' % name) retval.extend(output.replace('-L', '').split()) return retval def can_build(self): """If the pkg-config version found is good enough""" if self.can_build_ok != None: return self.can_build_ok if type(self.pkc_name) != tuple: reqs = [(self.pkc_name, self.pkc_version)] else: reqs = zip(self.pkc_name, self.pkc_version) for package, version in reqs: retval = os.system('pkg-config --exists %s' % package) if retval: print ("* %s.pc could not be found, bindings for %s" " will not be built." % (package, self.name)) self.can_build_ok = 0 return 0 orig_version = getoutput('pkg-config --modversion %s' % package) if (map(int, orig_version.split('.')) >= map(int, version.split('.'))): self.can_build_ok = 1 return 1 else: print "Warning: Too old version of %s" % self.pkc_name print " Need %s, but %s is installed" % \ (package, orig_version) self.can_build_ok = 0 return 0 def generate(self): pass # The Template and TemplateExtension classes require codegen which is # currently part of the pygtk distribution. While codegen might ultimately # be moved to pygobject, it was decided (bug #353849) to keep the Template # and TemplateExtension code in dsextras. In the meantime, we check for the # availability of codegen and redirect the user to the pygtk installer if # he/she wants to get access to Template and TemplateExtension. template_classes_enabled=True codegen_error_message=""" *************************************************************************** Codegen could not be found on your system and is required by the dsextras.Template and dsextras.TemplateExtension classes. codegen is part of PyGTK. To use either Template or TemplateExtension, you should also install PyGTK. *************************************************************************** """ try: from codegen.override import Overrides from codegen.defsparser import DefsParser from codegen.codegen import register_types, SourceWriter, \ FileOutput import codegen.createdefs except ImportError, e: template_classes_enabled=False class Template(object): def __new__(cls,*args, **kwds): if not template_classes_enabled: raise NameError("'%s' is not defined\n" % cls.__name__ + codegen_error_message) return object.__new__(cls,*args, **kwds) def __init__(self, override, output, defs, prefix, register=[], load_types=None, py_ssize_t_clean=False): self.override = override self.output = output self.prefix = prefix self.load_types = load_types self.py_ssize_t_clean = py_ssize_t_clean self.built_defs=[] if isinstance(defs,tuple): self.defs=defs[0] self.built_defs.append(defs) else: self.defs=defs self.register=[] for r in register: if isinstance(r,tuple): self.register.append(r[0]) self.built_defs.append(r) else: self.register.append(r) def check_dates(self): # Return True if files are up-to-date files=self.register[:] files.append(self.override) files.append(self.defs) return not distutils.dep_util.newer_group(files,self.output) def generate_defs(self): for (target,sources) in self.built_defs: if distutils.dep_util.newer_group(sources,target): # createdefs is mostly called from the CLI ! args=['dummy',target]+sources codegen.createdefs.main(args) def generate(self): # Generate defs files if necessary self.generate_defs() # ... then check the file timestamps if self.check_dates(): return for item in self.register: dp = DefsParser(item,dict(GLOBAL_MACROS)) dp.startParsing() register_types(dp) if self.load_types: globals = {} execfile(self.load_types, globals) dp = DefsParser(self.defs,dict(GLOBAL_MACROS)) dp.startParsing() register_types(dp) fd = open(self.output, 'w') sw = SourceWriter(dp,Overrides(self.override), self.prefix,FileOutput(fd,self.output)) sw.write(self.py_ssize_t_clean) fd.close() class TemplateExtension(PkgConfigExtension): def __new__(cls,*args, **kwds): if not template_classes_enabled: raise NameError("'%s' is not defined\n" % cls.__name__ + codegen_error_message) return PkgConfigExtension.__new__(cls,*args, **kwds) def __init__(self, **kwargs): name = kwargs['name'] defs = kwargs['defs'] if isinstance(defs,tuple): output = defs[0][:-5] + '.c' else: output = defs[:-5] + '.c' override = kwargs['override'] load_types = kwargs.get('load_types') py_ssize_t_clean = kwargs.pop('py_ssize_t_clean',False) self.templates = [] self.templates.append(Template(override, output, defs, 'py' + name, kwargs['register'], load_types, py_ssize_t_clean)) del kwargs['register'], kwargs['override'], kwargs['defs'] if load_types: del kwargs['load_types'] if kwargs.has_key('output'): kwargs['name'] = kwargs['output'] del kwargs['output'] PkgConfigExtension.__init__(self, **kwargs) def generate(self): map(lambda x: x.generate(), self.templates) ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gobject/0000755000000000000000000000000011272036701023451 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gobject/propertyhelper.py0000644000000000000000000002260511272036643027121 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # pygobject - Python bindings for the GObject library # Copyright (C) 2007 Johan Dahlin # # gobject/propertyhelper.py: GObject property wrapper/helper # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA import sys import gobject._gobject _gobject = sys.modules['gobject._gobject'] from gobject.constants import \ TYPE_NONE, TYPE_INTERFACE, TYPE_CHAR, TYPE_UCHAR, \ TYPE_BOOLEAN, TYPE_INT, TYPE_UINT, TYPE_LONG, \ TYPE_ULONG, TYPE_INT64, TYPE_UINT64, TYPE_ENUM, \ TYPE_FLAGS, TYPE_FLOAT, TYPE_DOUBLE, TYPE_STRING, \ TYPE_POINTER, TYPE_BOXED, TYPE_PARAM, TYPE_OBJECT, \ TYPE_PYOBJECT from gobject.constants import \ G_MINFLOAT, G_MAXFLOAT, G_MINDOUBLE, G_MAXDOUBLE, \ G_MININT, G_MAXINT, G_MAXUINT, G_MINLONG, G_MAXLONG, \ G_MAXULONG class property(object): """ Creates a new property which in conjunction with GObject subclass will create a property proxy: >>> class MyObject(gobject.GObject): >>> ... prop = gobject.property(type=str) >>> obj = MyObject() >>> obj.prop = 'value' >>> obj.prop 'value' The API is similar to the builtin property: class AnotherObject(gobject.GObject): @gobject.property def prop(self): return ... Which will create a read-only property called prop. """ class __metaclass__(type): def __repr__(self): return "" def __init__(self, getter=None, setter=None, type=None, default=None, nick='', blurb='', flags=_gobject.PARAM_READWRITE, minimum=None, maximum=None): """ @param getter: getter to get the value of the property @type getter: callable @param setter: setter to set the value of the property @type setter: callable @param type: type of property @type type: type @param default: default value @param nick: short description @type bick: string @param blurb: long description @type blurb: string @param flags: parameter flags, one of: - gobject.PARAM_READABLE - gobject.PARAM_READWRITE - gobject.PARAM_WRITABLE - gobject.PARAM_CONSTRUCT - gobject.PARAM_CONSTRUCT_ONLY - gobject.PARAM_LAX_VALIDATION @keyword minimum: minimum allowed value (int, float, long only) @keyword maximum: maximum allowed value (int, float, long only) """ if getter and not setter: setter = self._readonly_setter elif setter and not getter: getter = self._writeonly_getter elif not setter and not getter: getter = self._default_getter setter = self._default_setter self.getter = getter self.setter = setter if type is None: type = object self.type = self._type_from_python(type) self.default = self._get_default(default) self._check_default() if not isinstance(nick, basestring): raise TypeError("nick must be a string") self.nick = nick if not isinstance(blurb, basestring): raise TypeError("blurb must be a string") self.blurb = blurb if flags < 0 or flags > 32: raise TypeError("invalid flag value: %r" % (flags,)) self.flags = flags if minimum is not None: if minimum < self._get_minimum(): raise TypeError( "Minimum for type %s cannot be lower than %d" % ( self.type, self._get_minimum())) else: minimum = self._get_minimum() self.minimum = minimum if maximum is not None: if maximum > self._get_maximum(): raise TypeError( "Maximum for type %s cannot be higher than %d" % ( self.type, self._get_maximum())) else: maximum = self._get_maximum() self.maximum = maximum self.name = None self._values = {} self._exc = None def __repr__(self): return '' % ( self.name or '(uninitialized)', _gobject.type_name(self.type)) def __get__(self, instance, klass): if instance is None: return self self._exc = None value = instance.get_property(self.name) if self._exc: exc = self._exc self._exc = None raise exc return value def __set__(self, instance, value): if instance is None: raise TypeError self._exc = None instance.set_property(self.name, value) if self._exc: exc = self._exc self._exc = None raise exc def _type_from_python(self, type): if type == int: return TYPE_INT elif type == bool: return TYPE_BOOLEAN elif type == long: return TYPE_LONG elif type == float: return TYPE_DOUBLE elif type == str: return TYPE_STRING elif type == object: return TYPE_PYOBJECT elif type == _gobject.GObject: return TYPE_OBJECT elif type in [TYPE_NONE, TYPE_INTERFACE, TYPE_CHAR, TYPE_UCHAR, TYPE_INT, TYPE_UINT, TYPE_BOOLEAN, TYPE_LONG, TYPE_ULONG, TYPE_INT64, TYPE_UINT64, TYPE_ENUM, TYPE_FLAGS, TYPE_FLOAT, TYPE_DOUBLE, TYPE_POINTER, TYPE_BOXED, TYPE_PARAM, TYPE_OBJECT, TYPE_STRING, TYPE_PYOBJECT]: return type else: raise TypeError("Unsupported type: %r" % (type,)) def _get_default(self, default): ptype = self.type if default is not None: return default if ptype in [TYPE_INT, TYPE_UINT, TYPE_LONG, TYPE_ULONG, TYPE_INT64, TYPE_UINT64]: return 0 elif ptype == TYPE_STRING: return '' elif ptype == TYPE_FLOAT or ptype == TYPE_DOUBLE: return 0.0 else: return None def _check_default(self): ptype = self.type default = self.default if (ptype == TYPE_BOOLEAN and (default not in (True, False))): raise TypeError( "default must be True or False, not %r" % (default,)) elif ptype == TYPE_PYOBJECT: if default is not None: raise TypeError("object types does not have default values") def _get_minimum(self): ptype = self.type if ptype in [TYPE_UINT, TYPE_ULONG, TYPE_UINT64]: return 0 elif ptype == TYPE_FLOAT: return G_MINFLOAT elif ptype == TYPE_DOUBLE: return G_MINDOUBLE elif ptype == TYPE_INT: return G_MININT elif ptype == TYPE_LONG: return G_MINLONG elif ptype == TYPE_INT64: return -2 ** 62 - 1 return None def _get_maximum(self): ptype = self.type if ptype == TYPE_UINT: return G_MAXUINT elif ptype == TYPE_ULONG: return G_MAXULONG elif ptype == TYPE_INT64: return 2 ** 62 - 1 elif ptype == TYPE_UINT64: return 2 ** 63 - 1 elif ptype == TYPE_FLOAT: return G_MAXFLOAT elif ptype == TYPE_DOUBLE: return G_MAXDOUBLE elif ptype == TYPE_INT: return G_MAXINT elif ptype == TYPE_LONG: return G_MAXLONG return None # # Getter and Setter # def _default_setter(self, instance, value): self._values[instance] = value def _default_getter(self, instance): return self._values.get(instance, self.default) def _readonly_setter(self, instance, value): self._exc = TypeError("%s property of %s is read-only" % ( self.name, type(instance).__name__)) def _writeonly_getter(self, instance): self._exc = TypeError("%s property of %s is write-only" % ( self.name, type(instance).__name__)) # # Public API # def get_pspec_args(self): ptype = self.type if ptype in [TYPE_INT, TYPE_UINT, TYPE_LONG, TYPE_ULONG, TYPE_INT64, TYPE_UINT64, TYPE_FLOAT, TYPE_DOUBLE]: args = self._get_minimum(), self._get_maximum(), self.default elif ptype == TYPE_STRING or ptype == TYPE_BOOLEAN: args = (self.default,) elif ptype == TYPE_PYOBJECT: args = () elif ptype == TYPE_OBJECT: args = () else: raise NotImplementedError(ptype) return (self.type, self.nick, self.blurb) + args + (self.flags,) ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gobject/constants.py0000644000000000000000000000533311272036642026047 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # pygobject - Python bindings for the GObject library # Copyright (C) 2006-2007 Johan Dahlin # # gobject/constants.py: GObject type constants # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA import sys import gobject._gobject _gobject = sys.modules['gobject._gobject'] # TYPE_INVALID defined in gobjectmodule.c TYPE_NONE = _gobject.type_from_name('void') TYPE_INTERFACE = _gobject.type_from_name('GInterface') TYPE_CHAR = _gobject.type_from_name('gchar') TYPE_UCHAR = _gobject.type_from_name('guchar') TYPE_BOOLEAN = _gobject.type_from_name('gboolean') TYPE_INT = _gobject.type_from_name('gint') TYPE_UINT = _gobject.type_from_name('guint') TYPE_LONG = _gobject.type_from_name('glong') TYPE_ULONG = _gobject.type_from_name('gulong') TYPE_INT64 = _gobject.type_from_name('gint64') TYPE_UINT64 = _gobject.type_from_name('guint64') TYPE_ENUM = _gobject.type_from_name('GEnum') TYPE_FLAGS = _gobject.type_from_name('GFlags') TYPE_FLOAT = _gobject.type_from_name('gfloat') TYPE_DOUBLE = _gobject.type_from_name('gdouble') TYPE_STRING = _gobject.type_from_name('gchararray') TYPE_POINTER = _gobject.type_from_name('gpointer') TYPE_BOXED = _gobject.type_from_name('GBoxed') TYPE_PARAM = _gobject.type_from_name('GParam') TYPE_OBJECT = _gobject.type_from_name('GObject') TYPE_PYOBJECT = _gobject.type_from_name('PyObject') TYPE_UNICHAR = TYPE_UINT # This part is generated by generate-constants.c G_MINFLOAT = 0.000000 G_MINFLOAT = 0.000000 G_MAXFLOAT = 340282346638528859811704183484516925440.000000 G_MINDOUBLE = 0.000000 G_MAXDOUBLE = 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.000000 G_MINSHORT = -32768 G_MAXSHORT = 32767 G_MAXUSHORT = 65535 G_MININT = -2147483648 G_MAXINT = 2147483647 G_MAXUINT = 4294967295 G_MINLONG = -2147483648L G_MAXLONG = 2147483647L G_MAXULONG = 4294967295L ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gobject/_gobject.so0000755000000000000000000046715211272036701025612 0ustar rootrootELFpa4Lý4 (DâDâDâDòDò\ÌXâXòXòøøQåtdP<òk7¡©ãü)å(?;ÎÀ¨ý¬`5.8žä|$íö7MÐØ/¯CXOF@á G%DqBµL²e£Y2š&4S¢Ÿfl"ðܱ+ÿ—ƒ¿+,úH¶ >Òs@1ëÑ9ÉÍó•ç¦ËEO_›¹Ìཾ WŒ9Ô%ôJL23*Ö\î†ñ³j¼4œÆ6uøNQ„"oBKÙA‰AˆE¥$:*#­æÂ§Óì-‚ÛI'‡  :5?<P1CH8.(')Jd}6=G;R˜ #Z€xM¤Šcyn{”’~v“´UmhÊ®ÏVÃ…×FD]Ú& ! wz>ݖęߪ껫rÁ‹éè÷ÕŽÈKû ¸iaÞâþ0·  3t T‘bïg,N^! /=°ºÇõp0Å[I-ù× œ™å˜F ,× ç;m¢î L• *=c7ŽÍ b 9 YˆpéCÖ¯áø@š #1” † QÈÇ© u¬ MîÒ d “ š]ê…¡Îl , ET<ýÁ Cbÿ—›=Á<÷˜˜ šò –` „ åk )¶ìB )=K -² Iiš1o¬'kÞ«ôÍÓ|½¦©–‰á¤¶á‚µE¹\ äÍîq"‚aô¢¹j1 !Í«ò*ˆ zšÔ EšŽZÝ Í| c ñ|Þ£“¢"«í x&J  µjkÇà‰ Šã¯Æ€@-  Á~¾ ¢ÂO¥Â ÈzΜ¸•: r+¿ ô4Ÿßaà  ¯‚[Î)‚ã›Y4²8R ÀŸ SÚ Q`hlc†šÓ1ý “L#g󚯪Vï  ê ZƒµâîC#Ê.T6 Tám­ž_ ß G½ ãÓšŸ\u{tçÍÑ’y³–D mŸ¨ ¥1õ ¤¢`ý ?P¯ÓõÁ hÏT5(!v )—N@µî—q‚£›0 œhÍHÑä¦UšÎÞY Z¸?môÚ‘X¯i[ãÞ+ Œ“¶‹Ä ôë !MâqÕ‹š# ̹. W¹ VÞª Nÿ’Ùæ]3\3mË  v@J.^÷Yš w”jª[z –üc Y}ÂÉ[-ð«³UÆSîC8“¿¯ ôYß=<,z B]% æìÚ"N ºdÓ¡¼' .ˆ >Ü a +ö tíÎ öÐM4 ݶ\Nõ`µI ’°í__gmon_start____cxa_finalize_Jv_RegisterClassespyglib_set_thread_block_funcsg_return_if_fail_warningpyglib_gil_state_ensurepyglib_gil_state_release_PyArg_ParseTuple_SizeTg_type_namePyString_FromStringPyExc_RuntimeErrorPyErr_SetStringPyObject_ReprPyString_AsStringPyErr_Formatg_type_parentg_type_is_aPyBool_FromLongg_type_childrenPyList_NewPyList_Appendg_type_interfaces_PyObject_CallMethod_SizeTPyErr_Printg_quark_to_string_Py_NoneStruct_Py_BuildValue_SizeT_PyObject_CallFunction_SizeTPyTuple_TypePyType_IsSubtypePyTuple_SizePyExc_TypeErrorPyObject_IsTruePyErr_Clearg_snprintfPyCallable_CheckPySequence_CheckPySequence_Sizeg_mallocPySequence_GetItemg_signal_accumulator_true_handledg_signal_newvg_signal_lookupg_signal_override_class_closurePyDict_Newg_type_class_refPyString_Typestrcmpg_strdupPyDict_SetItemStringPyDict_Nextg_type_class_unrefg_type_fundamentalg_param_spec_charg_param_spec_ucharg_param_spec_booleang_param_spec_intg_param_spec_uintg_param_spec_longg_param_spec_ulongg_param_spec_int64g_param_spec_uint64g_param_spec_enumg_param_spec_flagsg_param_spec_floatg_param_spec_doubleg_param_spec_stringg_param_spec_paramg_param_spec_boxedg_param_spec_pointerg_param_spec_objectPySequence_GetSlicePyTuple_GetItemPyInt_TypePyInt_AsLongg_object_class_install_propertyPyErr_FetchPyErr_Restoreg_type_get_qdatag_slist_prependg_type_set_qdataPyType_TypePyObject_GetAttrStringg_strconcatg_object_get_qdataPyTuple_Newg_static_private_getg_static_private_setg_logg_strdup_printfPyExc_RuntimeWarningPyErr_WarnExg_type_add_interface_staticg_type_queryg_type_register_staticg_quark_from_stringPyDict_GetItemStringPyDict_TypePyDict_DelItemStringg_type_test_flagsPyInt_FromLong_PyArg_ParseTupleAndKeywords_SizeTg_type_default_interface_refg_signal_list_idsg_signal_namePyTuple_SetItemg_type_default_interface_unrefg_signal_queryg_object_interface_list_propertiesg_object_class_list_propertiesPyDict_Sizeg_malloc0g_object_class_find_propertyg_type_check_instance_castg_value_initg_object_newvg_value_unsetg_object_unrefPyObject_CallObjectpyglib_enable_threadsPySequence_Concat_Py_TrueStructg_signal_parse_nameg_signal_add_emission_hookPyLong_FromUnsignedLongg_signal_remove_emission_hookstrleng_ascii_tableg_type_check_class_castPyModule_AddIntConstantpyglib_error_checkpyglib_gerror_exception_checkg_object_set_propertyg_reallocg_type_value_table_peekmemsetg_assertion_message_Py_ZeroStructPy_IsInitializedg_log_default_handlerg_str_equalg_str_hashg_hash_table_new_fullg_hash_table_lookupg_log_remove_handlerg_log_set_handlerg_hash_table_insertg_hash_table_foreachg_hash_table_destroypyglib_option_group_newPyCObject_FromVoidPtrPyModule_AddObjectg_gstring_get_typePyExc_WarningPyErr_NewExceptioninit_gobjectPy_InitModule4g_type_initpyglib_initPyModule_GetDictpyglib_threads_enabled_pyglib_notify_on_enabling_threadsg_boxed_freePyExc_NotImplementedErrorPyObject_FreePyType_ReadyPyObject_MallocPyObject_Initg_boxed_copyg_quark_from_static_stringPyType_GenericAllocPyType_GenericNew_Py_NotImplementedStructg_type_check_class_is_ag_assertion_message_exprsprintfPyDict_GetItemPyExc_ValueErrorPyModule_GetNamePyDict_SetItemg_enum_get_valueg_flags_get_first_valuePyEval_SaveThreadg_closure_invalidatePyEval_RestoreThreadg_array_newg_array_append_valsPyExc_StopIterationPyErr_SetNonePyObject_GC_UnTrackPyObject_GC_Delg_param_spec_get_nameg_strdelimitPyList_SetItemPyObject_GenericGetAttrg_object_get_propertyPyObject_GenericSetAttr_PyObject_GC_NewPyObject_IsInstancestrrchrPySequence_ListPySequence_ContainsPySequence_TuplePyString_FromStringAndSizeg_object_set_qdata_fullg_object_add_toggle_refg_str_has_prefixPyImport_GetModuleDictPyObject_SetAttrStringPyBaseObject_Typeg_object_refPyObject_GC_Trackg_slist_removeg_slist_findg_closure_add_invalidate_notifierPyObject_ClearWeakRefsg_object_remove_toggle_refg_type_check_instance_is_ag_object_freeze_notifyg_object_thaw_notifyg_object_notifyg_signal_connect_closure_by_idg_signal_handler_disconnectg_signal_handler_is_connectedg_signal_handler_blockg_signal_handler_unblockg_value_set_objectg_signal_emitvg_signal_stop_emissiong_signal_get_invocation_hintg_value_set_static_boxedg_signal_chain_from_overriddeng_signal_handlers_disconnect_matchedg_signal_handlers_block_matchedg_signal_handlers_unblock_matchedPyObject_Callg_object_weak_unrefg_object_weak_refg_boxed_type_register_static_PyObject_Newg_param_spec_unrefg_param_spec_typesg_param_spec_get_nickg_param_spec_get_blurbPyString_FromFormatPyLong_FromLongPyLong_FromLongLongPyLong_FromUnsignedLongLongPyFloat_FromDoublePyExc_AttributeErrorg_param_spec_refg_type_depthg_type_check_is_value_typePyBool_TypePyLong_TypePyFloat_TypePyLong_AsLongg_enum_get_value_by_nameg_enum_get_value_by_nickPyLong_AsLongLongg_flags_get_value_by_nameg_flags_get_value_by_nickg_value_array_newg_value_array_freeg_value_array_appendg_value_take_boxedPyObject_Strg_value_set_charg_value_set_booleang_value_set_intg_value_set_uintPyLong_AsUnsignedLongg_value_set_longg_value_set_ulongg_value_set_int64PyExc_OverflowErrorg_value_set_uint64PyLong_AsUnsignedLongLongg_value_set_enumg_value_set_flagsPyFloat_AsDoubleg_value_set_floatg_value_set_doubleg_value_set_stringg_value_set_pointerg_type_check_value_holdsPyCObject_TypePyCObject_AsVoidPtrg_value_set_boxedg_value_get_typeg_value_array_get_typePyString_AsStringAndSizeg_string_new_leng_string_freeg_value_set_paramPyErr_Occurredg_value_get_objectg_value_get_charg_value_get_ucharg_value_get_booleang_value_get_intg_value_get_uintg_value_get_longg_value_get_ulongg_value_get_int64g_value_get_uint64g_value_get_enumg_value_get_flagsg_value_get_floatg_value_get_doubleg_value_get_stringg_value_get_pointerg_value_dup_boxedg_value_get_boxedg_value_get_paramg_closure_new_simpleg_closure_set_marshalg_closure_refg_closure_sinkPyObject_Cmpg_string_append_printfg_string_appendg_type_next_baseg_array_freePyUnicode_TypePyUnicodeUCS2_FromObjectPyUnicodeUCS2_GetSizePyUnicodeUCS2_AsUnicodePyUnicodeUCS2_FromUnicodeg_hash_table_removeg_type_from_namePyList_Typeg_strv_get_typelibpyglib-2.0-python.so.0libgobject-2.0.so.0libgthread-2.0.so.0libpthread.so.0librt.so.1libglib-2.0.so.0libc.so.6_gobject.soGLIBC_2.1.3GLIBC_2.0 si 6ii Bdóhóló€ó„óŒó ó¨ó°ó´ó¸óÀóÄóÌóÔóØóäóðóøó ôôôô ô(ô,ô4ô8ôDôTôXô ù$ù@ùHùPùTù\ùdùlùpù€ù„ùù”ù ù¤ù°ù´ùÀùÄùÐùÔùàùäùðùôùúúúú ú$ú0ú4ú@úDúPúTú`údúpútú€ú„úú”ú ú¤ú°ú´úàúäúèúìúðúôúøúüúûûû ûûûûû û$û(û,û0û4û8û<û@ûDûHûTûXû\û`ûdûhûlûpûtûxû|û€û„ûŒûû”û˜ûœû û¤û¨û¬û°û´û¸û¼ûìû ü¤üÌü€ý ý¤ýÀýÄýÔýØý þÀþàþäþôþøþÿ ÿÿ ÿ`ÿdÿhÿlÿpÿtÿxÿ˜ÿœÿ ÿ ì¬`¬l $04@DPT`dpt€„” ¤°´ÀÄÐÔàäðô $04@DPT`dpt€„” ¤°´ÀÄÐÔàäL,ì¬` d h t x ˆ Œ œ   ° ´ Ä È Ø Ü      $ 0 4 @ D P T ` d p t € „  ”   ¤ À ì PóTó Xó\ó`ópótóxó(|ó*ˆó7ó@”óA˜óEœóM¤ó\¬óa¼óxÈóƒÐóŠÜó–àóœèó©ìó­ôó¼üóÑôÔôÙôÚôé$ô 0ô<ô/@ô0Hô5Lô7Pô>Àûhôlôpôtôxô|ô€ô„ôˆô Œô ô ”ô ˜ôœô ô¤ô¨ô¬ô°ô´ô¸ô¼ôÀôÄôÈô Ìô!Ðô"Ôô#Øô$Üô%àô&äô'èô(ìô)ðô+ôô,øô-üô.õ/õ0õ1 õ2õ3õ4õ5õ6 õ8$õ9(õ:,õ;0õ<4õ=8õ><õ?@õBDõCHõDLõFPõGTõHXõI\õJ`õKdõLhõNlõOpõPtõQxõR|õS€õT„õUˆõVŒõWõX”õY˜õZœõ[ õ]¤õ^¨õ_¬õ`°õb´õc¸õd¼õeÀõfÄõgÈõhÌõiÐõjÔõkØõlÜõmàõnäõoèõpìõqðõrôõsøõtüõuövöwöy özö{ö|ö}ö~ ö$ö€(ö,ö‚0ö„4ö…8ö†<ö‡@öˆDö‰Hö‹LöŒPöTöŽXö\ö`ö‘dö’hö“lö”pö•tö—xö˜|ö™€öš„ö›ˆöŒöžöŸ”ö ˜ö¡œö¢ ö£¤ö¤¨ö¥¬ö¦°ö§´ö¨¸öª¼ö«Àö¬Äö®Èö¯Ìö°Ðö±Ôö²Øö³Üö´àöµäö¶èö·ìö¸ðö¹ôöºøö»üö½÷¾÷¿÷À ÷Á÷Â÷Ã÷Ä÷Å ÷Æ$÷Ç(÷È,÷É0÷Ê4÷Ë8÷Ì<÷Í@÷ÎD÷ÏH÷ÐL÷ÒP÷ÓT÷ÕX÷Ö\÷×`÷Ød÷Ûh÷Ül÷Ýp÷Þt÷ßx÷à|÷á€÷â„÷ãˆ÷äŒ÷å÷æ”÷ç˜÷èœ÷ê ÷ë¤÷ì¨÷í¬÷î°÷ï´÷ð¸÷ñ¼÷òÀ÷óÄ÷ôÈ÷õÌ÷öÐ÷÷Ô÷øØ÷ùÜ÷úà÷ûä÷üè÷ýì÷þð÷ÿô÷ø÷ü÷øøø øøøø ø  ø $ø(ø,ø0ø4ø8ø<ø@øDøHøLøPøTøXø\ø`ødøhø lø!pø"tø#xø$|ø%€ø&„ø'ˆø(Œø)ø*”ø+˜ø,œø- ø.¤ø1¨ø2¬ø3°ø4´ø6¸ø7¼ø8Àø9Äø:Èø;Ìø<Ðø=Ôø?Øø@ÜøAàøBäøCèøDìøEðøFôøGøøHüøIùJùKùL ùMùNùOU‰åSƒìè[Ã䥃»ÿÿÿtèèNèydX[]Ãÿ³ÿ£ÿ£ héàÿÿÿÿ£héÐÿÿÿÿ£héÀÿÿÿÿ£hé°ÿÿÿÿ£h é ÿÿÿÿ£ h(éÿÿÿÿ£$h0é€ÿÿÿÿ£(h8épÿÿÿÿ£,h@é`ÿÿÿÿ£0hHéPÿÿÿÿ£4hPé@ÿÿÿÿ£8hXé0ÿÿÿÿ£<h`é ÿÿÿÿ£@hhéÿÿÿÿ£Dhpéÿÿÿÿ£Hhxéðþÿÿÿ£Lh€éàþÿÿÿ£PhˆéÐþÿÿÿ£ThéÀþÿÿÿ£Xh˜é°þÿÿÿ£\h é þÿÿÿ£`h¨éþÿÿÿ£dh°é€þÿÿÿ£hh¸épþÿÿÿ£lhÀé`þÿÿÿ£phÈéPþÿÿÿ£thÐé@þÿÿÿ£xhØé0þÿÿÿ£|hàé þÿÿÿ£€hèéþÿÿÿ£„hðéþÿÿÿ£ˆhøéðýÿÿÿ£Œhéàýÿÿÿ£héÐýÿÿÿ£”héÀýÿÿÿ£˜hé°ýÿÿÿ£œh é ýÿÿÿ£ h(éýÿÿÿ£¤h0é€ýÿÿÿ£¨h8épýÿÿÿ£¬h@é`ýÿÿÿ£°hHéPýÿÿÿ£´hPé@ýÿÿÿ£¸hXé0ýÿÿÿ£¼h`é ýÿÿÿ£Àhhéýÿÿÿ£Ähpéýÿÿÿ£Èhxéðüÿÿÿ£Ìh€éàüÿÿÿ£ÐhˆéÐüÿÿÿ£ÔhéÀüÿÿÿ£Øh˜é°üÿÿÿ£Üh é üÿÿÿ£àh¨éüÿÿÿ£äh°é€üÿÿÿ£èh¸épüÿÿÿ£ìhÀé`üÿÿÿ£ðhÈéPüÿÿÿ£ôhÐé@üÿÿÿ£øhØé0üÿÿÿ£ühàé üÿÿÿ£hèéüÿÿÿ£hðéüÿÿÿ£høéðûÿÿÿ£ héàûÿÿÿ£héÐûÿÿÿ£héÀûÿÿÿ£hé°ûÿÿÿ£h é ûÿÿÿ£ h(éûÿÿÿ£$h0é€ûÿÿÿ£(h8épûÿÿÿ£,h@é`ûÿÿÿ£0hHéPûÿÿÿ£4hPé@ûÿÿÿ£8hXé0ûÿÿÿ£<h`é ûÿÿÿ£@hhéûÿÿÿ£Dhpéûÿÿÿ£Hhxéðúÿÿÿ£Lh€éàúÿÿÿ£PhˆéÐúÿÿÿ£ThéÀúÿÿÿ£Xh˜é°úÿÿÿ£\h é úÿÿÿ£`h¨éúÿÿÿ£dh°é€úÿÿÿ£hh¸épúÿÿÿ£lhÀé`úÿÿÿ£phÈéPúÿÿÿ£thÐé@úÿÿÿ£xhØé0úÿÿÿ£|hàé úÿÿÿ£€hèéúÿÿÿ£„hðéúÿÿÿ£ˆhøéðùÿÿÿ£Œhéàùÿÿÿ£héÐùÿÿÿ£”héÀùÿÿÿ£˜hé°ùÿÿÿ£œh é ùÿÿÿ£ h(éùÿÿÿ£¤h0é€ùÿÿÿ£¨h8épùÿÿÿ£¬h@é`ùÿÿÿ£°hHéPùÿÿÿ£´hPé@ùÿÿÿ£¸hXé0ùÿÿÿ£¼h`é ùÿÿÿ£Àhhéùÿÿÿ£Ähpéùÿÿÿ£Èhxéðøÿÿÿ£Ìh€éàøÿÿÿ£ÐhˆéÐøÿÿÿ£ÔhéÀøÿÿÿ£Øh˜é°øÿÿÿ£Üh é øÿÿÿ£àh¨éøÿÿÿ£äh°逸ÿÿÿ£èh¸épøÿÿÿ£ìhÀé`øÿÿÿ£ðhÈéPøÿÿÿ£ôhÐé@øÿÿÿ£øhØé0øÿÿÿ£ühàé øÿÿÿ£hèéøÿÿÿ£hðéøÿÿÿ£høéð÷ÿÿÿ£ héà÷ÿÿÿ£héÐ÷ÿÿÿ£héÀ÷ÿÿÿ£hé°÷ÿÿÿ£h é ÷ÿÿÿ£ h(é÷ÿÿÿ£$h0é€÷ÿÿÿ£(h8ép÷ÿÿÿ£,h@é`÷ÿÿÿ£0hHéP÷ÿÿÿ£4hPé@÷ÿÿÿ£8hXé0÷ÿÿÿ£<h`é ÷ÿÿÿ£@hhé÷ÿÿÿ£Dhpé÷ÿÿÿ£Hhxéðöÿÿÿ£Lh€éàöÿÿÿ£PhˆéÐöÿÿÿ£ThéÀöÿÿÿ£Xh˜é°öÿÿÿ£\h é öÿÿÿ£`h¨éöÿÿÿ£dh°é€öÿÿÿ£hh¸épöÿÿÿ£lhÀé`öÿÿÿ£phÈéPöÿÿÿ£thÐé@öÿÿÿ£xhØé0öÿÿÿ£|hàé öÿÿÿ£€hèéöÿÿÿ£„hðéöÿÿÿ£ˆhøéðõÿÿÿ£Œhéàõÿÿÿ£héÐõÿÿÿ£”héÀõÿÿÿ£˜hé°õÿÿÿ£œh é õÿÿÿ£ h(éõÿÿÿ£¤h0é€õÿÿÿ£¨h8épõÿÿÿ£¬h@é`õÿÿÿ£°hHéPõÿÿÿ£´hPé@õÿÿÿ£¸hXé0õÿÿÿ£¼h`é õÿÿÿ£Àhhéõÿÿÿ£Ähpéõÿÿÿ£Èhxéðôÿÿÿ£Ìh€éàôÿÿÿ£ÐhˆéÐôÿÿÿ£ÔhéÀôÿÿÿ£Øh˜é°ôÿÿÿ£Üh é ôÿÿÿ£àh¨éôÿÿÿ£äh°é€ôÿÿÿ£èh¸épôÿÿÿ£ìhÀé`ôÿÿÿ£ðhÈéPôÿÿÿ£ôhÐé@ôÿÿÿ£øhØé0ôÿÿÿ£ühàé ôÿÿÿ£hèéôÿÿÿ£hðéôÿÿÿ£høéðóÿÿÿ£ héàóÿÿÿ£héÐóÿÿÿ£héÀóÿÿÿ£hé°óÿÿÿ£h é óÿÿÿ£ h(éóÿÿÿ£$h0é€óÿÿÿ£(h8épóÿÿÿ£,h@é`óÿÿÿ£0hHéPóÿÿÿ£4hPé@óÿÿÿ£8hXé0óÿÿÿ£<h`é óÿÿÿ£@hhéóÿÿÿ£Dhpéóÿÿÿ£Hhxéðòÿÿÿ£Lh€éàòÿÿÿ£PhˆéÐòÿÿÿ£ThéÀòÿÿÿ£Xh˜é°òÿÿÿ£\h é òÿÿÿ£`h¨éòÿÿÿ£dh°é€òÿÿÿ£hh¸épòÿÿÿ£lhÀé`òÿÿÿ£phÈéPòÿÿÿ£thÐé@òÿÿÿ£xhØé0òÿÿÿ£|hàé òÿÿÿ£€hèéòÿÿÿ£„hðéòÿÿÿ£ˆhøéðñÿÿÿ£Œhéàñÿÿÿ£héÐñÿÿÿ£”héÀñÿÿÿ£˜hé°ñÿÿÿ£œh é ñÿÿÿ£ h(éñÿÿÿ£¤h0é€ñÿÿÿ£¨h8épñÿÿÿ£¬h@é`ñÿÿÿ£°hHéPñÿÿÿ£´hPé@ñÿÿÿ£¸hXé0ñÿÿÿ£¼h`é ñÿÿÿ£Àhhéñÿÿÿ£Ähpéñÿÿÿ£Èhxéððÿÿÿ£Ìh€éàðÿÿÿ£ÐhˆéÐðÿÿÿ£ÔhéÀðÿÿÿ£Øh˜é°ðÿÿÿ£Üh é ðÿÿÿ£àh¨éðÿÿÿ£äh°é€ðÿÿÿ£èh¸épðÿÿÿ£ìhÀé`ðÿÿÿ£ðhÈéPðÿÿÿ£ôhÐé@ðÿÿÿ£øhØé0ðÿÿÿ£ühàé ðÿÿÿ£hèéðÿÿÿ£hðéðÿÿÿ£høéðïÿÿÿ£ héàïÿÿÿ£héÐïÿÿÿ£héÀïÿÿÿ£hé°ïÿÿÿ£h é ïÿÿÿ£ h(éïÿÿÿ£$h0é€ïÿÿÿ£(h8épïÿÿÿ£,h@é`ïÿÿÿ£0hHéPïÿÿÿ£4hPé@ïÿÿÿ£8hXé0ïÿÿÿ£<h`é ïÿÿÿ£@hhéïÿÿÿ£Dhpéïÿÿÿ£Hhxéðîÿÿÿ£Lh€éàîÿÿÿ£PhˆéÐîÿÿÿ£ThéÀîÿÿÿ£Xh˜é°îÿÿÿ£\h é îÿÿÿ£`h¨éîÿÿÿ£dh°é€îÿÿÿ£hh¸épîÿÿÿ£lhÀé`îÿÿÿ£phÈéPîÿÿÿ£thÐé@îÿÿÿ£xhØé0îÿÿÿ£|hàé îÿÿÿ£€hèéîÿÿÿ£„hðéîÿÿÿ£ˆhøéðíÿÿÿ£Œh éàíÿÿÿ£h éÐíÿÿÿ£”h éÀíÿÿÿ£˜h é°íÿÿÿ£œh é íÿÿÿ£ h( éíÿÿÿ£¤h0 é€íÿÿÿ£¨h8 épíÿÿÿ£¬h@ é`íÿÿÿ£°hH éPíÿÿÿ£´hP é@íÿÿÿ£¸hX é0íÿÿU‰åSƒìè[Ãà’€»DuB‹“ðÿÿÿ…Òt%ƒì ‹ƒÄPèGþÿÿƒÄ붃À‰ƒÈÿÒ‹ƒÈ‹…ÒuéÆƒD‹]üÉö¼'U‰åSƒìè[Ãp’‹‹øýÿÿ…Ét‹“ ÿÿÿ…Òtƒì ƒøýÿÿPÿ҃ċ]üÉÃU‰åSƒìèÖXÃ4’‹ƒÿÿÿ‹@l…Àu9‹ƒÿÿÿ‹@p…Àu,‹“ÿÿÿ‹E‰Bl‹“ÿÿÿ‹E ‰Bp‹E ‰D$‹E‰$èŠûÿÿë ƒ@¿ÿÿ‰D$ƒ$¿ÿÿ‰D$Ç$èõÿÿƒÄ[]ÃU‰åSƒìèXXö‘‹E‰EôèUòÿÿ‰Eø‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰$èðóÿÿƒÄ[]ÃU‰åSƒì$èXÃ^‘Eð‰D$ƒ¡¿ÿÿ‰D$‹E ‰$èüíÿÿ…Àu ÇEèëb‹Eð‰$è…‰Eôƒ}ôu ÇEèëE‹Eô‰$è—öÿÿ‰Eøƒ}øt‹Eø‰$èãòÿÿ‰Eèë!‹ƒŒÿÿÿ‹ƒµ¿ÿÿ‰D$‰$èTúÿÿÇEè‹EèƒÄ$[]ÃU‰åVSƒì0èYW÷Eð‰D$ƒÆ¿ÿÿ‰D$‹E ‰$èUíÿÿ…Àu ÇEäëe‹Eð‰$è¤J‰Eôƒ}ôt‹Eô‰$èi‰EäëA‹uð‹E‰$è¶üÿÿ‰$è^ëÿÿ‰Â‹ƒŒÿÿÿ‹‰t$ ‰T$ƒß¿ÿÿ‰D$‰ $èzïÿÿÇEä‹EäƒÄ0[^]ÃU‰åSƒì$è¯Và Eð‰D$ƒù¿ÿÿ‰D$‹E ‰$è«ìÿÿ…Àu ÇEèëb‹Eð‰$è4‰Eôƒ}ôu ÇEèëE‹Eô‰$èVëÿÿ‰Eøƒ}øt‹Eø‰$袉Eèë!‹ƒŒÿÿÿ‹ƒÀÿÿ‰D$‰$èùÿÿÇEè‹EèƒÄ$[]ÃU‰åSƒì$è VÃgEì‰D$ Eð‰D$ƒ"Àÿÿ‰D$‹E ‰$èþëÿÿ…Àu ÇEèëW‹Eð‰$臉Eôƒ}ôu ÇEèë:‹Eì‰$èj‰Eøƒ}øu ÇEèë‹Eø‰D$‹Eô‰$èµìÿÿ‰$è­ëÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4ègUÃÅŽEä‰D$ƒ7Àÿÿ‰D$‹E ‰$ècëÿÿ…Àu ÇEØéç‹Eä‰$èé‰Eìƒ}ìu ÇEØéÇEà‰D$‹Eì‰$è1êÿÿ‰Eðƒ}ð„‡Ç$è¸ùÿÿ‰EèÇEôëT‹EôÀÀEð‹‰$è(‰Eø‹Eø‰D$‹Eè‰$ècôÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒEô‹Eà9Eôr¤‹Eð‰$èuèÿÿ‹Eè‰EØë!‹ƒŒÿÿÿ‹ƒOÀÿÿ‰D$‰$è3÷ÿÿÇEØ‹E؃Ä4[]ÃU‰åSƒì4è9T×Eä‰D$ƒlÀÿÿ‰D$‹E ‰$è5êÿÿ…Àu ÇEØéç‹Eä‰$軉Eìƒ}ìu ÇEØéÇEà‰D$‹Eì‰$è#÷ÿÿ‰Eðƒ}ð„‡Ç$èŠøÿÿ‰EèÇEôëT‹EôÀÀEð‹‰$èú‰Eø‹Eø‰D$‹Eè‰$è5óÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒEô‹Eà9Eôr¤‹Eð‰$èGçÿÿ‹Eè‰EØë!‹ƒŒÿÿÿ‹ƒˆÀÿÿ‰D$‰$èöÿÿÇEØ‹E؃Ä4[]ÃU‰åSƒì4è SÃiŒèíÿÿ‰Eø‹E‰$èK™‰Eèƒ}èu‹Eø‰$è¼îÿÿé‹E‰$覉EðÇD$‹E‰$è³(‰Eô‹Eô‰D$‹Eð‰D$ ƒ§Àÿÿ‰D$ƒªÀÿÿ‰D$‹Eè‰$èÖ÷ÿÿ‰Eìƒ}ìt)‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒëè¿òÿÿ‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰$è¯íÿÿƒÄ4[]ÃU‰åSƒì$è¿QËèÂëÿÿ‰Eø‹E‰$èÿ—‰Eìƒ}ìu‹Eø‰$èpíÿÿéÞ‹E‰$èZÿ‰Eô‹Eô‰D$ ƒºÀÿÿ‰D$ƒ¼Àÿÿ‰D$‹Eì‰$è§öÿÿ‰Eðƒ}ðt‹Eð‰D$‹E‰$è=…Àyè£ñÿÿ‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒƒ}ðt'‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‰$èìÿÿƒÄ$[]ÃU‰åèPÁÿ‰‹U‹sþÿ‰B ‹U×tþÿ‰B]ÃU‰åSƒìDèuPÃÓ‰ÇEð‹E‰Eôèkêÿÿ‰Eø‹E‹@…Àt‹E‹@‰$èÐôÿÿ‰$èˆëÿÿ‰Eè닃¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eè‹E‹P‹E‹‰Á‰T$ ‹Eè‰D$‰L$ƒÌÀÿÿ‰$è½õÿÿ‰EÜÇD$‹E‰$èÔ%‰EäÇD$‹E ‰$è¾%‰Eà‹Eô‹@…Àt;‹Eô‹P‹Eô‹‰T$‹Eä‰D$‹Eà‰D$ ‹E܉D$ƒÐÀÿÿ‰D$‰ $è.æÿÿ‰Eìë/‹Eô‹‹Eä‰D$‹Eà‰D$ ‹E܉D$ƒÕÀÿÿ‰D$‰$èýåÿÿ‰Eìƒ}ìu è¯ïÿÿ鳋Eì‹P‹ƒ€ÿÿÿ9Ât‹Eì‹P‹ƒ€ÿÿÿ‰D$‰$èìÿÿ…Àt‹Eì‰$èñÿÿƒøt!‹ƒ8ÿÿÿ‹ƒÜÀÿÿ‰D$‰$èÄñÿÿèOïÿÿë/‹Eì‹@ ‰$èÏåÿÿ‰Eð‹Eì‹@‰D$‹E ‰$踅Àtèïÿÿ‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eø‰$è\êÿÿ‹EðƒÄD[]ÃU‰åVSìðèeNÃÇÇEìÇEðÇEÈÇEÄEĉD$EȉD$ẺD$EЉD$ EÔ‰D$ƒÁÿÿ‰D$‹E‰$è)äÿÿ…ÀuUè ðÿÿ‹E ‰D$ ƒÁÿÿ‰D$ÇD$€…Dÿÿÿ‰$èùéÿÿ‹ƒ8ÿÿÿ‹…Dÿÿÿ‰D$‰$èŸðÿÿÇ…4ÿÿÿé‹EÈ…Àtl‹EÈ‹“¨ÿÿÿ9Ðt_‹Eȉ$è¡òÿÿ…ÀuP‹E ‰D$ ƒPÁÿÿ‰D$ÇD$€…Dÿÿÿ‰$è†éÿÿ‹ƒ8ÿÿÿ‹…Dÿÿÿ‰D$‰$è,ðÿÿÇ…4ÿÿÿé‹EЉ$èó ‰E؃}ØuÇ…4ÿÿÿém‹Ẻ$è¯ëÿÿ…ÀuP‹E ‰D$ ƒ„Áÿÿ‰D$ÇD$€…Dÿÿÿ‰$èéÿÿ‹ƒ8ÿÿÿ‹…Dÿÿÿ‰D$‰$èªïÿÿÇ…4ÿÿÿé‹Ẻ$è€éÿÿ‰EÜ‹EÜÀÀ‰$è>äÿÿ‰EäÇEà骋Eà‹ỦD$‰$èÍèÿÿ‰Eô‹EàÀÀ‰Æuä‹Eô‰$è$ ‰‹EàÀÀEä‹…ÀuA‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eä‰$èàÿÿÇ…4ÿÿÿéc‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒƒEà‹Eà;EÜ‚Jÿÿÿ‹UÈ‹ƒX9Âu ‹ƒ„ÿÿÿ‰EìëX‹EÈ…ÀtQ‹EÈ‹“¨ÿÿÿ9ÐtDÇ$èAãÿÿ‰Eð‹UÈ‹Eð‰‹UÈ‹ƒÀ‰‹UÄ‹Eð‰P‹EÄ…Àt ‹EÄ‹ƒÂ‰ƒ!vþÿ‰E싳Hè2‰Â‹MÔ‹Eä‰D$$‹E܉D$ ‹E؉D$‰t$‹Eð‰D$‹Eì‰D$‰T$ ‰L$‹E‰D$‹E ‰$èøãÿÿ‰Eè‹Eä‰$è ßÿÿƒ}èuM‹E ‰D$ ƒÄÁÿÿ‰D$ÇD$€…Dÿÿÿ‰$èýæÿÿ‹ƒŒÿÿÿ‹…Dÿÿÿ‰D$‰$è£íÿÿÇ…4ÿÿÿë Ç…4ÿÿÿ‹…4ÿÿÿÄð[^]ÃU‰åSì¤èJÃE‰D$‹E ‰$è¦ìÿÿ‰Eøƒ}øuM‹E ‰D$ ƒãÁÿÿ‰D$ÇD$€…xÿÿÿ‰$èfæÿÿ‹ƒ8ÿÿÿ‹…xÿÿÿ‰D$‰$è íÿÿÇ…hÿÿÿë%èÁ0‰D$‹E‰D$‹Eø‰$è¥âÿÿÇ…hÿÿÿ‹…hÿÿÿĤ[]ÃU‰åSƒìDèâIÃ@ƒÇEäÇEàÇEìèÐïÿÿ‰Eì‹E‰$èÒìÿÿ‰Eèém‹EÜ‹P‹ƒÔÿÿÿ9ÂtB‹EÜ‹P‹ƒÔÿÿÿ‰D$‰$è‚æÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒøÁÿÿ‰D$‰$èDìÿÿÇEäéC‹E܉$è½Ýÿÿ‰Eð‹UØ‹ƒ¨ÿÿÿ9ÂtW‹EØ‹P‹ƒÔÿÿÿ9Ât ‹EØ‹P‹ƒÔÿÿÿ‰D$‰$èæÿÿ…À„®‹E؉$èrÝÿÿ‰ÂƒÂÿÿ‰D$‰$èžíÿÿ…À…‡‹Eð‰$èÛÞÿÿ‰Eô‹Eô‰Eøë‹Eø¶<-u‹EøÆ_ƒEø‹Eø¶„Àuâ‹E܉D$‹Eô‰D$‹Eì‰$èÉÜÿÿ…Àt‹Eô‰$èŠÜÿÿÇEäël‹Eô‰$èvÜÿÿ‹Eð‰D$‹E‰$èÇýÿÿ‰Eäë‹E؉D$‹Eð‰D$‹E‰$èÓùÿÿ‰Eäƒ}ät(E؉D$ E܉D$Eà‰D$‹E ‰$è]àÿÿ…À…kþÿÿ‹Eè‰$è:éÿÿƒ}ät‹Eì‰EÈë4ƒ}ìt'‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒÇEÈ‹EȃÄD[]ÃU‰åWVSì|è°GÃÇEì‹E ‰$èâÿÿƒè ‰…¨þÿÿƒ½¨þÿÿD‡î‹…¨þÿÿ…¨þÿÿÀ‹„tÂÿÿØÿàEé‰D$Eê‰D$ Eë‰D$ƒ#Âÿÿ‰D$‹E‰$è]Ýÿÿ…ÀuÇ…¬þÿÿéü¶Eé¾È¶Eê¾ð¶Eë¾Ð‹E‰D$‰L$‰t$‰T$ ‹E‰D$‹E‰D$‹E‰$èiëÿÿ‰EìéOEæ‰D$Eç‰D$ Eè‰D$ƒ#Âÿÿ‰D$‹E‰$è×Üÿÿ…ÀuÇ…¬þÿÿév¶Eæ¶È¶Eç¶ð¶Eè¶Ð‹E‰D$‰L$‰t$‰T$ ‹E‰D$‹E‰D$‹E‰$è3áÿÿ‰EìéÉEà‰D$ƒ'Âÿÿ‰D$‹E‰$è_Üÿÿ…ÀuÇ…¬þÿÿéþ‹Uà‹E‰D$‰T$ ‹E‰D$‹E‰D$‹E‰$è%áÿÿ‰EìékEÔ‰D$E؉D$ E܉D$ƒ)Âÿÿ‰D$‹E‰$èóÛÿÿ…ÀuÇ…¬þÿÿé’‹UÔ‹MØ‹uÜ‹E‰D$‰T$‰L$‰t$ ‹E‰D$‹E‰D$‹E‰$èÞÿÿ‰EìéñEȉD$ẺD$ EЉD$ƒ-Âÿÿ‰D$‹E‰$èyÛÿÿ…ÀuÇ…¬þÿÿé‹UÈ‹MÌ‹uЋE‰D$‰T$‰L$‰t$ ‹E‰D$‹E‰D$‹E‰$èaÜÿÿ‰EìéwE¼‰D$EÀ‰D$ EĉD$ƒ1Âÿÿ‰D$‹E‰$èÿÚÿÿ…ÀuÇ…¬þÿÿéž‹U¼‹MÀ‹uÄ‹E‰D$‰T$‰L$‰t$ ‹E‰D$‹E‰D$‹E‰$èÇèÿÿ‰EìéýE°‰D$E´‰D$ E¸‰D$ƒ5Âÿÿ‰D$‹E‰$è…Úÿÿ…ÀuÇ…¬þÿÿé$‹U°‹M´‹u¸‹E‰D$‰T$‰L$‰t$ ‹E‰D$‹E‰D$‹E‰$èÍÝÿÿ‰EìéƒE˜‰D$E ‰D$ E¨‰D$ƒ9Âÿÿ‰D$‹E‰$è Úÿÿ…ÀuÇ…¬þÿÿ骋E˜‹Uœ‰… þÿÿ‰•¤þÿÿ‹u ‹}¤‹E¨‹U¬‰…°þÿÿ‰•´þÿÿ‹E‰D$$‹… þÿÿ‹•¤þÿÿ‰D$‰T$ ‰t$‰|$‹…°þÿÿ‹•´þÿÿ‰D$ ‰T$‹E‰D$‹E‰D$‹E‰$ènåÿÿ‰EìéÄE€‰D$Eˆ‰D$ E‰D$ƒ=Âÿÿ‰D$‹E‰$èLÙÿÿ…ÀuÇ…¬þÿÿéë‹E€‹U„‰… þÿÿ‰•¤þÿÿ‹uˆ‹}Œ‹E‹U”‰…¸þÿÿ‰•¼þÿÿ‹E‰D$$‹… þÿÿ‹•¤þÿÿ‰D$‰T$ ‰t$‰|$‹…¸þÿÿ‹•¼þÿÿ‰D$ ‰T$‹E‰D$‹E‰D$‹E‰$èâÿÿ‰Eìé…xÿÿÿ‰D$ƒºÀÿÿ‰D$‹E‰$è˜Øÿÿ…ÀuÇ…¬þÿÿé7‹•xÿÿÿ…|ÿÿÿ‰D$‰T$‹E ‰$èS…ÀtÇ…¬þÿÿé‹•|ÿÿÿ‹E‰D$‰T$‹E ‰D$ ‹E‰D$‹E‰D$‹E‰$èâ×ÿÿ‰Eìéh…pÿÿÿ‰D$ƒºÀÿÿ‰D$‹E‰$èû×ÿÿ…ÀuÇ…¬þÿÿéš…tÿÿÿ‹•pÿÿÿ‰D$‰T$‹E ‰$èí…ÀtÇ…¬þÿÿéh‹•tÿÿÿ‹E‰D$‰T$‹E ‰D$ ‹E‰D$‹E‰D$‹E‰$è•çÿÿ‰EìéË…dÿÿÿ‰D$…hÿÿÿ‰D$ …lÿÿÿ‰D$ƒAÂÿÿ‰D$‹E‰$èJ×ÿÿ…ÀuÇ…¬þÿÿéé‹•dÿÿÿ‹hÿÿÿ‹µlÿÿÿ‹E‰D$‰T$‰L$‰t$ ‹E‰D$‹E‰D$‹E‰$è‰Üÿÿ‰Eìé?…Hÿÿÿ‰D$…Pÿÿÿ‰D$ …Xÿÿÿ‰D$ƒEÂÿÿ‰D$‹E‰$è¾Öÿÿ…ÀuÇ…¬þÿÿé]Ý…HÿÿÿÝ…PÿÿÿÝ…XÿÿÿÙÊ‹E‰D$$Ý\$Ý\$Ý\$ ‹E‰D$‹E‰D$‹E‰$è ßÿÿ‰Eìé±…Dÿÿÿ‰D$ƒIÂÿÿ‰D$‹E‰$èDÖÿÿ…ÀuÇ…¬þÿÿéã‹•Dÿÿÿ‹E‰D$‰T$ ‹E‰D$‹E‰D$‹E‰$èwÔÿÿ‰EìéMƒKÂÿÿ‰D$‹E‰$èêÕÿÿ…ÀuÇ…¬þÿÿ鉋E‰D$‹E ‰D$ ‹E‰D$‹E‰D$‹E‰$èPÓÿÿ‰EìéöƒKÂÿÿ‰D$‹E‰$è“Õÿÿ…ÀuÇ…¬þÿÿé2‹E‰D$‹E ‰D$ ‹E‰D$‹E‰D$‹E‰$è¹Þÿÿ‰Eì韃KÂÿÿ‰D$‹E‰$è<Õÿÿ…ÀuÇ…¬þÿÿéÛ‹E‰D$ ‹E‰D$‹E‰D$‹E‰$è©Ùÿÿ‰EìëRƒKÂÿÿ‰D$‹E‰$èïÔÿÿ…ÀuÇ…¬þÿÿ鎋E‰D$‹E ‰D$ ‹E‰D$‹E‰D$‹E‰$èEÒÿÿ‰Eìƒ}ìuU‹E ‰$èqÝÿÿ‰D$ ƒLÂÿÿ‰D$ÇD$€…Äþÿÿ‰$è}Úÿÿ‹ƒ8ÿÿÿ‹…Äþÿÿ‰D$‰$è#áÿÿÇ…¬þÿÿë ‹U쉕¬þÿÿ‹…¬þÿÿÄ|[^_]ÃU‰åVSƒìPè>Ãpw‹E‰$èÿßÿÿ‰Eäƒ}ä&‹ƒ8ÿÿÿ‹ƒˆÃÿÿ‰D$‰$è¼àÿÿÇEÄé¥ÇD$ÇD$‹E‰$è¥ßÿÿ‰Eìƒ}ìu ÇEÄéuE؉D$E܉D$EÔ‰D$ Eà‰D$ƒºÃÿÿ‰D$‹Eì‰$èÓÿÿ…Àu3‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒÇEÄé ‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹EÔ‰$èÇù‰Eèƒ}èu ÇEÄ鯋Eäƒè‰D$‹E‰$èœßÿÿ‰Eð‹Eð‹P‹ƒ@ÿÿÿ9Ât?‹Eð‹P‹ƒ@ÿÿÿ‰D$‰$è±Ùÿÿ…Àu#‹ƒ8ÿÿÿ‹ƒÀÃÿÿ‰D$‰$èsßÿÿÇEÄë_‹Eäƒè‰D$ÇD$‹E‰$è]Þÿÿ‰Eì‹Eð‰$èߨÿÿ‹UØ‹MÜ‹uà‰D$‹Eì‰D$‰T$ ‰L$‹Eè‰D$‰4$èuôÿÿ‰Eô‹Eô‰EÄ‹EăÄP[^]ÃU‰åVSìpè<ÃquÇEÔÇEЋE‰$èßÿÿ‰EØé»‹EÌ‹P‹ƒÔÿÿÿ9ÂtB‹EÌ‹P‹ƒÔÿÿÿ‰D$‰$èÂØÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒèÃÿÿ‰D$‰$è„ÞÿÿÇEÔé‘‹Ẻ$èýÏÿÿ‰EÜ‹EÈ‹P‹ƒ€ÿÿÿ9ÂtB‹EÈ‹P‹ƒ€ÿÿÿ‰D$‰$èbØÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒÄÿÿ‰D$‰$è$ÞÿÿÇEÔé1‹Eȉ$è-Ýÿÿ‰Eèƒ}è&‹ƒ8ÿÿÿ‹ƒ8Äÿÿ‰D$‰$èêÝÿÿÇEÔé÷‹EÈÇD$ÇD$‰$èÓÜÿÿ‰Eìƒ}ìu ÇEÔéÇEÀ‰D$EĉD$ E¼‰D$ƒpÄÿÿ‰D$‹Eì‰$èÄÐÿÿ…Àu3‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒÇEÔéf‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹E¼‰$èüö‰Eàƒ}àu ÇEÔé‹Eèƒè‹UȉD$‰$èÑÜÿÿ‰Eð‹Eð‹P‹ƒ@ÿÿÿ9ÂtB‹Eð‹P‹ƒ@ÿÿÿ‰D$‰$èæÖÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒtÄÿÿ‰D$‰$è¨ÜÿÿÇEÔ鵋Eð‰$è1Öÿÿ‰Eä‹Eèƒè‹UȉD$ÇD$‰$èÛÿÿ‰Eì‹UÀ‹MÄ‹Eä‰D$‹Eì‰D$‰T$ ‰L$‹Eà‰D$‹E܉$è¡ñÿÿ‰Eô‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒƒ}ôt‹Eô‰D$ÇD$‹E؉$èVÐÿÿéâÇEÔE°‰D$E´‰D$E¸‰$èA×ÿÿ‹E´‹P‹ƒÔÿÿÿ9Ât‹E´‹P‹ƒÔÿÿÿ‰D$‰$èÉÕÿÿ…Àt{‹E‰$èª×ÿÿ‰Æ‹E´‰$èÍÿÿ‰Â‰t$‹E܉D$‰T$ ƒ°Äÿÿ‰D$ÇD$…°þÿÿ‰$èœÔÿÿ‹E´‹ƒê‰‹…Àu‹E´‹@‹P‹E´‰$ÿÒ…°þÿÿ‰$èÓÿÿ‰E´‹E°‹U´‹M¸‰D$‰T$‰ $è¡Ôÿÿë(EȉD$ ẺD$EЉD$‹E ‰$èOÐÿÿ…À…üÿÿ‹E؉$è,Ùÿÿ‹EÔÄp[^]ÃU‰åSƒì$èå7ÃCq‹ƒXÿÿÿ‹‰D$‹E‰$è6Ýÿÿ‰Eø‹E ‰D$‹Eø‰$èñÒÿÿ‰Eø‹ƒXÿÿÿ‹‹Eø‰D$‰T$‹E‰$èpÏÿÿƒÄ$[]ÃU‰åSƒì$è€7ÃÞp‹E‰$èmÌÿÿ‰Eôƒ}ôt*‹E‰D$‹E ‰D$‹Eô‰$èÁÿÿÿ‰Eøƒ}øt‹Eø‰Eèë]‹ƒXÿÿÿ‹‰D$‹E‰$è“Üÿÿ‰Eìë4‹E싉Eð‹E‰D$‹E ‰$‹EðÿЉEøƒ}øt‹Eø‰Eèë‹Eì‹@‰Eìƒ}ìuÆÇEè‹EèƒÄ$[]ÃU‰åVSƒì0èÉ6Ã'pÇEðEð‰D$Eô‰D$ ‹ƒÿÿÿ‰D$ƒäÄÿÿ‰D$‹E ‰$è­Ìÿÿ…Àu ÇEäé‹Uô‹ƒ°ÿÿÿ‰D$‰$èhÓÿÿ…Àu#‹ƒ8ÿÿÿ‹ƒÅÿÿ‰D$‰$è*ÙÿÿÇEäëQ‹Eô‰$è÷ò‰Æ‹Eô‹€€‰$èäò9Æu‹Eð‹Uô‰D$‰$è„…Àt ÇEäë‹Uô‹ƒÀ‰‹Eô‰Eä‹EäƒÄ0[^]ÃU‰åVSƒì@èÛ5Ã9oÇEôÇEì颋Eô‰$èµÉÿÿ‹Eì‰D$ ƒ$Åÿÿ‰D$ÇD$E؉$è±Ùÿÿ‹Uƒ)Åÿÿ‰D$‰$èŒÔÿÿ‰Eðƒ}ð„¥‹Eð‹P‹ƒÔÿÿÿ9Ât‹Eð‹P‹ƒÔÿÿÿ‰D$‰$èGÒÿÿ…Àtyƒ}ì~E؉EÐëÇEЋE‹p ‹Eð‰$èÉÿÿ‰ÂÇD$‹EЉD$ ‰t$ƒ4Åÿÿ‰D$‰$èÆËÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu|‹Eð‹@‹P‹Eð‰$ÿÒëiƒ}ðt)‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒëè¶Öÿÿƒ}ì~U؉UÔëÇEÔ‹E‹@ ÇD$‹UÔ‰T$‰$è4Ëÿÿ‰EôÇEèë‹EèEô¶<.u ‹EèEôÆ+ƒEè‹EèEô¶„ÀuÙ‹Eô‰$è­'…ÀtƒEì}ìçŽQþÿÿ‹EôƒÄ@[^]ÃU‰åSƒì4èý3Ã[m‹E‰E苃|ÿÿÿ‹‹Eè‹‹‰T$‰$èDÙÿÿ…À„"‹ƒ”ÿÿÿ‹‰D$‹Eè‰$èÅ×ÿÿ‰Eìƒ}ìu,è‰Eìƒ}ìt‹Eì‹@…Àu‹Eì‹Uè‰P‹Eì‰$è–oÇ$èöƒ}ì…ÀèuÍÿÿ‰Eø‹E ‰D$ÇD$‹Eè‰$èòw‰EìÇ$èyÕÿÿ‰EðèAÙÿÿ‰Eô‹Eì‹@‹”‹Eô‰D$‹Eð‰D$‹Eì‰$ÿÒ…ÀtèsÓÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰$èŠÎÿÿƒÄ4[]ÃU‰åSƒìèš2ÃøkƒT‰$è”ÐÿÿƒÄ[]ÃU‰åSƒìèt2ÃÒkÇD$‹E‰D$ƒT‰$èß×ÿÿƒÄ[]ÃU‰åSƒìDè?2Ãkƒ}u#ƒ6Åÿÿ‰D$ÇD$Ç$èS×ÿÿéÇEàéd‹U‹Eà‹D‚ ‰EèÇEð‹Eè‹P‹ƒÿÿÿ9Ât ‹Eè‹P‹ƒÿÿÿ‰D$‰$èÆÎÿÿ…À„‹U苃Äÿÿÿ‰D$‰$è©Îÿÿ…À„ÿ‹Eè‰$èWî‰Eì‹Eì‰$èøËÿÿƒø…ÝÇEäë‹EäÀÀE‹;Eìu ÇEðë ƒEä‹Eä;ErÚƒ}t ƒ}ð„žƒ}u ƒ}ð…Ž‹Eì‰$èk]‰Eôƒ}ôuG‹Eè‹@ ‰D$ƒHÅÿÿ‰$èÔÊÿÿ‰Eø‹ƒHÿÿÿ‹ÇD$‹Eø‰D$‰$èÒÎÿÿ‹Eø‰$è×Äÿÿë3‹Uô‹‰EÔ‹B‰EØ‹B‰EÜ‹E‰EÜEÔ‰D$‹Eì‰D$‹E ‰$èÕÿÿƒEà‹E‹@;EàþÿÿƒÄD[]ÃU‰åWSƒÄ€è~0ÃÜi}˜üº¸ ‰Á‰Ðó«ƒùuþÿ‰E¤ƒ™’þÿ‰E´‹E‰$èí‰Eàƒ}àu ÇE”ÿÿÿÿéÅẺD$‹Eà‰$ènÓÿÿ‰Eèƒ} t‹E ‰Eôë‹E‰$èúÿÿ‰Eô‹E‰E¬E¼‰D$‹Eà‰$èÎÿÿ‹EÄf‰E˜‹EÈf‰E°ÇD$ E˜‰D$‹Eô‰D$‹Eà‰$èxÌÿÿ‰Eäƒ} u ‹Eô‰$è¤Ãÿÿƒ}äu>‹Eà‰$èƒÎÿÿ‰Â‹ƒŒÿÿÿ‹‰T$ ‹Eô‰D$ƒ€Åÿÿ‰D$‰ $èÈÿÿÇE”ÿÿÿÿéõ‹E‹P‹E‰ƒ°Åÿÿ‰$èåÌÿÿ‰Â‹E‰D$‰T$‹Eä‰$è Çÿÿ‹Eä‰$è‚ë‰EЋE‹„‹EЉD$ƒÁÅÿÿ‰D$‰$è-Ãÿÿ‹EЋPÿ‹EЉ‹EЋ…Àu‹EЋ@‹P‹EЉ$ÿÒ‹ƒ|ÿÿÿ‹‰D$‹Eà‰$è/Ôÿÿ‰Eðƒ}ðt‹ƒ|ÿÿÿ‹‹Eð‰D$‰T$‹Eä‰$èxÆÿÿ‹E‹„ƒËÅÿÿ‰D$‰$èÎÿÿ…Àu&èЉ‹E‹ˆ„‰T$ƒËÅÿÿ‰D$‰ $èƒÂÿÿ‹UÌ‹E‹ˆ¨‰T$‹Eè‰D$ÇD$ ‰L$‹Eä‰D$‹E‰$èÕûÿÿ‹E‹„ƒÓÅÿÿ‰D$‰$èÎÿÿ‰EÔƒ}Ô„õ‹EÔ‹P‹ƒ<ÿÿÿ9ÂtM‹EÔ‹P‹ƒ<ÿÿÿ‰D$‰$èÎÊÿÿ…Àu1‹ƒ8ÿÿÿ‹ƒàÅÿÿ‰D$‰$èÐÿÿ‹Eè‰$è¥ÁÿÿÇE”ÿÿÿÿé.‹EÔ‰D$‹Eä‰$è›ãÿÿ‰E܃}Üu‹Eè‰$èsÁÿÿÇE”ÿÿÿÿéü‹E‹„‹E܉D$ƒÓÅÿÿ‰D$‰$èuÁÿÿ…Àt‹Eè‰$è6ÁÿÿÇE”ÿÿÿÿé¿‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒëèÏÿÿ‹E‹„ƒÆÿÿ‰D$‰$èñÌÿÿ‰E؃}Ø„§‹EØ‹P‹ƒ<ÿÿÿ9ÂtM‹EØ‹P‹ƒ<ÿÿÿ‰D$‰$è¬Éÿÿ…Àu1‹ƒ8ÿÿÿ‹ƒÆÿÿ‰D$‰$ènÏÿÿ‹Eè‰$èƒÀÿÿÇE”ÿÿÿÿé ‹E؉D$‹Eä‰$èDðÿÿ…Àu‹Eè‰$èVÀÿÿÇE”ÿÿÿÿéß‹E‹„ƒÆÿÿ‰D$‰$è?ÍÿÿëèHÎÿÿ‹UÌ‹E‹ˆ¨‰T$‹Eè‰D$ÇD$ ‰L$‹Eä‰D$‹E‰$èªùÿÿ‹Eä‰$èÏÿÿ‰Eì‹E‰D$‹Eì‰D$‹Eä‰$èBôÿÿ…Àt‹Eì‰$èíÌÿÿ‹Eè‰$貿ÿÿÇE”ÿÿÿÿë>‹Eì‰$èÎÌÿÿ‹Eè‰$è“¿ÿÿƒ}Ôt‹E‹„ƒÓÅÿÿ‰D$‰$è‚ÌÿÿÇE”‹E”ƒì€[_]ÃU‰åWVSƒì\èU+ódÇEÜEĉD$EȉD$ẺD$EЉD$ EÔ‰D$ƒ:Æÿÿ‰D$‹E ‰$è.Áÿÿ…Àu ÇEÀéV‹EЉ$è´ç‰E܃}Üu ÇEÀé6ÇD$‹E܉$èÛÂÿÿ…Àu6‹E܉$è,Åÿÿƒøt&‹ƒ8ÿÿÿ‹ƒTÆÿÿ‰D$‰$è}ÍÿÿÇEÀéé‹Eȉ$èGç‰E؃}Øu ÇEÀéÉ‹Eĉ$èÉÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒˆÆÿÿ‰D$‰$è(ÍÿÿÇEÀ锋Eĉ$èÇÿÿ‰Eà‹EàÀÀ‰$è¿Áÿÿ‰EèÇEä鯋UÄ‹Eä‰D$‰$èNÆÿÿ‰Eð‹EäÀÀ‰Æuè‹Eð‰$è¥æ‰‹EäÀÀEè‹…Àu]èíËÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹ƒ8ÿÿÿ‹ƒˆÆÿÿ‰D$‰$èlÌÿÿ‹Eè‰$è½ÿÿÇEÀéÍ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒEä‹Eä;EàŒ.ÿÿÿ‹uàè܉‹MÌ‹}Ô‹Eè‰D$$‰t$ ‹E؉D$ÇD$ÇD$ÇD$‰T$ ‰L$‹E܉D$‰<$èÍÁÿÿ‰Eì‹Eè‰$èß¼ÿÿƒ}ìt‹Eì‰$ènÄÿÿ‰EÀë!‹ƒŒÿÿÿ‹ƒµÆÿÿ‰D$‰$èËÿÿÇEÀ‹EÀƒÄ\[^_]ÃU‰åSƒìDè“(ÃñaÇEèÇEøEà‰D$ƒä‰D$ ƒÒÆÿÿ‰D$‹E‰D$‹E ‰$è°Ìÿÿ…Àu ÇEØéT‹Eà‰$èöä‰Eìƒ}ìu ÇEØé4ÇD$‹Eì‰$èÀÿÿ…Àt:‹Eì‰$èËÿÿ‰Eèƒ}èuj‹ƒŒÿÿÿ‹ƒðÆÿÿ‰D$‰$è»ÊÿÿÇEØéã‹Eì‰$è4Âÿÿƒøt&‹ƒ8ÿÿÿ‹ƒÇÿÿ‰D$‰$è…ÊÿÿÇEØé­‹Eì‰$èîÄÿÿ‰EøE܉D$‹Eì‰$èYÅÿÿ‰Eð‹E܉$è«Éÿÿ‰Eäƒ}ätGÇEôë6‹EôÀÀEð‹‰$è¼ÿÿ‰$èÂÿÿ‹Uô‰D$‰T$‹Eä‰$è×ÉÿÿƒEô‹EÜ9Eôr‹Eð‰$è»ÿÿƒ}èt ‹Eè‰$è/Èÿÿë ‹Eø‰$èbÊÿÿ‹Eä‰EØ‹E؃ÄD[]ÃU‰åSƒìDèÙ&Ã7`ÇEèÇEøEà‰D$ƒì‰D$ ƒBÇÿÿ‰D$‹E‰D$‹E ‰$èöÊÿÿ…Àu ÇEØék‹Eà‰$è<ã‰Eìƒ}ìu ÇEØéKÇD$‹Eì‰$èc¾ÿÿ…Àt:‹Eì‰$èdÉÿÿ‰Eèƒ}èuj‹ƒŒÿÿÿ‹ƒðÆÿÿ‰D$‰$èÉÿÿÇEØéú‹Eì‰$èzÀÿÿƒøt&‹ƒ8ÿÿÿ‹ƒÇÿÿ‰D$‰$èËÈÿÿÇEØéÄ‹Eì‰$è4Ãÿÿ‰EøE܉D$‹Eì‰$èŸÃÿÿ‰Eð‹E܉$èñÇÿÿ‰Eäƒ}äu‹Eð‰$è¹ÿÿ‹Eè‰$èÂÆÿÿÇEØënÇEôë.‹EôÀÀEð‹‰$è Áÿÿ‹Uô‰D$‰T$‹Eä‰$èÈÿÿƒEô‹EÜ9EôrÊ‹Eð‰$è?¹ÿÿƒ}èt ‹Eè‰$è^Æÿÿë ‹Eø‰$è‘Èÿÿ‹Eä‰EØ‹E؃ÄD[]ÃU‰åSƒìDè%Ãf^ÇEìÇEøEè‰D$Eä‰D$ƒô‰D$ ƒaÇÿÿ‰D$‹E‰D$‹E ‰$èÉÿÿ…Àu ÇEØéó‹Eè‰$èdá‰Eðƒ}ðu ÇEØéÓÇD$‹Eð‰$苼ÿÿ…Àt:‹Eð‰$èŒÇÿÿ‰Eìƒ}ìug‹ƒŒÿÿÿ‹ƒðÆÿÿ‰D$‰$è)ÇÿÿÇEØé‚‹Eð‰$袾ÿÿƒøt#‹ƒ8ÿÿÿ‹ƒÇÿÿ‰D$‰$èóÆÿÿÇEØëO‹Eð‰$è_Áÿÿ‰Eø‹Eä‹Uð‰T$‰$èÆÿÿ‰Eôƒ}ìt ‹Eì‰$èÅÿÿë ‹Eø‰$è9Çÿÿ‹Eô‰$è^¿ÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4è¨#Ã]Eô‰D$ƒ‰D$ ƒ„Çÿÿ‰D$‹E‰D$‹E ‰$èÓÇÿÿ…Àu ÇEèë@‹Eô‰$è+¸ÿÿ‰Eøƒ}øt‹Eø‰$è—¾ÿÿ‰Eè닃¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åWVSƒì\è#Ão\ÇEäÇEðE؉D$EÔ‰D$ƒ‰D$ ƒšÇÿÿ‰D$‹E‰D$‹E ‰$è'Çÿÿ…À„Ì‹E؉$èu߉Eèƒ}èu ÇE°écÇD$‹Eè‰$蜺ÿÿ…Àt:‹Eè‰$èÅÿÿ‰Eäƒ}äuj‹ƒŒÿÿÿ‹ƒðÆÿÿ‰D$‰$è:ÅÿÿÇE°é‹Eè‰$è³¼ÿÿƒøt&‹ƒ8ÿÿÿ‹ƒÇÿÿ‰D$‰$èÅÿÿÇE°éÜ‹Eè‰$èm¿ÿÿ‰Eð‹EÔ‹Uè‰T$‰$è(Äÿÿ‰E´ëaèÄÿÿE´‰D$ƒ‰D$ ƒ²Çÿÿ‰D$‹E‰D$‹E ‰$è!Æÿÿ…Àu+èØÃÿÿ‹ƒ8ÿÿÿ‹ƒÌÇÿÿ‰D$‰$è~ÄÿÿÇE°éV‹E´U¸‰T$‰$è€Åÿÿ‹E¸…Àu!‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰EÜéôÇ$èŒÃÿÿ‰E܃}܄ۋẺ$ètÃÿÿ‰Eàƒ}àu3‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒÇEÜ锋uÜ‹E¸‰$芼ÿÿ‰F ‹uÜ‹E¼‰$è)¼ÿÿ‰F‹uÜ‹EÀ‰$è(݉F‹uÜ‹Eĉ$èW¼ÿÿ‰F‹uÜ‹Eȉ$è݉FÇEìë%‹uà‹}ì‹UЋEìÀÀ‹‰$èÝ܉D¾ ƒEì‹EÌ;EìwÓ‹UÜ‹Eà‰B ƒ}ät ‹Eä‰$èƒÁÿÿƒ}ðt ‹Eð‰$è²Ãÿÿ‹E܉E°‹E°ƒÄ\[^_]ÃU‰åSƒì4è' Ã…YÇEðÇEôEà‰D$ƒ Èÿÿ‰D$‹E ‰$è¶ÿÿ…Àu ÇEØé³‹Eà‰$è›Ü‰Eìƒ}ìu ÇEØé“‹Eì‰$è*ºÿÿƒøuT‹Eì‰$è ½ÿÿ‰Eôƒ}ôu&‹ƒŒÿÿÿ‹ƒ<Èÿÿ‰D$‰$ègÂÿÿÇEØéIE܉D$‹Eô‰$è Áÿÿ‰EäéŽÇD$P‹Eì‰$è~¶ÿÿ…ÀtQ‹Eì‰$è_Âÿÿ‰Eðƒ}ðu&‹ƒŒÿÿÿ‹ƒðÆÿÿ‰D$‰$èüÁÿÿÇEØéÞE܉D$‹Eð‰$è^¹ÿÿ‰Eäë&‹ƒ8ÿÿÿ‹ƒhÈÿÿ‰D$‰$è¿ÁÿÿÇEØé¡‹E܉$èÁÿÿ‰Eèƒ}èu‹Eä‰$è´²ÿÿ‹Eð‰$èÙ¿ÿÿÇEØënÇEøë.‹EøÀÀE䋉$è]Ì‹Uø‰D$‰T$‹Eè‰$èÁÿÿƒEø‹EÜ9EørÊ‹Eä‰$èV²ÿÿƒ}ðt ‹Eð‰$èu¿ÿÿë ‹Eô‰$è¨Áÿÿ‹Eè‰EØ‹E؃Ä4[]ÃU‰åVSƒìPèÃ|WÇEÜÇEäÇEìEÔ‰D$ƒšÈÿÿ‰D$‹E ‰$è´ÿÿ…Àu ÇEÄé#‹EÔ‰$è‹Ú‰E؃}Øu ÇEÄéÇD$‹E؉$è²µÿÿ…Àt7‹E؉$胼ÿÿ‰Â‹ƒ8ÿÿÿ‹‰T$ƒ¨Èÿÿ‰D$‰ $è#¶ÿÿÇEÄ鵋E؉$è|Àÿÿ‰Eàƒ}àu&‹ƒ8ÿÿÿ‹ƒðÆÿÿ‰D$‰$èÀÿÿÇEÄé{ƒ}„ŽÇEЋE‰$è¹ÿÿ‰Â‰ÐÀÐÁà‰$è>¾ÿÿ‰Eìé9‹Ẻ$è[±ÿÿ‰Eô‹Eô‰D$‹Eà‰$è–½ÿÿ‰Eðƒ}ðu7‹E؉$è²»ÿÿ‰Â‹ƒ8ÿÿÿ‹‹Eô‰D$ ‰T$ƒèÈÿÿ‰D$‰ $èKµÿÿé=‹EðÇD$L‰$èó»ÿÿ‹H ‹Uä‰ÐÀÐÁàEìƒÀ‰L$‰$èÒ½ÿÿ‹MÈ‹Uä‰ÐÀÐÁàEìP‹Eð‰D$‰L$‰$è] …ÀyW‹EðÇD$L‰$è“»ÿÿ‹@ ‰$è»ÿÿ‰Á‹EÈ‹@‹P ‹ƒ8ÿÿÿ‹0‰L$‰T$ ‹Eô‰D$ƒÉÿÿ‰D$‰4$è”´ÿÿ醋Uä‰ÐÀÐÁà‰Æuì‹Eô‰$èñÿÿ‰ƒEäEȉD$ ẺD$EЉD$‹E‰$èݳÿÿ…À…Ÿþÿÿ‹Uä‹Eì‰D$‰T$‹E؉$è|·ÿÿ‰E܃}Üu‹ƒŒÿÿÿ‹ƒLÉÿÿ‰D$‰$è9¾ÿÿÇEèë7‹Uè‰ÐÀÐÁàE싉$è7¯ÿÿ‹Uè‰ÐÀÐÁàEìƒÀ‰$è}¯ÿÿƒEè‹Eè;Eä|Á‹Eì‰$è¯ÿÿ‹Eà‰$è+¼ÿÿƒ}Üt6ÇD$ÇD$‹E܉$è„_‰E‹E܉$蜰ÿÿ‹E܉$èÚIëÇE‹E‰EÄ‹EăÄP[^]ÃU‰åVSƒì èÃûSƒ}u,ƒxÉÿÿ‰D$ƒdÉÿÿ‰D$Ç$è·ÿÿÇEäéŸèn´ÿÿ‰Eô‹E‰EèÇD$‹Eè‰$è½ÿÿ‰ÆÇD$‹Eè‰$èí¼ÿÿ‰t$‰$è!¸ÿÿ‰Eìƒ}ìu胺ÿÿÇEðë5‹Eì‰$èÿ°ÿÿ‰Eð‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eô‰$誵ÿÿ‹Eð‰Eä‹EäƒÄ [^]ÃU‰åSƒìè°ÃSè³³ÿÿƒÄ[]ÃU‰åSƒìè“ÃñR‹E‰$è`µÿÿƒÄ[]ÃU‰åSƒìèpÃÎRèó¹ÿÿ…Àu ÇEøë‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìè'Ã…R誹ÿÿ…Àu ÇEøÿÿÿÿëÇEø‹EøƒÄ[]ÃU‰åèóÁUR‹ÿÿÿÇ€¨]ÃU‰åSƒìèÓÃ1R‹ƒ8ÿÿÿ‹ƒŒÉÿÿ‰D$‰$è‘»ÿÿ¸ƒÄ[]ÃU‰åSƒì4èœÃúQÇEà蘲ÿÿ‰EÜ‹E ‰$躺ÿÿ‰EðÇEôëL‹Uô‰ÐÀÀÐÀÀEÇD$‰$èIî‰Eøƒ}ø„‹Eô‹Uø‰T$‰D$‹Eð‰$èÖºÿÿƒEô‹Eô;E r¬‹E‰EèÇD$‹Eè‰$èÁºÿÿ‰EäÇD$‹Eè‰$諺ÿÿ‰D$‹Eð‰$è|²ÿÿ‰Eè‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eè‰D$‹Eä‰$è µÿÿ‰Eì‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒƒ}ìuèÛ·ÿÿ‹ƒtÿÿÿ9Eì”À¶À‰Eàƒ}ìt'‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹E܉$è³ÿÿ‹EàƒÄ4[]ÃU‰åVSƒìPè ÃkPÇEЋE ‰$èó¸ÿÿ‰Eðƒ}ð&‹ƒ8ÿÿÿ‹ƒðÉÿÿ‰D$‰$è°¹ÿÿÇEÄéÇD$ÇD$‹E ‰$虸ÿÿ‰EàE܉D$E؉D$ ẺD$ƒ(Êÿÿ‰D$‹Eà‰$蜬ÿÿ…Àu3‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒÇEÄ醋Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒ‹Ẻ$èÔÒ‰Eôƒ}ôu ÇEÄé?‹E܉$è»ÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒ@Êÿÿ‰D$‰$赸ÿÿÇEÄé ‹UØÇD$EЉD$ EÔ‰D$‹Eô‰D$‰$è1±ÿÿ…ÀuF‹uØ‹E‰$èO»ÿÿ‰$è÷©ÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒ`Êÿÿ‰D$‰ $è®ÿÿÇEÄ阋Eð‰D$ÇD$‹E ‰$è-·ÿÿ‰Eäƒ}äu ÇEÄël‹UÜ‹Eä‰D$‰T$ƒ|Êÿÿ‰$èߺÿÿ‰Eèƒ}èu ÇEÄë>‹UЋMÔ‹ƒ ÿÿÿ‰D$‹Eè‰D$ ƒú­þÿ‰D$‰T$‰ $è¹ÿÿ‰Eì‹Eì‰$èRªÿÿ‰EÄ‹EăÄP[^]ÃU‰åVSƒì@èªÃNEä‰D$Eì‰D$ Eð‰D$ƒ„Êÿÿ‰D$‹E ‰$蘪ÿÿ…Àu ÇEÔ龋Eð‰$èщEôƒ}ôu ÇEÔéž‹UìÇD$ÇD$ Eè‰D$‹Eô‰D$‰$误ÿÿ…ÀuC‹uì‹E‰$è͹ÿÿ‰$èu¨ÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒ`Êÿÿ‰D$‰ $葬ÿÿÇEÔë.‹Eä‹Uè‰D$‰$覸ÿÿ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åè–ÁøL‹E ‹P‹E ‰‹‘$ÿÿÿ‹E ‰‹E ‹P‹E ‰‹°ÿÿÿ‰Â‹E ‰B‹¨ÿÿÿ‹P‹¨ÿÿÿ‰‹¨ÿÿÿ]ÃU‰åSƒì$è:ØL‹E ‰$è÷®ÿÿ‰EôÇEøë4‹EøE¶‹EøE ¶8Ât‹EøE¶<_t ‹Eø‹U‰UèëZƒEø‹Eô;EøwÄ‹Eô‰Eø‹EøE¶¶ÀÀ‰Â‹ƒ˜ÿÿÿ‹··Àƒà…Àu ‹EøE¶<_u ‹Eø‹U‰Uèëƒmø븋EèƒÄ$[]ÃU‰åSƒì$è~ÃÜK‹E ‰$èÛ¬ÿÿƒø0t`‹E ‰$èˬÿÿƒø4u‹E‰D$‹E ‰D$‹E‰$è éÿ‹E ‰$è±ÿÿ‰D$ ƒéËÿÿ‰D$ÇD$Ç$èK·ÿÿé̓}u%ƒÌÿÿ‰D$ƒÒËÿÿ‰D$Ç$耮ÿÿ颋E ‰$èð´ÿÿÇD$0‰$è¬ÿÿ‰EìÇEðëe‹Eì‹H‹Uð‰ÐÀÐÀÀ‹@‰Eô‹Eì‹H‹Uð‰ÐÀÐÀÀ‹‰Eø‹E‰D$‹Eô‰$è'þÿÿ‰Â‹Eø‰D$‰T$‹E‰$èÓ©ÿÿƒEð‹Eì‹@ ;Eðw‹Eì‰$èi²ÿÿƒÄ$[]ÃU‰åVSƒì è(ÆJ‹E ‰$è…«ÿÿƒø4t`‹E ‰$èu«ÿÿƒø0u‹E‰D$‹E ‰D$‹E‰$è_þÿÿéý‹E ‰$èǯÿÿ‰D$ ƒ/Ìÿÿ‰D$ÇD$Ç$èõµÿÿé˃}u%ƒÌÿÿ‰D$ƒÌÿÿ‰D$Ç$è*­ÿÿé ‹E ‰$èš³ÿÿÇD$4‰$說ÿÿ‰EèÇEìëc‹Eè‹H ‹Uì‰ÐÀÐÀÀ‹@‰Eð‹Eè‹H ‹Uì‰ÐÀÐÀÀ‹‰Eô‹uô‹E‰D$‹Eð‰$èÎüÿÿ‰t$‰D$‹E‰$è¨ÿÿƒEì‹Eè‹@;Eìw’‹Eè‰$è±ÿÿƒÄ [^]ÃU‰åSƒìèÔÃ2I‹E‰$è¶ÿÿƒÄ[]ÃU‰åSƒìè±ÃI‹E‰$èž§ÿÿƒÄ[]ÃU‰åVSƒì@èÃëH‹E‰$èš²ÿÿ‰Eìƒ}ìu,ƒdÌÿÿ‰D$ƒIÌÿÿ‰D$Ç$èñ«ÿÿÇEÔéqÇEä‹Eä‰Eèé1‹EäÀÀE‹…À„‹EäÀÀE‹‰D$‹Eì‰$èįÿÿ‰Eð‹Uè‰ÐÀÐÁà‰ÂU‹EäÀÀE‹‰‹Eð‹H ‹Uè‰ÐÀÐÁàEƒÀ‰L$‰$è.°ÿÿ‹EäÀÀE‹‹Uè‰ÐÀÐÁàEƒÀ‰L$‰$è•׃øÿ…‹Eð‹@ ‰$èm­ÿÿ‰Æ‹EäÀÀE ‹‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒlÌÿÿ‰D$‰ $èý¦ÿÿ‹Eì‰$èr¯ÿÿÇEôë‹Uô‰ÐÀÐÁàEƒÀ‰$è¢ÿÿƒEô‹Eô;EèrÚÇEÔë6ƒEèƒEä‹EäÀÀE ‹…À…»þÿÿ‹Eì‰$è¯ÿÿ‹U‹Eè‰ÇEÔ‹EÔƒÄ@[^]ÃU‰åSƒì$èÀ ÃG‹E‹@…Àuh‹E‰$è%Ûÿÿ‹E‰$èYʉ‹E‰D$‹E ‰D$‰$耩ÿÿ‰EôÇ$èóÚÿÿ‹E‹@…Àuo‹U‹Eô‰B‹Eô‰$èl<‹E‰$è^IëNÇEøë=‹Uø‰ÐÀÐÁàEH‹Uø‰ÐÀÐÁàE‹‹E‹@‰L$‰T$‰$èÔ°ÿÿƒEø‹Eø;E r»¸ƒÄ$[]ÃU‰åWSì°èß Ã=FÇEÈÇEÌ‹E‰$èɉEЃ} u&ÇD$ÇD$‹E‰$èÐþÿÿ‰…dÿÿÿéÆE‰E¸‹EЉ$螯ÿÿ‰E¼‹ỦÐÀÐÁà‰$è¤ÿÿ‰EÀ‹E ‰EÄé%ÇE´‹EĉD$‹E¼‰$è­ÿÿ‰E؃}ØuE‹EЉ$è«ÿÿ‰Â‹EĉD$‰T$ƒšÌÿÿ‰D$ ƒ°Ìÿÿ‰D$ÇD$Ç$è7±ÿÿéÈ‹EÈ;EÌr"ƒEÌ‹ỦÐÀÐÁà‰D$‹EÀ‰$è «ÿÿ‰EÀ‹UȉÐÀÐÁà‰ÂUÀ‹Eĉ‹UȉÐÀÐÁàEÀÇ@‹EØÇD$L‰$èùªÿÿ‹H ‹UȉÐÀÐÁàEÀƒÀ‰L$‰$èØ¬ÿÿ‹UȉÐÀÐÁàEÀƒÀ‰EÜÇEà‹EÜ‹‰Eä‹Eä‰$è) ÿÿ‰Eè‹Eè‹@‰Eì½tÿÿÿüº¸‰Á‰Ðó«ÇEð‹Eè‹@…Àt‹Eè‹P‹E܉$ÿÒ‹EÜ‹U䉋E܃ÀÇD$ÇD$‰$èá¡ÿÿéð‹EðÁà‰Â…tÿÿÿЉEôƒEð‹Eì¶¾ÀƒEìƒèd‰…`ÿÿÿƒ½`ÿÿÿ ‡†‹…`ÿÿÿ…`ÿÿÿÀ‹„øÌÿÿØÿà‹U¸B‰E¸‰Ð‹‹Eô‰醋U¸B‰E¸‰Ð‹‹Eô‰ër‹U¸B‰E¸‰Ð‹P‹‹Mô‰‰QëX‹U¸B‰E¸‰ÐÝ‹EôÝëD‹U¸B‰E¸‰Ð‹‹Eô‰ë0ÇD$ƒšÌÿÿ‰D$ ÇD$ ƒáÌÿÿ‰D$Ç$è\¬ÿÿ‹Eì¶„À…ÿÿÿ‹Eè‹P‹Eà‰D$ …tÿÿÿ‰D$‹Eð‰D$‹E܉$ÿÒ‰E´‹E´…ÀtV‹E´‰D$ƒšÌÿÿ‰D$ ƒñÌÿÿ‰D$ÇD$Ç$诮ÿÿ‹E´‰$èdÿÿ‹UȉÐÀÐÁàEÀƒÀ‰$èªÿÿëƒEÈ‹U¸B‰E¸‰Ð‹‰Eă}Ä…Ñüÿÿ‹EÀ‰D$‹EȉD$‹E‰$èGûÿÿ‰EÔë‹UȉÐÀÐÁàEÀƒÀ‰$èRÿÿƒmȃ}ÈÿuÜ‹EÀ‰$èÝœÿÿ‹E¼‰$èªÿÿ‹EÔ‰…dÿÿÿ‹…dÿÿÿİ[_]ÃU‰åSƒìè¯à B‹ƒ|ÿÿÿ‹ÇD$‰D$‹E‰$èh ÿÿƒÄ[]ÃU‰åSƒì4èxÃÖAƒ}‡®‹EÀÀ‹„HÍÿÿØÿà‹E‹P‹E ‹@9”À¶À‰Eøé°‹E‹P‹E ‹@9•À¶À‰Eøé”‹E‹P‹E ‹@9žÀ¶À‰Eøë{‹E‹P‹E ‹@9ÂÀ¶À‰Eøëb‹E‹P‹E ‹@9œÀ¶À‰EøëI‹E‹P‹E ‹@9ŸÀ¶À‰Eøë0ÇD$ƒ0Íÿÿ‰D$ ÇD$6 ƒáÌÿÿ‰D$Ç$èªÿÿƒ}øt ‹ƒtÿÿÿ‰Eèë ‹ƒøþÿÿ‰Eè‹Eè‰Eô‹Eô‹P‹Eô‰‹EôƒÄ4[]ÃU‰åSƒì$èHæ@蛬ÿÿ…Àt5‹E‰Eøè<¡ÿÿ‰EôÇD$‹E‰D$‹Eø‰$èÿ¤ÿÿ‹Eô‰$èä¢ÿÿë ‹E‰D$ ‹E‰D$‹E ‰D$‹E‰$袠ÿÿƒÄ$[]ÃU‰åVSƒì èÑÃ/@ƒ}u%ƒxÍÿÿ‰D$ƒ`Íÿÿ‰D$Ç$èC£ÿÿéîƒ} u%ƒ‡Íÿÿ‰D$ƒ`Íÿÿ‰D$Ç$è£ÿÿé˃P…À…µ‹ƒL…Àu0ÇD$ ‹ƒôþÿÿ‰D$‹ƒôÿÿÿ‰D$‹ƒÿÿÿ‰$èÁ ÿÿ‰ƒL‹ƒL‹U‰T$‰$è–¦ÿÿ‰Eôƒ}ôt‹Eô‰D$‹E‰$èû¤ÿÿ‹E ‰D$ ƒN¿þÿ‰D$ÇD$‹E‰$èצÿÿ‰Eð‹uð‹E‰$èÆ›ÿÿ‹“L‰t$‰D$‰$èpœÿÿƒÄ [^]ÃU‰åSƒìèŸÃý>‹E ‹U‰D$‰$è…¤ÿÿƒÄ[]ÃU‰åSƒìèuÃÓ>ǃP‹ƒL…Àt8‹ƒLÇD$“÷Àþÿ‰T$‰$è ÿÿ‹ƒL‰$è;šÿÿǃLƒÄ[]ÃU‰åSƒì$èÃo>ÇD$‹ƒÿÿÿ‰$èãšÿÿ‰Eø‹Eø‰D$ƒ—Íÿÿ‰D$‹E‰$è™ÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒìèÃû=ÇD$ƒ¦Íÿÿ‰D$‹E‰$èøœÿÿÇD$ƒ·Íÿÿ‰D$‹E‰$èÛœÿÿÇD$ƒÇÍÿÿ‰D$‹E‰$辜ÿÿÇD$ƒÚÍÿÿ‰D$‹E‰$衜ÿÿÇD$ƒìÍÿÿ‰D$‹E‰$脜ÿÿÇD$ ƒüÍÿÿ‰D$‹E‰$ègœÿÿÇD$@ƒ Îÿÿ‰D$‹E‰$èJœÿÿÇD$ƒÎÿÿ‰D$‹E‰$è-œÿÿÇD$ƒ)Îÿÿ‰D$‹E‰$èœÿÿÇD$ƒ8Îÿÿ‰D$‹E‰$èó›ÿÿÇD$ƒHÎÿÿ‰D$‹E‰$èÖ›ÿÿÇD$ƒ]Îÿÿ‰D$‹E‰$è¹›ÿÿÇD$ƒrÎÿÿ‰D$‹E‰$蜛ÿÿÇ$èp¿‰D$ƒ‚Îÿÿ‰D$‹E‰$èç–ÿÿè‚ ÿÿ‰$èJ¿‰D$ƒÎÿÿ‰D$‹E‰$èÁ–ÿÿƒÄ[]ÃU‰åSƒì$èÁÃ<èĨÿÿ‰Eø‹Eø‰D$ƒœÎÿÿ‰D$‹E‰$èÅ–ÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒì$è^ü;ÇD$ ÇD$ÇD$ƒ¥Îÿÿ‰$è¨ÿÿ‰Eø‹Eø‰D$ƒ«Îÿÿ‰D$‹E‰$èA–ÿÿ‹Eø‰D$ƒ½Îÿÿ‰D$‹E‰$è%–ÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒì$è¾Ã;‹ƒ¤ÿÿÿ‹ÇD$‰D$ƒËÎÿÿ‰$è4¡ÿÿ‰Eø‹Eø‰D$ƒÛÎÿÿ‰D$‹E‰$襕ÿÿ‹Eø‰D$ƒãÎÿÿ‰$è„úÿÿ‹Eø‰D$ƒèÎÿÿ‰$èoúÿÿ‹Eø‰D$ƒõÎÿÿ‰$èZúÿÿƒÄ$[]ÃU‰åSƒì$è&Ä:ÇD$õÇD$ ÇD$ƒ$‰D$ƒýÎÿÿ‰$è~¢ÿÿ‰EôèœÿÿèÁ”ÿÿ‹Eô‰$èÿÿ‰Eø‹Eø‰$è­ûÿÿ‹Eô‰$èüÿÿ‹Eø‰$èçýÿÿ‹Eø‰$è?þÿÿ‹Eø‰$èÔþÿÿ‹Eø‰$èF÷‹Eø‰$è´†‹Eø‰$èð,‹Eø‰$èµ®‹Eø‰$赋Eø‰$胳‹Eø‰$轋Eø‰$è)ƒxËÿÿ‰D$‹Eø‰$è? ÿÿ‰ƒXè¤ÿÿ‰Â‹ƒÿÿÿ‰¨ƒ£­þÿ‰$èȤÿÿƒÄ$[]Ë $Ë$ÃU‰åSƒì$èîÿÿÿÃL9‹E‹@…Àt5‹E‹@…Àt+èÝ™ÿÿ‰Eø‹E‹P‹E‹@ ‰T$‰$èB£ÿÿ‹Eø‰$臛ÿÿ‹E‹@‹ ‹E‰$ÿÒƒÄ$[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰å‹E‹@]ÃU‰åVSì è0ÿÿÿÃŽ8‹E‹@‰Æ‹E‹@ ‰$èžÿÿ‰t$‰D$ ƒÏÿÿ‰D$ÇD$€…xÿÿÿ‰$è ›ÿÿ…xÿÿÿ‰$è,šÿÿÄ [^]ÃU‰åSìèÅþÿÿÃ#8ƒ-Ïÿÿ‰D$‹E ‰$èÈ”ÿÿ…Àu Ç…øýÿÿÿÿÿÿëo‹EÇ@‹EÇ@ ‹EÇ@‹E‹@‹@ ‰D$ ƒ>Ïÿÿ‰D$ÇD$…üýÿÿ‰$èmšÿÿ‹ƒÈÿÿÿ‹…üýÿÿ‰D$‰$è¡ÿÿÇ…øýÿÿÿÿÿÿ‹…øýÿÿÄ[]ÃU‰åSƒìèþÿÿÃn7‹E‰$èÍŸÿÿƒÄ[]ÃU‰åSƒìèíýÿÿÃK7‹E‹P‹E‹@ ÇD$ ÇD$‰T$‰$蚃Ä[]ÃU‰åSƒì$è­ýÿÿà 7ƒ}u%ƒpÏÿÿ‰D$ƒ]Ïÿÿ‰D$Ç$èšÿÿéQƒ} u%ƒ}Ïÿÿ‰D$ƒ]Ïÿÿ‰D$Ç$èô™ÿÿé&ƒ}u%ƒÏÿÿ‰D$ƒ]Ïÿÿ‰D$Ç$èÉ™ÿÿéû‹E‹@…Àu “¨Æþÿ‹E‰P‹U‹ƒÿÿÿ‰B‹U‹ƒ¸ÿÿÿ‰‚€‹E‰$è(’ÿÿ…Ày-‹E‹@ ‰D$ ƒ Ïÿÿ‰D$ÇD$Ç$èü¡ÿÿ鎋E‰$è ¹‰Eø‹E‹„‹Eø‰D$ƒ¾Ïÿÿ‰D$‰$è·ÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹ƒüÿÿÿ‹‹E‰D$‰T$‹E‰$è"”ÿÿ‹E‰D$‹E ‰D$‹E‰$èYÿÿƒÄ$[]ÃU‰åSƒì$èüÿÿÃw5ƒ}u,ƒÏÿÿ‰D$ƒÈÏÿÿ‰D$Ç$苘ÿÿÇEèé&ƒ}t:ƒ}tƒ}të,ƒØÏÿÿ‰D$ƒÈÏÿÿ‰D$Ç$èK˜ÿÿÇEèéæèª•ÿÿ‰Eðƒ} u,‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹Eð‰$èS—ÿÿ‹ƒ¨ÿÿÿ‰Eè鬋ƒüÿÿÿ‹‰D$‹E‰$è¾ ÿÿ‰Eøƒ}øu ‹ƒ¸ÿÿÿ‰Eø‹Eø‹@‰$èn™ÿÿ‰Â‹Eø‰D$‰$è˜ÿÿ‰Eôƒ}ôu‹Eð‰$èé–ÿÿÇEèëGƒ}t‹E ‰D$‹E‰$èø—ÿÿ‰E ‹Uô‹E ‰B‹Uô‹E‰B ‹Uô‹E‰B‹Eð‰$蟖ÿÿ‹Eô‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è¦úÿÿÃ4ƒÿÏÿÿ‰$è˜ÿÿ‰Â‹ƒüÿÿÿ‰ƒÐÿÿ‰$èø—ÿÿ‰Â‹ƒpÿÿÿ‰“¨Æþÿ‹ƒ¸ÿÿÿ‰P“Çþÿ‹ƒ¸ÿÿÿ‰P(“bÇþÿ‹ƒ¸ÿÿÿ‰P,‹ƒ¸ÿÿÿÇ@Të‹“¸ÿÿÿƒD‰Bt“ÎÇþÿ‹ƒ¸ÿÿÿ‰”“†Èþÿ‹ƒ¸ÿÿÿ‰ “WÇþÿ‹ƒ¸ÿÿÿ‰P<‹ƒ¸ÿÿÿ‹€˜…Àu‹ƒ¸ÿÿÿ‹“ìÿÿÿ‰˜‹ƒ¸ÿÿÿ‹€œ…Àu‹ƒ¸ÿÿÿ‹“ÿÿÿ‰œ‹ƒ¸ÿÿÿ‰$èàŽÿÿ…Àuz‹ƒ¸ÿÿÿ‰D$ƒ!Ðÿÿ‰D$‹E‰$è­ÿÿÇ$Hèѵ‰Eø‹ƒ¸ÿÿÿ‹„‹Eø‰D$ƒ¾Ïÿÿ‰D$‰$èyÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åVSƒì èùÿÿÃo2‹E ‹P‹ƒ@ÿÿÿ9Ât=‹E ‹P‹ƒ@ÿÿÿ‰D$‰$èá•ÿÿ…Àu!‹ƒ4ÿÿÿ‹P‹ƒ4ÿÿÿ‰‹ƒ4ÿÿÿ‰EôéÑ‹E ‹P‹ƒœÿÿÿ9Ât ‹E ‹P‹ƒœÿÿÿ‰D$‰$蔕ÿÿ…À„…‹E ‹P ‹E‹@ 9Âtu‹E ‹@ ‰$è^—ÿÿ‰Æ‹E‹@ ‰$èN—ÿÿ‰t$‰D$ ƒ8Ðÿÿ‰D$ÇD$ƒd‰$èV”ÿÿ‹ƒ¤ÿÿÿ‹ÇD$ƒd‰D$‰$è–ÿÿ…Àt ÇEôë‹U‹E‰D$‹E ‰D$‰$èlïÿÿ‰Eô‹EôƒÄ [^]ÃU‰åVSƒì@èÖ÷ÿÿÃ41‹E‹@ ‰$èàšÿÿ‰Eà‹Eà‰EìÇEð0ƒ}ìu ÇEôë(‹Eì‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$èÌŒÿÿ‰Eô‹Eô…Àu2ƒpÐÿÿ‰D$ƒbÐÿÿ‰D$ ÇD$@ƒŒÐÿÿ‰D$Ç$èpÿÿÇEèë&‹E‹p‹Eà‹H‹Uè‰ÐÀÐÀÀ‹9ÆtƒEè‹Eà‹@ ;EèwÏ‹Eà‹H‹Uè‰ÐÀÐÀÀ‹@‰Eäƒ}ät3‹E‹@ ‰$èÆ•ÿÿ‰D$ ‹Eä‰D$ƒ–Ðÿÿ‰D$ƒd‰$èóŠÿÿë6‹E‹@ ‰$è“•ÿÿ‰Â‹E‹@‰T$ ‰D$ƒ«Ðÿÿ‰D$ƒd‰$車ÿÿ‹Eà‰$è —ÿÿƒd‰$貑ÿÿƒÄ@[^]ÃU‰åSƒìDèQöÿÿï/Eà‰D$ƒ$ ‰D$ ƒÇÐÿÿ‰D$‹E‰D$‹E ‰$è|šÿÿ…Àu ÇEØé~‹E“ÉÐÿÿ‰T$‰$è•ÿÿ‰Eäƒ}äu ÇEØéT‹Eä‹P‹ƒ0ÿÿÿ9Âti‹Eä‹P‹ƒ0ÿÿÿ‰D$‰$躒ÿÿ…ÀuM‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒ‹ƒ8ÿÿÿ‹ƒÔÐÿÿ‰D$‰$èU˜ÿÿÇEØéÛ‹Eä‰$貉Eô‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒ‹Eô‰$èI˜ÿÿÇD$0‰$èYÿÿ‰Eø‹Uƒ÷Ðÿÿ‰D$‰$è”ÿÿ‰Eèƒ}èu‹Eø‰$è–ÿÿÇEØéS‹Eè‹P‹ƒ<ÿÿÿ9Ât‹Eè‹P‹ƒ<ÿÿÿ‰D$‰$蹑ÿÿ…Àt‹Eè‰$èšÿÿ‰Â‹Eø‹@ 9ÂvX‹ƒ8ÿÿÿ‹ƒÑÿÿ‰D$‰$èd—ÿÿ‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eø‰$è‚•ÿÿÇEØé¸‹Eø‰$èk•ÿÿ‹Eà‰$èÐÿÿ‰Eð‹Eð‰D$‹Eè‰$è{ÿÿ‰Eì‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒƒ}ìt‹Eì‹P‹Eì‰ë!‹Uà‹ƒÿÿÿ‹‰T$ƒ$Ñÿÿ‰D$‰ $èDŒÿÿ‹Eì‰EØ‹E؃ÄD[]ÃU‰åSƒì4è{óÿÿÃÙ,ƒ}u,ƒPÑÿÿ‰D$ƒ<Ñÿÿ‰D$Ç$èíÿÿÇEèéT‹ƒÐÿÿÿ‹‰D$‹E‰$蚘ÿÿ‰Eìƒ}ìuH‹E‰$è’ÿÿ‰Â‹E‰D$ ÇD$‰T$Ç$è‰Eìƒ}ìu‹E ‰$èŽÿÿ‰Eèéì‹Eì‹„ƒ÷Ðÿÿ‰D$‰$èÎ’ÿÿ‰Eð‹E ‰$èPŽÿÿ‰Eø‹Eø‰D$‹Eð‰$èûŽÿÿ‰Eô‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒ}ôuk膔ÿÿ‹E싘‹EìÇD$‰$ÿÒ‰Eôƒ}ôu2ƒhÑÿÿ‰D$ƒ<Ñÿÿ‰D$ ÇD$©ƒŒÐÿÿ‰D$Ç$èB‹ÿÿ‹Uô‹E ‰B‹Uô‹E‰B ‹Eô‹P‹Eô‰‹Eô‰Eè‹EèƒÄ4[]ÃU‰åVSƒìPèÙñÿÿÃ7+ƒ} u,ƒ„Ñÿÿ‰D$ƒwÑÿÿ‰D$Ç$èKŽÿÿÇEÄéÃÇD$0‹E‰$輈ÿÿ…ÀuR‹E‰$èí‹ÿÿ‰$èeÿÿ‰Æ‹E‰$èXÿÿ‰t$‰D$ ƒ˜Ñÿÿ‰D$ÇD$Ç$è‚–ÿÿÇEÄéZèA‹ÿÿ‰EÐè9—ÿÿ‰EÔ‹ƒœÿÿÿ‰Â‹ƒÿÿÿ‰Á‹EÔ‰D$‰T$ ‹E ‰D$ƒÞÑÿÿ‰D$‰ $袇ÿÿ‰EØ‹EÔ‹Pÿ‹EÔ‰‹EÔ‹…Àu‹EÔ‹@‹P‹EÔ‰$ÿÒƒ}Øu1‹ƒŒÿÿÿ‹ƒäÑÿÿ‰D$‰$舓ÿÿ‹EЉ$è}ŒÿÿÇEÄ鵋UØ‹EØ‹@T€äû‰BT‹U؃EÐþÿ‰‚œƒ}t4‹E‰$èÂŽÿÿ‰$誋ÿÿ‰Â‹EØ‹ˆ„‰T$ƒ÷Ñÿÿ‰D$‰ $èi„ÿÿ‹ƒÐÿÿÿ‹‹E؉D$‰T$‹E‰$èû‡ÿÿ‹E‰$èp¬‰Eà‹EØ‹„‹Eà‰D$ƒÉÐÿÿ‰D$‰$è„ÿÿ‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒƒ}t&‹E؉D$‹E ‰D$‹E‰$蕃ÿÿ‹EØ‹P‹E؉‹E‰$è­’ÿÿÇD$0‰$轉ÿÿ‰Eäè…•ÿÿ‰EÜÇEèé‹EØ‹˜‹EØÇD$‰$ÿÒ‰Eì‹uì‹Eä‹H‹Uè‰ÐÀÐÀÀ‹‰F‹Uì‹E‰B ‹Eä‹H‹Uè‰ÐÀÐÀÀ‹‰$裊ÿÿ‰Eð‹Eì‰D$‹Eð‰D$‹E܉$è—”ÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒ}td‹Eä‹H‹Uè‰ÐÀÐÀÀ‹P‹E‰D$‰$èNÛÿÿ‰$芄ÿÿ‰Eô‹Eì‰D$‹Eô‰D$‹E‰$è^‚ÿÿ‹Eô‰$èc‚ÿÿ‹Eì‹P‹E쉃Eè‹Eè‹Uä‹R 9ЂÛþÿÿ‹EØ‹„‹E܉D$ƒ÷Ðÿÿ‰D$‰$èO‚ÿÿ‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒ‹Eä‰$èÿÿ‹EЉ$è‰ÿÿ‹E؉EÄ‹EăÄP[^]ÃU‰åVSƒì èÇíÿÿÃ%'ƒÒÿÿ‰D$‹E ‰$èʃÿÿ…Àu ÇEôëGƒÒÿÿ‰D$‹E‰$蘌ÿÿ‰Æ‹E‰$èû‰ÿÿ‰Â‹E‹@‰t$ ‰T$‰D$ƒÒÿÿ‰$è)“ÿÿ‰Eô‹EôƒÄ [^]ÃU‰åSƒì4èBíÿÿà&‹E‹@ ‰$èLÿÿ‰Eä‹Eä‰EðÇEô0ƒ}ðu ÇEøë(‹Eð‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$è8‚ÿÿ‰Eø‹Eø…Àu2ƒpÐÿÿ‰D$ƒ%Òÿÿ‰D$ ÇD$%ƒŒÐÿÿ‰D$Ç$èÜ…ÿÿ‹E‹@‰D$‹Eä‰$è·…ÿÿ‰Eè‹Eè‹@‰$èÖ‡ÿÿ‰Eì‹Eä‰$è¨ÿÿ‹EìƒÄ4[]ÃU‰åSƒì4èeìÿÿÃÃ%‹E‹@ ‰$èoÿÿ‰Eä‹Eä‰EðÇEô0ƒ}ðu ÇEøë(‹Eð‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$è[ÿÿ‰Eø‹Eø…Àu2ƒpÐÿÿ‰D$ƒ=Òÿÿ‰D$ ÇD$7ƒŒÐÿÿ‰D$Ç$èÿ„ÿÿ‹E‹@‰D$‹Eä‰$èÚ„ÿÿ‰Eè‹Eè‹@‰$èù†ÿÿ‰Eì‹Eä‰$èËŒÿÿ‹EìƒÄ4[]ÃU‰åSƒì$èˆëÿÿÃæ$ƒvÒÿÿ‰$èòˆÿÿ‰Â‹ƒÐÿÿÿ‰‹“œÿÿÿ‹ƒ@ÿÿÿ‰‚€“¿Îþÿ‹ƒœÿÿÿ‰P,“¿Îþÿ‹ƒœÿÿÿ‰PD‹ƒœÿÿÿÇ@Të“„Íþÿ‹ƒœÿÿÿ‰Pd‹“œÿÿÿƒD ‰Bt‹“œÿÿÿƒd ‰B|‹“œÿÿÿƒEÐþÿ‰‚œ‹ƒœÿÿÿ‹€˜…Àu‹ƒœÿÿÿ‹“ìÿÿÿ‰˜‹ƒœÿÿÿ‹€œ…Àu‹ƒœÿÿÿ‹“ÿÿÿ‰œ‹ƒœÿÿÿ‰$èÚÿÿ…Àuz‹ƒœÿÿÿ‰D$ƒ…Òÿÿ‰D$‹E‰$è§~ÿÿÇ$0è˦‰Eø‹ƒœÿÿÿ‹„‹Eø‰D$ƒÉÐÿÿ‰D$‰$ès~ÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åVSƒì è êÿÿÃg#‹E ‹P‹ƒ@ÿÿÿ9Ât=‹E ‹P‹ƒ@ÿÿÿ‰D$‰$èÙ†ÿÿ…Àu!‹ƒ4ÿÿÿ‹P‹ƒ4ÿÿÿ‰‹ƒ4ÿÿÿ‰EôéÑ‹E ‹P‹ƒxÿÿÿ9Ât ‹E ‹P‹ƒxÿÿÿ‰D$‰$茆ÿÿ…À„…‹E ‹P ‹E‹@ 9Âtu‹E ‹@ ‰$èVˆÿÿ‰Æ‹E‹@ ‰$èFˆÿÿ‰t$‰D$ ƒœÒÿÿ‰D$ÇD$ƒd‰$èN…ÿÿ‹ƒ¤ÿÿÿ‹ÇD$ƒd‰D$‰$èü†ÿÿ…Àt ÇEôë‹U‹E‰D$‹E ‰D$‰$èdàÿÿ‰Eô‹EôƒÄ [^]ÃU‰åVSƒì@èÎèÿÿÃ,"ÇEà‹E‰$èÔ‹ÿÿ‰EÜ‹E܉EìÇEð4ƒ}ìu ÇEôë(‹Eì‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$èÀ}ÿÿ‰Eô‹Eô…Àu2ƒÕÒÿÿ‰D$ƒÇÒÿÿ‰D$ ÇD$@ƒóÒÿÿ‰D$Ç$èdÿÿÇEèéÛ‹EÜ‹H ‹Uè‰ÐÀÐÀÀ‹…À„·‹EÜ‹H ‹Uè‰ÐÀÐÀÀ‹‹E ‰Ö!Æ‹EÜ‹H ‹Uè‰ÐÀÐÀÀ‹9Æu|ƒ}àtH‹EÜ‹H ‹Uè‰ÐÀÐÀÀ‹@‰D$‹Eà‰D$ƒþÒÿÿ‰$èeÿÿ‰Eä‹Eà‰$è‡{ÿÿ‹Eä‰Eàë.‹EÜ‹H ‹Uè‰ÐÀÐÀÀ‹@‰D$ƒÓÿÿ‰$è$ÿÿ‰EàƒEè‹Eè‹UÜ‹R9Ђÿÿÿ‹E܉$èaˆÿÿ‹EàƒÄ@[^]ÃU‰åSƒì$èçÿÿÃ{ ‹E‹P‹E‹@ ‰T$‰$è$þÿÿ‰Eðƒ}ðt,‹E‹@ ‰$èÖ…ÿÿ‰D$‹Eð‰D$ƒ Óÿÿ‰$è€ÿÿ‰Eôë/‹E‹@ ‰$誅ÿÿ‰Â‹E‹@‰T$‰D$ƒÓÿÿ‰$èl€ÿÿ‰Eô‹Eð‰$èŽzÿÿ‹Eô‰$èÓÿÿ‰Eø‹Eô‰$èuzÿÿ‹EøƒÄ$[]ÃU‰åSƒìDèbæÿÿÃÀEà‰D$ƒd ‰D$ ƒ<Óÿÿ‰D$‹E‰D$‹E ‰$èŠÿÿ…Àu ÇEØé~‹E“>Óÿÿ‰T$‰$è…ÿÿ‰Eäƒ}äu ÇEØéT‹Eä‹P‹ƒ0ÿÿÿ9Âti‹Eä‹P‹ƒ0ÿÿÿ‰D$‰$èË‚ÿÿ…ÀuM‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒ‹ƒ8ÿÿÿ‹ƒHÓÿÿ‰D$‰$èfˆÿÿÇEØéÛ‹Eä‰$è0¢‰Eô‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒ‹Eô‰$èZˆÿÿÇD$4‰$èjÿÿ‰Eø‹UƒkÓÿÿ‰D$‰$è"„ÿÿ‰Eèƒ}èu‹Eø‰$è.†ÿÿÇEØéS‹Eè‹P‹ƒ<ÿÿÿ9Ât‹Eè‹P‹ƒ<ÿÿÿ‰D$‰$èÊÿÿ…Àt‹Eè‰$è«€ÿÿ‰Â‹Eø‹@9ÂtX‹ƒ8ÿÿÿ‹ƒ|Óÿÿ‰D$‰$èu‡ÿÿ‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eø‰$è“…ÿÿÇEØé¸‹Eø‰$è|…ÿÿ‹Eà‰$èáÿÿ‰Eð‹Eð‰D$‹Eè‰$茀ÿÿ‰Eì‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒƒ}ìt‹Eì‹P‹Eì‰ë!‹Uà‹ƒÿÿÿ‹‰T$ƒšÓÿÿ‰D$‰ $èU|ÿÿ‹Eì‰EØ‹E؃ÄD[]ÃU‰åSƒì4èŒãÿÿÃêƒ}u,ƒÇÓÿÿ‰D$ƒ²Óÿÿ‰D$Ç$èþÿÿÇEèéV‹ƒÌÿÿÿ‹‰D$‹E‰$諈ÿÿ‰Eìƒ}ìuH‹E‰$è‚ÿÿ‰Â‹E‰D$ ÇD$‰T$Ç$è‰Eìƒ}ìu‹E ‰$è’~ÿÿ‰Eèéî‹Eì‹„ƒkÓÿÿ‰D$‰$èß‚ÿÿ‰Eð‹E ‰$èa~ÿÿ‰Eø‹Eø‰D$‹Eð‰$è ÿÿ‰Eô‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒ}ôumè—„ÿÿ‹E싘‹EìÇD$‰$ÿÒ‰Eôƒ}ôu2ƒßÓÿÿ‰D$ƒ²Óÿÿ‰D$ ÇD$¿ƒóÒÿÿ‰D$Ç$èS{ÿÿ‹Uô‹E ‰B‹Uô‹E‰B ë ‹Eô‹P‹Eô‰‹Eô‰Eè‹EèƒÄ4[]ÃU‰åVSƒìPèèáÿÿÃFƒ} u,ƒüÓÿÿ‰D$ƒîÓÿÿ‰D$Ç$èZ~ÿÿÇEÄé½ÇD$4‹E‰$èËxÿÿ…ÀuR‹E‰$èü{ÿÿ‰$èt€ÿÿ‰Æ‹E‰$èg€ÿÿ‰t$‰D$ ƒÔÿÿ‰D$ÇD$Ç$葆ÿÿÇEÄéTèP{ÿÿ‰EÐèH‡ÿÿ‰EÔ‹ƒxÿÿÿ‰Â‹ƒÿÿÿ‰Á‹EÔ‰D$‰T$ ‹E ‰D$ƒWÔÿÿ‰D$‰ $è±wÿÿ‰EØ‹EÔ‹Pÿ‹EÔ‰‹EÔ‹…Àu‹EÔ‹@‹P‹EÔ‰$ÿÒƒ}Øu1‹ƒŒÿÿÿ‹ƒ]Ôÿÿ‰D$‰$è—ƒÿÿ‹EЉ$èŒ|ÿÿÇEÄ鯋UØ‹EØ‹@T€äû‰BT‹U؃4àþÿ‰‚œƒ}tZ‹E‰$èÑ~ÿÿ‰$è¹{ÿÿ‰Â‹EØ‹ˆ„‰T$ƒpÔÿÿ‰D$‰ $èxtÿÿ‹E؉D$‹E ‰D$‹E‰$ètÿÿ‹EØ‹P‹E؉‹ƒÌÿÿÿ‹‹E؉D$‰T$‹E‰$èäwÿÿ‹E‰$èYœ‰Eà‹EØ‹„‹Eà‰D$ƒ>Óÿÿ‰D$‰$ètÿÿ‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒ‹E‰$è‚ÿÿÇD$4‰$èÒyÿÿ‰Eäèš…ÿÿ‰EÜÇEèé‹EØ‹˜‹EØÇD$‰$ÿÒ‰Eì‹uì‹Eä‹H ‹Uè‰ÐÀÐÀÀ‹‰F‹Uì‹E‰B ‹Eä‹H ‹Uè‰ÐÀÐÀÀ‹‰$è¸zÿÿ‰Eð‹Eì‰D$‹Eð‰D$‹E܉$謄ÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒ}td‹Eä‹H ‹Uè‰ÐÀÐÀÀ‹P‹E‰D$‰$ècËÿÿ‰$èŸtÿÿ‰Eô‹Eì‰D$‹Eô‰D$‹E‰$èsrÿÿ‹Eô‰$èxrÿÿ‹Eì‹P‹E쉃Eè‹Eè‹Uä‹R9ЂÛþÿÿ‹EØ‹„‹E܉D$ƒkÓÿÿ‰D$‰$èdrÿÿ‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒ‹Eä‰$è2ÿÿ‹EЉ$è×yÿÿ‹E؉EÄ‹EăÄP[^]ÃU‰åSƒìèÝÝÿÿÃ;‹E‹@ ÇD$4‰$èïtÿÿ…Àt‹E ‹@ ÇD$4‰$èÕtÿÿ…Àu ‹ƒ@ÿÿÿ‹@0‹H8‹E ‹U‰D$‰$ÿщEøë#‹E‹P‹E ‹@!‹E‹@ ‰T$‰$èËùÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèKÝÿÿé‹E‹@ ÇD$4‰$è]tÿÿ…Àt‹E ‹@ ÇD$4‰$èCtÿÿ…Àu ‹ƒ@ÿÿÿ‹@0‹H@‹E ‹U‰D$‰$ÿщEøë#‹E‹P‹E ‹@ ‹E‹@ ‰T$‰$è9ùÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìè¹ÜÿÿËE‹@ ÇD$4‰$èËsÿÿ…Àt‹E ‹@ ÇD$4‰$è±sÿÿ…Àu ‹ƒ@ÿÿÿ‹@0‹H<‹E ‹U‰D$‰$ÿщEøë#‹E‹P‹E ‹@1‹E‹@ ‰T$‰$è§øÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìè'ÜÿÿÃ…‹ƒ¤ÿÿÿ‹ÇD$ƒ|Ôÿÿ‰D$‰$èíyÿÿ…Àt ÇEøë‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒì4èÁÛÿÿËE‹@ ‰$èË~ÿÿ‰Eä‹Eä‰EðÇEô4ƒ}ðu ÇEøë(‹Eð‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$è·pÿÿ‰Eø‹Eø…Àu2ƒÕÒÿÿ‰D$ƒ¬Ôÿÿ‰D$ ÇD$ZƒóÒÿÿ‰D$Ç$è[tÿÿ‹E‹@‰D$‹Eä‰$è6oÿÿ‰Eèƒ}èt‹Eè‹@‰$èOvÿÿ‰Eì닃¨ÿÿÿ‰E싃¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹Eä‰$è|ÿÿ‹EìƒÄ4[]ÃU‰åSƒì4èÀÚÿÿËE‹@ ‰$èÊ}ÿÿ‰Eä‹Eä‰EðÇEô4ƒ}ðu ÇEøë(‹Eð‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$è¶oÿÿ‰Eø‹Eø…Àu2ƒÕÒÿÿ‰D$ƒÌÔÿÿ‰D$ ÇD$oƒóÒÿÿ‰D$Ç$èZsÿÿ‹E‹@‰D$‹Eä‰$è5nÿÿ‰Eèƒ}èt‹Eè‹@‰$èNuÿÿ‰Eì닃¨ÿÿÿ‰E싃¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹Eä‰$è{ÿÿ‹EìƒÄ4[]ÃU‰åVSƒì@è¾ÙÿÿËE‹@ ‰$èÈ|ÿÿ‰Eà‹Eà‰EìÇEð4ƒ}ìu ÇEôë(‹Eì‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$è´nÿÿ‰Eô‹Eô…Àu2ƒÕÒÿÿ‰D$ƒëÔÿÿ‰D$ ÇD$…ƒóÒÿÿ‰D$Ç$èXrÿÿÇ$èì}ÿÿ‰EäÇEèër‹E‹@‰Æ‹Eà‹H ‹Uè‰ÐÀÐÀÀ‹!Æ‹Eà‹H ‹Uè‰ÐÀÐÀÀ‹9Æu0‹Eà‹H ‹Uè‰ÐÀÐÀÀ‹@‰$ètÿÿ‰D$‹Eä‰$èRxÿÿƒEè‹Eè‹Uà‹R9Ðr‹Eà‰$è¶yÿÿ‹EäƒÄ@[^]ÃU‰åVSƒì@èqØÿÿÃÏ‹E‹@ ‰$è{{ÿÿ‰Eà‹Eà‰EìÇEð4ƒ}ìu ÇEôë(‹Eì‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$ègmÿÿ‰Eô‹Eô…Àu2ƒÕÒÿÿ‰D$ƒÕÿÿ‰D$ ÇD$™ƒóÒÿÿ‰D$Ç$è qÿÿÇ$èŸ|ÿÿ‰EäÇEèër‹E‹@‰Æ‹Eà‹H ‹Uè‰ÐÀÐÀÀ‹!Æ‹Eà‹H ‹Uè‰ÐÀÐÀÀ‹9Æu0‹Eà‹H ‹Uè‰ÐÀÐÀÀ‹@‰$è´rÿÿ‰D$‹Eä‰$èwÿÿƒEè‹Eè‹Uà‹R9Ðr‹Eà‰$èixÿÿ‹EäƒÄ@[^]ÃU‰åSƒì$è%×ÿÿÃYÕÿÿ‰$ètÿÿ‰Â‹ƒÌÿÿÿ‰‹“xÿÿÿ‹ƒ@ÿÿÿ‰‚€“yßþÿ‹ƒxÿÿÿ‰P,‹“xÿÿÿƒ ‰B0“yßþÿ‹ƒxÿÿÿ‰PD‹ƒxÿÿÿÇ@T듌Üþÿ‹ƒxÿÿÿ‰Pd‹“xÿÿÿƒ„ ‰B|‹“xÿÿÿƒ4àþÿ‰‚œ‹ƒxÿÿÿ‹€˜…Àu‹ƒxÿÿÿ‹“ìÿÿÿ‰˜‹ƒxÿÿÿ‹€œ…Àu‹ƒxÿÿÿ‹“ÿÿÿ‰œ‹ƒxÿÿÿ‰$èwkÿÿ…Àuz‹ƒxÿÿÿ‰D$ƒiÕÿÿ‰D$‹E‰$èDjÿÿÇ$4èh’‰Eø‹ƒxÿÿÿ‹„‹Eø‰D$ƒ>Óÿÿ‰D$‰$èjÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSìè£ÕÿÿÃÕÿÿ‰D$‹E ‰$è¦kÿÿ…Àu Ç…øýÿÿÿÿÿÿëQ‹E‹@‹@ ‰D$ ƒ˜Õÿÿ‰D$ÇD$…üýÿÿ‰$èiqÿÿ‹ƒÈÿÿÿ‹…üýÿÿ‰D$‰$èxÿÿÇ…øýÿÿÿÿÿÿ‹…øýÿÿÄ[]ÃU‰åSƒìè ÕÿÿÃj‹E‰$èÉvÿÿƒÄ[]ÃU‰åSƒì$èéÔÿÿÃG‹U‹ƒÿÿÿ‰B‹U‹ƒÄÿÿÿ‰‚€‹E‰$èûiÿÿ…Ày-‹E‹@ ‰D$ ƒ²Õÿÿ‰D$ÇD$Ç$èÏyÿÿ锃}tW‹E‰$èÙ‰Eø‹E‹„‹Eø‰D$ƒÇÕÿÿ‰D$‰$è„hÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹ƒDÿÿÿ‹‹E‰D$‰T$‹E‰$èïkÿÿ‹E‰D$‹E ‰D$‹E‰$è&hÿÿƒÄ$[]ÃU‰åSƒìèæÓÿÿÃD ‹ƒèÿÿÿ‹‹E ‰D$‰T$‹E‰$è kÿÿƒÄ[]ÃU‰åSƒìè°Óÿÿà ‹ƒèÿÿÿ‹‰D$‹E‰$èyÿÿƒÄ[]ÃU‰åSƒì$èÓÿÿÃß ƒÑÕÿÿ‰$èëpÿÿ‰Â‹ƒDÿÿÿ‰ƒäÕÿÿ‰$èÓpÿÿ‰Â‹ƒèÿÿÿ‰‹ƒÄÿÿÿÇ@Të‹“Äÿÿÿƒððþÿ‰‚”“Šñþÿ‹ƒÄÿÿÿ‰ ‹ƒÄÿÿÿ‹€˜…Àu‹ƒÄÿÿÿ‹“ìÿÿÿ‰˜‹ƒÄÿÿÿ‹€œ…Àu‹ƒÄÿÿÿ‹“ÿÿÿ‰œ‹ƒÄÿÿÿ‰$èhÿÿ…À…Ì‹ƒÄÿÿÿ‰D$ƒ÷Õÿÿ‰D$‹E‰$èÏfÿÿÇ$èóމEø‹ƒÄÿÿÿ‹„‹Eø‰D$ƒÇÕÿÿ‰D$‰$è›fÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒè›À‰Â‹ƒÄÿÿÿ‹ˆ„‰T$ƒÖÿÿ‰D$‰ $èKfÿÿèrÀ‰Â‹ƒÄÿÿÿ‹ˆ„‰T$ƒ Öÿÿ‰D$‰ $è"fÿÿƒÄ$[]ÃU‰åSƒì4èâÑÿÿÃ@ èåkÿÿ‰Eè‹E‹‹ƒê‰‹…Àu‹E‹‹@‹P‹E‹‰$ÿÒ‹E‹@‰Eì‹Eì‰Eð‹EÇ@‹EÇÇEô‹ƒÿÿÿ‹€¨…Àt&è-mÿÿ‰Eôë‹Eð‹‰Eø‹Eð‹@‰Eð‹Eø‰$èLwÿÿƒ}ðuÞ‹ƒÿÿÿ‹€¨…Àt ‹Eô‰$è«kÿÿ‹E‹@…Àtƒ$Öÿÿ‰D$ÇD$Ç$èCvÿÿ‹E‰$èødÿÿ‹Eè‰$èÍlÿÿƒÄ4[]ÃU‰åSƒì$èÝÐÿÿÃ; ‹ƒp…ÀtiÇEøëP‹ƒp‹‰Â‹EøÁà‹‹E‹‹‰T$‰$èÊgÿÿ…Àt ‹ƒp‹‰Â‹EøÁà‹P‹E‰$ÿÒëƒEø‹Eø‹“p‹R9Ðr ƒÄ$[]ÃU‰åSƒì$èRÐÿÿð ƒ} u"ƒwÖÿÿ‰D$ƒ[Öÿÿ‰D$Ç$èÄlÿÿëU‹ƒp…Àu"ÇD$ÇD$Ç$èÜfÿÿ‰ƒp‹E‰Eô‹E ‰Eø‹“pÇD$Eô‰D$‰$èÍtÿÿƒÄ$[]ÃU‰åSƒìè½Ïÿÿà ‹E‹@‰$è§cÿÿ‹E‰$èlqÿÿƒÄ[]ÃU‰åSƒìèŒÏÿÿÃê‹E‹P‹E‹@ 9Âs,‹E‹H‹E‹PÀ‹ƒÂ‹E‰P‰ $è'}‰Eøë‹ƒüþÿÿ‹‰$è(oÿÿÇEø‹EøƒÄ[]ÃU‰åSƒìèÏÿÿÃ|‹E‰$è«eÿÿ‹E‹@‰Eø‹EÇ@ƒ}øt'‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹E‰$è eÿÿƒÄ[]ÃU‰åSƒì4è°ÎÿÿÃÇEäEä‰D$‹E‰$èïhÿÿ‰Eè‹Eä‰$èQsÿÿ‰EôÇEìër‹EìÀÀE苉$èmÿÿ‰$èYdÿÿ‰EøÇD$_ƒ›Öÿÿ‰D$‹Eø‰$èéhÿÿ‹Eø‰$è~iÿÿ‰Eð‹Uì‹Eð‰D$‰T$‹Eô‰$èBqÿÿ‹Eø‰$èbÿÿƒEì‹Eä9Eìr†ƒ}èt ‹Eè‰$èêaÿÿ‹EôƒÄ4[]ÃU‰åSƒìDè×ÍÿÿÃ5ÇEØÇEÜÇEàÇEäÇEè‹E ‰$èbÿÿ‰Eìƒ}ìuè³oÿÿ‹E‹U ‰T$‰$èjÿÿ‰EÈéC‹E‹@ ‰$è‹pÿÿ‰EðƒÖÿÿ‰D$‹Eì‰$èrÿÿ…Àu‹Eð‰$èŠþÿÿ‰EÈé‹Eì‰D$‹Eð‰$èêmÿÿ‰Eô‹Eð‰$èLnÿÿƒ}ôu‹E‹U ‰T$‰$è”iÿÿ‰EÈ鯋Eô‹@ƒà…Àu-‹ƒ8ÿÿÿ‹‹Eì‰D$ƒ©Öÿÿ‰D$‰$è~eÿÿÇEÈ錋E‹@…Àu‹Eô‰$è‡z‰EÈër‹EôÇD$L‰$èlÿÿ‹@ ‰D$E؉$èómÿÿ‹E‹@‹PE؉D$‹Eì‰D$‰$èäbÿÿ‹Eô‰D$ÇD$E؉$è×½‰EøE؉$èœ`ÿÿ‹Eø‰EÈ‹EȃÄD[]ÃU‰åSƒì4è#ÌÿÿÃÇEäÇEèÇEìÇEðÇEô‹E‹@ƒà…Àt-‹ƒ8ÿÿÿ‹‹E ‰D$ƒÈÖÿÿ‰D$‰$èzdÿÿÇEØé‹E‹@ƒà…Àu-‹ƒ8ÿÿÿ‹‹E ‰D$ƒõÖÿÿ‰D$‰$è@dÿÿÇEØéÊ‹EÇD$L‰$èájÿÿ‹@ ‰D$Eä‰$èÏlÿÿ‹E‰D$‹E‰D$Eä‰$èi»…Ày#‹ƒ8ÿÿÿ‹ƒ×ÿÿ‰D$‰$ènÿÿÇEØëeÇEø‹ƒÿÿÿ‹€¨…ÀtèÃfÿÿ‰EøEä‰D$‹E ‰D$‹E‰$è·nÿÿ‹ƒÿÿÿ‹€¨…Àt ‹Eø‰$èLeÿÿEä‰$è!_ÿÿÇEØ‹E؃Ä4[]ÃU‰åSƒì$è§ÊÿÿÃ}u&‹ƒ8ÿÿÿ‹ƒT×ÿÿ‰D$‰$è_mÿÿÇEèÿÿÿÿéä‹E ‰$èØ^ÿÿ‰Eôƒ}ôu&èzlÿÿ‹U‹E‰D$‹E ‰D$‰$è¡cÿÿ‰Eè骋E‹@…Àu#‹ƒ8ÿÿÿ‹ƒt×ÿÿ‰D$‰$èõlÿÿÇEèÿÿÿÿë}‹E‹@‹@‰Eø‹Eø‹‰Â‹Eô‰D$‰$èªjÿÿ‰Eðƒ}ðu‹U‹E‰D$‹E ‰D$‰$è(cÿÿ‰Eèë4‹E‰D$ ‹Eð‰D$‹Eô‰D$‹Eø‰$èvýÿÿ…Àu ÇEèÿÿÿÿëÇEè‹EèƒÄ$[]ÃU‰åƒì‹E‹@…Àt$‹E‹@‰Â‹E‰D$‰$‹E ÿÐ…Ày ÇEüÿÿÿÿëÇEü‹EüÉÃU‰åSƒì$è<ÉÿÿÚ‹ƒTÿÿÿ‹@‰$ècgÿÿ‰Â‹ƒTÿÿÿ‰D$‰$èfÿÿ‰Eô‹E‹@ ‰$èlÿÿ‰Eø‹EôƒÀ ‰D$‹Eø‰$èFcÿÿ‰Â‹Eô‰P‹EôÇ@‹Eø‰$èùiÿÿ‹EôƒÄ$[]ÃU‰åSƒì$è¶ÈÿÿËE‹@ ‰$èÀkÿÿ‰EôEð‰D$‹Eô‰$èëbÿÿ‰Eø‹Eô‰$è­iÿÿ‹Eø‰$èr\ÿÿ‹EðƒÄ$[]ÃU‰åSƒì$è_Èÿÿý‹ƒØÿÿÿ‰$è©cÿÿ‰Eøƒ} t ‹ƒ¨ÿÿÿ9E u‹EøÇ@‹E‰$èᄉ‹Eø‰P ëe‹ƒ°ÿÿÿ‰D$‹E ‰$è1gÿÿ…Àu#‹ƒ8ÿÿÿ‹ƒ¼×ÿÿ‰D$‰$èÃjÿÿÇEèë/‹E ‹P‹E ‰‹U ‹Eø‰P‹E ‰$èz„‰Â‹Eø‰P ‹Eø‰Eè‹EèƒÄ$[]ÃU‰åSƒìDè˜ÇÿÿÃö‹E‹@ ‰EÔÇD$.‹EÔ‰$èd_ÿÿ‰E؃}Øt ‹E؃À‰EÔ‹E‰$è݉E܃}„ð‹E‹@ ‰Eð‹E‰$èmÿÿ‰EàÇEìëg‹UÜ‹Eì‹D‚ ‰Eô‹Eô‰D$‹Eà‰$èûiÿÿ‰Eøƒ}øyèmgÿÿë4ƒ}øu.‹Eð‹¬‹Eô‰D$‰$èÍiÿÿ…Àu‹Eô‰D$‹Eà‰$èwfÿÿƒEì‹EÜ‹@;E쎋Eà‰$èýfÿÿ‰Eä‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒ‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒë‹E܉Eä‹U‹ƒ$ÿÿÿ‹‰B‹U‹E䉂¨ƒ}ät.ÇD$‹Eä‰$èáhÿÿ‰Â‹E‰€‹E‹€‹ƒÀ‰ÇD$‹Eä‰D$‹E‰$蟋E‰$è![ÿÿ…Ày-‹E‹@ ‰D$ ƒü×ÿÿ‰D$ÇD$Ç$èõjÿÿéS‹E‹@ ÇD$.‰$èŠ]ÿÿ‰E؃}Øti‹UØ‹E‹@ )‹E‹@ ‰T$‰$è¤]ÿÿ‰Eè‹E‹„‹Eè‰D$ƒØÿÿ‰D$‰$èYÿÿ‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒƒ}„‚‹E‰$ès‰EЋE‹„‹EЉD$ƒ)Øÿÿ‰D$‰$èYÿÿ‹EЋPÿ‹EЉ‹EЋ…Àu‹EЋ@‹P‹EЉ$ÿÒ‹E‹P‹E‰‹ƒøÿÿÿ‹‹E‰D$‰T$‹E‰$è|\ÿÿèó²‰Â‹E‹ˆ„‰T$ƒ3Øÿÿ‰D$‰ $è¦Xÿÿ‹E‰D$‹EÔ‰D$‹E‰$èXÿÿƒÄD[]ÃU‰åSƒìèMÄÿÿëý‹E‰EôèJ^ÿÿ‰Eøƒ}t)‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu ‹Eô‹@‹P‹Eô‰$ÿÒë ‹Eô‹P‹Eô‰‹Eø‰$èÐ_ÿÿƒÄ[]ÃU‰åƒì‹EÇD$‰$èÉÃU‰åSƒì$èÅÃÿÿÃ#ý‹E‹@‰Eøƒ} t ‹Eø‰$è¼òÿÿ‹Eø‹@…Àu2ƒdØÿÿ‰D$ƒDØÿÿ‰D$ ÇD$YƒxØÿÿ‰D$Ç$è—\ÿÿ‹ƒ”ÿÿÿ‹ÇD$ ‹E‰D$‰T$‹Eø‰$è!eÿÿ‹E‹@ …Àt ‹E‰$èƒÄ$[]ÃU‰åSƒìèÃÿÿÃzü‹E‹@‹@…Àu2ƒ£Øÿÿ‰D$ƒ„Øÿÿ‰D$ ÇD$<ƒxØÿÿ‰D$Ç$è\ÿÿ‹E‹@ƒà„ÀuH‹E‹@‰ÂƒÊ‹E‰P‹U‹ƒÀ‰‹E‹P‹E‰D$ƒIÿÿ‰D$‰$è>`ÿÿ‹E‹@‰$èPXÿÿƒÄ[]ÃU‰åSƒì4èpÂÿÿÃÎûƒ}Pu ÇEØéÞ‹E‰$èKWÿÿ‰Eä‹Eä‰$è"‰EìE܉D$‹E‰$èxeÿÿ‰Eà‹E܃À‰$èWdÿÿ‰Eô‹Eì‹P‹E쉋Eì‰D$ÇD$‹Eô‰$èdÿÿ‹EÜ…Àt]ÇEøëJ‹EøÀÀEà‹‰Eè‹Eè‰$訉Eð‹Eð‹P‹Eð‰‹Eð‹UøƒÂ‰D$‰T$‹Eô‰$èGdÿÿƒEø‹Uø‹EÜ9Âr¬‹Eà‰$è~Uÿÿ‹Eô‰EØ‹E؃Ä4[]ÃU‰åSƒìTèeÁÿÿÃÃúèh[ÿÿ‰EЋE‰$èÐþÿÿ‰EäÇD$‹Eä‰$èôcÿÿ‰Eàè‹E‰Â‹ƒ°ÿÿÿ‹;Eøt)‹E‰Â‹ƒPÿÿÿ‹;Eøtƒ}èt‹Eè;Eøu(‹Eø‰EèƒEð‹Eð;Eì|ƒ}èt‹U‹E‰Â‹E艃Ä4[]ÃU‰åSƒì$è¼ÿÿÃoõƒ}u‹ƒÄÿÿÿ‰Eèé–‹E‰$èÚZÿÿ‰$èÙ®‰Eøƒ}øt‹Eø‰Eèër‹ƒøÿÿÿ‹‰D$‹E‰$è*aÿÿ‰Eøƒ}øuL‹ƒDÿÿÿ‹‰D$‹E‰$è aÿÿ‰Eøƒ}øu,‹E‰$èúÿÿ‰Eø‹ƒDÿÿÿ‹‹Eø‰D$‰T$‹E‰$èESÿÿ‹Eø‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èL»ÿÿêôƒ}u!‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eèé@‹ƒ”ÿÿÿ‹‰D$‹E‰$è_ÿÿ‰Eðƒ}ðt‹Eð‹P‹Eð‰é‹E‰$è ‰Eôƒ}ôt ‹Eô‹‰Eøë*ƒ}t‹E‹‰$èŸþÿÿ‰Eøë‹E‹‹‰$è‹þÿÿ‰Eøƒ}øu2ƒÙÿÿ‰D$ƒôØÿÿ‰D$ ÇD$šƒxØÿÿ‰D$Ç$è›Sÿÿ‹Eø‹@T%…Àt ‹Eø‹P‹Eø‰‹Eø‰$è¤Uÿÿ‰Eðƒ}ðu ÇEèëU‹EðÇ@ ‹EðÇ@‹EðÇ@‹Uð‹E‰B‹E‰$èSÿÿ‹E ‰D$‹Eð‰$èöÿÿ‹Eð‰$èc_ÿÿ‹Eð‰Eè‹EèƒÄ4[]ÃU‰åSƒìèʹÿÿÃ(ó‹ƒÿÿÿ‹‰D$‹E‰$è»]ÿÿƒÄ[]ÃU‰åSƒì蛹ÿÿÃùòÇD$ÇD$‹E‰$è"þÿÿƒÄ[]ÃU‰åSƒì$èh¹ÿÿÃÆò‹E‰Eø‹Eø‹P‹E ‰D$‰$è•Mÿÿ‰Â‹Eø‰PƒÄ$[]ÃU‰åSƒì$è-¹ÿÿËòƒ}u%ƒ*Ùÿÿ‰D$ƒÙÿÿ‰D$Ç$èŸUÿÿé‹E‹P‹ƒ°ÿÿÿ9ÂtA‹E‹P‹ƒ°ÿÿÿ‰D$‰$èÒUÿÿ…Àu%ƒ8Ùÿÿ‰D$ƒÙÿÿ‰D$Ç$èNUÿÿ鳃} u%ƒbÙÿÿ‰D$ƒÙÿÿ‰D$Ç$è#Uÿÿ鈋E‰Eô‹Eô‰$è}‰Eø‹Eø‹P‹E ‰D$‰$èuUÿÿ…Àt"ƒtÙÿÿ‰D$ƒÙÿÿ‰D$Ç$èÑTÿÿë9‹Eø‹P‹E ‰D$‰$èZSÿÿ‰Â‹Eø‰Pƒ. ÿÿ‰D$‹Eø‰D$‹E ‰$èvLÿÿƒÄ$[]ÃU‰åVSƒì0èå·ÿÿÃCñ‹E‹@…Àu ÇEäëw‹ƒÿÿÿ‹‹E‹@‰T$‰$èÀ[ÿÿ‰Eôƒ}ôuNèY‰Eô‹E‹P‹Eô‰‹Eô‹‰Â‹ƒÀ‰‹ƒÀÿÿÿ‰Â‹ƒÿÿÿ‹0‹E‹H‰T$ ‹Eô‰D$‰t$‰ $è9Yÿÿ‹Eô‰Eä‹EäƒÄ0[^]ÃU‰åSƒìè?·ÿÿÃðÇ$èkXÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìè·ÿÿÃsð‹E‰$è²Uÿÿ‹E‰$è—Mÿÿ‹E‰$èüþÿÿ‹E‰$è,‹E‰$è6MÿÿƒÄ[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰å‹E‹@]ÃU‰åSì$èt¶ÿÿÃÒï‹E‹@‰…ôþÿÿ‹E‹@…Àt‹E‹@‹‹‰$è4Uÿÿ‰…øþÿÿë ƒ²Ùÿÿ‰…øþÿÿ‹U‹E‹@‹@ ‹ôþÿÿ‰L$‹øþÿÿ‰L$‰T$‰D$ ƒÀÙÿÿ‰D$ÇD$…üþÿÿ‰$èRÿÿ…üþÿÿ‰$è*QÿÿÄ$[]ÃU‰åƒì(ÇEð‹E‰$èÉýÿÿ‰Eø‹E‹@ …Àt‹E‹P ‹E‰D$‰$‹E ÿЉEðƒ}ðt ‹Eð‰EìéɃ}ø„¹‹Eø‹@‰Eôé¡‹Eô‹‰Eü‹Eü‹@…Àt‹Eü‹P‹E‰D$‰$‹E ÿЉEðƒ}ðt‹Eð‰Eìëy‹Eü‹@…Àt‹Eü‹P‹E‰D$‰$‹E ÿЉEðƒ}ðt‹Eð‰EìëI‹Eü‹@…Àt‹Eü‹P‹E‰D$‰$‹E ÿЉEðƒ}ðt‹Eð‰Eìë‹Eô‹@‰Eôƒ}ô…Uÿÿÿ‹Eð‰Eì‹EìÉÃU‰åSƒì$è«´ÿÿà î‹E‹@…Àt~‹ƒ”ÿÿÿ‹‹E‹@ÇD$ ÇD$‰T$‰$èOVÿÿ‹E‹@ …Àt2‹E‹P‹E‰D$ƒIÿÿ‰D$‰$èWÿÿ‹E‹@‰Âƒâþ‹E‰Pë‹E‹@‰$èõIÿÿ‹EÇ@‹E‹@ …Àt:‹E‹@ ‰Eø‹EÇ@ ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ¸ƒÄ$[]ÃU‰åSƒìè³ÿÿà í‹E‰$èJÿÿƒÄ[]ÃU‰åVSƒìPèž³ÿÿÃüìÇEàÇEèE܉D$ƒãÙÿÿ‰D$‹E ‰$èŒIÿÿ…Àu ÇEÀÿÿÿÿ龋E‰$èp‰EÜ‹EÜ…Àu ÇEÀÿÿÿÿé‹EÜÇD$‰$è8Kÿÿ…Àt7‹E܉$è Rÿÿ‰Â‹ƒ8ÿÿÿ‹‰T$ƒøÙÿÿ‰D$‰ $è©KÿÿÇEÀÿÿÿÿéO‹E܉$èVÿÿ‰Eìƒ}ìu&‹ƒ8ÿÿÿ‹ƒ8Úÿÿ‰D$‰$èŸUÿÿÇEÀÿÿÿÿéƒ}„VÇEØ‹E‰$è‡Nÿÿ‰Â‰ÐÀÐÁà‰$èÄSÿÿ‰Eèé‹EÔ‰$èáFÿÿ‰Eô‹Eô‰D$‹Eì‰$èSÿÿ‰Eðƒ}ðu7‹E܉$è8Qÿÿ‰Â‹ƒ8ÿÿÿ‹‹Eô‰D$ ‰T$ƒ`Úÿÿ‰D$‰ $èÑJÿÿé‹EðÇD$L‰$èyQÿÿ‹H ‹Uà‰ÐÀÐÁàEèƒÀ‰L$‰$èXSÿÿ‹MЋUà‰ÐÀÐÁàEèƒÀ‰L$‰$èÈz…Àt&‹ƒ8ÿÿÿ‹‹Eô‰D$ƒ”Úÿÿ‰D$‰$èRJÿÿé‹Uà‰ÐÀÐÁà‰Æuè‹Eô‰$èGÿÿ‰ƒEàEЉD$ EÔ‰D$E؉D$‹E‰$è›Iÿÿ…À…×þÿÿ‹Eè‰D$‹Eà‰D$‹E‰$èp£ÿÿ…Àt‹ƒŒÿÿÿ‹ƒ¾Úÿÿ‰D$‰$èüSÿÿÇEäë7‹Uä‰ÐÀÐÁàE苉$èúDÿÿ‹Uä‰ÐÀÐÁàEèƒÀ‰$è@EÿÿƒEä‹Eä;EàrÁ‹Eè‰$èÉDÿÿ‹Eì‰$èîQÿÿ‹E‹@…Àt ÇEÄëÇEÄÿÿÿÿ‹EĉEÀ‹EÀƒÄP[^]ÃU‰åSƒì芰ÿÿÃèé‹E‰D$‹E ‰D$‹E‰$èÀüÿÿ…Ày ÇEøë‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åVSƒìPè,°ÿÿÊéÇEÌÇEÐÇEÔÇEØÇEÜEà‰D$ƒÖÚÿÿ‰D$‹E ‰$èFÿÿ…Àu ÇEÄéž‹E‹@‰EìÇEðPƒ}ìu ÇEôë3‹Eì‹…Àt‹Eì‹‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$è¦Mÿÿ‰Eô‹Eô…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èþGÿÿÇEÄé ‹Uà‹E‹@‹‰T$‰$èëOÿÿ‰Eäƒ}äuE‹uà‹E‹@‹‹‰$èýMÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒÛÿÿ‰D$‰ $è™GÿÿÇEÄ馋Eä‹@ƒà…Àu*‹Uà‹ƒ8ÿÿÿ‹‰T$ƒLÛÿÿ‰D$‰ $è_GÿÿÇEÄëo‹EäÇD$L‰$èNÿÿ‹@ ‰D$Ẻ$èñOÿÿ‹Uà‹E‹HẺD$‰T$‰ $èåDÿÿ‹Eä‰D$ÇD$Ẻ$èØŸ‰EèẺ$èBÿÿ‹Eè‰EÄ‹EăÄP[^]ÃU‰åSƒìTè#®ÿÿÃç‹E ‰$èPÿÿ‰Eàƒ}à&‹ƒ8ÿÿÿ‹ƒhÛÿÿ‰D$‰$èÍPÿÿÇE¸éï‹Eà‰$èPÿÿ‰Eè‹E‹@‹‰EÜÇEä鸋Eä‰D$‹E ‰$èjPÿÿ‰EìÇEÈÇEÌÇEÐÇEÔÇEØ‹Eì‹P‹ƒÔÿÿÿ9ÂtB‹Eì‹P‹ƒÔÿÿÿ‰D$‰$è\Jÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒˆÛÿÿ‰D$‰$èPÿÿÇE¸é@‹Eì‰$è—Aÿÿ‰Eð‹E‹@‹‰Â‹Eð‰D$‰$èËMÿÿ‰Eôƒ}ôuE‹E‹@‹‹‰$èàKÿÿ‰Â‹ƒ8ÿÿÿ‹‹Eð‰D$ ‰T$ƒÛÿÿ‰D$‰ $èyEÿÿÇE¸éË‹Eô‹@ƒà…Àu-‹ƒ8ÿÿÿ‹‹Eð‰D$ƒLÛÿÿ‰D$‰$è?EÿÿÇE¸é‘‹EôÇD$L‰$èàKÿÿ‹@ ‰D$Eȉ$èÎMÿÿ‹E‹PEȉD$‹Eð‰D$‰$èÂBÿÿÇD$Eȉ$è,‚‰Eø‹Eø‰D$‹Eä‰D$‹Eè‰$èÃNÿÿEȉ$èh@ÿÿƒEä‹Eä;EàŒ<þÿÿ‹Eè‰E¸‹E¸ƒÄT[]ÃU‰åVSƒì@èÞ«ÿÿÃ<åEà‰D$ Eä‰D$ƒ¯Ûÿÿ‰D$‹E ‰$èÓAÿÿ…Àu ÇEÔéA‹E‹@‰EìÇEðPƒ}ìu ÇEôë3‹Eì‹…Àt‹Eì‹‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$ètIÿÿ‰Eô‹Eô…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èÌCÿÿÇEÔ鮋Uä‹E‹@‹‰T$‰$è¹Kÿÿ‰Eèƒ}èuB‹uä‹E‹@‹‹‰$èËIÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒÛÿÿ‰D$‰ $ègCÿÿÇEÔëL‹Uà‹uä‹E‹H‰T$ ‹Eè‰D$‰t$‰ $è^Þÿÿ…Àu ÇEÔ닃¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSìPèJªÿÿèãÇEà‹E‹@‰EäÇEèPƒ}äu ÇEìë3‹Eä‹…Àt‹Eä‹‹;Eèu ÇEìë‹Eè‰D$‹Eä‰$è Hÿÿ‰Eì‹Eì…Àu=‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èdBÿÿÇ…Äýÿÿéc‹E‹@‹‰EÜ‹E‹@ÇD$P‰$èôHÿÿ‰$èœ>ÿÿÇEØé½‹EЉ$èÕ=ÿÿ‰Eð‹Eð‰D$‹E܉$èJÿÿ‰Eôƒ}ôu[‹E‹@‹‹‰$è%Hÿÿ‰Â‹Eð‰D$‰T$ ƒÈÛÿÿ‰D$ÇD$…Ðýÿÿ‰$è(Eÿÿ‹ƒ8ÿÿÿ‹…Ðýÿÿ‰D$‰$èÎKÿÿëp‹uÔ‹E‹@ÇD$P‰$èCHÿÿ‰Â‰t$ ‹Eô‰D$‹Eð‰D$‰$èŠÜÿÿ…Àt7ƒ}t(EÔ‰D$ EЉD$E؉D$‹E‰$èÍ@ÿÿ…À…ÿÿÿ‹ƒ¨ÿÿÿ‰Eà‹E‹@ÇD$P‰$èÖGÿÿ‰$èþLÿÿƒ}àt ‹Eà‹P‹Eà‰‹Eà‰…Äýÿÿ‹…ÄýÿÿÄP[^]ÃU‰åSƒì$è(¨ÿÿÆáƒòÛÿÿ‰D$‹E ‰$è+>ÿÿ…Àu ÇEè麋E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èÌEÿÿ‰Eø‹Eø…Àu7‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $è$@ÿÿÇEèë*‹E‹@‰$è}<ÿÿ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è.§ÿÿÃŒàEì‰D$ƒ Üÿÿ‰D$‹E ‰$è*=ÿÿ…Àu ÇEèéÁ‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èËDÿÿ‰Eø‹Eø…Àu7‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $è#?ÿÿÇEèë1‹Uì‹E‹@‰T$‰$è¥>ÿÿ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è&¦ÿÿÄ߃Üÿÿ‰D$‹E ‰$è)<ÿÿ…Àu ÇEè麋E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èÊCÿÿ‰Eø‹Eø…Àu7‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $è">ÿÿÇEèë*‹E‹@‰$èûIÿÿ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4è,¥ÿÿÊÞEä‰D$ƒ/Üÿÿ‰D$‹E ‰$è(;ÿÿ…Àu ÇEØéØ‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èÉBÿÿ‰Eø‹Eø…Àu7‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $è!=ÿÿÇEØëH‹Eä‰$èýAÿÿ‰Eè‹E‹P‹Eè‰D$‰$èUHÿÿ‰Eìƒ}ìu ‹ƒ¨ÿÿÿ‰Eì‹Eì‹P‹E쉋Eì‰EØ‹E؃Ä4[]ÃU‰åSƒì4è ¤ÿÿÃkÝEä‰D$ Eè‰D$ƒBÜÿÿ‰D$‹E ‰$è:ÿÿ…Àu ÇEØéê‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$è£Aÿÿ‰Eø‹Eø…Àu7‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èû;ÿÿÇEØëZ‹Eè‰$è×@ÿÿ‰Eì‹U䋃À‰‹Uä‹E‹H‹ƒ ÿÿÿ‰D$ ‰T$‹Eì‰D$‰ $èäDÿÿ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰EØ‹E؃Ä4[]ÃU‰åVSƒìPèÔ¢ÿÿÃ2ÜÇEÈ‹E ‰$èºDÿÿ‰Eàƒ}àw&‹ƒ8ÿÿÿ‹ƒXÜÿÿ‰D$‰$èwEÿÿÇEÄé¡ÇD$ÇD$‹E ‰$è`Dÿÿ‰EØEÔ‰D$ EЉD$ƒ†Üÿÿ‰D$‹E؉$èj8ÿÿ…Àu3‹EØ‹Pÿ‹E؉‹EØ‹…Àu‹EØ‹@‹P‹E؉$ÿÒÇEÄé)‹EØ‹Pÿ‹E؉‹EØ‹…Àu‹EØ‹@‹P‹E؉$ÿÒ‹EÔ‰$èñFÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒœÜÿÿ‰D$‰$è£DÿÿÇEÄéÍ‹E‹@‰EìÇEðPƒ}ìu ÇEôë3‹Eì‹…Àt‹Eì‹‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$èˆ?ÿÿ‰Eô‹Eô…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èà9ÿÿÇEÄé:‹E‹@‹‹‹MÐÇD$EȉD$ ẺD$‰T$‰ $è…<ÿÿ…ÀuF‹uЋE‰$è£Fÿÿ‰$èK5ÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒ½Üÿÿ‰D$‰ $èg9ÿÿÇEÄéÁ‹Eà‰D$ÇD$‹E ‰$èBÿÿ‰E܃}Üu ÇEÄé’‹UÔÇD$‹E܉D$‰$èñ€‰Eè‹U‹Eè‰D$‰$èçÿÿ‹UÈ‹MÌ‹E‹pÇD$‹Eè‰D$ ‰T$‰L$‰4$èÂBÿÿ‰Eä‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒ‹Eä‰$è}5ÿÿ‰EÄ‹EăÄP[^]ÃU‰åVSƒìPèÕŸÿÿÃ3Ù‹E ‰$èÂAÿÿ‰Eäƒ}ä&‹ƒ8ÿÿÿ‹ƒÜÜÿÿ‰D$‰$èBÿÿÇEÄé¡ÇD$ÇD$‹E ‰$èhAÿÿ‰EØEÔ‰D$ EЉD$ƒÝÿÿ‰D$‹E؉$èr5ÿÿ…Àu3‹EØ‹Pÿ‹E؉‹EØ‹…Àu‹EØ‹@‹P‹E؉$ÿÒÇEÄé)‹EØ‹Pÿ‹E؉‹EØ‹…Àu‹EØ‹@‹P‹E؉$ÿÒ‹EÔ‰$èùCÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒœÜÿÿ‰D$‰$è«AÿÿÇEÄéÍ‹E‹@‰EìÇEðPƒ}ìu ÇEôë3‹Eì‹…Àt‹Eì‹‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$è<ÿÿ‰Eô‹Eô…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èè6ÿÿÇEÄé:‹E‹@‹‹‹MÐÇD$EȉD$ ẺD$‰T$‰ $è9ÿÿ…ÀuF‹uЋE‰$è«Cÿÿ‰$èS2ÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒ½Üÿÿ‰D$‰ $èo6ÿÿÇEÄéÁ‹Eä‰D$ÇD$‹E ‰$è‰?ÿÿ‰E܃}Üu ÇEÄé’‹UÔÇD$‹E܉D$‰$èù}‰Eè‹U‹Eè‰D$‰$èäÿÿ‹UÈ‹MÌ‹E‹pÇD$‹Eè‰D$ ‰T$‰L$‰4$èÊ?ÿÿ‰Eà‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒ‹Eà‰$è…2ÿÿ‰EÄ‹EăÄP[^]ÃU‰åVSƒì`èÝœÿÿÃ;Ö‹E ‰$èÊ>ÿÿ‰Eäƒ}ä&‹ƒ8ÿÿÿ‹ƒ,Ýÿÿ‰D$‰$è‡?ÿÿÇE´é§ÇD$ÇD$‹E ‰$èp>ÿÿ‰EØEЉD$EÔ‰D$ ẺD$ƒaÝÿÿ‰D$‹E؉$ès2ÿÿ…Àu3‹EØ‹Pÿ‹E؉‹EØ‹…Àu‹EØ‹@‹P‹E؉$ÿÒÇE´é(‹EØ‹Pÿ‹E؉‹EØ‹…Àu‹EØ‹@‹P‹E؉$ÿÒ‹EÔ‰$èú@ÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒœÜÿÿ‰D$‰$è¬>ÿÿÇE´éÌ‹E‹@‰EìÇEðPƒ}ìu ÇEôë3‹Eì‹…Àt‹Eì‹‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$è‘9ÿÿ‰Eô‹Eô…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èé3ÿÿÇE´é9‹E‹@‹‹‹MÌÇD$EĉD$ EȉD$‰T$‰ $èŽ6ÿÿ…ÀuF‹uÌ‹E‰$è¬@ÿÿ‰$èT/ÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒ½Üÿÿ‰D$‰ $èp3ÿÿÇE´éÀ‹Eä‰D$ÇD$‹E ‰$èŠ<ÿÿ‰E܃}Üu ÇE´é‘‹EЋUÔ‰D$‹E܉D$‰$èûz‰Eè‹U‹Eè‰D$‰$è áÿÿ‹UÄ‹MÈ‹E‹pÇD$‹Eè‰D$ ‰T$‰L$‰4$èÌ<ÿÿ‰Eà‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒ‹Eà‰$è‡/ÿÿ‰E´‹E´ƒÄ`[^]ÃU‰åVSƒì`èß™ÿÿÃ=Ó‹E ‰$èÌ;ÿÿ‰Eäƒ}ä&‹ƒ8ÿÿÿ‹ƒ|Ýÿÿ‰D$‰$è‰<ÿÿÇE´é§ÇD$ÇD$‹E ‰$èr;ÿÿ‰EØEЉD$EÔ‰D$ ẺD$ƒ¸Ýÿÿ‰D$‹E؉$èu/ÿÿ…Àu3‹EØ‹Pÿ‹E؉‹EØ‹…Àu‹EØ‹@‹P‹E؉$ÿÒÇE´é(‹EØ‹Pÿ‹E؉‹EØ‹…Àu‹EØ‹@‹P‹E؉$ÿÒ‹EÔ‰$èü=ÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒœÜÿÿ‰D$‰$è®;ÿÿÇE´éÌ‹E‹@‰EìÇEðPƒ}ìu ÇEôë3‹Eì‹…Àt‹Eì‹‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$è“6ÿÿ‰Eô‹Eô…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èë0ÿÿÇE´é9‹E‹@‹‹‹MÌÇD$EĉD$ EȉD$‰T$‰ $è3ÿÿ…ÀuF‹uÌ‹E‰$è®=ÿÿ‰$èV,ÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒ½Üÿÿ‰D$‰ $èr0ÿÿÇE´éÀ‹Eä‰D$ÇD$‹E ‰$èŒ9ÿÿ‰E܃}Üu ÇE´é‘‹EЋUÔ‰D$‹E܉D$‰$èýw‰Eè‹U‹Eè‰D$‰$è"Þÿÿ‹UÄ‹MÈ‹E‹pÇD$‹Eè‰D$ ‰T$‰L$‰4$èÎ9ÿÿ‰Eà‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒ‹Eà‰$è‰,ÿÿ‰E´‹E´ƒÄ`[^]ÃU‰åSƒì$èâ–ÿÿÃ@ÐEì‰D$ƒÙÝÿÿ‰D$‹E ‰$èÞ,ÿÿ…Àu ÇEèéÁ‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$è4ÿÿ‰Eø‹Eø…Àu7‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $è×.ÿÿÇEèë1‹Uì‹E‹@‰T$‰$èÙ3ÿÿ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èÚ•ÿÿÃ8ÏEì‰D$ƒðÝÿÿ‰D$‹E ‰$èÖ+ÿÿ…Àu ÇEèé°‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èw3ÿÿ‰Eø‹Eø…Àu7‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èÏ-ÿÿÇEèë ‹Uì‹E‹@‰T$‰$èa4ÿÿ‰$è)+ÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èã”ÿÿÃAÎEì‰D$ƒÞÿÿ‰D$‹E ‰$èß*ÿÿ…Àu ÇEèéÁ‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$è€2ÿÿ‰Eø‹Eø…Àu7‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èØ,ÿÿÇEèë1‹Uì‹E‹@‰T$‰$èz)ÿÿ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èÛ“ÿÿÃ9ÍEø‰D$ƒ'Þÿÿ‰D$‹E ‰$è×)ÿÿ…Àu ÇEèë1‹Uø‹E‹@‰T$‰$è59ÿÿ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åVSìèb“ÿÿÃÀÌÇE˜ÇEœÇE ÇE¤ÇE¨‹E ‰$è,5ÿÿ‰E؃}Ø)‹ƒ8ÿÿÿ‹ƒDÞÿÿ‰D$‰$èé5ÿÿÇ…ÿÿÿéÇÇD$ÇD$‹E ‰$èÏ4ÿÿ‰EÜEȉD$ƒhÞÿÿ‰D$‹E܉$èà(ÿÿ…Àu6‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒÇ…ÿÿÿéS‹EÜ‹Pÿ‹E܉‹EÜ‹…Àu‹EÜ‹@‹P‹E܉$ÿÒ‹E‹@‰EèÇEìPƒ}èu ÇEðë3‹Eè‹…Àt‹Eè‹‹;Eìu ÇEðë‹Eì‰D$‹Eè‰$è00ÿÿ‰Eð‹Eð…Àu=‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èˆ*ÿÿÇ…ÿÿÿé–‹E‹@‹‹‹MÈÇD$ẺD$ EЉD$‰T$‰ $è*-ÿÿ…ÀuI‹uÈ‹E‰$èH7ÿÿ‰$èð%ÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒ½Üÿÿ‰D$‰ $è *ÿÿÇ…ÿÿÿé‹UÐE¬‰D$‰$è;5ÿÿ‹UØ‹EÀƒÀ9Âta‹E؃è‹UÈ‹MÀ‰D$‰T$‰L$ ƒxÞÿÿ‰D$ÇD$€…ÿÿÿ‰$è-ÿÿ‹ƒ8ÿÿÿ‹…ÿÿÿ‰D$‰$è¼3ÿÿÇ…ÿÿÿéš‹EÀP‰ÐÀÀÐÀÀ‰$èó1ÿÿ‰Eä‹E‹@‹‹‰D$‹Eä‰$è2ÿÿ‹E‹@ÇD$P‰$èñ/ÿÿ‰D$‹Eä‰$è22ÿÿÇEÔë<‹UÄ‹EÔÀÀ‹‰Æƒæþ‹MäƒÁ‹UÔ‰ÐÀÀÐÀÀ‰t$‰$è¡1ÿÿƒEÔ‹EÀ;EÔw¼ÇEÔé ‹EÔƒÀ‰D$‹E ‰$èÄ2ÿÿ‰Eô‹MäƒÁ‹UÔ‰ÐÀÀÐÀÀ‹Eô‰D$‰$èÛX…À‰Â‹MäƒÁ‹UÔ‰ÐÀÀÐÀÀ‹‰$è .ÿÿ‰Á‹Eô‹@‹P ‹EÔ‰D$‰L$‰T$ ƒ¨Þÿÿ‰D$ÇD$€…ÿÿÿ‰$è–+ÿÿ‹ƒ8ÿÿÿ‹…ÿÿÿ‰D$‰$è<2ÿÿÇEÔë‹UÔ‰ÐÀÀÐÀÀEä‰$è™#ÿÿƒEÔ‹EÀƒÀ;EÔw׋Eä‰$è#ÿÿÇ…ÿÿÿé݃EÔ‹EÀ;EÔ‡çþÿÿ‹E¼ƒøt‹E¼ƒàþ‰D$E˜‰$èS0ÿÿ‹UÌ‹MÐE˜‰D$ ‰T$‰L$‹Eä‰$è³(ÿÿÇEÔë‹UÔ‰ÐÀÀÐÀÀEä‰$è#ÿÿƒEÔ‹EÀƒÀ;EÔw׋Eä‰$è†"ÿÿ‹E¼ƒàþƒøt#ÇD$E˜‰$èed‰EàE˜‰$èº"ÿÿ닃¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eà‹Eà‰…ÿÿÿ‹…ÿÿÿÄ[^]ÃU‰åVSƒì@èŽÿÿÃvÇEè‰D$ƒâÞÿÿ‰D$‹E ‰$è$ÿÿ…Àu ÇEÔéA‹E‹@‰EìÇEðPƒ}ìu ÇEôë3‹Eì‹…Àt‹Eì‹‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$èµ+ÿÿ‰Eô‹Eô…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $è &ÿÿÇEÔ鮋E‹@‹‹‹MèÇD$Eà‰D$ Eä‰D$‰T$‰ $è²(ÿÿ…ÀuC‹uè‹E‰$èÐ2ÿÿ‰$èx!ÿÿ‰Â‹ƒ8ÿÿÿ‹‰t$ ‰T$ƒ½Üÿÿ‰D$‰ $è”%ÿÿÇEÔë8‹Uà‹Mä‹E‹@‰T$‰L$‰$è.ÿÿ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSì苌ÿÿÃéÅÇEœÇE ÇE¤ÇE¨ÇE¬‹E‹@‰EèÇEìPƒ}èu ÇEðë3‹Eè‹…Àt‹Eè‹‹;Eìu ÇEðë‹Eì‰D$‹Eè‰$è1*ÿÿ‰Eð‹Eð…Àu=‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $è‰$ÿÿÇ…ÿÿÿé ‹E‹@‰$è 0ÿÿ‰Ẽ}Ìu)‹ƒ8ÿÿÿ‹ƒüÞÿÿ‰D$‰$èy.ÿÿÇ…ÿÿÿéÊ‹EÌ‹‰EЋEЉ$èG ÿÿ‰Eà‹E ‰$èi-ÿÿ‰E؃}Ðu)‹ƒ8ÿÿÿ‹ƒ:ßÿÿ‰D$‰$è&.ÿÿÇ…ÿÿÿéwE°‰D$‹EЉ$è%/ÿÿ‹UØ‹EÄ9Ât^‹UÄ‹E؉D$‹Eà‰D$‰T$ ƒxÞÿÿ‰D$ÇD$€…ÿÿÿ‰$è'ÿÿ‹ƒ8ÿÿÿ‹…ÿÿÿ‰D$‰$è¬-ÿÿÇ…ÿÿÿéý‹EÄP‰ÐÀÀÐÀÀ‰$èã+ÿÿ‰Eä‹E‹@‹‹‰D$‹Eä‰$è÷+ÿÿ‹E‹@ÇD$P‰$èá)ÿÿ‰D$‹Eä‰$è",ÿÿÇEÔë<‹UÈ‹EÔÀÀ‹‰Æƒæþ‹MäƒÁ‹UÔ‰ÐÀÀÐÀÀ‰t$‰$è‘+ÿÿƒEÔ‹EÄ;EÔw¼ÇEÔé‹EÔ‰D$‹E ‰$è·,ÿÿ‰Eô‹Eô‹P‹ƒ¸ÿÿÿ9Ât‹Eô‹P‹ƒ¸ÿÿÿ‰D$‰$èÌ&ÿÿ…ÀtK‹Eô‹P ‹MÈ‹EÔÀÀ‹ƒàþ9Âu/‹Eô‹p‹MäƒÁ‹UÔ‰ÐÀÀÐÀÀ‰t$‰$è+ÿÿéñ‹MäƒÁ‹UÔ‰ÐÀÀÐÀÀ‹Eô‰D$‰$èWR…À‰Â‹MäƒÁ‹UÔ‰ÐÀÀÐÀÀ‹‰$è(ÿÿ‰Á‹Eô‹@‹P ‹EÔ‰D$‰L$‰T$ ƒ¨Þÿÿ‰D$ÇD$€…ÿÿÿ‰$è%ÿÿ‹ƒ8ÿÿÿ‹…ÿÿÿ‰D$‰$è¸+ÿÿÇEÔë‹UÔ‰ÐÀÀÐÀÀEä‰$èÿÿƒEÔ‹EăÀ;EÔw׋Eä‰$è›ÿÿÇ…ÿÿÿé̃EÔ‹EÄ;EÔ‡sþÿÿ‹EÀƒøt‹EÀƒàþ‰D$Eœ‰$èÏ)ÿÿEœ‰D$‹Eä‰$è-,ÿÿÇEÔë‹UÔ‰ÐÀÀÐÀÀEä‰$èŠÿÿƒEÔ‹EăÀ;EÔw׋Eä‰$èÿÿ‹EÀƒøt#ÇD$Eœ‰$èò]‰EÜEœ‰$èGÿÿ닃¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰EÜ‹E܉…ÿÿÿ‹…ÿÿÿÄ[^]ÃU‰åSƒì4覇ÿÿÃÁÇEäÇEè‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èa%ÿÿ‰Eø‹Eø…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $è¹ÿÿÇEØéÏ‹E ‰$èÂ#ÿÿ‰Eàƒ}à~<‹E ‹@‹@4‹P ÇD$‹E ‰$ÿÒ‰Eä‹Eà‰D$ÇD$‹E ‰$è (ÿÿ‰Eè‹E‹P‹Eè‰D$‹Eä‰D$‰$è9 ‰Eìƒ}ät'‹Eä‹Pÿ‹E䉋Eä‹…Àu‹Eä‹@‹P‹Eä‰$ÿÒƒ}èt'‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eì‰EØ‹E؃Ä4[]ÃU‰åSƒìè†ÿÿÃy¿‹ƒ8ÿÿÿ‹ƒPßÿÿ‰D$‰$èÙ(ÿÿ¸ƒÄ[]ÃU‰åSƒìèä…ÿÿÃB¿‹ƒ8ÿÿÿ‹ƒPßÿÿ‰D$‰$è¢(ÿÿ¸ƒÄ[]ÃU‰åSƒìDè­…ÿÿà ¿ÇEäÇEè‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èh#ÿÿ‰Eø‹Eø…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èÀÿÿÇEØéEä‰D$ƒˆßÿÿ‰D$‹E ‰$èÿÿ…Àu ÇEØéÚ‹Eä‰$èÝ)ÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒ¨ßÿÿ‰D$‰$è'ÿÿÇEØé¥‹Eä‰D$‹E‰$è­k‰Eèƒ}èu<‹Eä‰$è=*ÿÿ‰$èåÿÿ‰Â‹ƒ8ÿÿÿ‹‰T$ƒÈßÿÿ‰D$‰ $èÿÿÇEØëN‹E‹PÇD$ÇD$‹Eè‰D$ÇD$ ÇD$ÇD$‰$èÿÿ‰Eì‹Eì‰$è¡ÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒìDèëƒÿÿÃI½ÇEäÇEè‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$è¦!ÿÿ‰Eø‹Eø…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $èþÿÿÇEØéEä‰D$ƒàßÿÿ‰D$‹E ‰$èFÿÿ…Àu ÇEØéÚ‹Eä‰$è(ÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒ¨ßÿÿ‰D$‰$èÍ%ÿÿÇEØé¥‹Eä‰D$‹E‰$èëi‰Eèƒ}èu<‹Eä‰$è{(ÿÿ‰$è#ÿÿ‰Â‹ƒ8ÿÿÿ‹‰T$ƒÈßÿÿ‰D$‰ $èCÿÿÇEØëN‹E‹PÇD$ÇD$‹Eè‰D$ÇD$ ÇD$ÇD$‰$è}"ÿÿ‰Eì‹Eì‰$èßÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒìDè)‚ÿÿÇ»ÇEäÇEè‹E‹@‰EðÇEôPƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èäÿÿ‰Eø‹Eø…Àu:‹E‹@‹P ‹ƒ8ÿÿÿ‹‰T$ ‹E‰D$ƒðÚÿÿ‰D$‰ $è<ÿÿÇEØéEä‰D$ƒàÿÿ‰D$‹E ‰$è„ÿÿ…Àu ÇEØéÚ‹Eä‰$èY&ÿÿ…Àu&‹ƒ8ÿÿÿ‹ƒ¨ßÿÿ‰D$‰$è $ÿÿÇEØé¥‹Eä‰D$‹E‰$è)h‰Eèƒ}èu<‹Eä‰$è¹&ÿÿ‰$èaÿÿ‰Â‹ƒ8ÿÿÿ‹‰T$ƒÈßÿÿ‰D$‰ $èÿÿÇEØëN‹E‹PÇD$ÇD$‹Eè‰D$ÇD$ ÇD$ÇD$‰$èË&ÿÿ‰Eì‹Eì‰$èÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒìèg€ÿÿÃŹ‹E‹@ …Àu5è`&ÿÿ‰Â‹E‰P ‹E‹@ …Àu ÇEøë+‹E‹@…Àt ‹E‰$èú¼ÿÿ‹E‹P ‹ƒÀ‰‹E‹@ ‰Eø‹EøƒÄ[]ÃU‰åSƒìè÷ÿÿÃU¹‹E‹@‹@‰$è~ÿÿƒÄ[]ÃU‰åSƒì$èÎÿÿÃ,¹‹E‰Eô‹Eô‹@ ‰Eø‹ƒ°ÿÿÿ‹€€‹PL‹E‰D$‹E ‰D$‹E‰$ÿÒ‰Eðƒ}øu‹Eô‹@ …Àt‹Eô‹@…Àt ‹Eô‰$èD¼ÿÿ‹EðƒÄ$[]ÃU‰åƒì‹E‹@ …Àt"‹E‹P ‹E‰D$‰$‹E ÿÐ…Ày ÇEüÿÿÿÿë3‹E‹@…Àt"‹E‹P‹E‰D$‰$‹E ÿÐ…Ày ÇEüÿÿÿÿëÇEü‹EüÉÃU‰åSƒì$èí~ÿÿÃK¸‹EÇ@‹E‹@ …À„^èØÿÿ‰Eð‹E‹P‹E‹@ ÇD$‰T$‰$èÿÿ‰Eìƒ}ìt`‹ƒ¨ÿÿÿ9Eìt'‹Eì‹@‹P ‹ƒ8ÿÿÿ‹‰T$ƒäáÿÿ‰D$‰ $èÿÿ‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒè®ÿÿëè§ÿÿ‹E‹@ …Àt:‹E‹@ ‰Eô‹EÇ@ ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹E‹@…Àt:‹E‹@‰Eø‹EÇ@‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹E‹@…Àt+‹EÇ@‹E‹ƒê‰‹…Àu‹E‹@‹P‹E‰$ÿÒ‹Eð‰$èOÿÿƒÄ$[]ÃU‰åSƒìè_}ÿÿý¶‹E‰$èìÿÿ‹E‰$è‹E‰$è–ÿÿƒÄ[]ÃU‰åSƒì$è&}ÿÿĶ‹E‹@ …Àt:‹E‹@ ‰Eô‹EÇ@ ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹E‹@…Àt:‹E‹@‰Eø‹EÇ@‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹E‹@…Àt)“©Gÿÿ‹E‹H‹E‰D$‰T$‰ $èÝÿÿ‹EÇ@¸ƒÄ$[]ÃU‰åSƒì$èN|ÿÿ쵋ƒhÿÿÿ‰$è˜ÿÿ‰Eø‹Uø‹E ‰B ‹Uø‹E‰B‹Eø‹@ …Àt ‹Eø‹P ‹ƒÀ‰‹Eø‹@…Àt ‹Eø‹P‹ƒÀ‰‹Uø‹E‰B“©Gÿÿ‹Eø‹H‹Eø‰D$‰T$‰ $èÿÿƒ} t‹EøÇ@‹Uø‹ƒÀ‰‹EøƒÄ$[]ÃU‰åSƒìè {ÿÿÃþ´‹E‹@…Àu&‹ƒÿÿÿ‹ƒ1âÿÿ‰D$‰$èTÿÿÇEøé€“©Gÿÿ‹E‹H‹E‰D$‰T$‰ $è¹ÿÿ‹EÇ@‹E‹@…Àt1‹EÇ@‹E‹Pÿ‹E‰‹E‹…Àu‹E‹@‹P‹E‰$ÿÒ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèÕzÿÿÃ3´ƒt‰D$ ƒQâÿÿ‰D$‹E‰D$‹E ‰$èÿÿ…Àu ÇEøëI‹E‹@…Àt#‹E‹@ÇD$ÇD$‰$è¿ÿÿ‰Eøë‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åƒì‹E‰Eü‹Eü‹P‹Eü‰‹EüÉÃU‰åSƒìè zÿÿÃ~³‹E‰Eôèÿÿ‰Eø‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰$è¸ÿÿƒÄ[]ÃU‰åSƒì$èÈyÿÿÃ&³ƒ[âÿÿ‰$è2ÿÿ‰Â‹ƒøÿÿÿ‰ƒlâÿÿ‰$èÿÿ‰Â‹ƒXÿÿÿ‰ƒ‚âÿÿ‰$èÿÿ‰Â‹ƒ”ÿÿÿ‰ƒ˜âÿÿ‰$èêÿÿ‰Â‹ƒ|ÿÿÿ‰ƒ»âÿÿ‰$èÒÿÿ‰Â‹ƒÿÿÿ‰‹ƒLÿÿÿ‹…Àu,ƒvLÿÿ‰D$ƒXLÿÿ‰D$ƒÔâÿÿ‰$è:ÿÿ‰Â‹ƒLÿÿÿ‰“ÿÿ‹ƒ°ÿÿÿ‰P“Ðÿÿ‹ƒ°ÿÿÿ‰P(“ÿÿ‹ƒ°ÿÿÿ‰P,“ÿÿ‹ƒ°ÿÿÿ‰P<‹“°ÿÿÿƒÈFÿÿ‰BL‹ƒ°ÿÿÿÇ@TëE“Ïÿÿ‹ƒ°ÿÿÿ‰P\“ëÿÿ‹ƒ°ÿÿÿ‰P`‹ƒ°ÿÿÿÇ@h‹“°ÿÿÿƒÄ‰Bt‹“°ÿÿÿƒ¤‰B|‹ƒ°ÿÿÿÇ€ “÷ÿÿ‹ƒ°ÿÿÿ‰”“Ôÿÿ‹ƒ°ÿÿÿ‰ ‹“°ÿÿÿ‹ƒìÿÿÿ‰‚˜‹“°ÿÿÿ‹ƒÿÿÿ‰‚œÇD$‹ƒ°ÿÿÿ‰D$ ÇD$PƒÝâÿÿ‰D$‹E‰$èF°ÿÿè?f‰Â‹ƒ°ÿÿÿ‹ˆ„‰T$ƒåâÿÿ‰D$‰ $èï ÿÿÇ$Pèúnÿÿ“x÷þÿ‹ƒØÿÿÿ‰P‹“Øÿÿÿƒ‰B4“¿øþÿ‹ƒØÿÿÿ‰PH“ïûþÿ‹ƒØÿÿÿ‰PL‹ƒØÿÿÿÇ@TëA‹“Øÿÿÿƒðâÿÿ‰BX“ýþÿ‹ƒØÿÿÿ‰P\“Zýþÿ‹ƒØÿÿÿ‰Pl‹ƒØÿÿÿ‰$èo ÿÿ…Àˆ°‹ƒÜÿÿÿÇ@Të‹“Üÿÿÿƒ7þþÿ‰‚ˆ‹ƒÜÿÿÿ‰$è: ÿÿ…Àˆ{‹ƒÜÿÿÿ‰$èTÿÿ‰Eø‹ƒ°ÿÿÿ‹„‹Eø‰D$ƒ/ãÿÿ‰D$‰$èì ÿÿƒ5ãÿÿ‰$èþÿÿ‰Eô‹ƒ°ÿÿÿ‹„‹Eô‰D$ƒØÿÿ‰D$‰$è¶ ÿÿ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ“Ùöþÿ‹ƒTÿÿÿ‰P‹ƒTÿÿÿÇ@Të‹“TÿÿÿƒFãÿÿ‰BX“ ÷þÿ‹ƒTÿÿÿ‰Pp‹ƒTÿÿÿ‰$èW ÿÿ…Àˆ˜“7Iÿÿ‹ƒhÿÿÿ‰P“ÁKÿÿ‹ƒhÿÿÿ‰P@‹ƒhÿÿÿÇ@TëA‹“hÿÿÿƒbãÿÿ‰BX“?Gÿÿ‹ƒhÿÿÿ‰P\“pIÿÿ‹ƒhÿÿÿ‰P`‹“hÿÿÿƒ¤‰Bt‹ƒhÿÿÿ‰$èÚ ÿÿ…Àx‹ƒhÿÿÿ‰D$ƒ{ãÿÿ‰D$‹E‰$è§ ÿÿƒÄ$[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰å‹E‹@]ÃU‰åVSƒìpèuÿÿÃt®‹E‹@‰$è ÿÿ‰Æ‹E‹@‹‹‰$èÜÿÿ‰t$‰D$ ƒãÿÿ‰D$ÇD$PE¨‰$èçÿÿE¨‰$è ÿÿƒÄp[^]ÃU‰åSƒìè«tÿÿà ®‹E‹@‰$èU ÿÿ‹E‰$èZÿÿƒÄ[]ÃU‰åSƒì$èztÿÿÃØ­‹ƒàÿÿÿ‹ƒÀ(‹‹U‰D$‰$èÆÿÿ‰Eô‹Eô‹@(‹‰Eø‹ƒÐÿÿÿ‹‰D$‹Eø‰$è¡ÿÿ‰Eðƒ}ðu>‹Eø‰$è ÿÿ‰Â‹Eø‰D$ ÇD$‰T$Ç$è‚ÿÿ‰Eðƒ}ðu ‹ƒ¨ÿÿÿ‰Eð‹Eð‹P‹Eð‰‹EðƒÄ$[]ÃU‰åSƒì$èÊsÿÿÃ(­‹ƒàÿÿÿ‹ƒÀ,‹‹U‰D$‰$èÿÿ‰Eô‹Eô‹@(‹‰Eø‹ƒÌÿÿÿ‹‰D$‹Eø‰$èñÿÿ‰Eðƒ}ðu>‹Eø‰$è]ÿÿ‰Â‹Eø‰D$ ÇD$‰T$Ç$èY‘ÿÿ‰Eðƒ}ðu ‹ƒ¨ÿÿÿ‰Eð‹Eð‹P‹Eð‰‹EðƒÄ$[]ÃU‰åSìèsÿÿÃu¬‹E‹@‰…Dÿÿÿƒ§ãÿÿ‰D$‹E ‰$èžÿÿ…Àu‹…Dÿÿÿ‹‹‰$è8/‰…8ÿÿÿé˜ ƒ±ãÿÿ‰D$‹E ‰$èhÿÿ…Àu+‹…Dÿÿÿ‰$èÆÿÿ‰D$ƒ¶ãÿÿ‰$èdÿÿ‰…8ÿÿÿéT ƒ¸ãÿÿ‰D$‹E ‰$è$ÿÿ…Àu+‹…Dÿÿÿ‰$è² ÿÿ‰D$ƒ¶ãÿÿ‰$è ÿÿ‰…8ÿÿÿé ƒ½ãÿÿ‰D$‹E ‰$èàÿÿ…ÀtƒÃãÿÿ‰D$‹E ‰$èÇÿÿ…Àu+‹…Dÿÿÿ‰$èÕ ÿÿ‰D$ƒ¶ãÿÿ‰$èÃÿÿ‰…8ÿÿÿ鳃Ëãÿÿ‰D$‹E ‰$èƒÿÿ…Àu‹…Dÿÿÿ‹@‰$è^ ÿÿ‰…8ÿÿÿé~ƒÑãÿÿ‰D$‹E ‰$èNÿÿ…Àu‹…Dÿÿÿ‹@ ‰$èé-‰…8ÿÿÿéIƒÜãÿÿ‰D$‹E ‰$èÿÿ…Àu‹…Dÿÿÿ‹@‰$è´-‰…8ÿÿÿé‹…Dÿÿÿ‰…Hÿÿÿ‹ƒàÿÿÿ‹‹‰…Lÿÿÿƒ½Hÿÿÿu Ç…PÿÿÿëH‹…Hÿÿÿ‹…Àt‹…Hÿÿÿ‹‹;…Lÿÿÿu Ç…Pÿÿÿë‹…Lÿÿÿ‰D$‹…Hÿÿÿ‰$èöÿÿ‰…Pÿÿÿ‹…Pÿÿÿ…À„Ÿƒçãÿÿ‰D$‹E ‰$è]ÿÿ…À…‡ƒÑãÿÿ‰D$,ƒÜãÿÿ‰D$(ƒ¸ãÿÿ‰D$$ƒ±ãÿÿ‰D$ ƒóãÿÿ‰D$ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒäÿÿ‰$èùÿÿ‰…8ÿÿÿééƒäÿÿ‰D$‹E ‰$è¹ÿÿ…Àu@‹ƒàÿÿÿ‹‹‹•Dÿÿÿ‰D$‰$èYÿÿ¶@*¾À‰D$ƒäÿÿ‰$èP ÿÿ‰…8ÿÿÿéƒóãÿÿ‰D$‹E ‰$è`ÿÿ…Àu6‹ƒàÿÿÿ‹‹‹•Dÿÿÿ‰D$‰$èÿÿ¶@(¾À‰$è! ÿÿ‰…8ÿÿÿéAƒûãÿÿ‰D$‹E ‰$èÿÿ…À…‹ƒàÿÿÿ‹‹‹•Dÿÿÿ‰D$‰$è­ÿÿ¶@)¾À‰$èÎ ÿÿ‰…8ÿÿÿéî‹…Dÿÿÿ‰…Tÿÿÿ‹ƒàÿÿÿ‹ƒÀ‹‰…Xÿÿÿƒ½Tÿÿÿu Ç…\ÿÿÿëH‹…Tÿÿÿ‹…Àt‹…Tÿÿÿ‹‹;…Xÿÿÿu Ç…\ÿÿÿë‹…Xÿÿÿ‰D$‹…Tÿÿÿ‰$èÍ ÿÿ‰…\ÿÿÿ‹…\ÿÿÿ…À„¨ƒçãÿÿ‰D$‹E ‰$è4ÿÿ…À…‡ƒÑãÿÿ‰D$,ƒÜãÿÿ‰D$(ƒ¸ãÿÿ‰D$$ƒ±ãÿÿ‰D$ ƒóãÿÿ‰D$ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒäÿÿ‰$èÐÿÿ‰…8ÿÿÿéÀƒäÿÿ‰D$‹E ‰$èÿÿ…ÀuC‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$è- ÿÿ¶@*¶À‰D$ƒäÿÿ‰$è$ ÿÿ‰…8ÿÿÿédƒóãÿÿ‰D$‹E ‰$è4ÿÿ…Àu9‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$èÑ ÿÿ¶@(¶À‰$èòÿÿ‰…8ÿÿÿéƒûãÿÿ‰D$‹E ‰$èâÿÿ…À…Ô‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$è{ ÿÿ¶@)¶À‰$èœÿÿ‰…8ÿÿÿ鼋…Dÿÿÿ‰…`ÿÿÿ‹ƒàÿÿÿ‹ƒÀ‹‰…dÿÿÿƒ½`ÿÿÿu Ç…hÿÿÿëH‹…`ÿÿÿ‹…Àt‹…`ÿÿÿ‹‹;…dÿÿÿu Ç…hÿÿÿë‹…dÿÿÿ‰D$‹…`ÿÿÿ‰$è› ÿÿ‰…hÿÿÿ‹…hÿÿÿ…À„Þƒçãÿÿ‰D$‹E ‰$èÿÿ…ÀusƒÑãÿÿ‰D$$ƒÜãÿÿ‰D$ ƒ¸ãÿÿ‰D$ƒ±ãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒ"äÿÿ‰$è¶ÿÿ‰…8ÿÿÿ馃äÿÿ‰D$‹E ‰$èvÿÿ…À…h‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$è ÿÿ‹@(‰$èÄÿÿ‰…8ÿÿÿéT‹…Dÿÿÿ‰…lÿÿÿ‹ƒàÿÿÿ‹ƒÀ ‹‰…pÿÿÿƒ½lÿÿÿu Ç…tÿÿÿëH‹…lÿÿÿ‹…Àt‹…lÿÿÿ‹‹;…pÿÿÿu Ç…tÿÿÿë‹…pÿÿÿ‰D$‹…lÿÿÿ‰$è3 ÿÿ‰…tÿÿÿ‹…tÿÿÿ…À„’ƒçãÿÿ‰D$‹E ‰$èšÿÿ…À…‡ƒÑãÿÿ‰D$,ƒÜãÿÿ‰D$(ƒ¸ãÿÿ‰D$$ƒ±ãÿÿ‰D$ ƒóãÿÿ‰D$ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒäÿÿ‰$è6ÿÿ‰…8ÿÿÿé&ƒäÿÿ‰D$‹E ‰$èöÿÿ…Àu5‹ƒàÿÿÿ‹ƒÀ ‹‹•Dÿÿÿ‰D$‰$è“ ÿÿ‹@0‰$è¸ÿÿ‰…8ÿÿÿéØƒóãÿÿ‰D$‹E ‰$è¨ÿÿ…Àu5‹ƒàÿÿÿ‹ƒÀ ‹‹•Dÿÿÿ‰D$‰$èE ÿÿ‹@(‰$èjÿÿ‰…8ÿÿÿ銃ûãÿÿ‰D$‹E ‰$èZÿÿ…À…L‹ƒàÿÿÿ‹ƒÀ ‹‹•Dÿÿÿ‰D$‰$èóÿÿ‹@,‰$èÿÿ‰…8ÿÿÿé8‹…Dÿÿÿ‰…xÿÿÿ‹ƒàÿÿÿ‹ƒÀ‹‰…|ÿÿÿƒ½xÿÿÿu ÇE€ëB‹…xÿÿÿ‹…Àt‹…xÿÿÿ‹‹;…|ÿÿÿu ÇE€ë‹…|ÿÿÿ‰D$‹…xÿÿÿ‰$èÿÿ‰E€‹E€…À„’ƒçãÿÿ‰D$‹E ‰$èŠ ÿÿ…À…‡ƒÑãÿÿ‰D$,ƒÜãÿÿ‰D$(ƒ¸ãÿÿ‰D$$ƒ±ãÿÿ‰D$ ƒóãÿÿ‰D$ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒäÿÿ‰$è&ÿÿ‰…8ÿÿÿéƒäÿÿ‰D$‹E ‰$èæ ÿÿ…Àu5‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$èƒÿÿ‹@0‰$è˜ýþÿ‰…8ÿÿÿéȃóãÿÿ‰D$‹E ‰$è˜ ÿÿ…Àu5‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$è5ÿÿ‹@(‰$èJýþÿ‰…8ÿÿÿézƒûãÿÿ‰D$‹E ‰$èJ ÿÿ…À…<‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$èãÿÿ‹@,‰$èøüþÿ‰…8ÿÿÿé(‹…Dÿÿÿ‰E„‹ƒàÿÿÿ‹ƒÀ‹‰Eˆƒ}„u ÇEŒë3‹E„‹…Àt‹E„‹‹;Eˆu ÇEŒë‹Eˆ‰D$‹E„‰$è%ÿÿ‰EŒ‹EŒ…À„’ƒçãÿÿ‰D$‹E ‰$è’ ÿÿ…À…‡ƒÑãÿÿ‰D$,ƒÜãÿÿ‰D$(ƒ¸ãÿÿ‰D$$ƒ±ãÿÿ‰D$ ƒóãÿÿ‰D$ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒäÿÿ‰$è. ÿÿ‰…8ÿÿÿéƒäÿÿ‰D$‹E ‰$èî ÿÿ…Àu5‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$è‹ÿÿ‹@0‰$è°ÿÿ‰…8ÿÿÿéЃóãÿÿ‰D$‹E ‰$è  ÿÿ…Àu5‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$è=ÿÿ‹@(‰$èbÿÿ‰…8ÿÿÿ邃ûãÿÿ‰D$‹E ‰$èR ÿÿ…À…D‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$èëÿÿ‹@,‰$èÿÿ‰…8ÿÿÿé0‹…Dÿÿÿ‰E‹ƒàÿÿÿ‹ƒÀ‹‰E”ƒ}u ÇE˜ë3‹E‹…Àt‹E‹‹;E”u ÇE˜ë‹E”‰D$‹E‰$è-ÿÿ‰E˜‹E˜…À„’ƒçãÿÿ‰D$‹E ‰$èš ÿÿ…À…‡ƒÑãÿÿ‰D$,ƒÜãÿÿ‰D$(ƒ¸ãÿÿ‰D$$ƒ±ãÿÿ‰D$ ƒóãÿÿ‰D$ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒäÿÿ‰$è6 ÿÿ‰…8ÿÿÿé&ƒäÿÿ‰D$‹E ‰$èöÿÿ…Àu5‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$è“ÿÿ‹@0‰$è¨ùþÿ‰…8ÿÿÿéØƒóãÿÿ‰D$‹E ‰$è¨ÿÿ…Àu5‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$èEÿÿ‹@(‰$èZùþÿ‰…8ÿÿÿ銃ûãÿÿ‰D$‹E ‰$èZÿÿ…À…L‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$èóÿÿ‹@,‰$èùþÿ‰…8ÿÿÿé8‹…Dÿÿÿ‰Eœ‹ƒàÿÿÿ‹ƒÀ‹‰E ƒ}œu ÇE¤ë3‹Eœ‹…Àt‹Eœ‹‹;E u ÇE¤ë‹E ‰D$‹Eœ‰$è5ÿÿ‰E¤‹E¤…À„§ƒçãÿÿ‰D$‹E ‰$è¢ÿÿ…À…‡ƒÑãÿÿ‰D$,ƒÜãÿÿ‰D$(ƒ¸ãÿÿ‰D$$ƒ±ãÿÿ‰D$ ƒóãÿÿ‰D$ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒäÿÿ‰$è>ÿÿ‰…8ÿÿÿé.ƒäÿÿ‰D$‹E ‰$èþÿÿ…Àu<‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$è›ÿÿ‹P<‹@8‰$‰T$èiÿÿ‰…8ÿÿÿéÙƒóãÿÿ‰D$‹E ‰$è©ÿÿ…Àu<‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$èFÿÿ‹P,‹@(‰$‰T$èÿÿ‰…8ÿÿÿ鄃ûãÿÿ‰D$‹E ‰$èTÿÿ…À…F‹ƒàÿÿÿ‹ƒÀ‹‹•Dÿÿÿ‰D$‰$èíÿÿ‹P4‹@0‰$‰T$è»ÿÿ‰…8ÿÿÿé+‹…Dÿÿÿ‰E¨‹ƒàÿÿÿ‹ƒÀ ‹‰E¬ƒ}¨u ÇE°ë3‹E¨‹…Àt‹E¨‹‹;E¬u ÇE°ë‹E¬‰D$‹E¨‰$è(ÿþÿ‰E°‹E°…À„§ƒçãÿÿ‰D$‹E ‰$è•ÿÿ…À…‡ƒÑãÿÿ‰D$,ƒÜãÿÿ‰D$(ƒ¸ãÿÿ‰D$$ƒ±ãÿÿ‰D$ ƒóãÿÿ‰D$ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒäÿÿ‰$è1ÿÿ‰…8ÿÿÿé!ƒäÿÿ‰D$‹E ‰$èñÿÿ…Àu<‹ƒàÿÿÿ‹ƒÀ ‹‹•Dÿÿÿ‰D$‰$èŽÿþÿ‹P<‹@8‰$‰T$è¬õþÿ‰…8ÿÿÿéÌ ƒóãÿÿ‰D$‹E ‰$èœÿÿ…Àu<‹ƒàÿÿÿ‹ƒÀ ‹‹•Dÿÿÿ‰D$‰$è9ÿþÿ‹P,‹@(‰$‰T$èWõþÿ‰…8ÿÿÿéw ƒûãÿÿ‰D$‹E ‰$èGÿÿ…À…9 ‹ƒàÿÿÿ‹ƒÀ ‹‹•Dÿÿÿ‰D$‰$èàþþÿ‹P4‹@0‰$‰T$èþôþÿ‰…8ÿÿÿé ‹…Dÿÿÿ‰E´‹ƒàÿÿÿ‹ƒÀ$‹‰E¸ƒ}´u ÇE¼ë3‹E´‹…Àt‹E´‹‹;E¸u ÇE¼ë‹E¸‰D$‹E´‰$èýþÿ‰E¼‹E¼…À„èƒçãÿÿ‰D$‹E ‰$èˆÿÿ…ÀusƒÑãÿÿ‰D$$ƒÜãÿÿ‰D$ ƒ¸ãÿÿ‰D$ƒ±ãÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒ"äÿÿ‰$è<ÿÿ‰…8ÿÿÿé, ƒäÿÿ‰D$‹E ‰$èüÿÿ…À…î ‹ƒàÿÿÿ‹ƒÀ$‹‹•Dÿÿÿ‰D$‰$è•ýþÿ‹@(‰D$ƒäÿÿ‰$èùþÿ‰…8ÿÿÿéÐ ‹…Dÿÿÿ‰EÀ‹ƒàÿÿÿ‹ƒÀ(‹‰Eă}Àu ÇEÈë3‹EÀ‹…Àt‹EÀ‹‹;EÄu ÇEÈë‹EĉD$‹EÀ‰$èÍûþÿ‰EÈ‹EÈ…À„'ƒçãÿÿ‰D$‹E ‰$è:ÿÿ…Àu}ƒÑãÿÿ‰D$(ƒÜãÿÿ‰D$$ƒ¸ãÿÿ‰D$ ƒ±ãÿÿ‰D$ƒËãÿÿ‰D$ƒ.äÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒ9äÿÿ‰$èäÿÿ‰…8ÿÿÿéÔ ƒäÿÿ‰D$‹E ‰$è¤ÿÿ…ÀuB‹ƒàÿÿÿ‹ƒÀ(‹‹•Dÿÿÿ‰D$‰$èAüþÿ‹P,‹…Dÿÿÿ‹@ ‰T$‰$è4iÿÿ‰…8ÿÿÿéy ƒ.äÿÿ‰D$‹E ‰$èIÿÿ…À…; ‹…Dÿÿÿ‰$èÿçÿÿ‰…8ÿÿÿéC ‹…Dÿÿÿ‰EÌ‹ƒàÿÿÿ‹ƒÀ,‹‰EЃ}Ìu ÇEÔë3‹EÌ‹…Àt‹EÌ‹‹;EÐu ÇEÔë‹EЉD$‹Ẻ$è@úþÿ‰EÔ‹EÔ…À„)ƒçãÿÿ‰D$‹E ‰$è­ÿÿ…Àu}ƒÑãÿÿ‰D$(ƒÜãÿÿ‰D$$ƒ¸ãÿÿ‰D$ ƒ±ãÿÿ‰D$ƒFäÿÿ‰D$ƒËãÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒ9äÿÿ‰$èWÿÿ‰…8ÿÿÿéG ƒäÿÿ‰D$‹E ‰$èÿÿ…ÀuD‹ƒàÿÿÿ‹ƒÀ,‹‹•Dÿÿÿ‰D$‰$è´úþÿ‹@,‰Â‹…Dÿÿÿ‹@ ‰T$‰$è”wÿÿ‰…8ÿÿÿéêƒFäÿÿ‰D$‹E ‰$èºÿþÿ…À…¬‹…Dÿÿÿ‰$è çÿÿ‰…8ÿÿÿé´‹…Dÿÿÿ‰EØ‹ƒàÿÿÿ‹ƒÀ0‹‰E܃}Øu ÇEàë3‹EØ‹…Àt‹EØ‹‹;EÜu ÇEàë‹E܉D$‹E؉$è±øþÿ‰Eà‹Eà…À„êƒçãÿÿ‰D$‹E ‰$èÿþÿ…À…‘ƒäÿÿ‰D$0ƒÑãÿÿ‰D$,ƒÜãÿÿ‰D$(ƒ¸ãÿÿ‰D$$ƒ±ãÿÿ‰D$ ƒóãÿÿ‰D$ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒRäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒZäÿÿ‰$è°ÿþÿ‰…8ÿÿÿé ƒäÿÿ‰D$‹E ‰$èpþþÿ…Àu5‹ƒàÿÿÿ‹ƒÀ0‹‹•Dÿÿÿ‰D$‰$è ùþÿÙ@0Ý$èRòþÿ‰…8ÿÿÿéRƒóãÿÿ‰D$‹E ‰$è"þþÿ…Àu5‹ƒàÿÿÿ‹ƒÀ0‹‹•Dÿÿÿ‰D$‰$è¿øþÿÙ@(Ý$èòþÿ‰…8ÿÿÿéƒûãÿÿ‰D$‹E ‰$èÔýþÿ…Àu5‹ƒàÿÿÿ‹ƒÀ0‹‹•Dÿÿÿ‰D$‰$èqøþÿÙ@,Ý$è¶ñþÿ‰…8ÿÿÿ鶃Räÿÿ‰D$‹E ‰$è†ýþÿ…À…x‹ƒàÿÿÿ‹ƒÀ0‹‹•Dÿÿÿ‰D$‰$èøþÿÙ@4Ý$èdñþÿ‰…8ÿÿÿéd‹…Dÿÿÿ‰E䋃àÿÿÿ‹ƒÀ4‹‰Eèƒ}äu ÇEìë3‹Eä‹…Àt‹Eä‹‹;Eèu ÇEìë‹Eè‰D$‹Eä‰$èaöþÿ‰Eì‹Eì…À„êƒçãÿÿ‰D$‹E ‰$èÎüþÿ…À…‘ƒÑãÿÿ‰D$0ƒÜãÿÿ‰D$,ƒ¸ãÿÿ‰D$(ƒ±ãÿÿ‰D$$ƒóãÿÿ‰D$ ƒûãÿÿ‰D$ƒËãÿÿ‰D$ƒRäÿÿ‰D$ƒäÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒZäÿÿ‰$è`ýþÿ‰…8ÿÿÿéPƒäÿÿ‰D$‹E ‰$è üþÿ…Àu5‹ƒàÿÿÿ‹ƒÀ4‹‹•Dÿÿÿ‰D$‰$è½öþÿÝ@8Ý$èðþÿ‰…8ÿÿÿéƒóãÿÿ‰D$‹E ‰$èÒûþÿ…Àu5‹ƒàÿÿÿ‹ƒÀ4‹‹•Dÿÿÿ‰D$‰$èoöþÿÝ@(Ý$è´ïþÿ‰…8ÿÿÿé´ƒûãÿÿ‰D$‹E ‰$è„ûþÿ…Àu5‹ƒàÿÿÿ‹ƒÀ4‹‹•Dÿÿÿ‰D$‰$è!öþÿÝ@0Ý$èfïþÿ‰…8ÿÿÿéfƒRäÿÿ‰D$‹E ‰$è6ûþÿ…À…(‹ƒàÿÿÿ‹ƒÀ4‹‹•Dÿÿÿ‰D$‰$èÏõþÿÝ@@Ý$èïþÿ‰…8ÿÿÿé‹…Dÿÿÿ‰Eð‹ƒàÿÿÿ‹ƒÀ8‹‰Eôƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èôþÿ‰Eø‹Eø…À„Ôƒçãÿÿ‰D$‹E ‰$è~úþÿ…À…¥ƒÑãÿÿ‰D$8ƒiäÿÿ‰D$4ƒÜãÿÿ‰D$0ƒuäÿÿ‰D$,ƒ¸ãÿÿ‰D$(ƒ±ãÿÿ‰D$$ƒËãÿÿ‰D$ ƒˆäÿÿ‰D$ƒäÿÿ‰D$ƒ˜äÿÿ‰D$ƒ¡äÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒ¬äÿÿ‰$èüúþÿ‰…8ÿÿÿéìƒäÿÿ‰D$‹E ‰$è¼ùþÿ…Àu?‹ƒàÿÿÿ‹ƒÀ8‹‹•Dÿÿÿ‰D$‰$èYôþÿ‹@(‰D$ƒ¶ãÿÿ‰$è¤úþÿ‰…8ÿÿÿ锃½äÿÿ‰D$‹E ‰$èdùþÿ…Àu?‹ƒàÿÿÿ‹ƒÀ8‹‹•Dÿÿÿ‰D$‰$èôþÿ‹@,‰D$ƒ¶ãÿÿ‰$èLúþÿ‰…8ÿÿÿé<ƒ˜äÿÿ‰D$‹E ‰$è ùþÿ…Àu?‹ƒàÿÿÿ‹ƒÀ8‹‹•Dÿÿÿ‰D$‰$è©óþÿ‹@0‰D$ƒ¶ãÿÿ‰$èôùþÿ‰…8ÿÿÿéäƒiäÿÿ‰D$‹E ‰$è´øþÿ…ÀuC‹ƒàÿÿÿ‹ƒÀ8‹‹•Dÿÿÿ‰D$‰$èQóþÿ¶@4¾À‰D$ƒÈäÿÿ‰$è˜ùþÿ‰…8ÿÿÿ鈃uäÿÿ‰D$‹E ‰$èXøþÿ…Àu;‹ƒàÿÿÿ‹ƒÀ8‹‹•Dÿÿÿ‰D$‰$èõòþÿ¶@5$¶À‰$è¤éþÿ‰…8ÿÿÿé4ƒˆäÿÿ‰D$‹E ‰$èøþÿ…À…ö‹ƒàÿÿÿ‹ƒÀ8‹‹•Dÿÿÿ‰D$‰$èòþÿ¶@5Ðè$¶À‰$èJéþÿ‰…8ÿÿÿéÚƒçãÿÿ‰D$‹E ‰$èª÷þÿ…ÀufƒÑãÿÿ‰D$ ƒÜãÿÿ‰D$ƒ¸ãÿÿ‰D$ƒ±ãÿÿ‰D$ƒËãÿÿ‰D$ƒ½ãÿÿ‰D$ ƒ§ãÿÿ‰D$ƒÃãÿÿ‰D$ƒÊäÿÿ‰$èhøþÿ‰…8ÿÿÿë[ƒäÿÿ‰D$‹E ‰$è+÷þÿ…Àu!‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰…8ÿÿÿë!‹ƒ´ÿÿÿ‹‹E ‰D$‰$èõþÿÇ…8ÿÿÿ‹…8ÿÿÿÄ[]ÃU‰åSƒì$èRÿÿÃz‹‹ƒ¼ÿÿÿ‹@‰$èCðþÿ‰Â‹ƒ¼ÿÿÿ‰D$‰$è_ïþÿ‰Eøƒ}øu ÇEèë‹E‰$è2øþÿ‰Â‹Eø‰P‹Eø‰Eè‹EèƒÄ$[]ÃU‰åSƒìè±QÿÿË‹ƒ¼ÿÿÿ‰Â‹ƒÿÿÿ‰B“ëQÿÿ‹ƒ¼ÿÿÿ‰P“|Sÿÿ‹ƒ¼ÿÿÿ‰P “0Qÿÿ‹ƒ¼ÿÿÿ‰P(“Qÿÿ‹ƒ¼ÿÿÿ‰P,“tQÿÿ‹ƒ¼ÿÿÿ‰P<‹ƒ¼ÿÿÿ‰$èæþÿ…Àu‹ƒ¼ÿÿÿ‰D$ƒÕäÿÿ‰D$‹E‰$èLåþÿƒÄ[]ÃU‰åƒì‹E‹@‹ ‹E‰$ÿÒÉÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰å‹E‹@]ÃU‰åVSì è›PÿÿÃù‰‹E‹@‰Æ‹E‹@ ‰$èmïþÿ‰t$‰D$ ƒñäÿÿ‰D$ÇD$€…xÿÿÿ‰$èuìþÿ…xÿÿÿ‰$è—ëþÿÄ [^]ÃU‰åSìè0PÿÿÃŽ‰ƒÿäÿÿ‰D$‹E ‰$è3æþÿ…Àu Ç…øýÿÿÿÿÿÿëe‹EÇ@‹EÇ@ ‹E‹@‹@ ‰D$ ƒåÿÿ‰D$ÇD$…üýÿÿ‰$èâëþÿ‹ƒÈÿÿÿ‹…üýÿÿ‰D$‰$èˆòþÿÇ…øýÿÿÿÿÿÿ‹…øýÿÿÄ[]ÃU‰åSƒìè…OÿÿÃ㈋E‰$èBñþÿƒÄ[]ÃU‰åSƒì$èbOÿÿÃÀˆƒ}u%ƒAåÿÿ‰D$ƒ,åÿÿ‰D$Ç$èÔëþÿéQƒ} u%ƒNåÿÿ‰D$ƒ,åÿÿ‰D$Ç$è©ëþÿé&ƒ}u%ƒaåÿÿ‰D$ƒ,åÿÿ‰D$Ç$è~ëþÿéû‹E‹@…Àu “Œuÿÿ‹E‰P‹U‹ƒÿÿÿ‰B‹U‹ƒ(ÿÿÿ‰‚€‹E‰$èÝãþÿ…Ày-‹E‹@ ‰D$ ƒsåÿÿ‰D$ÇD$Ç$è±óþÿ鎋E‰$èÁ ‰Eø‹E‹„‹Eø‰D$ƒ‘åÿÿ‰D$‰$èlâþÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹ƒdÿÿÿ‹‹E‰D$‰T$‹E‰$è×åþÿ‹E‰D$‹E ‰D$‹E‰$èâþÿƒÄ$[]ÃU‰åSƒì$èÎMÿÿÃ,‡ƒ}u,ƒaåÿÿ‰D$ƒ›åÿÿ‰D$Ç$è@êþÿÇEèé´èŸçþÿ‰Eðƒ} u)‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹Eð‰$èHéþÿ‹ƒ¨ÿÿÿ‰Eèë}‹ƒdÿÿÿ‹‰D$‹E‰$è¶òþÿ‰Eøƒ}øu ‹ƒ(ÿÿÿ‰Eø‹Eø‹@‰$èfëþÿ‰Â‹Eø‰D$‰$è…êþÿ‰Eô‹Eð‰$èçèþÿƒ}ôu ÇEèë‹Uô‹E ‰B‹Uô‹E‰B ‹Eô‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èÍLÿÿÃ+†ƒ«åÿÿ‰$è7êþÿ‰Â‹ƒdÿÿÿ‰“Œuÿÿ‹ƒ(ÿÿÿ‰P“¨uÿÿ‹ƒ(ÿÿÿ‰P(“÷uÿÿ‹ƒ(ÿÿÿ‰P,“ìuÿÿ‹ƒ(ÿÿÿ‰P<‹ƒ(ÿÿÿÇ@Të“cvÿÿ‹ƒ(ÿÿÿ‰”“wÿÿ‹ƒ(ÿÿÿ‰ ‹ƒ(ÿÿÿ‹€˜…Àu‹ƒ(ÿÿÿ‹“ìÿÿÿ‰˜‹ƒ(ÿÿÿ‹€œ…Àu‹ƒ(ÿÿÿ‹“ÿÿÿ‰œ‹ƒ(ÿÿÿ‰$è.áþÿ…Àuz‹ƒ(ÿÿÿ‰D$ƒ½åÿÿ‰D$‹E‰$èûßþÿÇ$Dè‰Eø‹ƒ(ÿÿÿ‹„‹Eø‰D$ƒ‘åÿÿ‰D$‰$èÇßþÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰å‹E‹@]ÃU‰åSì„è KÿÿÃj„‹E‹@‰$èæéþÿ‰Eø‹E‹@‰E”ƒ}øt‹Eø‰E˜ë ƒòåÿÿ‰E˜‹E”‰D$‹E˜‰D$ ƒúåÿÿ‰D$ÇD$PE¨‰$èÈæþÿE¨‰$èíåþÿÄ„[]ÃU‰åSƒìèŠJÿÿÃ胋E‰$èGìþÿƒÄ[]ÃU‰åSƒì$ègJÿÿÃŃ‹ƒøÿÿÿ‹‹E‹@‰T$‰$èµïþÿ‰Eøƒ}øu ‹ƒ¨ÿÿÿ‰Eø‹Eø‹P‹Eø‰‹EøƒÄ$[]ÃU‰åSƒì$èJÿÿÃqƒ‹ƒøÿÿÿ‹‹E‹@‰T$‰$èaïþÿ‰Eôƒ}ôt4‹Eô‰EøÇEô‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹ƒ¨ÿÿÿ9E u$‹ƒøÿÿÿ‹‹E‹@ÇD$‰T$‰$ègáþÿë‹E ‹P‹ƒÿÿÿ9Ât‹E ‹P‹ƒÿÿÿ‰D$‰$è]æþÿ…Àt0‹E ‹P‹E ‰‹ƒøÿÿÿ‹‹E‹H‹E ‰D$‰T$‰ $è áþÿë#‹ƒ8ÿÿÿ‹ƒ æÿÿ‰D$‰$èïëþÿÇEèÿÿÿÿëÇEè‹EèƒÄ$[]ÃU‰åSƒì$èìHÿÿÃJ‚‹E‹@‰$èÆçþÿ‰Eøƒ}øt‹Eø‰Eèë ƒòåÿÿ‰Eè‹Eè‰$èäþÿƒÄ$[]ÃU‰åSƒìè¡HÿÿÃÿ‹E‹@‰$è‹Ýþÿ‰$èãƒÄ[]ÃU‰åSƒìèsHÿÿÃÑ‹E‹@‰$èÍâþÿ‰$赃Ä[]ÃU‰åSƒì$èEHÿÿã‹E‹PEì‰D$‰$èXÝþÿ‰Eô‹Eì‰$èêìþÿ‰EøÇEðë.‹EðÀÀEô‹‰$èZ‹Uð‰D$‰T$‹Eø‰$èëþÿƒEð‹Eì9EðrÊ‹Eô‰$èÍÛþÿ‹EøƒÄ$[]ÃU‰åSƒì$èºGÿÿËE‹PEì‰D$‰$èíêþÿ‰Eô‹Eì‰$è_ìþÿ‰EøÇEðë.‹EðÀÀEô‹‰$èÏ‹Uð‰D$‰T$‹Eø‰$è‰êþÿƒEð‹Eì9EðrÊ‹Eô‰$èBÛþÿ‹EøƒÄ$[]ÃU‰åSƒìè/GÿÿÀ‹E‹@‰$èYÝþÿ‰$è±âþÿƒÄ[]ÃU‰åSƒìèGÿÿÃ_€‹E‹@‰$è[áþÿƒø”À¶À‰$è ÝþÿƒÄ[]ÃU‰åSƒìèÊFÿÿÃ(€‹E‹@ÇD$‰$è¼Þþÿ‰$èÔÜþÿƒÄ[]ÃU‰åSƒìè”FÿÿÃò‹E‹@ÇD$‰$è†Þþÿ‰$èžÜþÿƒÄ[]ÃU‰åSƒìè^Fÿÿü‹E‹@ÇD$‰$èPÞþÿ‰$èhÜþÿƒÄ[]ÃU‰åSƒìè(FÿÿÆ‹E‹@ÇD$‰$èÞþÿ‰$è2ÜþÿƒÄ[]ÃU‰åSƒìèòEÿÿÃP‹E‹@ÇD$‰$èäÝþÿ‰$èüÛþÿƒÄ[]ÃU‰åSƒìè¼EÿÿËE‹@ÇD$ ‰$è®Ýþÿ‰$èÆÛþÿƒÄ[]ÃU‰åSƒìè†EÿÿÃä~‹E‹@‰$èpàþÿ‰$è˜ÛþÿƒÄ[]ÃU‰åSƒìèXEÿÿö~‹E‹@‰$è2Úþÿ…À•À¶À‰$èbÛþÿƒÄ[]ÃU‰åSƒì$è"EÿÿÀ~Eô‰D$ƒiæÿÿ‰D$‹E ‰$èÛþÿ…Àu ÇEèëE‹Eô‰$èm8‰Eøƒ}øu#‹ƒŒÿÿÿ‹ƒ{æÿÿ‰D$‰$è£çþÿÇEèë‹Eø‰$è‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è™DÿÿÃ÷}Eô‰D$ƒæÿÿ‰D$‹E ‰$è•Úþÿ…Àu ÇEèë=‹Eô‰$è‰Eøƒ}øu ÇEèë ‹E‹P‹Eø‰D$‰$èfÛþÿ‰$è^Úþÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èDÿÿÃv}Eô‰D$ƒd‰D$ ƒ5çÿÿ‰D$‹E‰D$‹E ‰$èCèþÿ…Àu ÇEèÿÿÿÿë-‹Eô‰$茉Eøƒ}øu ÇEèÿÿÿÿë‹U‹Eø‰BÇEè‹EèƒÄ4[]ÃU‰åSƒì$è–CÿÿÃô|‹ƒ0ÿÿÿ‹@‰$è½áþÿ‰Â‹ƒ0ÿÿÿ‰D$‰$èÙàþÿ‰Eøƒ}øu ÇEèë‹Uø‹E‰B‹Eø‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è5CÿÿÓ|ƒ}u&‹ƒ8ÿÿÿ‹ƒHçÿÿ‰D$‰$èíåþÿÇEè鋃¨ÿÿÿ9Eu ÇEèéî‹E‹P‹ƒÿÿÿ9Ât ‹E‹P‹ƒÿÿÿ‰D$‰$èÂßþÿ…À„”‹E‰Eô‹ƒ@ÿÿÿ9Eôu ÇEèé¡‹ƒÿÿÿ9Eôu ÇEè銋ƒ ÿÿÿ9Eôu ÇEè és‹ƒ`ÿÿÿ9Eôu ÇEè<é\‹ƒÔÿÿÿ9Eôu ÇEè@éE‹ƒPÿÿÿ9Eôu‹ƒLÿÿÿ‹‰Eèé*‹E‹P‹ƒ0ÿÿÿ9Âu‹E‹@‰Eèé ‹E‹P‹ƒÔÿÿÿ9Ât‹E‹P‹ƒÔÿÿÿ‰D$‰$èàÞþÿ…Àt-‹E‰$èAÖþÿ‰Eø‹Eø‰$èJ5‰Eðƒ}ðt ‹Eð‰Eè鳃hçÿÿ‰D$‹E‰$èªàþÿ‰Eìƒ}ìto‹Eì‹P‹ƒ0ÿÿÿ9Âu8‹Eì‹@‰Eð‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eð‰EèëM‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒè=ãþÿ‹ƒ8ÿÿÿ‹ƒtçÿÿ‰D$‰$èããþÿÇEè‹EèƒÄ$[]ÃU‰åVSƒì0èè@ÿÿÃFzÇEèÇEìÿÿÿÿƒ}u,ƒªçÿÿ‰D$ƒ—çÿÿ‰D$Ç$èLÝþÿÇEäÿÿÿÿéÚƒ} u‹EÇÇEì鹋E ‹P‹ƒ@ÿÿÿ9Ât ‹E ‹P‹ƒ@ÿÿÿ‰D$‰$è]Ýþÿ…À„ž‹E ‰$èÊÜþÿ‰Â‹E‰ÇEì‹E ‹P‹ƒœÿÿÿ9Ât ‹E ‹P‹ƒœÿÿÿ‰D$‰$èÝþÿ…À„@‹E ‹@ ;E„1‹E ‹@ ‰$èßÞþÿ‰Æ‹E‰$èÒÞþÿ‰t$‰D$ ƒ¸çÿÿ‰D$ÇD$Ç$èüäþÿéë‹E ‹P‹ƒ ÿÿÿ9Ât ‹E ‹P‹ƒ ÿÿÿ‰D$‰$èÜþÿ…À„ž‹E ‰$èÜ×þÿ‰Â‹E‰ÇEì‹E ‹P‹ƒœÿÿÿ9Ât ‹E ‹P‹ƒœÿÿÿ‰D$‰$èFÜþÿ…À„r‹E ‹@ ;E„c‹E ‹@ ‰$èÞþÿ‰Æ‹E‰$èÞþÿ‰t$‰D$ ƒ¸çÿÿ‰D$ÇD$Ç$è.äþÿé‹E ‹P‹ƒÔÿÿÿ9Ât ‹E ‹P‹ƒÔÿÿÿ‰D$‰$èÁÛþÿ…À„Ì‹E ‰$èÓþÿ‰Eôƒ}t ‹E‰$èºáþÿÇD$0‰$èÊØþÿ‰Eèë!‹ƒ8ÿÿÿ‹ƒìçÿÿ‰D$‰$èKáþÿÇEìÿÿÿÿ‹Eô‰D$‹Eè‰$è’áþÿ‰Eð‹Eè‰$ètßþÿƒ}ðu‹Eô‰D$‹Eè‰$èüÝþÿ‰Eðƒ}ðt‹Eð‹‹E‰ÇEìëD‹ƒ8ÿÿÿ‹ƒGèÿÿ‰D$‰$èÖàþÿÇEìÿÿÿÿë!‹ƒ8ÿÿÿ‹ƒ`èÿÿ‰D$‰$è³àþÿÇEìÿÿÿÿ‹Eì‰Eä‹EäƒÄ0[^]ÃU‰åSƒìDè²=ÿÿÃwÇEØÇEÜÿÿÿÿƒ}u,ƒªçÿÿ‰D$ƒ„èÿÿ‰D$Ç$èÚþÿÇEÈÿÿÿÿé+ƒ} u‹EÇÇEÜé ‹E ‹P‹ƒ@ÿÿÿ9Ât‹E ‹P‹ƒ@ÿÿÿ‰D$‰$è'Úþÿ…Àt‹E ‰$è˜Ùþÿ‰Â‹E‰ÇEÜéÀ‹E ‹P‹ƒ ÿÿÿ9Ât‹E ‹P‹ƒ ÿÿÿ‰D$‰$èÝÙþÿ…Àt‹E ‰$èîÜþÿ‰Â‹E‰ÇEÜév‹E ‹P‹ƒÔÿÿÿ9Ât ‹E ‹P‹ƒÔÿÿÿ‰D$‰$è“Ùþÿ…À„Ô‹E ‰$èðÐþÿ‰Eäƒ}t ‹E‰$èŒßþÿÇD$4‰$èœÖþÿ‰EØë!‹ƒ8ÿÿÿ‹ƒ˜èÿÿ‰D$‰$èßþÿÇEÜÿÿÿÿ‹Eä‰D$‹E؉$è´Òþÿ‰Eà‹E؉$èFÝþÿƒ}àu‹Eä‰D$‹E؉$èîÖþÿ‰Eàƒ}àt‹Eà‹‰Â‹E‰ÇEÜ阋ƒ8ÿÿÿ‹ƒGèÿÿ‰D$‰$è£ÞþÿÇEÜÿÿÿÿér‹E ‹P‹ƒ€ÿÿÿ9Ât ‹E ‹P‹ƒ€ÿÿÿ‰D$‰$èØþÿ…À„!‹E ‰$è|Ýþÿ‰Eì‹EÇÇE܃}t ‹E‰$èxÞþÿÇD$4‰$èˆÕþÿ‰EØë!‹ƒ8ÿÿÿ‹ƒ˜èÿÿ‰D$‰$è ÞþÿÇEÜÿÿÿÿÇEèé—‹Eè‰D$‹E ‰$èÄÝþÿ‰Eð‹Eð‰$èfÏþÿ‰Eô‹Eô‰D$‹E؉$èqÑþÿ‰Eøƒ}øu‹Eô‰D$‹E؉$è¶Õþÿ‰Eøƒ}øt‹E‹‰Â‹Eø‹ Љ‹E‰ƒEèë#‹ƒ8ÿÿÿ‹ƒGèÿÿ‰D$‰$èhÝþÿÇEÜÿÿÿÿë ‹Eè;EìŒ]ÿÿÿ‹E؉$è˜Ûþÿë!‹ƒ8ÿÿÿ‹ƒôèÿÿ‰D$‰$è,ÝþÿÇEÜÿÿÿÿ‹E܉EÈ‹EȃÄD[]ÃU‰åSƒì$è,:ÿÿÊs‹E‰EôÇEøë,‹ƒx‰D$‹Eô‰$èpßþÿ‰Eøƒ}øu‹Eô‰$èìÎþÿ‰Eôƒ}ôu΋EøƒÄ$[]ÃU‰åSƒì$èÐ9ÿÿÃ.s‹ƒx…Àuƒ(éÿÿ‰$è0×þÿ‰ƒxÇ$è>Ñþÿ‰Eø‹Uø‹E ‰‹Uø‹E‰B‹“x‹Eø‰D$‰T$‹E‰$èNÑþÿƒÄ$[]ÃU‰åSƒìDè^9ÿÿür‹E ‰$èÖþÿ‰Eäƒ}äÿuè]ÛþÿÇEÄÿÿÿÿé)ƒ}t#‹E‹@,…Àt‹Eä‹U‹R,9Ðt ÇEÄÿÿÿÿé‹Eä‰$èÜþÿ‰EèÇEìéÁ‹Eì‰D$‹E ‰$è,Õþÿ‰EðÇEÐÇEÔÇEØÇEÜÇEàƒ}ðuèËÚþÿ‹Eè‰$è0ÐþÿÇEÄÿÿÿÿ錃}t(‹E‹@(…Àt‹E‹@(ÇD$L‰$èÞ×þÿ‹@ ‰Eôën‹ƒ¨ÿÿÿ9Eðu ÇEôDëZ‹Eð‹@‰$èõÿÿ‰Eôƒ}ôuCèVÚþÿ‹Eè‰$è»Ïþÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEÄÿÿÿÿéð‹Eô‰D$EЉ$èVÙþÿƒ}t+‹E‹@(…Àt!‹E‹@(‰D$‹Eð‰D$EЉ$èÝ'‰EÈë‹Eð‰D$EЉ$褉EÈ‹EȉEø‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒ}øÿu‹Eè‰$èòÎþÿEЉ$è·ËþÿÇEÄÿÿÿÿëFEЉD$‹Eè‰$è¬ÏþÿEЉ$è‘ËþÿƒEì‹Eì;EäŒ3þÿÿ‹Eè‰D$‹E‰$èÿ×þÿÇEÄ‹EăÄD[]ÃU‰åSìÄèò6ÿÿÃPp‹E‹‰$èMÑþÿƒè‰…Pÿÿÿƒ½PÿÿÿH‡S ‹…Pÿÿÿ…PÿÿÿÀ‹„léÿÿØÿà‹E‹ÇD$P‰$èÉÍþÿ…À„ð‹ƒ¨ÿÿÿ9E uÇD$‹E‰$è3Øþÿé- ‹E ‹P‹ƒ°ÿÿÿ9Ât+‹E ‹P‹ƒ°ÿÿÿ‰D$‰$èFÓþÿ…ÀuÇ…Tÿÿÿÿÿÿÿé! ‹E ‹@‰…|ÿÿÿ‹E‹‰E€ƒ½|ÿÿÿu ÇE„ë<‹…|ÿÿÿ‹…Àt‹…|ÿÿÿ‹‹;E€u ÇE„ë‹E€‰D$‹…|ÿÿÿ‰$èôÓþÿ‰E„‹E„…ÀuÇ…Tÿÿÿÿÿÿÿé© ‹E ‹@‰D$‹E‰$èf×þÿé` Ç…Tÿÿÿÿÿÿÿé€ ‹E ‰$è7Íþÿ‰…xÿÿÿƒ½xÿÿÿtG‹…xÿÿÿ‰$èÚÉþÿ¶¾À‰D$‹E‰$è•Õþÿ‹…xÿÿÿ‹Pÿ‹…xÿÿÿ‰‹…xÿÿÿ‹…Àtéð èL×þÿÇ…Tÿÿÿÿÿÿÿé ‹…xÿÿÿ‹@‹P‹…xÿÿÿ‰$ÿÒéÀ ‹E ‰$è¦Ìþÿ‰…xÿÿÿƒ½xÿÿÿtG‹…xÿÿÿ‰$èIÉþÿ¶¾À‰D$‹E‰$èÕþÿ‹…xÿÿÿ‹Pÿ‹…xÿÿÿ‰‹…xÿÿÿ‹…Àté_ è»ÖþÿÇ…Tÿÿÿÿÿÿÿéz ‹…xÿÿÿ‹@‹P‹…xÿÿÿ‰$ÿÒé/ ‹E ‰$èeËþÿ‰D$‹E‰$èfÊþÿé ‹E ‰$èÆÐþÿ‰D$‹E‰$è'Ëþÿéñ ‹E ‹P‹ƒ@ÿÿÿ9Ât‹E ‹P‹ƒ@ÿÿÿ‰D$‰$è Ñþÿ…Àt:‹E ‰$è{Ðþÿ‰Eˆƒ}ˆx‹Eˆ‰D$‹E‰$è@Öþÿéš Ç…Tÿÿÿÿÿÿÿéº ‹E ‰$è±Ùþÿ‰D$‹E‰$èÖþÿél ‹E ‰$è"Ðþÿ‰D$‹E‰$èsÍþÿéM ‹E ‹P‹ƒ@ÿÿÿ9Ât‹E ‹P‹ƒ@ÿÿÿ‰D$‰$èfÐþÿ…Àt:‹E ‰$è×Ïþÿ‰EŒƒ}Œx‹EŒ‰D$‹E‰$èüÖþÿéöÇ…Tÿÿÿÿÿÿÿé ‹E ‰$è Ùþÿ‰D$‹E‰$èÎÖþÿéÈ‹E ‰$èÓþÿ‰D$‰T$‹E‰$èûÆþÿ饋E ‹P‹ƒ@ÿÿÿ9Ât‹E ‹P‹ƒ@ÿÿÿ‰D$‰$è¾Ïþÿ…ÀtY‹E ‰$è/Ïþÿ‰Eƒ}y)‹ƒ¬ÿÿÿ‹ƒ<éÿÿ‰D$‰$èlÕþÿÇ…Tÿÿÿÿÿÿÿék‹E™‰D$‰T$‹E‰$èæËþÿé ‹E ‹P‹ƒ ÿÿÿ9Ât‹E ‹P‹ƒ ÿÿÿ‰D$‰$è9Ïþÿ…Àt#‹E ‰$èúÒþÿ‰D$‰T$‹E‰$è—ËþÿéÑÇ…TÿÿÿÿÿÿÿéñÇ…tÿÿÿ‹E‹…tÿÿÿ‰D$‹E ‰D$‰$èèðÿÿ…ÀyèòÓþÿÇ…Tÿÿÿÿÿÿÿ鱋…tÿÿÿ‰D$‹E‰$èîÍþÿéhÇ…pÿÿÿ‹E‹…pÿÿÿ‰D$‹E ‰D$‰$èÅóÿÿ…Àyè˜ÓþÿÇ…TÿÿÿÿÿÿÿéW‹…pÿÿÿ‰D$‹E‰$èÒþÿé‹E ‰$è´ÏþÿÙXÿÿÿÙ…XÿÿÿÙ\$‹E‰$è™Ìþÿéã‹E ‰$è‰ÏþÿÝ\$‹E‰$èÌþÿéÄ‹ƒ¨ÿÿÿ9E uÇD$‹E‰$èËþÿé¡‹E ‰$è‡Èþÿ‰…xÿÿÿƒ½xÿÿÿt\‹…xÿÿÿ‰$è*Åþÿ‰D$‹E‰$èËÊþÿ‹…xÿÿÿ‹Pÿ‹…xÿÿÿ‰‹…xÿÿÿ‹…À…G‹…xÿÿÿ‹@‹P‹…xÿÿÿ‰$ÿÒé+è‡ÒþÿÇ…TÿÿÿÿÿÿÿéF‹ƒ¨ÿÿÿ9E uÇD$‹E‰$èúÅþÿéô‹E ‹P‹ƒ(ÿÿÿ9Ât‹E ‹P‹ƒ(ÿÿÿ‰D$‰$è Íþÿ…Àtg‹E‰E”‹E ‹@ ‰E˜ƒ}”u ÇEœë(‹E”‹;E˜u ÇEœë‹E˜‰D$‹E”‰$è&Óþÿ‰Eœ‹Eœ…Àt‹E ‹@‰D$‹E‰$ègÅþÿéa‹E ‹P‹ƒäÿÿÿ9Âu‹E ‰$è7Ìþÿ‰D$‹E‰$è8Åþÿé2Ç…TÿÿÿÿÿÿÿéR‹ƒ¨ÿÿÿ9E uÇD$‹E‰$è–Èþÿé‹E‰E¤‹ƒLÿÿÿ‹‰E¨ƒ}¤u ÇE¬ë(‹E¤‹;E¨u ÇE¬ë‹E¨‰D$‹E¤‰$è\Òþÿ‰E¬‹E¬…Àt‹E ‰D$‹E‰$è0Èþÿéš‹E ‹P‹ƒ¸ÿÿÿ9Ât‹E ‹P‹ƒ¸ÿÿÿ‰D$‰$è³Ëþÿ…Àtg‹E‰E°‹E ‹@ ‰E´ƒ}°u ÇE¸ë(‹E°‹;E´u ÇE¸ë‹E´‰D$‹E°‰$èÌÑþÿ‰E¸‹E¸…Àt‹E ‹@‰D$‹E‰$èÇþÿé‹E‰E¼è=Çþÿ‰EÀƒ}¼u ÇEÄë(‹E¼‹;EÀu ÇEÄë‹EÀ‰D$‹E¼‰$èfÑþÿ‰EÄ‹EÄ…Àt{‹E ‹@‰$è¯êÿÿ‰Eȃ}ÈuèÐþÿÇ…Tÿÿÿÿÿÿÿé¿Ç$èÏþÿ‰EÌ‹EȉD$‹Ẻ$è Ïþÿ‹ẺD$‹E‰$èŽÎþÿ‹E ‰D$‹Ẻ$èöÿÿ‰…Tÿÿÿéo‹E ‰$èÌþÿ…Àtq‹E‰EÐè÷Ëþÿ‰EÔƒ}Ðu ÇEØë(‹EЋ;EÔu ÇEØë‹EÔ‰D$‹EЉ$èÐþÿ‰EØ‹EØ…Àt%ÇD$‹E ‰D$‹E‰$è¤óÿÿ‰…Tÿÿÿéï‹E ‹P‹ƒÔÿÿÿ9Ât ‹E ‹P‹ƒÔÿÿÿ‰D$‰$èÙÉþÿ…À„ËE‰EÜèVÊþÿ‰Eàƒ}Üu ÇEäë(‹EÜ‹;Eàu ÇEäë‹Eà‰D$‹E܉$èïÏþÿ‰Eä‹Eä…Àtw…hÿÿÿ‰D$…lÿÿÿ‰D$‹E ‰$èÎþÿ…ÀtÇ…TÿÿÿÿÿÿÿéA‹…hÿÿÿ‹•lÿÿÿ‰D$‰$èûËþÿ‰Eè‹Eè‰D$‹E‰$èvÅþÿÇD$‹Eè‰$èCÆþÿéÍ‹E‹‰$èËñÿÿ‰E ƒ} t ‹E ‹P‹E ‰D$‹E‰$ÿÒ‰…Tÿÿÿ鯋E ‹P‹ƒäÿÿÿ9Âu‹E ‰$èmÈþÿ‰D$‹E‰$èþÄþÿéhÇ…Tÿÿÿÿÿÿÿ鈋E ‹P‹ƒ¼ÿÿÿ9Ât‹E ‹P‹ƒ¼ÿÿÿ‰D$‰$èrÈþÿ…Àt‹E ‰$èÈþÿ‰D$‹E‰$èÉþÿéÇ…Tÿÿÿÿÿÿÿé.‹ƒ¨ÿÿÿ9E uÇD$‹E‰$èâÌþÿéÜ‹E ‹P‹ƒ°ÿÿÿ9Ât‹E ‹P‹ƒ°ÿÿÿ‰D$‰$èõÇþÿ…Àtq‹E ‹@‰Eì‹E‹‰Eðƒ}ìu ÇEôë3‹Eì‹…Àt‹Eì‹‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$èÁÈþÿ‰Eô‹Eô…Àt‹E ‹@‰D$‹E‰$èBÌþÿë?Ç…Tÿÿÿÿÿÿÿëb‹E‹‰$è1ðÿÿ‰Eøƒ}øt‹Eø‹P‹E ‰D$‹E‰$ÿÒ‰…Tÿÿÿë/èLÃþÿ…Àt‹E‰$è¾þÿèHÌþÿÇ…Tÿÿÿÿÿÿÿë Ç…Tÿÿÿ‹…TÿÿÿÄÄ[]ÃU‰åVSìèõ)ÿÿÃSc‹E‹‰$èPÄþÿƒè‰…ÿÿÿƒ½ÿÿÿH‡y‹…ÿÿÿ…ÿÿÿÀ‹„ êÿÿØÿà‹E‹ÇD$P‰$èÌÀþÿ…À„n‹E‰$èÉÆþÿ‰$èÜoÿÿ‰…ÿÿÿ饋E‰$è Ãþÿˆ… ÿÿÿ… ÿÿÿÇD$‰$èÁþÿ‰…ÿÿÿés‹E‰$èIÌþÿˆ… ÿÿÿ… ÿÿÿÇD$‰$èMÁþÿ‰…ÿÿÿéA‹E‰$è÷Áþÿ‰$è/¿þÿ‰…ÿÿÿé#‹E‰$èiÌþÿ‰$èÄþÿ‰…ÿÿÿé‹E‰$èë¿þÿ‰$èS¾þÿ‰…ÿÿÿéç‹E‰$è}Áþÿ‰$èEÄþÿ‰…ÿÿÿéÉ‹E‰$èßÊþÿ‰EŒ‹EŒ…Àx‹EŒ‰$èÄþÿ‰…ÿÿÿéž‹EŒ‰$èô½þÿ‰…ÿÿÿ鈋E‰$èþËþÿ‰E‰U”ƒ}”ÿ|:ƒ}”ÿ }€r+ƒ}”%ƒ}”x }ÿÿÿw‹E‰$è³Ãþÿ‰…ÿÿÿé7‹E‹U”‰$‰T$èFÉþÿ‰…ÿÿÿé‹E‰$è0Åþÿ‰E˜‰Uœƒ}œw%ƒ}œr }˜ÿÿÿw‹E˜‰$èZÃþÿ‰…ÿÿÿéÞ‹E˜‹Uœ‰$‰T$è=½þÿ‰…ÿÿÿéÁ‹E‰$è÷½þÿ‰Â‹E‹‰T$‰$èï3ÿÿ‰…ÿÿÿ阋E‰$èÞÅþÿ‰Â‹E‹‰T$‰$èµCÿÿ‰…ÿÿÿéo‹E‰$è»þÿÝ$èí¿þÿ‰…ÿÿÿéQ‹E‰$èg½þÿÝ$èÏ¿þÿ‰…ÿÿÿé3‹E‰$èY¼þÿ‰E ƒ} t‹E ‰$è5Âþÿ‰…ÿÿÿé ‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰…ÿÿÿéå‹E‰$è‹Ãþÿ‰Â‹E‹‰T$‰$èÀØÿÿ‰…ÿÿÿ鼋E‰E¨‹ƒLÿÿÿ‹‰E¬ƒ}¨u ÇE°ë(‹E¨‹;E¬u ÇE°ë‹E¬‰D$‹E¨‰$è¨Éþÿ‰E°‹E°…ÀtF‹E‰$è#Ãþÿ‰E´ƒ}´u$‹ƒ¨ÿÿÿ‹P‹ƒ¨ÿÿÿ‰‹ƒ¨ÿÿÿ‰…ÿÿÿé5‹E´‰…ÿÿÿé'‹E‰E¸èí¾þÿ‰E¼ƒ}¸u ÇEÀë(‹E¸‹;E¼u ÇEÀë‹E¼‰D$‹E¸‰$èÉþÿ‰EÀ‹EÀ…Àt+‹E‰$èAºþÿ‰EÄ‹E ‰D$‹Eĉ$è‰ûÿÿ‰…ÿÿÿé°‹E‰EÈèÄþÿ‰Ẽ}Èu ÇEÐë(‹EÈ‹;EÌu ÇEÐë‹ẺD$‹Eȉ$èŸÈþÿ‰EЋEÐ…Àt~‹E‰$èʹþÿ‰EÔ‹EÔ‹‰$èêÉþÿ‰EØÇEÜë=‹EØ‹P ‹EÜÀÀ4‹EÔ‹H‹U܉ÐÀÀÐÀÀ‹E ‰D$‰$èÔúÿÿ‰ƒEÜ‹EÜ‹UÔ‹9Ðr·‹E؉…ÿÿÿéæ‹E‰Eàè<Âþÿ‰Eäƒ}àu ÇEèë(‹Eà‹;Eäu ÇEèë‹Eä‰D$‹Eà‰$èÕÇþÿ‰Eè‹Eè…Àt8‹E‰$è¹þÿ‰Eì‹Eì‹@‰Â‹E싉T$‰$èt¼þÿ‰Eð‹Eð‰…ÿÿÿéb‹E‹‰$èðéÿÿ‰E¤ƒ}¤t‹E¤‹‹E‰$ÿÒ‰…ÿÿÿé4ƒ} t9‹E‰$蔸þÿ‰Â‹E‹ÇD$ ÇD$‰T$‰$è®'ÿÿ‰…ÿÿÿéõ‹E‰$è[¸þÿ‰Â‹E‹ÇD$ ÇD$‰T$‰$èu'ÿÿ‰…ÿÿÿ鼋E‰$èbÄþÿ‰$èTÑÿÿ‰…ÿÿÿéž‹E‰$è¤Àþÿ‰$è·iÿÿ‰…ÿÿÿ逋E‹‰$èéÿÿ‰Eôƒ}ôt‹Eô‹‹E‰$ÿÒ‰…ÿÿÿëU‹E‹‰$è Âþÿ‰D$ ƒêÿÿ‰D$ÇD$€… ÿÿÿ‰$è¿þÿ‹ƒ8ÿÿÿ‹… ÿÿÿ‰D$‰$è»ÅþÿÇ…ÿÿÿ‹…ÿÿÿÄ[^]ÃU‰åSƒìè·"ÿÿÃ\‹E ‰Eôè´¼þÿ‰Eø‹Eô‹@…Àt*‹Eô‹@‹ƒê‰‹…Àu‹Eô‹@‹@‹P‹Eô‹@‰$ÿÒ‹Eô‹@…Àt*‹Eô‹@‹ƒê‰‹…Àu‹Eô‹@‹@‹P‹Eô‹@‰$ÿÒ‹Eô‹@…Àt*‹Eô‹@‹ƒê‰‹…Àu‹Eô‹@‹@‹P‹Eô‹@‰$ÿÒ‹Eø‰$èÚ½þÿ‹EôÇ@‹EôÇ@‹EôÇ@ƒÄ[]ÃU‰åSƒì4èÌ!ÿÿÃ*[‹E‰EäèÉ»þÿ‰Eà‹E‰$èëÃþÿ‰EèÇEð黃}ðui‹E‹% …Àt[‹Eä‹@…Àu%ƒØëÿÿ‰D$ƒÄëÿÿ‰D$Ç$èþ½þÿéâ‹Eä‹P‹ƒÀ‰‹Eä‹@‰D$ÇD$‹Eè‰$èßÃþÿëH‹Uð‰ÐÀÀÐÀÀEÇD$‰$è÷ÿÿ‰Eôƒ}ô„U‹Eð‹Uô‰T$‰D$‹Eè‰$è•ÃþÿƒEð‹Eð;E‚9ÿÿÿ‹Eä‹@…ÀtE‹Eè‰Eø‹Eä‹@‰D$‹Eø‰$èP»þÿ‰Eè‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eä‹P‹Eè‰D$‰$èq¾þÿ‰Eìƒ}ìu5‹Eä‹@…Àt!‹Eä‹P‹E‰D$‹E‰D$‹E ‰$ÿÒé”è¨Àþÿ銃} t]‹Eì‰D$‹E ‰$èéÿÿ…ÀtG‹ƒ8ÿÿÿ‹ƒðëÿÿ‰D$‰$èÝÂþÿ‹Eä‹@…Àt‹Eä‹P‹E‰D$‹E‰D$‹E ‰$ÿÒëè@Àþÿ‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eà‰$èW»þÿƒÄ4[]ÃU‰åSƒì$ègÿÿÃÅXƒ}u,ƒ+ìÿÿ‰D$ƒìÿÿ‰D$Ç$èÙ»þÿÇEèéÇD$Ç$ èI¼þÿ‰Eôƒß£ÿÿ‰D$ÇD$‹Eô‰$èy³þÿƒÊ¤ÿÿ‰D$‹Eô‰$èd¶þÿ‹E‹P‹E‰‹Uô‹E‰Bƒ} t|‹ƒ¨ÿÿÿ9E tq‹E ‹P‹E ‰‹E ‹P‹ƒ€ÿÿÿ9ÂtK‹E ‹P‹ƒ€ÿÿÿ‰D$‰$舻þÿ…Àu/Ç$è¸Àþÿ‰Eø‹E ‰D$ÇD$‹Eø‰$è Áþÿ‹Eø‰E ‹Uô‹E ‰Bƒ}t"‹E‹P‹E‰‹Uô‹E‰B‹Uô‹ ‰‹Eô‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è ÿÿÃiWƒ}u"ƒfìÿÿ‰D$ƒDìÿÿ‰D$Ç$è}ºþÿë‹E‰Eø‹Uø‹E ‰BƒÄ$[]ÃU‰åSƒìdè¼ÿÿÃW‹E‰EÄè¹·þÿ‰E¸ƒ}u%ƒ¥ìÿÿ‰D$ƒ„ìÿÿ‰D$Ç$è ºþÿé‹E‰$è°ºþÿ‰E¼ƒ}¼tl‹E¼‰EäÇEèPƒ}äu ÇEìë3‹Eä‹…Àt‹Eä‹‹;Eèu ÇEìë‹Eè‰D$‹Eä‰$è;»þÿ‰Eì‹Eì…Àt‹E¼‰$èacÿÿ‰EÀƒ}Àt'ëJƒÀìÿÿ‰D$ƒ„ìÿÿ‰D$Ç$è{¹þÿévƒæìÿÿ‰D$ƒ„ìÿÿ‰D$Ç$èV¹þÿéQ‹EÄ‹‰$èt±þÿÇD$‰D$ƒýìÿÿ‰$èZ³þÿ‰EÈ‹EȉEÌë‹E̶<-u‹EÌÆ_ƒEÌ‹E̶„Àuâ‹EȉD$‹EÀ‰$è_»þÿ‰EЋEȉ$èA°þÿƒ}Ðu<èV¾þÿ‹EÀ‹Pÿ‹EÀ‰‹EÀ‹…Àu‹EÀ‹@‹P‹EÀ‰$ÿÒ‹E¸‰$èä·þÿ韋EÀ‹Pÿ‹EÀ‰‹EÀ‹…Àu‹EÀ‹@‹P‹EÀ‰$ÿÒ‹Eƒè‰$è ¾þÿ‰EÔÇEÜé„‹U܉ÐÀÀÐÀÀEÇD$‰$è–ñÿÿ‰Eðƒ}ðu7‹EÔ‹Pÿ‹EÔ‰‹EÔ‹…Àu‹EÔ‹@‹P‹EÔ‰$ÿÒ‹E¸‰$è>·þÿéù‹E܃è‰Â‹Eð‰D$‰T$‹EÔ‰$èë½þÿƒEÜ‹EÜ;E‚pÿÿÿ‹EÔ‰D$‹EЉ$è¹þÿ‰EØ‹EÔ‰$è ½þÿ‰EàÇEÜé‹E܉D$‹EÔ‰$誽þÿ‰Eôƒ}ôtp‹Eô‹P‹ƒ¸ÿÿÿ9Ât‹Eô‹P‹ƒ¸ÿÿÿ‰D$‰$è¹·þÿ…ÀtD‹Eô‹ƒøt:‹Eô‰Eø‹Eø‹@…Àu*‹Eø‹P‹Eø‹@ ‰T$‰$è“·þÿ‰Â‹Eø‰P‹EøÇ@ƒEÜ‹EÜ;Eà‚eÿÿÿƒ}ØucèÆºþÿ‹EЋPÿ‹EЉ‹EЋ…Àu‹EЋ@‹P‹EЉ$ÿÒ‹EÔ‹Pÿ‹EÔ‰‹EÔ‹…Àu‹EÔ‹@‹P‹EÔ‰$ÿÒ‹E¸‰$èݵþÿ阋EЋPÿ‹EЉ‹EЋ…Àu‹EЋ@‹P‹EЉ$ÿÒ‹EÔ‹Pÿ‹EÔ‰‹EÔ‹…Àu‹EÔ‹@‹P‹EÔ‰$ÿÒƒ} t‹E؉D$‹E ‰$è“âÿÿ‹EØ‹Pÿ‹E؉‹EØ‹…Àu‹EØ‹@‹P‹E؉$ÿÒ‹E¸‰$è@µþÿƒÄd[]ÃU‰åSƒìèPÿÿîR‹ƒ|…ÀuNÇD$Ç$èZ¶þÿ‰ƒ|‹“|ƒÚ¨ÿÿ‰D$‰$茰þÿ‹ƒ|‰$èÞ·þÿ‹ƒ|‰$è0²þÿ‹ƒ|ƒÄ[]ÃU‰åSƒì$èÚÿÿÃ8R‹E‹@‰$èf‰Eôƒ}ôtM‹Eô‹@‰Eðë<‹Eð‹‰Eø‹Eø‹PEì‰D$‹E ‰D$‰$è<­þÿ‹Eì…Àu‹Eø‰Eèë‹Eð‹@‰Eðƒ}ðu¾ÇEè‹EèƒÄ$[]ÃU‰åSƒìèTÿÿòQ‹ƒÿÿÿ‹‰D$‹E‰$èE¼þÿƒÄ[]ÃU‰åSƒìè%ÿÿÃQ‹E‰$èâ¹þÿƒÄ[]ÃU‰åSƒìDèÿÿÃ`QÇEìÇEèÇD$‹E‰$èé¯þÿ…Àt‹E‰$èêºþÿ‰EìEè‰D$‹E‰$蕵þÿ‰Eð‹Eè…À„z‹E‰$茶þÿ‰D$ƒíÿÿ‰D$‹E ‰$è³¼þÿÇEôé‹EôÀÀEð‹ẺD$‰$è\»þÿƒíÿÿ‰D$‹E ‰$èg¼þÿ‹EЉD$‹E ‰$èU¼þÿƒíÿÿ‰D$‹E ‰$è@¼þÿÇEøëJ‹Uä‹EøÀÀ‹‰$èðµþÿ‰D$‹E ‰$è¼þÿ‹Eàƒè;Eøtƒíÿÿ‰D$‹E ‰$èñ»þÿƒEø‹Eà;Eøw®ƒíÿÿ‰D$‹E ‰$èлþÿ‹EÜ…Àt7‹E܃øt/ƒíÿÿ‰D$‹E ‰$謻þÿ‹E܉$èqµþÿ‰D$‹E ‰$è’»þÿƒ#íÿÿ‰D$‹E ‰$è}»þÿƒEô‹Eè9Eô‚Öþÿÿ‹Eð‰$èBªþÿƒ#íÿÿ‰D$‹E ‰$èM»þÿƒ}ìt ‹Eì‰$èL·þÿƒÄD[]ÃU‰åWVSƒì<è ÿÿÃhOÇEÜÇEìÇEð‹E‰$è¹þÿ‰EàE܉D$‹Eà‰$è-°þÿ‰EäÇEèéê‹EèÀÀEä‹‹@;E…΃}ìu+‹E‰$è…´þÿ‰D$ƒ%íÿÿ‰D$‹E ‰$謺þÿÇEì‹EèÀÀE䋉$豯þÿ‰Æ‹EèÀÀEä‹‹@ ‰$è8´þÿ‰Ç‹EèÀÀE䋉$èR´þÿ‰t$‰|$ ‰D$ƒ:íÿÿ‰D$‹E ‰$èAºþÿ‹EèÀÀE䋉$èͬþÿ‰Eðƒ}ðt‹Eð‰D$ƒJíÿÿ‰D$‹E ‰$èºþÿƒEè‹EÜ9Eè‚ ÿÿÿ‹Eä‰$轨þÿƒ}ìtƒ#íÿÿ‰D$‹E ‰$è¹þÿ‹Eà‰$èǵþÿƒÄ<[^_]ÃU‰åSƒìDè…ÿÿÃãMÇEàƒ} t[‹E ‹P‹ƒ°ÿÿÿ9Ât‹E ‹P‹ƒ°ÿÿÿ‰D$‰$èH±þÿ…Àt/‹E ‹@‹‹‰Eàƒ}àu*‹ƒŒÿÿÿ‹ƒRíÿÿ‰D$‰$è÷¶þÿë‹E‰$èËÐÿÿ‰Eàƒ}àu ÇEÈéHÇD$Ç$衳þÿ‰EäÇD$‹Eà‰$èûªþÿ…Àt&‹Eà‰$謲þÿ‰D$ƒlíÿÿ‰D$‹Eä‰$èÓ¸þÿëaÇD$P‹Eà‰$辪þÿ…Àt&‹Eà‰$èo²þÿ‰D$ƒ{íÿÿ‰D$‹Eä‰$è–¸þÿë$‹Eà‰$èI²þÿ‰D$ƒ‡íÿÿ‰D$‹Eä‰$èp¸þÿ‹E‹@X…Àt‹E‹@X‰D$ƒ‡íÿÿ‰D$‹Eä‰$èG¸þÿÇD$P‹Eà‰$è4ªþÿ…À„ÇEÜPÇD$ÇD$Ç$蹩þÿ‰Eìë/ÇD$E܉D$‹Eì‰$躷þÿ‹E܉D$‹Eà‰$踮þÿ‰EÜ‹EÜ…ÀuÊ‹Eì‹@ƒè‰Eð鎋E싉‹EðÀÀ‹‰EÜ‹UÜ‹Eä‰D$‰$èYúÿÿ‹UÜ‹Eä‰D$‰$è=üÿÿ‹UÜE؉D$‰$葵þÿ‰EôÇEøë‹EøÀÀEô‹‹Eä‰D$‰$èúÿÿƒEø‹EØ9EørÙ‹Eô‰$è¦þÿƒmðƒ}ð‰hÿÿÿÇD$‹Eì‰$èB©þÿ‹Eä‹@‰Â‹E䋉T$‰$èù©þÿ‰EèÇD$‹Eä‰$èã«þÿ‹Eè‰EÈ‹EȃÄD[]ÃU‰åSƒìèšÿÿÃøJ‹ƒ€…Àuj‹ƒˆÿÿÿ‰Â‹ƒÿÿÿ‰B‹ƒˆÿÿÿ‰$試þÿ…Àt ÇEøëG‹ƒˆÿÿÿ‹@‰$苯þÿ‰Â‹ƒˆÿÿÿ‰D$‰$è§®þÿ‰ƒ€‹ƒ€…Àu ÇEøë ‹ƒ€‰Eø‹EøƒÄ[]ÃU‰åSƒì$èÿÿÃ`J‹E ‰EðÇEø‹E‹P‹ƒlÿÿÿ9Ât‹E‹P‹ƒlÿÿÿ‰D$‰$èÅ­þÿ…Àt‹E‰Eø‹Eø‹P‹Eø‰ë‹E‰$è¥þÿ‰Eøƒ}øt~‹Eø‰$è°þÿƒøt‹ƒÿÿÿ‹ƒ¤íÿÿ‰D$‰$èN³þÿëR‹Eø‰$è±þÿ‰Eôƒ}ôt>‹Eô··Ð‹Eð‰‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒÇEèë4ƒ}øt'‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒÇEè‹EèƒÄ$[]ÃU‰åSƒì4èÓÿÿÃ1I‹E‰E䋃àÿÿÿ‹ƒÀ$‹‰Eèƒ}äu ÇEìë3‹Eä‹…Àt‹Eä‹‹;Eèu ÇEìë‹Eè‰D$‹Eä‰$è–­þÿ‰Eì‹Eì…ÀtEEà‰D$‹E ‰$èNþÿÿ…Àuèq±þÿÇEØÿÿÿÿéÉ‹Eà‰D$‹E‰$蓱þÿÇEØé«‹E‰Eð‹ƒàÿÿÿ‹ƒÀH‹‰Eôƒ}ðu ÇEøë3‹Eð‹…Àt‹Eð‹‹;Eôu ÇEøë‹Eô‰D$‹Eð‰$èò¬þÿ‰Eø‹Eø…Àt7‹ƒàÿÿÿ‹ƒÀH‹‹U‰D$‰$è®þÿ‰D$‹E ‰D$‹E‰$è.Õÿÿ‰EØë‹E ‰D$‹E‰$è€×ÿÿ‰EØ‹E؃Ä4[]ÃU‰åSƒì4èiÿÿÃÇG‹E‰E싃àÿÿÿ‹ƒÀ$‹‰Eðƒ}ìu ÇEôë3‹Eì‹…Àt‹Eì‹‹;Eðu ÇEôë‹Eð‰D$‹Eì‰$è,¬þÿ‰Eô‹Eô…Àt9fÇEèfÇEê‹E‰$è ¥þÿ‰Eø‹Eøf‰EèÇD$Eè‰$è>°þÿ‰EØë‹E ‰D$‹E‰$è´ãÿÿ‰EØ‹E؃Ä4[]ÃU‰åSƒì$è¡ ÿÿÃÿF‹ƒ\ÿÿÿ‹…Àu6‹ƒôþÿÿ‰D$ ‹ƒôþÿÿ‰D$‹ƒôÿÿÿ‰D$‹ƒÿÿÿ‰$èñ§þÿ‰Â‹ƒ\ÿÿÿ‰Ç$èë¤þÿ‰Eø‹Uø‹E ‰‹Uø‹E‰B‹E‰$è,£þÿ‰Â‹ƒ\ÿÿÿ‹‹Eø‰D$‰T$‰ $èÏ£þÿƒÄ$[]ÃU‰åSƒì$èÿ ÿÿÃ]F‹ƒ\ÿÿÿ‹…Àu ÇEèë`‹ƒ\ÿÿÿ‹‹E‰D$‰$èK­þÿ‰Eôƒ}ôu ÇEèë7‹Eô‹‹Eô‹@‰D$‹E‰$ÿÒ‰Eø‹ƒ\ÿÿÿ‹‹E‰D$‰$訤þÿ‹Eø‰Eè‹EèƒÄ$[]ÃU‰åSƒìèo ÿÿÃÍE‹E‰$èÜ¡þÿ‰Eøƒ}øu‹E‰$è?ÿÿÿ‹E‰$轡þÿ‰Eø‹EøƒÄ[]ÃU‰åVSƒì è& ÿÿÄE‹E‰$è³ þÿ‰EèÇEìƒ}ètëƒEì‹EìÀÀEè‹…Àuì‹Eì‰$è²°þÿ‰EôÇEðë*‹Eô‹P ‹EðÀÀ4‹EðÀÀE苉$è§þÿ‰ƒEð‹Eð;Eì|΋EôƒÄ [^]ÃU‰åSƒì4è ÿÿÃîD‹E ‹P‹ƒ€ÿÿÿ9ÂtT‹E ‹P‹ƒ€ÿÿÿ‰D$‰$è`¨þÿ…Àu8‹E ‹P‹ƒ,ÿÿÿ9Ât(‹E ‹P‹ƒ,ÿÿÿ‰D$‰$è4¨þÿ…Àu ÇEØÿÿÿÿéЋE ‰$èé§þÿ‰EðÇEôéÜ‹E ‹P‹ƒ,ÿÿÿ9Ât‹E ‹P‹ƒ,ÿÿÿ‰D$‰$èâ§þÿ…Àt‹E ‹P ‹EôÀÀ‹‰EÜë ‹U ‹Eô‹D‚ ‰EÜ‹UÜ‹B‹“Ôÿÿÿ9Ðtx‹E ‹P‹ƒ,ÿÿÿ9Ât‹E ‹P‹ƒ,ÿÿÿ‰D$‰$è‚§þÿ…Àt‹E ‹P ‹EôÀÀ‹‰Eàë ‹U ‹Eô‹D‚ ‰Eà‹Eà‹P‹ƒÔÿÿÿ‰D$‰$èB§þÿ…Àu ÇEØÿÿÿÿéÞƒEô‹Eô;EðŒÿÿÿ‹EðƒÀÀÀ‰$è°¡þÿ‰EøÇEôë{‹EôÀÀ‹Uø‰Uä‹E ‹P‹ƒ,ÿÿÿ9Ât‹E ‹P‹ƒ,ÿÿÿ‰D$‰$èͦþÿ…Àt‹E ‹P ‹EôÀÀ‹‰Eèë ‹U ‹Eô‹D‚ ‰Eè‹Eè‰$è žþÿ‰$è’Ÿþÿ‹U䉃Eô‹Eô;EðŒyÿÿÿ‹EôÀÀEøÇ‹Eø‰D$‹E‰$èKªþÿÇEØ‹E؃Ä4[]ÃU‰åSƒìèA ÿÿßB“ |ÿÿ‹ƒ0ÿÿÿ‰P“8{ÿÿ‹ƒ0ÿÿÿ‰P(“‡{ÿÿ‹ƒ0ÿÿÿ‰P,“|{ÿÿ‹ƒ0ÿÿÿ‰P<‹ƒ0ÿÿÿÇ@Të‹“0ÿÿÿƒ¤‰Bt‹“0ÿÿÿƒ‰B|“~‚ÿÿ‹ƒ0ÿÿÿ‰”‹ƒ0ÿÿÿ‹€˜…Àu‹ƒ0ÿÿÿ‹“ìÿÿÿ‰˜‹ƒ0ÿÿÿ‹€œ…Àu‹ƒ0ÿÿÿ‹“ÿÿÿ‰œ‹ƒ0ÿÿÿ‰$è®þÿ…Àup‹ƒ0ÿÿÿ‰D$ƒÞíÿÿ‰D$‹E‰$è{œþÿ‹“ˆÿÿÿƒq®ÿÿ‰B‹ƒˆÿÿÿÇ@Të‹“ˆÿÿÿƒ²ÿÿ‰‚ˆèh§þÿ‰Âƒ»ÿÿ‰D$ƒoºÿÿ‰D$‰$è ÎÿÿƒÄ[]ÃU‰åVSè[ÃBAƒìýÿÿPü‹@üƒøÿt‰Ö¶¿ÿЋFüƒîƒøÿuó[^]ÃU‰åSƒìè[Ãü@è®þÿZ[]Ãpyg_set_thread_block_funcspygobject_api_functions.block_threads == NULL && pygobject_api_functions.unblock_threads == NULLO:gobject.type_nameunknown typecodes:gobject.type_from_name%s: unknown type name: %sO:gobject.type_parentno parent for typeOO:gobject.type_is_aO:gobject.type_childreninvalid type, or no childrenO:gobject.type_interfacesinvalid type, or no interfacesOOdo_set_propertyOdo_get_propertylNiNNNONNNaccumulator function must return a (bool, object) tupleiOO|OOvalue for __gsignals__['%s'] not in correct formataccumulator for __gsignals__['%s'] must be callablethird element of __gsignals__['%s'] tuple must be a sequencecould not create signal for %scould not look up %s__gsignals__ keys must be stringsoverrideccciiiiIIIlllkkkLLLKKKfffdddzcould not create param spec for type %s9þÿˆþÿˆþÿˆþÿ¿þÿˆþÿˆþÿˆþÿE€þÿˆþÿˆþÿˆþÿ£€þÿˆþÿˆþÿˆþÿþÿˆþÿˆþÿˆþÿ—þÿˆþÿˆþÿˆþÿ‚þÿˆþÿˆþÿˆþÿ‹‚þÿˆþÿˆþÿˆþÿJƒþÿˆþÿˆþÿˆþÿ „þÿˆþÿˆþÿˆþÿ¦„þÿˆþÿˆþÿˆþÿC…þÿˆþÿˆþÿˆþÿÏ…þÿˆþÿˆþÿˆþÿ]†þÿˆþÿˆþÿˆþÿo‡þÿˆþÿˆþÿˆþÿ‡þÿˆþÿˆþÿˆþÿÁ†þÿˆþÿˆþÿˆþÿ¼‡þÿparamspec tuples must be at least 4 elements longsOzzlast element in tuple must be an int__gproperties__ keys must be strings__gproperties__ values must be tuples__gproperties__ values must be at least 4 elements longOzzlast element in __gproperties__ value tuple must be an int%s (while registering property '%s' for GType '%s')O!|z:gobject.type_registerargument must be a GObject subclass-v%i__module__.type has no basesInterface type %s has no Python implementation supportcould not create new GType: %s (subclass of %s)PyGObject::class__gtype____doc____gsignals____gsignals__ attribute not a dict!__gproperties____gproperties__ attribute not a dict!sOiOO:gobject.signal_newargument 2 must be an object type or interface typeargument 5 must be a sequence of GType codescould not create signaltypeO:gobject.signal_list_namescould not get a reference to type classtype must be instantiable or an interfaceO:gobject.signal_list_idsnamesO:gobject.signal_lookupsignal_idi:gobject.signal_namesO:gobject.signal_queryi:gobject.signal_queryUsage: one of: gobject.signal_query(name, type) gobject.signal_query(signal_id)O:gobject.list_propertiescould not get a reference to interface typetype must be derived from GObject or an interfaceO:gobject.newcannot create instance of abstract (non-instantiable) type `%s'gobject `%s' doesn't support property `%s'could not convert value for property `%s' from %s to %scould not create objectpyg_handler_marshaluser_data != NULLsignal_accumulator_true_handled can only be used as accumulator argument when registering signalsgobject.add_emission_hook requires at least 3 argumentsOsO:add_emission_hookthird argument must be callable%s: unknown signal name: %s(ON)Osk:gobject.remove_emission_hooktype_nametype_from_nametype_parenttype_is_atype_childrentype_interfacestype_registersignal_newsignal_list_namessignal_list_idssignal_lookupsignal_namesignal_querylist_propertiesnewthreads_initsignal_accumulator_true_handledadd_emission_hookremove_emission_hook_install_metaclasspyg_enum_add_constants`%s' is not an enum typestrip_prefix != NULLpyg_flags_add_constants`%s' is not an flags typepyg_parse_constructor_argsoclasscould not convert parameter '%s' of type '%s'pygobject_construct%s: object class `%s' has no property named `%s'gobjectmodule.c%s: %sl¼þÿ”¼þÿ”¼þÿ”¼þÿ”¼þÿ'¼þÿ”¼þÿ”¼þÿ>¼þÿ”¼þÿ”¼þÿ”¼þÿ€¼þÿR¼þÿpyg_integer_richcompare¶¾þÿ„¾þÿL¾þÿh¾þÿϾþÿ¾þÿadd_warning_redirectiondomain != NULLwarning != NULL_PyGObject_APISIGNAL_RUN_FIRSTSIGNAL_RUN_LASTSIGNAL_RUN_CLEANUPSIGNAL_NO_RECURSESIGNAL_DETAILEDSIGNAL_ACTIONSIGNAL_NO_HOOKSPARAM_READABLEPARAM_WRITABLEPARAM_CONSTRUCTPARAM_CONSTRUCT_ONLYPARAM_LAX_VALIDATIONPARAM_READWRITETYPE_INVALIDTYPE_GSTRINGfeatures(iii)pygobject_versionpygtk_versiongobject.WarningWarningGLibGLib-GObjectGThreadgobject._gobjectgobject.GBoxed<%s at 0x%lx>:GBoxed.__init__%s can not be constructedcopypyg_register_boxeddict != NULLclass_name != NULLboxed_type != 0could not get type `%s' ready__gtype__pyg_boxed_new!copy_boxed || (copy_boxed && own_ref)PyGBoxed::classPyGBoxed::marshalGBoxedgobject.GEnumcomparing different enum types: %s and %spyg_enum_reprG_IS_ENUM_CLASS(enum_class)pygenum.cvaluel__gtype____gtype__ attribute not a typecode__enum_values____enum_values__ badly formedinvalid enum value: %ldpyg_enum_from_gtypegtype != G_TYPE_INVALIDretval != NULLpyg_enum_addtypename != NULLTrying to register gtype '%s' as enum when in fact it is of type '%s's(O)Ocan't create const__module__:GEnum.__reduce____dict__(O(i)O)pyg_enum_get_value_namepyg_enum_get_value_nick__reduce__value_namevalue_nickPyGEnum::classGEnumgobject.GFlagscomparing different flags types: %s and %sgenerate_reprG_IS_FLAGS_CLASS(flags_class)pygflags.c%s | %s%svaluel__gtype____gtype__ attribute not a typecode__flags_values____flags_values__ badly formedinvalid flag value: %ldpyg_flags_from_gtypegtype != G_TYPE_INVALIDretval != NULLpyg_flags_addtypename != NULLTrying to register gtype '%s' as flags when in fact it is of type '%s's(O)Ocan't create const__module__unsupported arithmetic operation for flags typepyg_flags_get_first_value_namepyg_flags_get_first_value_nickpyg_flags_get_value_namespyg_flags_get_value_nicksfirst_value_namefirst_value_nickvalue_namesvalue_nicksPyGFlags::classGFlagsgobject.GInterface:GInterface.__init__%s can not be constructedcould not ready `%s'__gtype__PyGInterface::typePyGInterface::infoGInterface__doc____gdoc__invalidated all closures, but data->closures != NULL !pygobject_register_sinkfuncsinkfunc != NULLgobject.GPropsIter-__members__property '%s' is not readableproperty '%s' can only be set in constructorproperty '%s' is not writablecould not convert argument to correct param typegobject.GPropsproperties cannot be deletedcannot set GOject properties without an instancegobject.GPropsDescrcannot use GObject property descriptor on non-GObject instancescouldn't make the type `%s' ready__module____gtype____doc__pygobject_register_wrapper_fullobj->ref_count >= 1pygobject.cpygobject_switch_to_toggle_refself->obj->ref_count >= 1Gtkgtk.Gdkgtk.gdkAtkatkPangopango__main__sNNpygobject_new_fulltp != NULLpygobject_watch_closureself != NULLPyObject_TypeCheck(self, &PyGObject_Type)closure != NULLg_slist_find(data->closures, closure) == NULLgobject.GObjectuninitialized<%s object at 0x%lx (%s at 0x%lx)>:GObject.__init__cannot create instance of abstract (non-instantiable) type `%s'could not get a reference to type classobject of type `%s' doesn't support property `%s'could not convert value for property `%s'could not create objects:GObject.get_propertyobject at %p of type %s is not initializedobject of type `%s' does not have property `%s'property %s is not readablerequires at least one argumentExpected string argument for property.sO:GObject.set_propertyobject `%s' doesn't support property `%s':GObject.freeze_notifys:GObject.notify:GObject.thaw_notifys:GObject.get_datasO:GObject.set_dataGObject.connect requires at least 2 argumentssO:GObject.connectsecond argument must be callable%s: unknown signal name: %sGObject.connect_after requires at least 2 argumentssO:GObject.connect_afterGObject.connect_object requires at least 3 argumentssOO:GObject.connect_objectGObject.connect_object_after requires at least 3 argumentssOO:GObject.connect_object_afterk:GObject.disconnectk:GObject.handler_is_connectedk:GObject.handler_blockk:GObject.handler_unblockGObject.emit needs at least one args:GObject.emit%d parameters needed for signal %s; %ld givencould not convert type %s to %s required for parameter %ds:GObject.stop_emissioncould not find signal invocation information for this object.unknown signal namegobject.GObject descendants' instances are non-copyableO:GObject.disconnect_by_funcfirst argument must be callablenothing connected to %sO:GObject.handler_block_by_funcO:GObject.handler_unblock_by_func__gobject_init__get_propertyget_propertiesset_propertyset_propertiesfreeze_notifynotifythaw_notifyget_dataset_dataconnectconnect_afterconnect_objectconnect_object_afterdisconnectdisconnect_by_funchandler_disconnecthandler_is_connectedhandler_blockhandler_unblockhandler_block_by_funchandler_unblock_by_funcemitstop_emissionemit_stop_by_namechainweak_ref__copy____deepcopy____dict____grefcount__gobject.GObjectWeakRefGObject weak notify callback returned a value of type %s, should return Noneweak ref already unreffedunref:__call__PyGObject::classPyGObject::class-initPyGObject::wrapperPyGObject::has-updated-constructorPyGObject::instance-dataPyObjectGObject__gdoc__The properties of the GObject accessible as Python attributes.propsgobject._gobjectGObject properties iteratorA GObject weak referenceGObjectWeakRefgobject.GParamSpec<%s '%s'>__gtype__namesnickblurb__doc__flagsvalue_typeowner_type__members__minimummaximumdefault_value[sssssssssss]%c[sssssssss]enum_class[ssssssssss]flags_classepsilon[ssssssssssss]substitutornull_fold_if_emptyensure_non_nullcset_nthcset_firth[ssssssssssssss]cset_firstc[ssssssss]GParamSpecgobject.GPointer<%s at 0x%lx>:GPointer.__init__%s can not be constructedpyg_register_pointerdict != NULLclass_name != NULLpointer_type != 0could not get type `%s' ready__gtype__pyg_pointer_newPyGPointer::classGPointergobject.GTypeinvalidValue must be None or a type objectpytypenamefundamentalparentchildreninterfacesdepths:GType.from_nameunknown type nameO:GType.is_ais_interfaceis_classedis_instantiatableis_derivableis_deep_derivableis_abstractis_value_abstractis_value_typehas_value_tablefrom_nameis_aobjectO:GType.__init__can't get type from NULL object__gtype__could not get typecode from objectpyg_enum_get_valueval != NULLexpected enumeration type %s, but got %s insteadcould not convert string to enum because there is no GType associated to look up the valuecould not convert stringenum values must be strings or intspyg_flags_get_valuecould not convert string to flag because there is no GType associated to look up the valueflag values must be strings, ints, longs, or tuplesPyGType::marshalnegative value not allowed for uint64 propertyòÿÿ,œÿÿ,œÿÿ,œÿÿ‘ÿÿ,œÿÿ,œÿÿ,œÿÿŸ‘ÿÿ,œÿÿ,œÿÿ,œÿÿ0’ÿÿ,œÿÿ,œÿÿ,œÿÿO’ÿÿ,œÿÿ,œÿÿ,œÿÿn’ÿÿ,œÿÿ,œÿÿ,œÿÿó’ÿÿ,œÿÿ,œÿÿ,œÿÿ“ÿÿ,œÿÿ,œÿÿ,œÿÿ—“ÿÿ,œÿÿ,œÿÿ,œÿÿº“ÿÿ,œÿÿ,œÿÿ,œÿÿ”ÿÿ,œÿÿ,œÿÿ,œÿÿ÷”ÿÿ,œÿÿ,œÿÿ,œÿÿQ•ÿÿ,œÿÿ,œÿÿ,œÿÿ|•ÿÿ,œÿÿ,œÿÿ,œÿÿ›•ÿÿ,œÿÿ,œÿÿ,œÿÿH–ÿÿ,œÿÿ,œÿÿ,œÿÿ<—ÿÿ,œÿÿ,œÿÿ,œÿÿ›ÿÿ,œÿÿ,œÿÿ,œÿÿ`›ÿÿunknown type %sïœÿÿO£ÿÿO£ÿÿO£ÿÿ*ÿÿO£ÿÿO£ÿÿO£ÿÿ\ÿÿO£ÿÿO£ÿÿO£ÿÿŽÿÿO£ÿÿO£ÿÿO£ÿÿ¬ÿÿO£ÿÿO£ÿÿO£ÿÿÊÿÿO£ÿÿO£ÿÿO£ÿÿèÿÿO£ÿÿO£ÿÿO£ÿÿžÿÿO£ÿÿO£ÿÿO£ÿÿGžÿÿO£ÿÿO£ÿÿO£ÿÿµžÿÿO£ÿÿO£ÿÿO£ÿÿŸÿÿO£ÿÿO£ÿÿO£ÿÿ7ŸÿÿO£ÿÿO£ÿÿO£ÿÿ`ŸÿÿO£ÿÿO£ÿÿO£ÿÿ~ŸÿÿO£ÿÿO£ÿÿO£ÿÿœŸÿÿO£ÿÿO£ÿÿO£ÿÿêŸÿÿO£ÿÿO£ÿÿO£ÿÿ ÿÿO£ÿÿO£ÿÿO£ÿÿ£ÿÿO£ÿÿO£ÿÿO£ÿÿ1£ÿÿpyg_closure_marshalpc->swap_data != NULLcan't convert return value to desired typepyg_closure_newcallback != NULLpyg_closure_set_exception_handlerclosure != NULLpyg_signal_class_closure_marshalinvocation_hint != NULLobject != NULL && G_IS_OBJECT(object)object_wrapper != NULLdo_Signals from %s: (, ) -> Properties from %s: %s -> %s: %s %s could not get object typeInterface %s Object %s %s gobject.GObject.__doc__unicode character value must be 1 character uniode stringGTypeÿÿÿÿÿÿÿÿ²Ìàô * lN T³´ L \ô`  E4;Ø þÿÿo;ÿÿÿoðÿÿod8úÿÿoàúšbøÈà ðÀàüÄ @àþà Àü`àû éìè  ôäXò²NÂNÒNâNòNOO"O2OBORObOrO‚O’O¢O²OÂOÒOâOòOPP"P2PBPRPbPrP‚P’P¢P²PÂPÒPâPòPQQ"Q2QBQRQbQrQ‚Q’Q¢Q²QÂQÒQâQòQRR"R2RBRRRbRrR‚R’R¢R²RÂRÒRâRòRSS"S2SBSRSbSrS‚S’S¢S²SÂSÒSâSòSTT"T2TBTRTbTrT‚T’T¢T²TÂTÒTâTòTUU"U2UBURUbUrU‚U’U¢U²UÂUÒUâUòUVV"V2VBVRVbVrV‚V’V¢V²VÂVÒVâVòVWW"W2WBWRWbWrW‚W’W¢W²WÂWÒWâWòWXX"X2XBXRXbXrX‚X’X¢X²XÂXÒXâXòXYY"Y2YBYRYbYrY‚Y’Y¢Y²YÂYÒYâYòYZZ"Z2ZBZRZbZrZ‚Z’Z¢Z²ZÂZÒZâZòZ[["[2[B[R[b[r[‚[’[¢[²[Â[Ò[â[ò[\\"\2\B\R\b\r\‚\’\¢\²\Â\Ò\â\ò\]]"]2]B]R]b]r]‚]’]¢]²]Â]Ò]â]ò]^^"^2^B^R^b^r^‚^’^¢^²^Â^Ò^â^ò^__"_2_B_R_b_r_‚_’_¢_²_Â_Ò_â_ò_``"`2`B`R`b`r`‚`’`¢`²`Â`Ò`â`ò`aa"a2aBaRaba ùPò)»)»¸»)»Ö»Ö»¸»)»¿òb ¿˜c¿Cd&¿éd0¿‹e>¿¹fN¿(„\¿›g¿_’y¿”‰¿ê•—¿J—£¿ß—°¿ËšÀ¿ÓœÄ¿‚¡Ô¿¢ô¿ä£ÀG¦À\§Zó÷ êáþW‹›Åšb½w\w z@}"ýƒù æàûE½Ù¾àk$mt¨É©¸§«b Öhß|ð©d«‰¬«ÀüÉwÇþ Ùf×Ë¡B¡_¡ ƒ ççœ2­®C² ´}µQ­A«lôý„ÄűÆ*ͼưÍÇÆÎèÆ’Ç{É1ߌÉ2àÉ3á©É€âËÞËÞËÞËÞËÞËÞËÞÝ9Þ§ÝÌÉd(<l,DäÊ¡Ë<òÌþÍ~Ôh ÔÅ œÔÏ «Ô¸Ô¤ÇÔÊÕÔÄÜÔÌèÔÆñÔåúÔÕÕÕ!4Õ$?ÕE5RÕ$eÕ%zÕ&ˆÕ'˜Õ7®ÕÉ8ÆÕŒ'ËÕÙ,ÙÕÙ,ëÕc.ñÕL3úÕ×4Ö5Ö‹:Öû:'Ö§ÖR?æ× <Ù@Ú ŒÚ‹pßp“Úr˜Úr¤ÚQr«Ú­r´Ú8s¿ÚÃsöÚñsÛ(tÛ^t Û”t-ÛÊt?ÛuKÛ6u]ÛlukÛšu{ÛÐu!…ÛYvŠÛèáGCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2.symtab.strtab.shstrtab.hash.dynsym.dynstr.gnu.version.gnu.version_r.rel.dyn.rel.plt.init.text.fini.rodata.eh_frame.ctors.dtors.jcr.dynamic.got.got.plt.data.bss.comment´´d !   )L1ÿÿÿod8d8 >þÿÿo;;0M 4;4;Ø V  E E`  _lNlN/ZœNœNÐepapaäQkT³T³q€³€³À. y@â@âƒDòDâŠLòLâ‘TòTâ–XòXâøŸPóPã ¤\ô\ä¼­ ù é€ ³   ûp ¸ ûêŠüÁ\p2Ø Ì3ž:DòLòTò*pa @  O$ùVàa bHòoPò|@â ŠTò–³ ¬¤ ¼¨ ɬ ߀³ ùb~ òb¦ "˜c« 5Cd¦ Eéd¢ S‹e. e¹f. yçgL ‘3i" ©Uj( ¿}j  ׉lÖ å´ _p± q- +=s¢  ;Û~2 J ƒe brƒ¶ u(„î …ß ¥° Ãõ†c ÞXˆ& ù~ˆ5 ³ˆÀ ,›Ä ;@ùH_’º ^Hùk”Ñ Pù Œê•` ž\ù«J—• »dùÉlù ×ß—ì èËš Óœ À½ 2B¡ M_¡# i‚¡I zÿ¡  “¢7 ·V¢Ž Íä£c ãG¦ ü\§\ €ùP&.À @t¨U WÉ©U osÀ ‰¥À £d«Î ¾öÀ ØŒÁ òª³v ü¼Á  ´3 .Sµ* =}µd Záµt qU¶Ü Ž1¸c ª”¸  Ì4¹˜ è•s îj| ôt ú¡t ÿt yu óu mv çv ¦w $ex *y 0Ÿy 6+z <¹z BË{ Ht{ N{ T| ZȰ `ð° fƒ° lš° rܰ x®° ~³ „ಠЍ² IJ –+³ œù² ¢»k ´o»D Ƴ»  Õ¾»l ä*¼¸ óâ¼# ½@  ü "¹Ã <$Ä VÀ dàÁ; y¾Ä “À Æ «€ý¸¡ÄÖ Å˜Å ßÓÅ  ù*͆ Æ # °ÍÝ ; ™Æ U ÎÝ m  ý ~ Àý< À  èÐ; ³ #Ç Í #Ò² Û ÕÓ» ê Àþ÷ ÔÖ  È  JÈ 9 Ý’ G §Ý’ T 9Þ’ b ËÞf q É ‹ 1ß ª (É Ä 2à ã GÉ ý 3áM üaÉ  €âM 1 àþdC `ÿœW Låš j æå# } ̈ ·Ê ¢ 5ë1 ¹ fën Ó Ôën ä BìÙ ù í´ Ïî| # Kð+ 5 vñ@ N ¶ñ† g <òW w `( “òÇ § ‚ø  º ¯ýZ Ò ¥öm ä -÷©   Ì   Ö÷¬ = àÌ W Àj þØ ‚ PÍ œ (/ ¶ Š; Ð nÍ ê § ³* ÝO 'Gé 7,D Ip  X{° g+ z0# ‰S ˜h ] ²Å   ÉÏ D â‘ ù¤& Êú *Ä ;Ìú QÆ då8 wÿ ‰ø ¡þ º!þ Ù$ î%÷ & %'u ?Œ'M NÙ,Š fc.é †L3‹ ™¤>® °×47 ¿57 ÒE5 ï7 É8 1 àC‹:p Vû:) m$;w €<’›;j ®<Ž È“=9 ãÌ=Ø üR?Ë  0Ð?@— W´@ eÒ@X sŒED ŠÐE  žÛEl ²GF1 ÉxF° Ü(G° ðØGþ  èi jD /Hj  @Sjl Q¿j® bmk# sˆÙ ÷Ù §”oD ÀØo  Öão… ìhp# ‹pT &ßp' GrK fQr. ‡r. ­­r‹ Ð8s‹ õÃs. `  -ñs7 G(t6 _^t6 ~”t6 ˜Êt6 ·u6 Ð6u6 ïlu. šu6 'Ðu‰ >Yv P ÀhÀ uÚv‚ ‹óÛ ¥àÜ ¿ÔÔÆ€\ ä”i ;˜ë  à 3&™e Gwà a à" {àà! •6l ¶Øœ ž¢/ ÄÍ¢# ×ð¢ö çæ¤‡ ùm¦ë ÜË®— 4b¯O HN„ Nˆ Tj… Zû… `Œ† f«† lʆ rO‡ xn‡ ~ó‡ „ˆ Šùˆ S‰ –­‰ œ؉ ¢÷‰ ¨¤Š ®˜‹ ´b º¼ ÀK‘ Æ«— ̆‘ Ò¸‘ Øê‘ Þ’ ä&’ êD’ ðb’ ö£’ ü“ j“ ““ ¼“ Ú“ ø“ F” &o” ,o— 2— 8àúäPšbX cLÀ” ‚øžBç/ ¸ æ Ï¢† ä®4 ø2­Ý W3 È.àÀ>T³ D z7 W*Aa wÖhk Š Àžf×£ ³k” È\ôñÿÞ Ù  ìjÏ| çœO ,¦ÿ‚ ?áþÅ V"r pqçŸ “±±W ±ZóK ÊðàÀïA«# ¢¡v '@}† ;àÀMQ­¢ osŠ( üšÄ³ Èù" æ@Àü½wL X©˜ *ó­ >àSþÀa‡wÇ¡ ›E½” ®É »à ÀÍ‹›\ Ý ùꃮH þË¡4 -\wa BÀüÀO  ñÿ[úº r%nm “ ç6 ¯T î ÃC²7 æ`ÀõàûÀ÷ ß|ü 9 ÀKÍã| jñÿoé ƒÀ• ê• ±«j Ðê‹ ßìòè $m  «# $  À2  ÀE ‰¬È b   ñÿi ýƒü  Ù¾s ÅG § ¸§¼ Á ô× ùB í ð©/ !Ai¥ *!>!þº U!z²0 m!ä!Xòñÿˆ!lN´ d8;4; ElNœN pa T³ €³ @â DòLòTòXòPó\ô ù  Ž! ¢!™µ!˜Ç!,Ó!æ!;í!¢ÿ!","*?"cN"Ž\"k"}"‘"£"Å"pÙ"å"Ö÷"#ø#%#>#V#1d#†y#Q„#Ç›#u³#Ä#îÔ#á#“ù#š $ê#$¡4$L$h$ w$‹$ Ÿ$T®$ýÀ$Ö$bß$—ó$ %%<(%˜;%K%š\% r%~% ˜%¬%É%)Ý%ìé%)õ%&&.&>&IP&ša&om&y&k™&««&͸&Æ&½Ü&©ï&‰ø&''¶"'á9'µJ'¹]'ä{'î'"¡'¼'È'¢Ø'æ'jû'(((«9(*Y(f(y(‹(šœ( ª(š¾(ZÏ(Þ(Íï(c)ñ)Þ))A)£U)¢h)u)†)«™)x¯)&¿)Ð) ß)µ*k*Ç/*<*‰J*Šb*ãx*Æ—*@ª*¿*ÁÕ*ç*¢ô*O ++Â++È@+Z+u+œˆ+•+¬+¸++È+Ü+í+ÿ+,',6,ÃI,[,¯m,z,[“,Ÿ,‚­,›¾,4É,8ë,ü, - -/-=-J-b-`{--c¦-¶-šÊ-Ý-ï-. ..#&.ó;.šN.ªa.V~.Œ.§.Zº.Î.âæ.Cø.Ê/T&/3/A/U/mj/ž…/ ’/¢/®/¿/Ð/šâ/\ù/ 0!0ç50ÑF0yT0–`0mu0Œ0¥¢0¶0Â0¤Ì0`Ü0ê0P1#1Ó61M1\1p1ƒ1‘1T¢1»1!Ï1Ý1ó122µ:2—K2\2j2v2‹2œŸ2͵2Å2×2ô23š 3Þ33ZE3Z3r3ô…3‘3£3iº3[Ç3Þà3ï3“4+4‹>4L4ôd4x4…4!˜4¤4q´4À4šÒ4ã4̹. ð4 5V555O5n5~5Ž5Ù©5¹5Í5\ë5ý5m66 66H6Ja6o6÷Ž6šž6w«6j½6ªÏ6á6–÷67Y-7<7ÉO7-c7«u7U7S­7Ð78ì7¿þ7 8#828=G8,Y8B|8‡8›8ì¹8Ú"Õ8ºé8ú8¡ 9'!9.'9B9>N9_9 p9‚9 —9í°9¿9Í9â9ò9:Ý:(:\E:õX:µz:’:í__CTOR_LIST____DTOR_LIST____JCR_LIST____do_global_dtors_auxcompleted.5958p.5956frame_dummy__CTOR_END____DTOR_END____FRAME_END____JCR_END____do_global_ctors_auxmarshal_genericlog_handlerslog_handlers_disabled__PRETTY_FUNCTION__.14391pyg_set_thread_block_funcspyg_type_namepyg_type_from_namepyg_type_parentpyg_type_is_apyg_type_childrenpyg_type_interfacespyg_object_set_propertypyg_object_get_propertypyg_object_class_init_pyg_signal_accumulatorcreate_signal_pyg_signal_accumulator_true_handled_funcoverride_signaladd_signalscreate_propertyadd_propertiespyg_register_class_initpyg_run_class_init_wrap_pyg_type_registerget_type_name_for_classpygobject_contruction_wrapperpygobject__g_instance_initpygobject_init_wrapper_getpygobject_init_wrapper_setpyg_type_add_interfacespyg_signal_newkwlist.15815pyg_signal_list_nameskwlist.15871pyg_signal_list_idskwlist.15927pyg_signal_lookupkwlist.15968pyg_signal_namekwlist2.15989kwlist1.15988pyg_signal_querypyg_object_class_list_propertiespyg_object_new__PRETTY_FUNCTION__.16256pygobject_gil_state_ensurepygobject_gil_state_releasepyg_threads_initpyg_note_threads_enabledpyg_signal_accumulator_true_handledmarshal_emission_hookpyg_add_emission_hookpyg_remove_emission_hookpyg__install_metaclass_gobject_functions__PRETTY_FUNCTION__.16542pyg_enum_add_constantspyg_flags_add_constants__PRETTY_FUNCTION__.16579__PRETTY_FUNCTION__.16633pyg_parse_constructor_args__PRETTY_FUNCTION__.16748__PRETTY_FUNCTION__.16878_log_func__PRETTY_FUNCTION__.16928add_warning_redirectionremove_handlerdisable_warning_redirectionspygobject_register_apipygobject_register_constantspygobject_register_featurespygobject_register_version_tuplespygobject_register_warnings.L189.L188.L190.L191.L192.L193.L194.L195.L196.L197.L198.L199.L200.L201.L202.L203.L204.L205.L206.L772.L771.L773.L774.L775.L776.L789.L790.L791.L792.L793.L794pyg_boxed_deallocpyg_boxed_comparepyg_boxed_hashpyg_boxed_reprpyg_boxed_initpyg_boxed_freepyg_boxed_copypygboxed_methods__PRETTY_FUNCTION__.16385__PRETTY_FUNCTION__.16422warning.16306pyg_enum_richcompare__PRETTY_FUNCTION__.16351tmp.16346pyg_enum_reprkwlist.16396pyg_enum_new__PRETTY_FUNCTION__.16493__PRETTY_FUNCTION__.16544pyg_enum_reduce__PRETTY_FUNCTION__.16679pyg_enum_get_value_name__PRETTY_FUNCTION__.16709pyg_enum_get_value_nickpyg_enum_methodspyg_enum_getsetswarning.16308pyg_flags_richcompare__PRETTY_FUNCTION__.16354generate_reprpyg_flags_reprkwlist.16442pyg_flags_new__PRETTY_FUNCTION__.16539__PRETTY_FUNCTION__.16591pyg_flags_andpyg_flags_orpyg_flags_xorpyg_flags_warn__PRETTY_FUNCTION__.16800pyg_flags_get_first_value_name__PRETTY_FUNCTION__.16836pyg_flags_get_first_value_nick__PRETTY_FUNCTION__.16872pyg_flags_get_value_namespyg_flags_get_value_nickspyg_flags_getsetspyg_flags_as_numberpyg_interface_initpyg_interface_freesink_funcs__PRETTY_FUNCTION__.16471pyg_props_iter_deallocpygobject_props_iter_nextPyGProps_deallocbuild_parameter_listPyGProps_getattroset_property_from_pspecPyGProps_setattropygobject_props_traversepygobject_props_get_iterPyGProps_length_PyGProps_as_sequencepyg_props_descr_descr_getpyg_type_get_basespygobject_inherit_slotspyg_toggle_notifypygobject_register_wrapper_full__PRETTY_FUNCTION__.16897pygobject_switch_to_toggle_ref__PRETTY_FUNCTION__.16874slot_offsets.17049pygobject_find_slot_for__PRETTY_FUNCTION__.17146pyg_object_peek_inst_datapygobject_unwatch_closure__PRETTY_FUNCTION__.17204pygobject_get_inst_datapygobject_data_newpygobject_deallocpygobject_clearpygobject_comparepygobject_hashpygobject_reprpygobject_traversepygobject_freepygobject_initpygobject__gobject_init__pygobject_get_propertypygobject_get_propertiespygobject_set_propertypygobject_set_propertiespygobject_freeze_notifypygobject_notifypygobject_thaw_notifypygobject_get_datapygobject_set_datapygobject_connectpygobject_connect_afterpygobject_connect_objectpygobject_connect_object_afterpygobject_disconnectpygobject_handler_is_connectedpygobject_handler_blockpygobject_handler_unblockpygobject_emitpygobject_stop_emissionpygobject_chain_from_overriddenpygobject_weak_refpygobject_weak_ref_newpygobject_copypygobject_deepcopypygobject_disconnect_by_funcpygobject_handler_block_by_funcpygobject_handler_unblock_by_funcpygobject_methodspygobject_get_dictpygobject_get_refcountpygobject_setattropygobject_getsetspygobject_weak_ref_traversepygobject_weak_ref_notifypygobject_weak_ref_deallocpygobject_weak_ref_clearpygobject_weak_ref_unrefpygobject_weak_ref_methodsargnames.19227pygobject_weak_ref_callpyobject_copypyobject_freepyg_param_spec_comparepyg_param_spec_hashpyg_param_spec_reprpyg_param_spec_deallocpygenum_from_pspecpygflags_from_pspecpyg_param_spec_getattrpyg_pointer_deallocpyg_pointer_comparepyg_pointer_hashpyg_pointer_reprpyg_pointer_initpyg_pointer_free__PRETTY_FUNCTION__.16365__PRETTY_FUNCTION__.16400pyg_type_wrapper_comparepyg_type_wrapper_hashpyg_type_wrapper_reprpyg_type_wrapper_dealloc_wrap_g_type_wrapper__get_pytype_wrap_g_type_wrapper__set_pytype_wrap_g_type_wrapper__get_name_wrap_g_type_wrapper__get_parent_wrap_g_type_wrapper__get_fundamental_wrap_g_type_wrapper__get_children_wrap_g_type_wrapper__get_interfaces_wrap_g_type_wrapper__get_depth_PyGTypeWrapper_getsets_wrap_g_type_is_interface_wrap_g_type_is_classed_wrap_g_type_is_instantiatable_wrap_g_type_is_derivable_wrap_g_type_is_deep_derivable_wrap_g_type_is_abstract_wrap_g_type_is_value_abstract_wrap_g_type_is_value_type_wrap_g_type_has_value_table_wrap_g_type_from_name_wrap_g_type_is_a_PyGTypeWrapper_methodskwlist.16610pyg_type_wrapper_init__PRETTY_FUNCTION__.16710__PRETTY_FUNCTION__.16796pyg_type_marshal_keypyg_type_lookuppyg_value_array_from_pyobjectpyg_closure_invalidate__PRETTY_FUNCTION__.17643pyg_closure_marshal__PRETTY_FUNCTION__.17725__PRETTY_FUNCTION__.17760__PRETTY_FUNCTION__.17783pyg_signal_class_closure_marshalclosure.17927object_doc_deallocadd_signal_docsadd_property_docsobject_doc_descr_getdoc_descr.18159_pyg_strv_from_gvalue_pyg_strv_to_gvalue.L246.L245.L247.L248.L249.L250.L251.L252.L253.L254.L255.L256.L257.L258.L259.L260.L261.L262.L263.L264.L411.L410.L412.L413.L414.L415.L416.L417.L418.L419.L420.L421.L422.L423.L424.L425.L426.L427.L428.L429pygobject_api_functionspyg_destroy_notifypygobject_boxed_register_typespygobject_instance_data_keypyg_lookup_interface_infopyg_register_interfacegclosure_from_pyfuncpygobject_constructpygobject_constructvpygobject_newPyGObject_MetaTypePyGPointer_Type_finipyg_enum_get_valuepygobject_object_register_typespyg_param_spec_newPyGTypeWrapper_Typepyg_flags_from_gtypepyg_register_pointer_GLOBAL_OFFSET_TABLE_pyg_flags_addpygobject_enum_register_typespyg_closure_set_exception_handlerpygobject_new_fullpygobject_lookup_classpyg_register_gtype_custompygobject_interface_register_typespygobject_type_register_typespygobject_register_classpyginterface_type_keyPY_TYPE_OBJECTpyg_gerror_exception_checkpyg_signal_class_closure_getpyg_flags_get_valuePyGPropsIter_Typepyg_type_register_custom_callbackpyg_type_registerpygobject_class_init_keycustom_type_registrationpygpointer_class_keypygobject_new_with_interfacesPyGObjectWeakRef_Typepyg_type_from_objectpyg_object_descr_doc_getpyg_type_get_custompygboxed_marshal_keyPyGFlags_Typepygobject_has_updated_constructor_keypyg_enum_from_gtypepyg_register_boxedpyg_enum_addPyGObjectDoc_Typepyg_closure_new__dso_handle_pyg_type_from_namepygobject_enable_threadspygobject_wrapper_keypyg_type_wrapper_newPyGEnum_Type__bss_start__i686.get_pc_thunk.cxpygobject_pointer_register_typespyg_register_interface_infopyg_handler_marshalpyg_set_object_has_new_constructorPyGObject_TypePyGBoxed_Typepygobject_register_wrapperpyg_param_spec_from_objectPyGParamSpec_Typepygobject_flags_register_types_endpygobject_data_freePyGInterface_Typepygobject_register_sinkfuncpyg_param_gvalue_from_pyobjectpygobject_sinkpygflags_class_keypygenum_class_keypyg_pointer_newpyg_error_checkPyGProps_TypePyGPropsDescr_Typepyg_param_gvalue_as_pyobject_edatapyg_value_from_pyobjectpyg_boxed_newpygobject_watch_closurepyg_constant_strip_prefixpyginterface_info_keypyg_value_as_pyobjectpyg_pyobj_to_unichar_convpygobject_paramspec_register_typespygobject_class_key__i686.get_pc_thunk.bxpyg_integer_richcomparepygboxed_type_key_DYNAMIC_initg_param_spec_objectg_param_spec_paramg_value_get_floatpyglib_initPyModule_AddObjectg_freeg_value_set_int64g_flags_get_first_valuePyDict_SetItemStringsprintf@@GLIBC_2.0g_slist_removeg_value_unset_Py_ZeroStructPyString_AsStringPyExc_StopIterationPyType_GenericNewg_closure_add_invalidate_notifierg_param_spec_stringPyBool_Typeg_value_get_boxedPyObject_Cmpg_param_spec_unrefg_signal_namePyUnicodeUCS2_FromObjectg_type_value_table_peekg_type_parentg_hash_table_destroyg_str_hashg_object_freeze_notifypyglib_option_group_newPyExc_ValueErrorg_type_childrenPyType_Readyg_type_check_class_is_ag_value_get_stringg_signal_handler_blockg_type_from_namePyLong_FromUnsignedLongPyLong_FromUnsignedLongLong__gmon_start__g_value_set_pointer_Jv_RegisterClassesg_object_unrefg_param_spec_enumPyCObject_FromVoidPtrg_strdupg_value_set_boolean_PyArg_ParseTuple_SizeTPyBool_FromLongg_type_depthg_value_get_doublePyObject_GC_Delg_value_get_enumg_object_get_propertyPyList_Typeg_flags_get_value_by_namePyObject_GC_UnTrack_PyObject_CallFunction_SizeTg_hash_table_insertg_strconcatg_array_newg_value_set_intPyObject_IsTrue_Py_NotImplementedStructPyExc_TypeErrormemset@@GLIBC_2.0g_value_get_uintg_type_is_aPyDict_Typeg_object_class_install_propertyg_param_spec_uintg_array_free_PyObject_Newg_closure_set_marshalg_value_array_freeg_mallocPyInt_TypePyObject_Strg_object_weak_refg_param_spec_get_blurbg_type_set_qdatastrrchr@@GLIBC_2.0pyglib_gerror_exception_checkg_type_test_flagsg_hash_table_removePyString_FromStringAndSizePyDict_Nextg_object_notifyPyLong_AsLongg_value_array_appendPyModule_AddIntConstantPyExc_RuntimeWarningg_param_spec_intg_signal_override_class_closurePyErr_FormatPyFloat_FromDoublePyBaseObject_Typeg_value_get_longg_signal_newvg_value_get_booleang_value_get_typePyErr_Occurredg_enum_get_valueg_assertion_message_exprg_closure_sinkg_value_set_boxedPyObject_GenericSetAttrg_object_weak_unrefg_value_set_uint64g_object_refg_value_get_charg_param_spec_ulongg_log_default_handlerg_strdup_printfg_value_set_longg_signal_emitvg_signal_handlers_disconnect_matchedpyglib_gil_state_ensureg_value_set_stringPyFloat_Typeg_string_freeg_type_check_class_castg_param_spec_get_nickg_object_class_list_propertiesg_type_fundamentalPyEval_RestoreThreadg_hash_table_new_fullPySequence_Concatg_strdelimitg_param_spec_pointerPyUnicode_Typeg_param_spec_ucharg_hash_table_foreachg_flags_get_value_by_nickg_type_check_is_value_typeg_value_set_doubleg_param_spec_boolean_Py_TrueStructg_type_initg_slist_prependPyString_FromString_PyObject_GC_Newg_value_set_floatPyString_FromFormatg_signal_parse_namePyInt_FromLongg_param_spec_floatPyEval_SaveThreadstrlen@@GLIBC_2.0PyTuple_Typepyglib_gil_state_releasePyDict_Sizeg_object_newvg_type_next_baseg_snprintfg_signal_accumulator_true_handledPyModule_GetDictg_value_set_enumPySequence_GetItemPyDict_GetItemPyErr_RestorePyInt_AsLongPyObject_GenericGetAttrg_return_if_fail_warningPyCObject_AsVoidPtrg_type_register_staticPySequence_Sizeg_value_get_pointerPyExc_RuntimeErrorg_value_dup_boxedPyType_IsSubtypeg_boxed_copyPyType_Typeg_slist_findg_closure_new_simpleg_value_get_objectg_value_get_uint64g_type_default_interface_refPyObject_Initg_quark_from_static_stringg_gstring_get_typeg_quark_from_stringg_object_add_toggle_refg_value_set_paramg_signal_handler_disconnectg_signal_list_idsPyErr_WarnExg_ascii_tablePyObject_CallObjectg_static_private_getg_type_check_instance_is_ag_type_queryPyObject_MallocPyErr_FetchPyModule_GetNamePyFloat_AsDoubleg_value_get_flagsg_value_array_get_typePySequence_CheckPyObject_ClearWeakRefsg_param_spec_doubleg_str_has_prefixg_closure_refg_type_nameg_log_remove_handlerPyObject_GetAttrStringg_param_spec_get_namePyObject_IsInstancePyLong_Typeg_reallocg_strv_get_typePyExc_Warningg_signal_handler_is_connectedg_type_check_instance_castg_param_spec_boxedPyObject_SetAttrString_Py_NoneStructPyExc_OverflowErrorPyErr_NewExceptionPyList_Appendg_string_new_leng_enum_get_value_by_nickg_param_spec_uint64PyErr_SetNonePyUnicodeUCS2_GetSizePyDict_GetItemStringPyLong_AsLongLongg_signal_handlers_block_matchedg_value_set_charPySequence_TuplePyObject_CallPyErr_PrintPyExc_AttributeErrorg_hash_table_lookuppyglib_enable_threadsPyLong_FromLongg_value_set_flagsg_object_class_find_propertyPyLong_AsUnsignedLongLongg_value_get_paramg_value_take_boxedg_log_set_handlerPyDict_DelItemStringPyUnicodeUCS2_AsUnicodeg_type_class_unrefg_malloc0PyLong_FromLongLongg_signal_stop_emissiong_value_initg_value_set_static_boxedPy_InitModule4g_object_interface_list_propertiesPyString_AsStringAndSizeg_value_set_objectPyObject_Freeg_object_set_qdata_fullPySequence_GetSlicePyTuple_Sizeg_param_spec_int64PyErr_Clearg_signal_lookupPyTuple_Newg_value_get_ulongg_value_set_uintinit_gobjectPyUnicodeUCS2_FromUnicodeg_assertion_messagePyImport_GetModuleDictPyExc_NotImplementedErrorg_signal_connect_closure_by_idPyTuple_SetItemPyTuple_GetItemg_object_remove_toggle_refPyErr_SetStringPySequence_Containspyglib_set_thread_block_funcsg_value_get_ucharg_type_class_refPyList_SetItemg_enum_get_value_by_nameg_type_interfacesg_type_check_value_holdsPyString_Typeg_type_default_interface_unrefg_value_get_intg_boxed_freeg_value_array_newg_value_get_int64g_value_set_ulongg_object_set_propertyg_signal_chain_from_overriddenpyglib_threads_enabledg_signal_queryg_object_get_qdatasnprintf@@GLIBC_2.0g_param_spec_longg_signal_add_emission_hookg_signal_get_invocation_hint_PyArg_ParseTupleAndKeywords_SizeTg_type_add_interface_staticg_param_spec_charg_quark_to_stringg_param_spec_typesPyCObject_Typeg_object_thaw_notifystrcmp@@GLIBC_2.0_pyglib_notify_on_enabling_threadsPyList_NewPyType_GenericAllocg_signal_remove_emission_hook__cxa_finalize@@GLIBC_2.1.3g_array_append_valsPyCallable_Checkg_string_appendg_string_append_printfg_log_PyObject_CallMethod_SizeTg_str_equalPy_IsInitializedg_type_get_qdataPyObject_GC_Trackg_static_private_setg_signal_handler_unblockPyDict_SetItemPyObject_Repr_Py_BuildValue_SizeTPySequence_ListPyLong_AsUnsignedLongg_closure_invalidatePyDict_Newg_boxed_type_register_staticg_param_spec_flagsg_signal_handlers_unblock_matchedpyglib_error_checkg_param_spec_ref./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gobject/_gobject.la0000755000000000000000000000211311272036643025550 0ustar rootroot# _gobject.la - a libtool library file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='_gobject.so' # Names of this library. library_names='_gobject.so _gobject.so _gobject.so' # The name of the static archive. old_library='' # Linker flags that can not go in dependency_libs. inherited_linker_flags=' -pthread' # Libraries that this one depends upon. dependency_libs=' /usr/lib/libpyglib-2.0-python.la /usr/lib/libgobject-2.0.la /usr/lib/libgthread-2.0.la -lpthread -lrt /usr/lib/libglib-2.0.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for _gobject. current=0 age=0 revision=0 # Is this an already installed library? installed=yes # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/lib/python2.5/site-packages/gtk-2.0/gobject' ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/gobject/__init__.py0000644000000000000000000001132211272036643025566 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # pygobject - Python bindings for the GObject library # Copyright (C) 2006 Johan Dahlin # # gobject/__init__.py: initialisation file for gobject module # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA # this can go when things are a little further along import sys from glib import spawn_async, idle_add, timeout_add, timeout_add_seconds, \ io_add_watch, source_remove, child_watch_add, markup_escape_text, \ get_current_time, filename_display_name, filename_display_basename, \ filename_from_utf8, get_application_name, set_application_name, \ get_prgname, set_prgname, main_depth, Pid, GError, glib_version, \ MainLoop, MainContext, main_context_default, IOChannel, Source, Idle, \ Timeout, PollFD, OptionGroup, OptionContext, option from glib import SPAWN_LEAVE_DESCRIPTORS_OPEN, SPAWN_DO_NOT_REAP_CHILD, \ SPAWN_SEARCH_PATH, SPAWN_STDOUT_TO_DEV_NULL, SPAWN_STDERR_TO_DEV_NULL, \ SPAWN_CHILD_INHERITS_STDIN, SPAWN_FILE_AND_ARGV_ZERO, PRIORITY_HIGH, \ PRIORITY_DEFAULT, PRIORITY_HIGH_IDLE, PRIORITY_DEFAULT_IDLE, \ PRIORITY_LOW, IO_IN, IO_OUT, IO_PRI, IO_ERR, IO_HUP, IO_NVAL, \ IO_STATUS_ERROR, IO_STATUS_NORMAL, IO_STATUS_EOF, IO_STATUS_AGAIN, \ IO_FLAG_APPEND, IO_FLAG_NONBLOCK, IO_FLAG_IS_READABLE, \ IO_FLAG_IS_WRITEABLE, IO_FLAG_IS_SEEKABLE, IO_FLAG_MASK, \ IO_FLAG_GET_MASK, IO_FLAG_SET_MASK, OPTION_FLAG_HIDDEN, \ OPTION_FLAG_IN_MAIN, OPTION_FLAG_REVERSE, OPTION_FLAG_NO_ARG, \ OPTION_FLAG_FILENAME, OPTION_FLAG_OPTIONAL_ARG, OPTION_FLAG_NOALIAS, \ OPTION_ERROR_UNKNOWN_OPTION, OPTION_ERROR_BAD_VALUE, \ OPTION_ERROR_FAILED, OPTION_REMAINING, OPTION_ERROR from gobject.constants import * from gobject._gobject import * _PyGObject_API = _gobject._PyGObject_API from gobject.propertyhelper import property sys.modules['gobject.option'] = option class GObjectMeta(type): "Metaclass for automatically registering GObject classes" def __init__(cls, name, bases, dict_): type.__init__(cls, name, bases, dict_) cls._install_properties() cls._type_register(cls.__dict__) def _install_properties(cls): gproperties = getattr(cls, '__gproperties__', {}) props = [] for name, prop in cls.__dict__.items(): if isinstance(prop, property): # not same as the built-in if name in gproperties: raise ValueError prop.name = name gproperties[name] = prop.get_pspec_args() props.append(prop) if not props: return cls.__gproperties__ = gproperties if ('do_get_property' in cls.__dict__ or 'do_set_property' in cls.__dict__): for prop in props: if (prop.getter != prop._default_getter or prop.setter != prop._default_setter): raise TypeError( "GObject subclass %r defines do_get/set_property" " and it also uses a property which a custom setter" " or getter. This is not allowed" % ( cls.__name__,)) def obj_get_property(self, pspec): name = pspec.name.replace('-', '_') prop = getattr(cls, name, None) if prop: return prop.getter(self) cls.do_get_property = obj_get_property def obj_set_property(self, pspec, value): name = pspec.name.replace('-', '_') prop = getattr(cls, name, None) if prop: prop.setter(self, value) cls.do_set_property = obj_set_property def _type_register(cls, namespace): ## don't register the class if already registered if '__gtype__' in namespace: return if not ('__gproperties__' in namespace or '__gsignals__' in namespace or '__gtype_name__' in namespace): return type_register(cls, namespace.get('__gtype_name__')) _gobject._install_metaclass(GObjectMeta) del _gobject ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/0000755000000000000000000000000011272036713024576 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/importer.py0000644000000000000000000000317111272036653027016 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # # Copyright (C) 2005,2007 Johan Dahlin # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # import os import sys from .repository import repository class DynamicImporter(object): def __init__(self, name, path): self.name = name self.path = path @staticmethod def find_module(name, path=None): if name == 'cairo': return None namespace = repository.require(name) if namespace: return DynamicImporter(name, path) def load_module(self, name): from .module import DynamicModule module_name = 'girepository.overrides.%s' % (name,) try: module = __import__(module_name) modtype = getattr(module, name + 'Module') except ImportError, e: modtype = DynamicModule return modtype(name, self.path) def install_importhook(): sys.meta_path.append(DynamicImporter) ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/repository.py0000644000000000000000000000320511272036653027372 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # # Copyright (C) 2007 Johan Dahlin # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # import gobject from .repo import Repository class _Repository(object): def __init__(self): self._repo = Repository.getDefault() self._modules = {} def register(self, module, namespace, filename): self._modules[namespace] = module def require(self, namespace): return self._repo.require(namespace) def get_module(self, namespace): return self._modules.get(namespace) def get_by_name(self, namespace, name): return self._repo.findByName(namespace, name) def get_by_typename(self, typename): raise NotImplemented def get_infos(self, namespace): return self._repo.getInfos(namespace) def get_c_prefix(self, namespace): return self._repo.getCPrefix(namespace) repository = _Repository() repository.register(gobject, 'GObject', None) ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/btypes.py0000644000000000000000000002365011272036653026467 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # # Copyright (C) 2005, 2007 Johan Dahlin # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # import gobject import new from . import repo from .repository import repository class Callable(object): # Types of callables INSTANCE_METHOD = 'method' STATIC_METHOD = 'static' CLASS_METHOD = 'class' FUNTION = 'function' def __init__(self, info): self.info = info self.call_type = None def type_check(self, name, value, argType): tag = argType.getTag() if tag == repo.TYPE_TAG_UTF8: if not isinstance(value, basestring) and value is not None: raise TypeError("%s must be string, not %s" % ( name, type(value).__name__)) elif tag in (repo.TYPE_TAG_INT, repo.TYPE_TAG_INT8, repo.TYPE_TAG_UINT, repo.TYPE_TAG_UINT8, repo.TYPE_TAG_INT16, repo.TYPE_TAG_UINT16, repo.TYPE_TAG_INT32): try: int(value) except ValueError: raise TypeError("%s must be int, not %s" % (name, type(value).__name__)) if tag in (repo.TYPE_TAG_UINT, repo.TYPE_TAG_UINT8, repo.TYPE_TAG_UINT16) and value < 0: raise TypeError("%s must be an unsigned value, not %s", name, value) elif tag in (repo.TYPE_TAG_UINT32, repo.TYPE_TAG_INT64, repo.TYPE_TAG_UINT64, repo.TYPE_TAG_ULONG): try: long(value) except ValueError: raise TypeError("%s must be int or long, not %s" % (name, type(value).__name__)) if tag in (repo.TYPE_TAG_UINT32, repo.TYPE_TAG_UINT64, repo.TYPE_TAG_ULONG) and value < 0: raise TypeError("%s must be an unsigned value, not %s", name, value) elif tag in (repo.TYPE_TAG_FLOAT, repo.TYPE_TAG_DOUBLE): try: float(value) except ValueError: raise TypeError("%s must be float, not %s" % (name, type(value).__name__)) elif tag == repo.TYPE_TAG_INTERFACE: # TODO pass elif tag == repo.TYPE_TAG_BOOLEAN: try: bool(value) except ValueError: raise TypeError("%s must be bool, not %s" % (name, type(value).__name__)) elif tag == repo.TYPE_TAG_ARRAY: if value is not None: raise TypeError("Must pass None for arrays currently") elif tag == repo.TYPE_TAG_ERROR: # TODO pass elif tag == repo.TYPE_TAG_VOID: # TODO pass else: raise NotImplementedError('type checking for tag %d' % tag) def __call__(self, *args, **kwargs): infoArgs = list(self.info.getArgs()) requiredArgs = 0 for arg in infoArgs: direct = arg.getDirection() if direct in [repo.DIRECTION_IN, repo.DIRECTION_INOUT]: requiredArgs += 1 is_method = self.call_type in [self.INSTANCE_METHOD, self.CLASS_METHOD] if is_method: requiredArgs += 1 # TODO: put the kwargs in their right positions totalInArgs = args + tuple(kwargs.values()) if len(totalInArgs) != requiredArgs: raise TypeError('%r requires %d arguments, passed %d instead.' % ( self, requiredArgs, len(totalInArgs))) for i, value in enumerate(totalInArgs): if not is_method or i > 0: off = is_method and 1 or 0 infoArg = infoArgs[i - off] argType = infoArg.getType() name = infoArg.getName() self.type_check(name, value, argType) retval = self.info.invoke(*totalInArgs) if self.info.isConstructor(): return None return retval class Function(Callable): def __init__(self, info): Callable.__init__(self, info) self.info = info self.static = True def __repr__(self): return "" % (self.info.getName(),) class Method(Callable): def __init__(self, info, className, call_type=Callable.INSTANCE_METHOD): Callable.__init__(self, info) self.object = None self.className = className self.call_type = call_type self.__name__ = info.getName() self.__module__ = info.getNamespace() def newType(self, retval, type_info=None): if type_info == None: type_info = self.info.getReturnType() info = type_info.getInterface() klass = getClass(info) obj = klass.__new__(klass) obj._object = retval return obj #def __get__(self, instance, type): #if instance is None: #return self #def wrapper(*args, **kwargs): #return self(instance, *args, **kwargs) #return wrapper def __repr__(self): return "" % ( self.__name__, self.__module__, self.className) class FieldDescriptor(object): def __init__(self, info): self._info = info def __get__(self, obj, klass=None): return self._info.getValue(obj) def __set__(self, obj, value): return self._info.setValue(obj, value) class PyBankMeta(gobject.GObjectMeta): def __init__(cls, name, bases, dict_): gobject.GObjectMeta.__init__(cls, name, bases, dict_) if hasattr(cls, '__gtype__'): repo.setObjectHasNewConstructor(cls.__gtype__) # Only set up the wrapper methods and fields in their base classes if name == cls.__info__.getName(): needs_constructor = not '__init__' in dict_ cls._setup_methods(needs_constructor) if hasattr(cls.__info__, 'getFields'): cls._setup_fields() def _setup_methods(cls, needs_constructor): info = cls.__info__ constructors = [] static_methods = [] for method in info.getMethods(): name = method.getName() if method.isConstructor(): constructors.append(method) elif method.isMethod(): func = Method(method, cls.__name__) setattr(cls, name, new.instancemethod(func, None, cls)) else: static_methods.append(method) if hasattr(info, 'getInterfaces'): for interface in info.getInterfaces(): for method in interface.getMethods(): name = method.getName() if method.isMethod(): func = Method(method, interface.getName()) setattr(cls, name, new.instancemethod(func, None, cls)) else: static_methods.append(method) winner = None if needs_constructor: if len(constructors) == 1: winner = constructors[0] else: for constructor in constructors: if constructor.getName() == 'new': winner = constructor break if winner is not None: func = Method(winner, cls.__name__, call_type=Method.CLASS_METHOD) func.__name__ = '__init__' func.__orig_name__ = winner.getName() cls.__init__ = new.instancemethod(func, None, cls) # TODO: do we want the constructor as a static method? #constructors.remove(winner) static_methods.extend(constructors) for static_method in static_methods: func = Method(static_method, cls.__name__, call_type=Method.STATIC_METHOD) setattr(cls, static_method.getName(), staticmethod(func)) def _setup_fields(cls): info = cls.__info__ for field in info.getFields(): name = field.getName().replace('-', '_') setattr(cls, name, FieldDescriptor(field)) _classDict = {} def getClass(info): className = info.getName() namespaceName = info.getNamespace() fullName = namespaceName + '.' + className klass = _classDict.get(fullName) if klass is None: module = repository.get_module(info.getNamespace()) klass = getattr(module, className) return klass def buildType(info, bases): className = info.getName() namespaceName = info.getNamespace() fullName = namespaceName + '.' + className if _classDict.has_key(fullName): return _classDict[fullName] namespace = {} namespace['__info__'] = info namespace['__module__'] = namespaceName newType = PyBankMeta(className, bases, namespace) _classDict[fullName] = newType return newType class BaseBlob(object): """Base class for Struct, Boxed and Union. """ def __init__(self, buf=None): if buf is None: buf = self.__info__.newBuffer() self.__buffer__ = buf def __eq__(self, other): for field in self.__info__.getFields(): if getattr(self, field.getName()) != getattr(other, field.getName()): return False return True ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/__init__.py0000644000000000000000000000163111272036653026713 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # # Copyright (C) 2005, 2007 Johan Dahlin # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # from .importer import install_importhook install_importhook() del install_importhook ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/overrides/0000755000000000000000000000000011272036712026577 5ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/overrides/Gtk.py0000644000000000000000000000036011272036653027701 0ustar rootrootfrom bank.module import DynamicModule class GtkModule(DynamicModule): def created(self): self.init_check(0, None) #if self.init_check(len(sys.argv), sys.argv): # raise RuntimeError("could not open display") ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/overrides/__init__.py0000644000000000000000000000000011272036653030702 0ustar rootroot./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/overrides/Gdk.py0000644000000000000000000000054311272036653027664 0ustar rootrootfrom bank.module import DynamicModule class GdkModule(DynamicModule): def created(self): self.init_check(0, None) def rectangle_new(self, x, y, width, height): rectangle = self.Rectangle() rectangle.x = x rectangle.y = y rectangle.width = width rectangle.height = height return rectangle ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/gtk-2.0/girepository/module.py0000644000000000000000000001613711272036653026450 0ustar rootroot# -*- Mode: Python; py-indent-offset: 4 -*- # # Copyright (C) 2007 Johan Dahlin # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # import os import gobject from gobject import GEnum from .btypes import Function, BaseBlob, buildType from .repo import EnumInfo, FunctionInfo, ObjectInfo, UnresolvedInfo, \ InterfaceInfo, StructInfo, BoxedInfo from .repository import repository class DynamicModule(object): def __init__(self, namespace, path): self._namespace = namespace self._path = path repository.register(self, namespace, path) self.created() @property def __file__(self): return self._namespace @property def __name__(self): return self._namespace @property def __path__(self): return [os.path.dirname(self.__file__)] def __repr__(self): return "" % (self._namespace, self._path) def __getattr__(self, name): type_info = repository.get_by_name(self._namespace, name) if not type_info: raise AttributeError("%r object has no attribute %r" % ( self.__class__.__name__, name)) value = self._create_attribute(name, type_info) self.__dict__[name] = value return value @property def __members__(self): r = [] for type_info in repository.get_infos(self._namespace): if type_info is None: continue r.append(type_info.getName()) return r # Override this in a subclass def created(self): pass # Private API def _create_attribute(self, attr, type_info): if isinstance(type_info, ObjectInfo): return self._create_object(type_info) elif isinstance(type_info, EnumInfo): return self._create_enum(type_info) elif isinstance(type_info, FunctionInfo): return self._create_function(type_info) elif isinstance(type_info, InterfaceInfo): return self._create_interface(type_info) elif isinstance(type_info, StructInfo) or \ isinstance(type_info, BoxedInfo): return self._create_boxed(type_info) else: raise NotImplementedError(type_info) def _get_parent_for_object(self, object_info): parent_info = object_info.getParent() if isinstance(parent_info, UnresolvedInfo): namespace = parent_info.getNamespace() __import__(namespace) parent_info = object_info.getParent() if not parent_info: parent = object else: namespace = parent_info.getNamespace() module = repository.get_module(namespace) name = parent_info.getName() try: # Hack for gobject.Object if module == gobject and name == 'Object': name = 'GObject' parent = getattr(module, name) except AttributeError: return self._get_parent_for_object(parent_info) if parent is None: parent = object return parent def _create_object(self, object_info): name = object_info.getName() namespace = repository.get_c_prefix(object_info.getNamespace()) full_name = namespace + name object_info.getGType() gtype = None try: gtype = gobject.GType.from_name(full_name) except RuntimeError: pass else: if gtype.pytype is not None: return gtype.pytype # Check if the klass is already created, eg # present in our namespace, this is necessary since we're # not always entering here through the __getattr__ hook. klass = self.__dict__.get(name) if klass: return klass parent = self._get_parent_for_object(object_info) klass = buildType(object_info, (parent,)) if gtype is not None: klass.__gtype__ = gtype gtype.pytype = klass self.__dict__[name] = klass return klass def _create_enum(self, enum_info): ns = dict(__name__=enum_info.getName(), __module__=enum_info.getNamespace()) for value in enum_info.getValues(): ns[value.getName().upper()] = value.getValue() return type(enum_info.getName(), (GEnum,), ns) def _create_function(self, function_info): return Function(function_info) def _create_interface(self, interface_info): name = interface_info.getName() namespace = repository.get_c_prefix(interface_info.getNamespace()) full_name = namespace + name interface_info.getGType() gtype = None try: gtype = gobject.GType.from_name(full_name) except RuntimeError: pass else: if gtype.pytype is not None: return gtype.pytype # Check if the klass is already created, eg # present in our namespace, this is necessary since we're # not always entering here through the __getattr__ hook. klass = self.__dict__.get(name) if klass: return klass bases = (gobject.GInterface,) klass = buildType(interface_info, bases) if gtype is not None: klass.__gtype__ = gtype gtype.pytype = klass interface_info.register() self.__dict__[name] = klass return klass def _create_boxed(self, boxed_info): name = boxed_info.getName() namespace = repository.get_c_prefix(boxed_info.getNamespace()) full_name = namespace + name boxed_info.getGType() gtype = None try: gtype = gobject.GType.from_name(full_name) except RuntimeError: pass else: if gtype.pytype is not None: return gtype.pytype # Check if the klass is already created, eg # present in our namespace, this is necessary since we're # not always entering here through the __getattr__ hook. klass = self.__dict__.get(name) if klass: return klass bases = (BaseBlob,) if isinstance(boxed_info, BoxedInfo): bases += gobject.Boxed klass = buildType(boxed_info, bases) if gtype is not None: klass.__gtype__ = gtype gtype.pytype = klass self.__dict__[name] = klass return klass ./pygobject-2.20.0-i686/usr/lib/python2.5/site-packages/pygtk.pth0000644000000000000000000000001011272036655022624 0ustar rootrootgtk-2.0 ./pygobject-2.20.0-i686/usr/lib/libpyglib-2.0-python.la0000755000000000000000000000212311272036634020601 0ustar rootroot# libpyglib-2.0-python.la - a libtool library file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='libpyglib-2.0-python.so.0' # Names of this library. library_names='libpyglib-2.0-python.so.0.0.0 libpyglib-2.0-python.so.0 libpyglib-2.0-python.so' # The name of the static archive. old_library='' # Linker flags that can not go in dependency_libs. inherited_linker_flags=' -pthread' # Libraries that this one depends upon. dependency_libs=' /usr/lib/libgobject-2.0.la /usr/lib/libgthread-2.0.la -lpthread -lrt /usr/lib/libglib-2.0.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for libpyglib-2.0-python. current=0 age=0 revision=0 # Is this an already installed library? installed=yes # Should we warn about portability when linking against -modules? shouldnotlink=no # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/lib' ./pygobject-2.20.0-i686/usr/bin/0000755000000000000000000000000011272036670014473 5ustar rootroot./pygobject-2.20.0-i686/usr/bin/pygobject-codegen-2.00000755000000000000000000000032211272036627020305 0ustar rootroot#!/bin/sh prefix=/usr datarootdir=${prefix}/share datadir=${datarootdir} codegendir=${datadir}/pygobject/2.0/codegen PYTHONPATH=$codegendir export PYTHONPATH exec /usr/bin/python $codegendir/codegen.py "$@" ./pygobject-2.20.0-i686/pygobject-2.20.0-i686.pet.specs0000644000000000000000000000006511272037012020125 0ustar rootrootPETMENUDESCR='' PETOFFICIALDEPS='' PETREGISTER='yes' ./pygobject-2.20.0-i686/root/0000755000000000000000000000000011272036673014100 5ustar rootroot./pygobject-2.20.0-i686/root/Desktop/0000755000000000000000000000000011272036673015511 5ustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/0000755000000000000000000000000011272036713020207 5ustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/0000755000000000000000000000000011272036717021130 5ustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/_glib.la0000644000000000000000000000336111272036634022523 0ustar rootroot# _glib.la - a libtool library file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='_glib.so' # Names of this library. library_names='_glib.so _glib.so _glib.so' # The name of the static archive. old_library='' # Linker flags that can not go in dependency_libs. inherited_linker_flags=' -pthread' # Libraries that this one depends upon. dependency_libs=' /root/Desktop/pygobject-2.20.0/glib/libpyglib-2.0-python.la /usr/lib/libgobject-2.0.la /usr/lib/libgthread-2.0.la -lpthread -lrt /usr/lib/libglib-2.0.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for _glib. current=0 age=0 revision=0 # Is this an already installed library? installed=no # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/lib/python2.5/site-packages/gtk-2.0/glib' relink_command="(cd /root/Desktop/pygobject-2.20.0/glib; /bin/sh /root/Desktop/pygobject-2.20.0/libtool --tag CC --mode=relink gcc -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -march=pentium4 -Wall -fno-strict-aliasing -std=c9x -module -avoid-version -export-symbols-regex \"_glib|PyInit__glib\" -o _glib.la -rpath /usr/lib/python2.5/site-packages/gtk-2.0/glib _glib_la-glibmodule.lo _glib_la-pygiochannel.lo _glib_la-pygoptioncontext.lo _glib_la-pygoptiongroup.lo _glib_la-pygmaincontext.lo _glib_la-pygmainloop.lo _glib_la-pygsource.lo _glib_la-pygspawn.lo -pthread -lgobject-2.0 -lgthread-2.0 -lrt -lglib-2.0 libpyglib-2.0-python.la @inst_prefix_dir@)" ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/_glib_la-pygspawn.lo0000644000000000000000000000046711272036633025066 0ustar rootroot# _glib_la-pygspawn.lo - a libtool object file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # Name of the PIC object. pic_object='.libs/_glib_la-pygspawn.o' # Name of the non-PIC object non_pic_object=none ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/_glib_la-pygmaincontext.lo0000644000000000000000000000050311272036632026255 0ustar rootroot# _glib_la-pygmaincontext.lo - a libtool object file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # Name of the PIC object. pic_object='.libs/_glib_la-pygmaincontext.o' # Name of the non-PIC object non_pic_object=none ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/_glib_la-glibmodule.lo0000644000000000000000000000047311272036631025334 0ustar rootroot# _glib_la-glibmodule.lo - a libtool object file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # Name of the PIC object. pic_object='.libs/_glib_la-glibmodule.o' # Name of the non-PIC object non_pic_object=none ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/_glib_la-pygmainloop.lo0000644000000000000000000000047511272036633025553 0ustar rootroot# _glib_la-pygmainloop.lo - a libtool object file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # Name of the PIC object. pic_object='.libs/_glib_la-pygmainloop.o' # Name of the non-PIC object non_pic_object=none ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/0000755000000000000000000000000011272036717022141 5ustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/_glib_la-pygiochannel.Plo0000644000000000000000000003205311272036632027022 0ustar rootroot_glib_la-pygiochannel.lo .libs/_glib_la-pygiochannel.o: pygiochannel.c \ ../config.h /usr/include/python2.5/Python.h \ /usr/include/python2.5/patchlevel.h /usr/include/python2.5/pyconfig.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h \ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ /usr/include/gnu/stubs-32.h /usr/include/bits/posix1_lim.h \ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h \ /usr/include/bits/types.h /usr/include/bits/typesizes.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ /usr/include/bits/wchar.h /usr/include/gconv.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h \ /usr/include/bits/sys_errlist.h /usr/include/string.h \ /usr/include/xlocale.h /usr/include/errno.h /usr/include/bits/errno.h \ /usr/include/linux/errno.h /usr/include/asm/errno.h \ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ /usr/include/stdlib.h /usr/include/bits/waitflags.h \ /usr/include/bits/waitstatus.h /usr/include/endian.h \ /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ /usr/include/sys/select.h /usr/include/bits/select.h \ /usr/include/bits/sigset.h /usr/include/bits/time.h \ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ /usr/include/alloca.h /usr/include/unistd.h \ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ /usr/include/bits/confname.h /usr/include/getopt.h \ /usr/include/assert.h /usr/include/python2.5/pyport.h \ /usr/include/stdint.h /usr/include/math.h /usr/include/bits/huge_val.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ /usr/include/sys/time.h /usr/include/sys/stat.h \ /usr/include/bits/stat.h /usr/include/python2.5/pymem.h \ /usr/include/python2.5/object.h /usr/include/python2.5/objimpl.h \ /usr/include/python2.5/pydebug.h /usr/include/python2.5/unicodeobject.h \ /usr/include/ctype.h /usr/include/python2.5/intobject.h \ /usr/include/python2.5/boolobject.h /usr/include/python2.5/longobject.h \ /usr/include/python2.5/floatobject.h \ /usr/include/python2.5/complexobject.h \ /usr/include/python2.5/rangeobject.h \ /usr/include/python2.5/stringobject.h \ /usr/include/python2.5/bufferobject.h \ /usr/include/python2.5/tupleobject.h \ /usr/include/python2.5/listobject.h /usr/include/python2.5/dictobject.h \ /usr/include/python2.5/enumobject.h /usr/include/python2.5/setobject.h \ /usr/include/python2.5/methodobject.h \ /usr/include/python2.5/moduleobject.h \ /usr/include/python2.5/funcobject.h \ /usr/include/python2.5/classobject.h \ /usr/include/python2.5/fileobject.h /usr/include/python2.5/cobject.h \ /usr/include/python2.5/traceback.h /usr/include/python2.5/sliceobject.h \ /usr/include/python2.5/cellobject.h /usr/include/python2.5/iterobject.h \ /usr/include/python2.5/genobject.h /usr/include/python2.5/descrobject.h \ /usr/include/python2.5/weakrefobject.h /usr/include/python2.5/codecs.h \ /usr/include/python2.5/pyerrors.h /usr/include/python2.5/pystate.h \ /usr/include/python2.5/pyarena.h /usr/include/python2.5/modsupport.h \ /usr/include/python2.5/pythonrun.h /usr/include/python2.5/ceval.h \ /usr/include/python2.5/sysmodule.h /usr/include/python2.5/intrcheck.h \ /usr/include/python2.5/import.h /usr/include/python2.5/abstract.h \ /usr/include/python2.5/compile.h /usr/include/python2.5/code.h \ /usr/include/python2.5/eval.h /usr/include/python2.5/pystrtod.h \ /usr/include/python2.5/pyfpe.h /usr/include/python2.5/pythread.h \ /usr/include/python2.5/structmember.h pyglib.h \ /usr/include/glib-2.0/glib.h /usr/include/glib-2.0/glib/galloca.h \ /usr/include/glib-2.0/glib/gtypes.h \ /usr/lib/glib-2.0/include/glibconfig.h \ /usr/include/glib-2.0/glib/gmacros.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h \ /usr/include/glib-2.0/glib/garray.h \ /usr/include/glib-2.0/glib/gasyncqueue.h \ /usr/include/glib-2.0/glib/gthread.h \ /usr/include/glib-2.0/glib/gerror.h /usr/include/glib-2.0/glib/gquark.h \ /usr/include/glib-2.0/glib/gutils.h \ /usr/include/glib-2.0/glib/gatomic.h \ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \ /usr/include/asm/sigcontext.h /usr/include/bits/sigstack.h \ /usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \ /usr/include/glib-2.0/glib/gbase64.h \ /usr/include/glib-2.0/glib/gbookmarkfile.h \ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \ /usr/include/glib-2.0/glib/gchecksum.h \ /usr/include/glib-2.0/glib/gcompletion.h \ /usr/include/glib-2.0/glib/gconvert.h \ /usr/include/glib-2.0/glib/gdataset.h \ /usr/include/glib-2.0/glib/gdate.h /usr/include/glib-2.0/glib/gdir.h \ /usr/include/glib-2.0/glib/gfileutils.h \ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \ /usr/include/glib-2.0/glib/ghostutils.h \ /usr/include/glib-2.0/glib/giochannel.h \ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \ /usr/include/glib-2.0/glib/gslist.h \ /usr/include/glib-2.0/glib/gstring.h \ /usr/include/glib-2.0/glib/gunicode.h \ /usr/include/glib-2.0/glib/gkeyfile.h \ /usr/include/glib-2.0/glib/gmappedfile.h \ /usr/include/glib-2.0/glib/gmarkup.h \ /usr/include/glib-2.0/glib/gmessages.h \ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \ /usr/include/glib-2.0/glib/gpattern.h \ /usr/include/glib-2.0/glib/gprimes.h \ /usr/include/glib-2.0/glib/gqsort.h /usr/include/glib-2.0/glib/gqueue.h \ /usr/include/glib-2.0/glib/grand.h /usr/include/glib-2.0/glib/grel.h \ /usr/include/glib-2.0/glib/gregex.h \ /usr/include/glib-2.0/glib/gscanner.h \ /usr/include/glib-2.0/glib/gsequence.h \ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \ /usr/include/glib-2.0/glib/gstrfuncs.h \ /usr/include/glib-2.0/glib/gtestutils.h \ /usr/include/glib-2.0/glib/gthreadpool.h \ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \ /usr/include/glib-2.0/glib/gurifuncs.h pyglib-private.h \ pyglib-python-compat.h ../config.h: /usr/include/python2.5/Python.h: /usr/include/python2.5/patchlevel.h: /usr/include/python2.5/pyconfig.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h: /usr/include/limits.h: /usr/include/features.h: /usr/include/sys/cdefs.h: /usr/include/bits/wordsize.h: /usr/include/gnu/stubs.h: /usr/include/gnu/stubs-32.h: /usr/include/bits/posix1_lim.h: /usr/include/bits/local_lim.h: /usr/include/linux/limits.h: /usr/include/bits/posix2_lim.h: /usr/include/bits/xopen_lim.h: /usr/include/bits/stdio_lim.h: /usr/include/stdio.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h: /usr/include/bits/types.h: /usr/include/bits/typesizes.h: /usr/include/libio.h: /usr/include/_G_config.h: /usr/include/wchar.h: /usr/include/bits/wchar.h: /usr/include/gconv.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h: /usr/include/bits/sys_errlist.h: /usr/include/string.h: /usr/include/xlocale.h: /usr/include/errno.h: /usr/include/bits/errno.h: /usr/include/linux/errno.h: /usr/include/asm/errno.h: /usr/include/asm-generic/errno.h: /usr/include/asm-generic/errno-base.h: /usr/include/stdlib.h: /usr/include/bits/waitflags.h: /usr/include/bits/waitstatus.h: /usr/include/endian.h: /usr/include/bits/endian.h: /usr/include/sys/types.h: /usr/include/time.h: /usr/include/sys/select.h: /usr/include/bits/select.h: /usr/include/bits/sigset.h: /usr/include/bits/time.h: /usr/include/sys/sysmacros.h: /usr/include/bits/pthreadtypes.h: /usr/include/alloca.h: /usr/include/unistd.h: /usr/include/bits/posix_opt.h: /usr/include/bits/environments.h: /usr/include/bits/confname.h: /usr/include/getopt.h: /usr/include/assert.h: /usr/include/python2.5/pyport.h: /usr/include/stdint.h: /usr/include/math.h: /usr/include/bits/huge_val.h: /usr/include/bits/huge_valf.h: /usr/include/bits/huge_vall.h: /usr/include/bits/inf.h: /usr/include/bits/nan.h: /usr/include/bits/mathdef.h: /usr/include/bits/mathcalls.h: /usr/include/sys/time.h: /usr/include/sys/stat.h: /usr/include/bits/stat.h: /usr/include/python2.5/pymem.h: /usr/include/python2.5/object.h: /usr/include/python2.5/objimpl.h: /usr/include/python2.5/pydebug.h: /usr/include/python2.5/unicodeobject.h: /usr/include/ctype.h: /usr/include/python2.5/intobject.h: /usr/include/python2.5/boolobject.h: /usr/include/python2.5/longobject.h: /usr/include/python2.5/floatobject.h: /usr/include/python2.5/complexobject.h: /usr/include/python2.5/rangeobject.h: /usr/include/python2.5/stringobject.h: /usr/include/python2.5/bufferobject.h: /usr/include/python2.5/tupleobject.h: /usr/include/python2.5/listobject.h: /usr/include/python2.5/dictobject.h: /usr/include/python2.5/enumobject.h: /usr/include/python2.5/setobject.h: /usr/include/python2.5/methodobject.h: /usr/include/python2.5/moduleobject.h: /usr/include/python2.5/funcobject.h: /usr/include/python2.5/classobject.h: /usr/include/python2.5/fileobject.h: /usr/include/python2.5/cobject.h: /usr/include/python2.5/traceback.h: /usr/include/python2.5/sliceobject.h: /usr/include/python2.5/cellobject.h: /usr/include/python2.5/iterobject.h: /usr/include/python2.5/genobject.h: /usr/include/python2.5/descrobject.h: /usr/include/python2.5/weakrefobject.h: /usr/include/python2.5/codecs.h: /usr/include/python2.5/pyerrors.h: /usr/include/python2.5/pystate.h: /usr/include/python2.5/pyarena.h: /usr/include/python2.5/modsupport.h: /usr/include/python2.5/pythonrun.h: /usr/include/python2.5/ceval.h: /usr/include/python2.5/sysmodule.h: /usr/include/python2.5/intrcheck.h: /usr/include/python2.5/import.h: /usr/include/python2.5/abstract.h: /usr/include/python2.5/compile.h: /usr/include/python2.5/code.h: /usr/include/python2.5/eval.h: /usr/include/python2.5/pystrtod.h: /usr/include/python2.5/pyfpe.h: /usr/include/python2.5/pythread.h: /usr/include/python2.5/structmember.h: pyglib.h: /usr/include/glib-2.0/glib.h: /usr/include/glib-2.0/glib/galloca.h: /usr/include/glib-2.0/glib/gtypes.h: /usr/lib/glib-2.0/include/glibconfig.h: /usr/include/glib-2.0/glib/gmacros.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h: /usr/include/glib-2.0/glib/garray.h: /usr/include/glib-2.0/glib/gasyncqueue.h: /usr/include/glib-2.0/glib/gthread.h: /usr/include/glib-2.0/glib/gerror.h: /usr/include/glib-2.0/glib/gquark.h: /usr/include/glib-2.0/glib/gutils.h: /usr/include/glib-2.0/glib/gatomic.h: /usr/include/glib-2.0/glib/gbacktrace.h: /usr/include/signal.h: /usr/include/bits/signum.h: /usr/include/bits/siginfo.h: /usr/include/bits/sigaction.h: /usr/include/bits/sigcontext.h: /usr/include/asm/sigcontext.h: /usr/include/bits/sigstack.h: /usr/include/sys/ucontext.h: /usr/include/bits/sigthread.h: /usr/include/glib-2.0/glib/gbase64.h: /usr/include/glib-2.0/glib/gbookmarkfile.h: /usr/include/glib-2.0/glib/gcache.h: /usr/include/glib-2.0/glib/glist.h: /usr/include/glib-2.0/glib/gmem.h: /usr/include/glib-2.0/glib/gslice.h: /usr/include/glib-2.0/glib/gchecksum.h: /usr/include/glib-2.0/glib/gcompletion.h: /usr/include/glib-2.0/glib/gconvert.h: /usr/include/glib-2.0/glib/gdataset.h: /usr/include/glib-2.0/glib/gdate.h: /usr/include/glib-2.0/glib/gdir.h: /usr/include/glib-2.0/glib/gfileutils.h: /usr/include/glib-2.0/glib/ghash.h: /usr/include/glib-2.0/glib/ghook.h: /usr/include/glib-2.0/glib/ghostutils.h: /usr/include/glib-2.0/glib/giochannel.h: /usr/include/glib-2.0/glib/gmain.h: /usr/include/glib-2.0/glib/gpoll.h: /usr/include/glib-2.0/glib/gslist.h: /usr/include/glib-2.0/glib/gstring.h: /usr/include/glib-2.0/glib/gunicode.h: /usr/include/glib-2.0/glib/gkeyfile.h: /usr/include/glib-2.0/glib/gmappedfile.h: /usr/include/glib-2.0/glib/gmarkup.h: /usr/include/glib-2.0/glib/gmessages.h: /usr/include/glib-2.0/glib/gnode.h: /usr/include/glib-2.0/glib/goption.h: /usr/include/glib-2.0/glib/gpattern.h: /usr/include/glib-2.0/glib/gprimes.h: /usr/include/glib-2.0/glib/gqsort.h: /usr/include/glib-2.0/glib/gqueue.h: /usr/include/glib-2.0/glib/grand.h: /usr/include/glib-2.0/glib/grel.h: /usr/include/glib-2.0/glib/gregex.h: /usr/include/glib-2.0/glib/gscanner.h: /usr/include/glib-2.0/glib/gsequence.h: /usr/include/glib-2.0/glib/gshell.h: /usr/include/glib-2.0/glib/gspawn.h: /usr/include/glib-2.0/glib/gstrfuncs.h: /usr/include/glib-2.0/glib/gtestutils.h: /usr/include/glib-2.0/glib/gthreadpool.h: /usr/include/glib-2.0/glib/gtimer.h: /usr/include/glib-2.0/glib/gtree.h: /usr/include/glib-2.0/glib/gurifuncs.h: pyglib-private.h: pyglib-python-compat.h: ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/_glib_la-pygmaincontext.Plo0000644000000000000000000003200311272036632027406 0ustar rootroot_glib_la-pygmaincontext.lo .libs/_glib_la-pygmaincontext.o: \ pygmaincontext.c ../config.h /usr/include/python2.5/Python.h \ /usr/include/python2.5/patchlevel.h /usr/include/python2.5/pyconfig.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h \ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ /usr/include/gnu/stubs-32.h /usr/include/bits/posix1_lim.h \ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h \ /usr/include/bits/types.h /usr/include/bits/typesizes.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ /usr/include/bits/wchar.h /usr/include/gconv.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h \ /usr/include/bits/sys_errlist.h /usr/include/string.h \ /usr/include/xlocale.h /usr/include/errno.h /usr/include/bits/errno.h \ /usr/include/linux/errno.h /usr/include/asm/errno.h \ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ /usr/include/stdlib.h /usr/include/bits/waitflags.h \ /usr/include/bits/waitstatus.h /usr/include/endian.h \ /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ /usr/include/sys/select.h /usr/include/bits/select.h \ /usr/include/bits/sigset.h /usr/include/bits/time.h \ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ /usr/include/alloca.h /usr/include/unistd.h \ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ /usr/include/bits/confname.h /usr/include/getopt.h \ /usr/include/assert.h /usr/include/python2.5/pyport.h \ /usr/include/stdint.h /usr/include/math.h /usr/include/bits/huge_val.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ /usr/include/sys/time.h /usr/include/sys/stat.h \ /usr/include/bits/stat.h /usr/include/python2.5/pymem.h \ /usr/include/python2.5/object.h /usr/include/python2.5/objimpl.h \ /usr/include/python2.5/pydebug.h /usr/include/python2.5/unicodeobject.h \ /usr/include/ctype.h /usr/include/python2.5/intobject.h \ /usr/include/python2.5/boolobject.h /usr/include/python2.5/longobject.h \ /usr/include/python2.5/floatobject.h \ /usr/include/python2.5/complexobject.h \ /usr/include/python2.5/rangeobject.h \ /usr/include/python2.5/stringobject.h \ /usr/include/python2.5/bufferobject.h \ /usr/include/python2.5/tupleobject.h \ /usr/include/python2.5/listobject.h /usr/include/python2.5/dictobject.h \ /usr/include/python2.5/enumobject.h /usr/include/python2.5/setobject.h \ /usr/include/python2.5/methodobject.h \ /usr/include/python2.5/moduleobject.h \ /usr/include/python2.5/funcobject.h \ /usr/include/python2.5/classobject.h \ /usr/include/python2.5/fileobject.h /usr/include/python2.5/cobject.h \ /usr/include/python2.5/traceback.h /usr/include/python2.5/sliceobject.h \ /usr/include/python2.5/cellobject.h /usr/include/python2.5/iterobject.h \ /usr/include/python2.5/genobject.h /usr/include/python2.5/descrobject.h \ /usr/include/python2.5/weakrefobject.h /usr/include/python2.5/codecs.h \ /usr/include/python2.5/pyerrors.h /usr/include/python2.5/pystate.h \ /usr/include/python2.5/pyarena.h /usr/include/python2.5/modsupport.h \ /usr/include/python2.5/pythonrun.h /usr/include/python2.5/ceval.h \ /usr/include/python2.5/sysmodule.h /usr/include/python2.5/intrcheck.h \ /usr/include/python2.5/import.h /usr/include/python2.5/abstract.h \ /usr/include/python2.5/compile.h /usr/include/python2.5/code.h \ /usr/include/python2.5/eval.h /usr/include/python2.5/pystrtod.h \ /usr/include/python2.5/pyfpe.h /usr/include/python2.5/pythread.h \ /usr/include/glib-2.0/glib.h /usr/include/glib-2.0/glib/galloca.h \ /usr/include/glib-2.0/glib/gtypes.h \ /usr/lib/glib-2.0/include/glibconfig.h \ /usr/include/glib-2.0/glib/gmacros.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h \ /usr/include/glib-2.0/glib/garray.h \ /usr/include/glib-2.0/glib/gasyncqueue.h \ /usr/include/glib-2.0/glib/gthread.h \ /usr/include/glib-2.0/glib/gerror.h /usr/include/glib-2.0/glib/gquark.h \ /usr/include/glib-2.0/glib/gutils.h \ /usr/include/glib-2.0/glib/gatomic.h \ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \ /usr/include/asm/sigcontext.h /usr/include/bits/sigstack.h \ /usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \ /usr/include/glib-2.0/glib/gbase64.h \ /usr/include/glib-2.0/glib/gbookmarkfile.h \ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \ /usr/include/glib-2.0/glib/gchecksum.h \ /usr/include/glib-2.0/glib/gcompletion.h \ /usr/include/glib-2.0/glib/gconvert.h \ /usr/include/glib-2.0/glib/gdataset.h \ /usr/include/glib-2.0/glib/gdate.h /usr/include/glib-2.0/glib/gdir.h \ /usr/include/glib-2.0/glib/gfileutils.h \ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \ /usr/include/glib-2.0/glib/ghostutils.h \ /usr/include/glib-2.0/glib/giochannel.h \ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \ /usr/include/glib-2.0/glib/gslist.h \ /usr/include/glib-2.0/glib/gstring.h \ /usr/include/glib-2.0/glib/gunicode.h \ /usr/include/glib-2.0/glib/gkeyfile.h \ /usr/include/glib-2.0/glib/gmappedfile.h \ /usr/include/glib-2.0/glib/gmarkup.h \ /usr/include/glib-2.0/glib/gmessages.h \ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \ /usr/include/glib-2.0/glib/gpattern.h \ /usr/include/glib-2.0/glib/gprimes.h \ /usr/include/glib-2.0/glib/gqsort.h /usr/include/glib-2.0/glib/gqueue.h \ /usr/include/glib-2.0/glib/grand.h /usr/include/glib-2.0/glib/grel.h \ /usr/include/glib-2.0/glib/gregex.h \ /usr/include/glib-2.0/glib/gscanner.h \ /usr/include/glib-2.0/glib/gsequence.h \ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \ /usr/include/glib-2.0/glib/gstrfuncs.h \ /usr/include/glib-2.0/glib/gtestutils.h \ /usr/include/glib-2.0/glib/gthreadpool.h \ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \ /usr/include/glib-2.0/glib/gurifuncs.h pygmaincontext.h pyglib.h \ pyglib-private.h pyglib-python-compat.h ../config.h: /usr/include/python2.5/Python.h: /usr/include/python2.5/patchlevel.h: /usr/include/python2.5/pyconfig.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h: /usr/include/limits.h: /usr/include/features.h: /usr/include/sys/cdefs.h: /usr/include/bits/wordsize.h: /usr/include/gnu/stubs.h: /usr/include/gnu/stubs-32.h: /usr/include/bits/posix1_lim.h: /usr/include/bits/local_lim.h: /usr/include/linux/limits.h: /usr/include/bits/posix2_lim.h: /usr/include/bits/xopen_lim.h: /usr/include/bits/stdio_lim.h: /usr/include/stdio.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h: /usr/include/bits/types.h: /usr/include/bits/typesizes.h: /usr/include/libio.h: /usr/include/_G_config.h: /usr/include/wchar.h: /usr/include/bits/wchar.h: /usr/include/gconv.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h: /usr/include/bits/sys_errlist.h: /usr/include/string.h: /usr/include/xlocale.h: /usr/include/errno.h: /usr/include/bits/errno.h: /usr/include/linux/errno.h: /usr/include/asm/errno.h: /usr/include/asm-generic/errno.h: /usr/include/asm-generic/errno-base.h: /usr/include/stdlib.h: /usr/include/bits/waitflags.h: /usr/include/bits/waitstatus.h: /usr/include/endian.h: /usr/include/bits/endian.h: /usr/include/sys/types.h: /usr/include/time.h: /usr/include/sys/select.h: /usr/include/bits/select.h: /usr/include/bits/sigset.h: /usr/include/bits/time.h: /usr/include/sys/sysmacros.h: /usr/include/bits/pthreadtypes.h: /usr/include/alloca.h: /usr/include/unistd.h: /usr/include/bits/posix_opt.h: /usr/include/bits/environments.h: /usr/include/bits/confname.h: /usr/include/getopt.h: /usr/include/assert.h: /usr/include/python2.5/pyport.h: /usr/include/stdint.h: /usr/include/math.h: /usr/include/bits/huge_val.h: /usr/include/bits/huge_valf.h: /usr/include/bits/huge_vall.h: /usr/include/bits/inf.h: /usr/include/bits/nan.h: /usr/include/bits/mathdef.h: /usr/include/bits/mathcalls.h: /usr/include/sys/time.h: /usr/include/sys/stat.h: /usr/include/bits/stat.h: /usr/include/python2.5/pymem.h: /usr/include/python2.5/object.h: /usr/include/python2.5/objimpl.h: /usr/include/python2.5/pydebug.h: /usr/include/python2.5/unicodeobject.h: /usr/include/ctype.h: /usr/include/python2.5/intobject.h: /usr/include/python2.5/boolobject.h: /usr/include/python2.5/longobject.h: /usr/include/python2.5/floatobject.h: /usr/include/python2.5/complexobject.h: /usr/include/python2.5/rangeobject.h: /usr/include/python2.5/stringobject.h: /usr/include/python2.5/bufferobject.h: /usr/include/python2.5/tupleobject.h: /usr/include/python2.5/listobject.h: /usr/include/python2.5/dictobject.h: /usr/include/python2.5/enumobject.h: /usr/include/python2.5/setobject.h: /usr/include/python2.5/methodobject.h: /usr/include/python2.5/moduleobject.h: /usr/include/python2.5/funcobject.h: /usr/include/python2.5/classobject.h: /usr/include/python2.5/fileobject.h: /usr/include/python2.5/cobject.h: /usr/include/python2.5/traceback.h: /usr/include/python2.5/sliceobject.h: /usr/include/python2.5/cellobject.h: /usr/include/python2.5/iterobject.h: /usr/include/python2.5/genobject.h: /usr/include/python2.5/descrobject.h: /usr/include/python2.5/weakrefobject.h: /usr/include/python2.5/codecs.h: /usr/include/python2.5/pyerrors.h: /usr/include/python2.5/pystate.h: /usr/include/python2.5/pyarena.h: /usr/include/python2.5/modsupport.h: /usr/include/python2.5/pythonrun.h: /usr/include/python2.5/ceval.h: /usr/include/python2.5/sysmodule.h: /usr/include/python2.5/intrcheck.h: /usr/include/python2.5/import.h: /usr/include/python2.5/abstract.h: /usr/include/python2.5/compile.h: /usr/include/python2.5/code.h: /usr/include/python2.5/eval.h: /usr/include/python2.5/pystrtod.h: /usr/include/python2.5/pyfpe.h: /usr/include/python2.5/pythread.h: /usr/include/glib-2.0/glib.h: /usr/include/glib-2.0/glib/galloca.h: /usr/include/glib-2.0/glib/gtypes.h: /usr/lib/glib-2.0/include/glibconfig.h: /usr/include/glib-2.0/glib/gmacros.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h: /usr/include/glib-2.0/glib/garray.h: /usr/include/glib-2.0/glib/gasyncqueue.h: /usr/include/glib-2.0/glib/gthread.h: /usr/include/glib-2.0/glib/gerror.h: /usr/include/glib-2.0/glib/gquark.h: /usr/include/glib-2.0/glib/gutils.h: /usr/include/glib-2.0/glib/gatomic.h: /usr/include/glib-2.0/glib/gbacktrace.h: /usr/include/signal.h: /usr/include/bits/signum.h: /usr/include/bits/siginfo.h: /usr/include/bits/sigaction.h: /usr/include/bits/sigcontext.h: /usr/include/asm/sigcontext.h: /usr/include/bits/sigstack.h: /usr/include/sys/ucontext.h: /usr/include/bits/sigthread.h: /usr/include/glib-2.0/glib/gbase64.h: /usr/include/glib-2.0/glib/gbookmarkfile.h: /usr/include/glib-2.0/glib/gcache.h: /usr/include/glib-2.0/glib/glist.h: /usr/include/glib-2.0/glib/gmem.h: /usr/include/glib-2.0/glib/gslice.h: /usr/include/glib-2.0/glib/gchecksum.h: /usr/include/glib-2.0/glib/gcompletion.h: /usr/include/glib-2.0/glib/gconvert.h: /usr/include/glib-2.0/glib/gdataset.h: /usr/include/glib-2.0/glib/gdate.h: /usr/include/glib-2.0/glib/gdir.h: /usr/include/glib-2.0/glib/gfileutils.h: /usr/include/glib-2.0/glib/ghash.h: /usr/include/glib-2.0/glib/ghook.h: /usr/include/glib-2.0/glib/ghostutils.h: /usr/include/glib-2.0/glib/giochannel.h: /usr/include/glib-2.0/glib/gmain.h: /usr/include/glib-2.0/glib/gpoll.h: /usr/include/glib-2.0/glib/gslist.h: /usr/include/glib-2.0/glib/gstring.h: /usr/include/glib-2.0/glib/gunicode.h: /usr/include/glib-2.0/glib/gkeyfile.h: /usr/include/glib-2.0/glib/gmappedfile.h: /usr/include/glib-2.0/glib/gmarkup.h: /usr/include/glib-2.0/glib/gmessages.h: /usr/include/glib-2.0/glib/gnode.h: /usr/include/glib-2.0/glib/goption.h: /usr/include/glib-2.0/glib/gpattern.h: /usr/include/glib-2.0/glib/gprimes.h: /usr/include/glib-2.0/glib/gqsort.h: /usr/include/glib-2.0/glib/gqueue.h: /usr/include/glib-2.0/glib/grand.h: /usr/include/glib-2.0/glib/grel.h: /usr/include/glib-2.0/glib/gregex.h: /usr/include/glib-2.0/glib/gscanner.h: /usr/include/glib-2.0/glib/gsequence.h: /usr/include/glib-2.0/glib/gshell.h: /usr/include/glib-2.0/glib/gspawn.h: /usr/include/glib-2.0/glib/gstrfuncs.h: /usr/include/glib-2.0/glib/gtestutils.h: /usr/include/glib-2.0/glib/gthreadpool.h: /usr/include/glib-2.0/glib/gtimer.h: /usr/include/glib-2.0/glib/gtree.h: /usr/include/glib-2.0/glib/gurifuncs.h: pygmaincontext.h: pyglib.h: pyglib-private.h: pyglib-python-compat.h: ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/_glib_la-pygoptiongroup.Plo0000644000000000000000000003167511272036632027460 0ustar rootroot_glib_la-pygoptiongroup.lo .libs/_glib_la-pygoptiongroup.o: \ pygoptiongroup.c ../config.h pyglib.h /usr/include/python2.5/Python.h \ /usr/include/python2.5/patchlevel.h /usr/include/python2.5/pyconfig.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h \ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ /usr/include/gnu/stubs-32.h /usr/include/bits/posix1_lim.h \ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h \ /usr/include/bits/types.h /usr/include/bits/typesizes.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ /usr/include/bits/wchar.h /usr/include/gconv.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h \ /usr/include/bits/sys_errlist.h /usr/include/string.h \ /usr/include/xlocale.h /usr/include/errno.h /usr/include/bits/errno.h \ /usr/include/linux/errno.h /usr/include/asm/errno.h \ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ /usr/include/stdlib.h /usr/include/bits/waitflags.h \ /usr/include/bits/waitstatus.h /usr/include/endian.h \ /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ /usr/include/sys/select.h /usr/include/bits/select.h \ /usr/include/bits/sigset.h /usr/include/bits/time.h \ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ /usr/include/alloca.h /usr/include/unistd.h \ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ /usr/include/bits/confname.h /usr/include/getopt.h \ /usr/include/assert.h /usr/include/python2.5/pyport.h \ /usr/include/stdint.h /usr/include/math.h /usr/include/bits/huge_val.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ /usr/include/sys/time.h /usr/include/sys/stat.h \ /usr/include/bits/stat.h /usr/include/python2.5/pymem.h \ /usr/include/python2.5/object.h /usr/include/python2.5/objimpl.h \ /usr/include/python2.5/pydebug.h /usr/include/python2.5/unicodeobject.h \ /usr/include/ctype.h /usr/include/python2.5/intobject.h \ /usr/include/python2.5/boolobject.h /usr/include/python2.5/longobject.h \ /usr/include/python2.5/floatobject.h \ /usr/include/python2.5/complexobject.h \ /usr/include/python2.5/rangeobject.h \ /usr/include/python2.5/stringobject.h \ /usr/include/python2.5/bufferobject.h \ /usr/include/python2.5/tupleobject.h \ /usr/include/python2.5/listobject.h /usr/include/python2.5/dictobject.h \ /usr/include/python2.5/enumobject.h /usr/include/python2.5/setobject.h \ /usr/include/python2.5/methodobject.h \ /usr/include/python2.5/moduleobject.h \ /usr/include/python2.5/funcobject.h \ /usr/include/python2.5/classobject.h \ /usr/include/python2.5/fileobject.h /usr/include/python2.5/cobject.h \ /usr/include/python2.5/traceback.h /usr/include/python2.5/sliceobject.h \ /usr/include/python2.5/cellobject.h /usr/include/python2.5/iterobject.h \ /usr/include/python2.5/genobject.h /usr/include/python2.5/descrobject.h \ /usr/include/python2.5/weakrefobject.h /usr/include/python2.5/codecs.h \ /usr/include/python2.5/pyerrors.h /usr/include/python2.5/pystate.h \ /usr/include/python2.5/pyarena.h /usr/include/python2.5/modsupport.h \ /usr/include/python2.5/pythonrun.h /usr/include/python2.5/ceval.h \ /usr/include/python2.5/sysmodule.h /usr/include/python2.5/intrcheck.h \ /usr/include/python2.5/import.h /usr/include/python2.5/abstract.h \ /usr/include/python2.5/compile.h /usr/include/python2.5/code.h \ /usr/include/python2.5/eval.h /usr/include/python2.5/pystrtod.h \ /usr/include/python2.5/pyfpe.h /usr/include/glib-2.0/glib.h \ /usr/include/glib-2.0/glib/galloca.h \ /usr/include/glib-2.0/glib/gtypes.h \ /usr/lib/glib-2.0/include/glibconfig.h \ /usr/include/glib-2.0/glib/gmacros.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h \ /usr/include/glib-2.0/glib/garray.h \ /usr/include/glib-2.0/glib/gasyncqueue.h \ /usr/include/glib-2.0/glib/gthread.h \ /usr/include/glib-2.0/glib/gerror.h /usr/include/glib-2.0/glib/gquark.h \ /usr/include/glib-2.0/glib/gutils.h \ /usr/include/glib-2.0/glib/gatomic.h \ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \ /usr/include/asm/sigcontext.h /usr/include/bits/sigstack.h \ /usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \ /usr/include/glib-2.0/glib/gbase64.h \ /usr/include/glib-2.0/glib/gbookmarkfile.h \ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \ /usr/include/glib-2.0/glib/gchecksum.h \ /usr/include/glib-2.0/glib/gcompletion.h \ /usr/include/glib-2.0/glib/gconvert.h \ /usr/include/glib-2.0/glib/gdataset.h \ /usr/include/glib-2.0/glib/gdate.h /usr/include/glib-2.0/glib/gdir.h \ /usr/include/glib-2.0/glib/gfileutils.h \ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \ /usr/include/glib-2.0/glib/ghostutils.h \ /usr/include/glib-2.0/glib/giochannel.h \ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \ /usr/include/glib-2.0/glib/gslist.h \ /usr/include/glib-2.0/glib/gstring.h \ /usr/include/glib-2.0/glib/gunicode.h \ /usr/include/glib-2.0/glib/gkeyfile.h \ /usr/include/glib-2.0/glib/gmappedfile.h \ /usr/include/glib-2.0/glib/gmarkup.h \ /usr/include/glib-2.0/glib/gmessages.h \ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \ /usr/include/glib-2.0/glib/gpattern.h \ /usr/include/glib-2.0/glib/gprimes.h \ /usr/include/glib-2.0/glib/gqsort.h /usr/include/glib-2.0/glib/gqueue.h \ /usr/include/glib-2.0/glib/grand.h /usr/include/glib-2.0/glib/grel.h \ /usr/include/glib-2.0/glib/gregex.h \ /usr/include/glib-2.0/glib/gscanner.h \ /usr/include/glib-2.0/glib/gsequence.h \ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \ /usr/include/glib-2.0/glib/gstrfuncs.h \ /usr/include/glib-2.0/glib/gtestutils.h \ /usr/include/glib-2.0/glib/gthreadpool.h \ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \ /usr/include/glib-2.0/glib/gurifuncs.h pyglib-private.h \ pyglib-python-compat.h pygoptiongroup.h ../config.h: pyglib.h: /usr/include/python2.5/Python.h: /usr/include/python2.5/patchlevel.h: /usr/include/python2.5/pyconfig.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h: /usr/include/limits.h: /usr/include/features.h: /usr/include/sys/cdefs.h: /usr/include/bits/wordsize.h: /usr/include/gnu/stubs.h: /usr/include/gnu/stubs-32.h: /usr/include/bits/posix1_lim.h: /usr/include/bits/local_lim.h: /usr/include/linux/limits.h: /usr/include/bits/posix2_lim.h: /usr/include/bits/xopen_lim.h: /usr/include/bits/stdio_lim.h: /usr/include/stdio.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h: /usr/include/bits/types.h: /usr/include/bits/typesizes.h: /usr/include/libio.h: /usr/include/_G_config.h: /usr/include/wchar.h: /usr/include/bits/wchar.h: /usr/include/gconv.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h: /usr/include/bits/sys_errlist.h: /usr/include/string.h: /usr/include/xlocale.h: /usr/include/errno.h: /usr/include/bits/errno.h: /usr/include/linux/errno.h: /usr/include/asm/errno.h: /usr/include/asm-generic/errno.h: /usr/include/asm-generic/errno-base.h: /usr/include/stdlib.h: /usr/include/bits/waitflags.h: /usr/include/bits/waitstatus.h: /usr/include/endian.h: /usr/include/bits/endian.h: /usr/include/sys/types.h: /usr/include/time.h: /usr/include/sys/select.h: /usr/include/bits/select.h: /usr/include/bits/sigset.h: /usr/include/bits/time.h: /usr/include/sys/sysmacros.h: /usr/include/bits/pthreadtypes.h: /usr/include/alloca.h: /usr/include/unistd.h: /usr/include/bits/posix_opt.h: /usr/include/bits/environments.h: /usr/include/bits/confname.h: /usr/include/getopt.h: /usr/include/assert.h: /usr/include/python2.5/pyport.h: /usr/include/stdint.h: /usr/include/math.h: /usr/include/bits/huge_val.h: /usr/include/bits/huge_valf.h: /usr/include/bits/huge_vall.h: /usr/include/bits/inf.h: /usr/include/bits/nan.h: /usr/include/bits/mathdef.h: /usr/include/bits/mathcalls.h: /usr/include/sys/time.h: /usr/include/sys/stat.h: /usr/include/bits/stat.h: /usr/include/python2.5/pymem.h: /usr/include/python2.5/object.h: /usr/include/python2.5/objimpl.h: /usr/include/python2.5/pydebug.h: /usr/include/python2.5/unicodeobject.h: /usr/include/ctype.h: /usr/include/python2.5/intobject.h: /usr/include/python2.5/boolobject.h: /usr/include/python2.5/longobject.h: /usr/include/python2.5/floatobject.h: /usr/include/python2.5/complexobject.h: /usr/include/python2.5/rangeobject.h: /usr/include/python2.5/stringobject.h: /usr/include/python2.5/bufferobject.h: /usr/include/python2.5/tupleobject.h: /usr/include/python2.5/listobject.h: /usr/include/python2.5/dictobject.h: /usr/include/python2.5/enumobject.h: /usr/include/python2.5/setobject.h: /usr/include/python2.5/methodobject.h: /usr/include/python2.5/moduleobject.h: /usr/include/python2.5/funcobject.h: /usr/include/python2.5/classobject.h: /usr/include/python2.5/fileobject.h: /usr/include/python2.5/cobject.h: /usr/include/python2.5/traceback.h: /usr/include/python2.5/sliceobject.h: /usr/include/python2.5/cellobject.h: /usr/include/python2.5/iterobject.h: /usr/include/python2.5/genobject.h: /usr/include/python2.5/descrobject.h: /usr/include/python2.5/weakrefobject.h: /usr/include/python2.5/codecs.h: /usr/include/python2.5/pyerrors.h: /usr/include/python2.5/pystate.h: /usr/include/python2.5/pyarena.h: /usr/include/python2.5/modsupport.h: /usr/include/python2.5/pythonrun.h: /usr/include/python2.5/ceval.h: /usr/include/python2.5/sysmodule.h: /usr/include/python2.5/intrcheck.h: /usr/include/python2.5/import.h: /usr/include/python2.5/abstract.h: /usr/include/python2.5/compile.h: /usr/include/python2.5/code.h: /usr/include/python2.5/eval.h: /usr/include/python2.5/pystrtod.h: /usr/include/python2.5/pyfpe.h: /usr/include/glib-2.0/glib.h: /usr/include/glib-2.0/glib/galloca.h: /usr/include/glib-2.0/glib/gtypes.h: /usr/lib/glib-2.0/include/glibconfig.h: /usr/include/glib-2.0/glib/gmacros.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h: /usr/include/glib-2.0/glib/garray.h: /usr/include/glib-2.0/glib/gasyncqueue.h: /usr/include/glib-2.0/glib/gthread.h: /usr/include/glib-2.0/glib/gerror.h: /usr/include/glib-2.0/glib/gquark.h: /usr/include/glib-2.0/glib/gutils.h: /usr/include/glib-2.0/glib/gatomic.h: /usr/include/glib-2.0/glib/gbacktrace.h: /usr/include/signal.h: /usr/include/bits/signum.h: /usr/include/bits/siginfo.h: /usr/include/bits/sigaction.h: /usr/include/bits/sigcontext.h: /usr/include/asm/sigcontext.h: /usr/include/bits/sigstack.h: /usr/include/sys/ucontext.h: /usr/include/bits/sigthread.h: /usr/include/glib-2.0/glib/gbase64.h: /usr/include/glib-2.0/glib/gbookmarkfile.h: /usr/include/glib-2.0/glib/gcache.h: /usr/include/glib-2.0/glib/glist.h: /usr/include/glib-2.0/glib/gmem.h: /usr/include/glib-2.0/glib/gslice.h: /usr/include/glib-2.0/glib/gchecksum.h: /usr/include/glib-2.0/glib/gcompletion.h: /usr/include/glib-2.0/glib/gconvert.h: /usr/include/glib-2.0/glib/gdataset.h: /usr/include/glib-2.0/glib/gdate.h: /usr/include/glib-2.0/glib/gdir.h: /usr/include/glib-2.0/glib/gfileutils.h: /usr/include/glib-2.0/glib/ghash.h: /usr/include/glib-2.0/glib/ghook.h: /usr/include/glib-2.0/glib/ghostutils.h: /usr/include/glib-2.0/glib/giochannel.h: /usr/include/glib-2.0/glib/gmain.h: /usr/include/glib-2.0/glib/gpoll.h: /usr/include/glib-2.0/glib/gslist.h: /usr/include/glib-2.0/glib/gstring.h: /usr/include/glib-2.0/glib/gunicode.h: /usr/include/glib-2.0/glib/gkeyfile.h: /usr/include/glib-2.0/glib/gmappedfile.h: /usr/include/glib-2.0/glib/gmarkup.h: /usr/include/glib-2.0/glib/gmessages.h: /usr/include/glib-2.0/glib/gnode.h: /usr/include/glib-2.0/glib/goption.h: /usr/include/glib-2.0/glib/gpattern.h: /usr/include/glib-2.0/glib/gprimes.h: /usr/include/glib-2.0/glib/gqsort.h: /usr/include/glib-2.0/glib/gqueue.h: /usr/include/glib-2.0/glib/grand.h: /usr/include/glib-2.0/glib/grel.h: /usr/include/glib-2.0/glib/gregex.h: /usr/include/glib-2.0/glib/gscanner.h: /usr/include/glib-2.0/glib/gsequence.h: /usr/include/glib-2.0/glib/gshell.h: /usr/include/glib-2.0/glib/gspawn.h: /usr/include/glib-2.0/glib/gstrfuncs.h: /usr/include/glib-2.0/glib/gtestutils.h: /usr/include/glib-2.0/glib/gthreadpool.h: /usr/include/glib-2.0/glib/gtimer.h: /usr/include/glib-2.0/glib/gtree.h: /usr/include/glib-2.0/glib/gurifuncs.h: pyglib-private.h: pyglib-python-compat.h: pygoptiongroup.h: ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/_glib_la-pygspawn.Plo0000644000000000000000000003155511272036633026221 0ustar rootroot_glib_la-pygspawn.lo .libs/_glib_la-pygspawn.o: pygspawn.c \ /usr/include/python2.5/Python.h /usr/include/python2.5/patchlevel.h \ /usr/include/python2.5/pyconfig.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h \ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ /usr/include/gnu/stubs-32.h /usr/include/bits/posix1_lim.h \ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h \ /usr/include/bits/types.h /usr/include/bits/typesizes.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ /usr/include/bits/wchar.h /usr/include/gconv.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h \ /usr/include/bits/sys_errlist.h /usr/include/string.h \ /usr/include/xlocale.h /usr/include/errno.h /usr/include/bits/errno.h \ /usr/include/linux/errno.h /usr/include/asm/errno.h \ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ /usr/include/stdlib.h /usr/include/bits/waitflags.h \ /usr/include/bits/waitstatus.h /usr/include/endian.h \ /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ /usr/include/sys/select.h /usr/include/bits/select.h \ /usr/include/bits/sigset.h /usr/include/bits/time.h \ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ /usr/include/alloca.h /usr/include/unistd.h \ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ /usr/include/bits/confname.h /usr/include/getopt.h \ /usr/include/assert.h /usr/include/python2.5/pyport.h \ /usr/include/stdint.h /usr/include/math.h /usr/include/bits/huge_val.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ /usr/include/sys/time.h /usr/include/sys/stat.h \ /usr/include/bits/stat.h /usr/include/python2.5/pymem.h \ /usr/include/python2.5/object.h /usr/include/python2.5/objimpl.h \ /usr/include/python2.5/pydebug.h /usr/include/python2.5/unicodeobject.h \ /usr/include/ctype.h /usr/include/python2.5/intobject.h \ /usr/include/python2.5/boolobject.h /usr/include/python2.5/longobject.h \ /usr/include/python2.5/floatobject.h \ /usr/include/python2.5/complexobject.h \ /usr/include/python2.5/rangeobject.h \ /usr/include/python2.5/stringobject.h \ /usr/include/python2.5/bufferobject.h \ /usr/include/python2.5/tupleobject.h \ /usr/include/python2.5/listobject.h /usr/include/python2.5/dictobject.h \ /usr/include/python2.5/enumobject.h /usr/include/python2.5/setobject.h \ /usr/include/python2.5/methodobject.h \ /usr/include/python2.5/moduleobject.h \ /usr/include/python2.5/funcobject.h \ /usr/include/python2.5/classobject.h \ /usr/include/python2.5/fileobject.h /usr/include/python2.5/cobject.h \ /usr/include/python2.5/traceback.h /usr/include/python2.5/sliceobject.h \ /usr/include/python2.5/cellobject.h /usr/include/python2.5/iterobject.h \ /usr/include/python2.5/genobject.h /usr/include/python2.5/descrobject.h \ /usr/include/python2.5/weakrefobject.h /usr/include/python2.5/codecs.h \ /usr/include/python2.5/pyerrors.h /usr/include/python2.5/pystate.h \ /usr/include/python2.5/pyarena.h /usr/include/python2.5/modsupport.h \ /usr/include/python2.5/pythonrun.h /usr/include/python2.5/ceval.h \ /usr/include/python2.5/sysmodule.h /usr/include/python2.5/intrcheck.h \ /usr/include/python2.5/import.h /usr/include/python2.5/abstract.h \ /usr/include/python2.5/compile.h /usr/include/python2.5/code.h \ /usr/include/python2.5/eval.h /usr/include/python2.5/pystrtod.h \ /usr/include/python2.5/pyfpe.h /usr/include/glib-2.0/glib.h \ /usr/include/glib-2.0/glib/galloca.h \ /usr/include/glib-2.0/glib/gtypes.h \ /usr/lib/glib-2.0/include/glibconfig.h \ /usr/include/glib-2.0/glib/gmacros.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h \ /usr/include/glib-2.0/glib/garray.h \ /usr/include/glib-2.0/glib/gasyncqueue.h \ /usr/include/glib-2.0/glib/gthread.h \ /usr/include/glib-2.0/glib/gerror.h /usr/include/glib-2.0/glib/gquark.h \ /usr/include/glib-2.0/glib/gutils.h \ /usr/include/glib-2.0/glib/gatomic.h \ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \ /usr/include/asm/sigcontext.h /usr/include/bits/sigstack.h \ /usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \ /usr/include/glib-2.0/glib/gbase64.h \ /usr/include/glib-2.0/glib/gbookmarkfile.h \ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \ /usr/include/glib-2.0/glib/gchecksum.h \ /usr/include/glib-2.0/glib/gcompletion.h \ /usr/include/glib-2.0/glib/gconvert.h \ /usr/include/glib-2.0/glib/gdataset.h \ /usr/include/glib-2.0/glib/gdate.h /usr/include/glib-2.0/glib/gdir.h \ /usr/include/glib-2.0/glib/gfileutils.h \ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \ /usr/include/glib-2.0/glib/ghostutils.h \ /usr/include/glib-2.0/glib/giochannel.h \ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \ /usr/include/glib-2.0/glib/gslist.h \ /usr/include/glib-2.0/glib/gstring.h \ /usr/include/glib-2.0/glib/gunicode.h \ /usr/include/glib-2.0/glib/gkeyfile.h \ /usr/include/glib-2.0/glib/gmappedfile.h \ /usr/include/glib-2.0/glib/gmarkup.h \ /usr/include/glib-2.0/glib/gmessages.h \ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \ /usr/include/glib-2.0/glib/gpattern.h \ /usr/include/glib-2.0/glib/gprimes.h \ /usr/include/glib-2.0/glib/gqsort.h /usr/include/glib-2.0/glib/gqueue.h \ /usr/include/glib-2.0/glib/grand.h /usr/include/glib-2.0/glib/grel.h \ /usr/include/glib-2.0/glib/gregex.h \ /usr/include/glib-2.0/glib/gscanner.h \ /usr/include/glib-2.0/glib/gsequence.h \ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \ /usr/include/glib-2.0/glib/gstrfuncs.h \ /usr/include/glib-2.0/glib/gtestutils.h \ /usr/include/glib-2.0/glib/gthreadpool.h \ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \ /usr/include/glib-2.0/glib/gurifuncs.h pyglib.h pyglib-private.h \ pyglib-python-compat.h /usr/include/python2.5/Python.h: /usr/include/python2.5/patchlevel.h: /usr/include/python2.5/pyconfig.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h: /usr/include/limits.h: /usr/include/features.h: /usr/include/sys/cdefs.h: /usr/include/bits/wordsize.h: /usr/include/gnu/stubs.h: /usr/include/gnu/stubs-32.h: /usr/include/bits/posix1_lim.h: /usr/include/bits/local_lim.h: /usr/include/linux/limits.h: /usr/include/bits/posix2_lim.h: /usr/include/bits/xopen_lim.h: /usr/include/bits/stdio_lim.h: /usr/include/stdio.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h: /usr/include/bits/types.h: /usr/include/bits/typesizes.h: /usr/include/libio.h: /usr/include/_G_config.h: /usr/include/wchar.h: /usr/include/bits/wchar.h: /usr/include/gconv.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h: /usr/include/bits/sys_errlist.h: /usr/include/string.h: /usr/include/xlocale.h: /usr/include/errno.h: /usr/include/bits/errno.h: /usr/include/linux/errno.h: /usr/include/asm/errno.h: /usr/include/asm-generic/errno.h: /usr/include/asm-generic/errno-base.h: /usr/include/stdlib.h: /usr/include/bits/waitflags.h: /usr/include/bits/waitstatus.h: /usr/include/endian.h: /usr/include/bits/endian.h: /usr/include/sys/types.h: /usr/include/time.h: /usr/include/sys/select.h: /usr/include/bits/select.h: /usr/include/bits/sigset.h: /usr/include/bits/time.h: /usr/include/sys/sysmacros.h: /usr/include/bits/pthreadtypes.h: /usr/include/alloca.h: /usr/include/unistd.h: /usr/include/bits/posix_opt.h: /usr/include/bits/environments.h: /usr/include/bits/confname.h: /usr/include/getopt.h: /usr/include/assert.h: /usr/include/python2.5/pyport.h: /usr/include/stdint.h: /usr/include/math.h: /usr/include/bits/huge_val.h: /usr/include/bits/huge_valf.h: /usr/include/bits/huge_vall.h: /usr/include/bits/inf.h: /usr/include/bits/nan.h: /usr/include/bits/mathdef.h: /usr/include/bits/mathcalls.h: /usr/include/sys/time.h: /usr/include/sys/stat.h: /usr/include/bits/stat.h: /usr/include/python2.5/pymem.h: /usr/include/python2.5/object.h: /usr/include/python2.5/objimpl.h: /usr/include/python2.5/pydebug.h: /usr/include/python2.5/unicodeobject.h: /usr/include/ctype.h: /usr/include/python2.5/intobject.h: /usr/include/python2.5/boolobject.h: /usr/include/python2.5/longobject.h: /usr/include/python2.5/floatobject.h: /usr/include/python2.5/complexobject.h: /usr/include/python2.5/rangeobject.h: /usr/include/python2.5/stringobject.h: /usr/include/python2.5/bufferobject.h: /usr/include/python2.5/tupleobject.h: /usr/include/python2.5/listobject.h: /usr/include/python2.5/dictobject.h: /usr/include/python2.5/enumobject.h: /usr/include/python2.5/setobject.h: /usr/include/python2.5/methodobject.h: /usr/include/python2.5/moduleobject.h: /usr/include/python2.5/funcobject.h: /usr/include/python2.5/classobject.h: /usr/include/python2.5/fileobject.h: /usr/include/python2.5/cobject.h: /usr/include/python2.5/traceback.h: /usr/include/python2.5/sliceobject.h: /usr/include/python2.5/cellobject.h: /usr/include/python2.5/iterobject.h: /usr/include/python2.5/genobject.h: /usr/include/python2.5/descrobject.h: /usr/include/python2.5/weakrefobject.h: /usr/include/python2.5/codecs.h: /usr/include/python2.5/pyerrors.h: /usr/include/python2.5/pystate.h: /usr/include/python2.5/pyarena.h: /usr/include/python2.5/modsupport.h: /usr/include/python2.5/pythonrun.h: /usr/include/python2.5/ceval.h: /usr/include/python2.5/sysmodule.h: /usr/include/python2.5/intrcheck.h: /usr/include/python2.5/import.h: /usr/include/python2.5/abstract.h: /usr/include/python2.5/compile.h: /usr/include/python2.5/code.h: /usr/include/python2.5/eval.h: /usr/include/python2.5/pystrtod.h: /usr/include/python2.5/pyfpe.h: /usr/include/glib-2.0/glib.h: /usr/include/glib-2.0/glib/galloca.h: /usr/include/glib-2.0/glib/gtypes.h: /usr/lib/glib-2.0/include/glibconfig.h: /usr/include/glib-2.0/glib/gmacros.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h: /usr/include/glib-2.0/glib/garray.h: /usr/include/glib-2.0/glib/gasyncqueue.h: /usr/include/glib-2.0/glib/gthread.h: /usr/include/glib-2.0/glib/gerror.h: /usr/include/glib-2.0/glib/gquark.h: /usr/include/glib-2.0/glib/gutils.h: /usr/include/glib-2.0/glib/gatomic.h: /usr/include/glib-2.0/glib/gbacktrace.h: /usr/include/signal.h: /usr/include/bits/signum.h: /usr/include/bits/siginfo.h: /usr/include/bits/sigaction.h: /usr/include/bits/sigcontext.h: /usr/include/asm/sigcontext.h: /usr/include/bits/sigstack.h: /usr/include/sys/ucontext.h: /usr/include/bits/sigthread.h: /usr/include/glib-2.0/glib/gbase64.h: /usr/include/glib-2.0/glib/gbookmarkfile.h: /usr/include/glib-2.0/glib/gcache.h: /usr/include/glib-2.0/glib/glist.h: /usr/include/glib-2.0/glib/gmem.h: /usr/include/glib-2.0/glib/gslice.h: /usr/include/glib-2.0/glib/gchecksum.h: /usr/include/glib-2.0/glib/gcompletion.h: /usr/include/glib-2.0/glib/gconvert.h: /usr/include/glib-2.0/glib/gdataset.h: /usr/include/glib-2.0/glib/gdate.h: /usr/include/glib-2.0/glib/gdir.h: /usr/include/glib-2.0/glib/gfileutils.h: /usr/include/glib-2.0/glib/ghash.h: /usr/include/glib-2.0/glib/ghook.h: /usr/include/glib-2.0/glib/ghostutils.h: /usr/include/glib-2.0/glib/giochannel.h: /usr/include/glib-2.0/glib/gmain.h: /usr/include/glib-2.0/glib/gpoll.h: /usr/include/glib-2.0/glib/gslist.h: /usr/include/glib-2.0/glib/gstring.h: /usr/include/glib-2.0/glib/gunicode.h: /usr/include/glib-2.0/glib/gkeyfile.h: /usr/include/glib-2.0/glib/gmappedfile.h: /usr/include/glib-2.0/glib/gmarkup.h: /usr/include/glib-2.0/glib/gmessages.h: /usr/include/glib-2.0/glib/gnode.h: /usr/include/glib-2.0/glib/goption.h: /usr/include/glib-2.0/glib/gpattern.h: /usr/include/glib-2.0/glib/gprimes.h: /usr/include/glib-2.0/glib/gqsort.h: /usr/include/glib-2.0/glib/gqueue.h: /usr/include/glib-2.0/glib/grand.h: /usr/include/glib-2.0/glib/grel.h: /usr/include/glib-2.0/glib/gregex.h: /usr/include/glib-2.0/glib/gscanner.h: /usr/include/glib-2.0/glib/gsequence.h: /usr/include/glib-2.0/glib/gshell.h: /usr/include/glib-2.0/glib/gspawn.h: /usr/include/glib-2.0/glib/gstrfuncs.h: /usr/include/glib-2.0/glib/gtestutils.h: /usr/include/glib-2.0/glib/gthreadpool.h: /usr/include/glib-2.0/glib/gtimer.h: /usr/include/glib-2.0/glib/gtree.h: /usr/include/glib-2.0/glib/gurifuncs.h: pyglib.h: pyglib-private.h: pyglib-python-compat.h: ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/_glib_la-pygsource.Plo0000644000000000000000000003214011272036633026360 0ustar rootroot_glib_la-pygsource.lo .libs/_glib_la-pygsource.o: pygsource.c ../config.h \ /usr/include/python2.5/Python.h /usr/include/python2.5/patchlevel.h \ /usr/include/python2.5/pyconfig.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h \ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ /usr/include/gnu/stubs-32.h /usr/include/bits/posix1_lim.h \ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h \ /usr/include/bits/types.h /usr/include/bits/typesizes.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ /usr/include/bits/wchar.h /usr/include/gconv.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h \ /usr/include/bits/sys_errlist.h /usr/include/string.h \ /usr/include/xlocale.h /usr/include/errno.h /usr/include/bits/errno.h \ /usr/include/linux/errno.h /usr/include/asm/errno.h \ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ /usr/include/stdlib.h /usr/include/bits/waitflags.h \ /usr/include/bits/waitstatus.h /usr/include/endian.h \ /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ /usr/include/sys/select.h /usr/include/bits/select.h \ /usr/include/bits/sigset.h /usr/include/bits/time.h \ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ /usr/include/alloca.h /usr/include/unistd.h \ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ /usr/include/bits/confname.h /usr/include/getopt.h \ /usr/include/assert.h /usr/include/python2.5/pyport.h \ /usr/include/stdint.h /usr/include/math.h /usr/include/bits/huge_val.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ /usr/include/sys/time.h /usr/include/sys/stat.h \ /usr/include/bits/stat.h /usr/include/python2.5/pymem.h \ /usr/include/python2.5/object.h /usr/include/python2.5/objimpl.h \ /usr/include/python2.5/pydebug.h /usr/include/python2.5/unicodeobject.h \ /usr/include/ctype.h /usr/include/python2.5/intobject.h \ /usr/include/python2.5/boolobject.h /usr/include/python2.5/longobject.h \ /usr/include/python2.5/floatobject.h \ /usr/include/python2.5/complexobject.h \ /usr/include/python2.5/rangeobject.h \ /usr/include/python2.5/stringobject.h \ /usr/include/python2.5/bufferobject.h \ /usr/include/python2.5/tupleobject.h \ /usr/include/python2.5/listobject.h /usr/include/python2.5/dictobject.h \ /usr/include/python2.5/enumobject.h /usr/include/python2.5/setobject.h \ /usr/include/python2.5/methodobject.h \ /usr/include/python2.5/moduleobject.h \ /usr/include/python2.5/funcobject.h \ /usr/include/python2.5/classobject.h \ /usr/include/python2.5/fileobject.h /usr/include/python2.5/cobject.h \ /usr/include/python2.5/traceback.h /usr/include/python2.5/sliceobject.h \ /usr/include/python2.5/cellobject.h /usr/include/python2.5/iterobject.h \ /usr/include/python2.5/genobject.h /usr/include/python2.5/descrobject.h \ /usr/include/python2.5/weakrefobject.h /usr/include/python2.5/codecs.h \ /usr/include/python2.5/pyerrors.h /usr/include/python2.5/pystate.h \ /usr/include/python2.5/pyarena.h /usr/include/python2.5/modsupport.h \ /usr/include/python2.5/pythonrun.h /usr/include/python2.5/ceval.h \ /usr/include/python2.5/sysmodule.h /usr/include/python2.5/intrcheck.h \ /usr/include/python2.5/import.h /usr/include/python2.5/abstract.h \ /usr/include/python2.5/compile.h /usr/include/python2.5/code.h \ /usr/include/python2.5/eval.h /usr/include/python2.5/pystrtod.h \ /usr/include/python2.5/pyfpe.h /usr/include/python2.5/pythread.h \ /usr/include/python2.5/structmember.h pyglib.h \ /usr/include/glib-2.0/glib.h /usr/include/glib-2.0/glib/galloca.h \ /usr/include/glib-2.0/glib/gtypes.h \ /usr/lib/glib-2.0/include/glibconfig.h \ /usr/include/glib-2.0/glib/gmacros.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h \ /usr/include/glib-2.0/glib/garray.h \ /usr/include/glib-2.0/glib/gasyncqueue.h \ /usr/include/glib-2.0/glib/gthread.h \ /usr/include/glib-2.0/glib/gerror.h /usr/include/glib-2.0/glib/gquark.h \ /usr/include/glib-2.0/glib/gutils.h \ /usr/include/glib-2.0/glib/gatomic.h \ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \ /usr/include/asm/sigcontext.h /usr/include/bits/sigstack.h \ /usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \ /usr/include/glib-2.0/glib/gbase64.h \ /usr/include/glib-2.0/glib/gbookmarkfile.h \ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \ /usr/include/glib-2.0/glib/gchecksum.h \ /usr/include/glib-2.0/glib/gcompletion.h \ /usr/include/glib-2.0/glib/gconvert.h \ /usr/include/glib-2.0/glib/gdataset.h \ /usr/include/glib-2.0/glib/gdate.h /usr/include/glib-2.0/glib/gdir.h \ /usr/include/glib-2.0/glib/gfileutils.h \ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \ /usr/include/glib-2.0/glib/ghostutils.h \ /usr/include/glib-2.0/glib/giochannel.h \ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \ /usr/include/glib-2.0/glib/gslist.h \ /usr/include/glib-2.0/glib/gstring.h \ /usr/include/glib-2.0/glib/gunicode.h \ /usr/include/glib-2.0/glib/gkeyfile.h \ /usr/include/glib-2.0/glib/gmappedfile.h \ /usr/include/glib-2.0/glib/gmarkup.h \ /usr/include/glib-2.0/glib/gmessages.h \ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \ /usr/include/glib-2.0/glib/gpattern.h \ /usr/include/glib-2.0/glib/gprimes.h \ /usr/include/glib-2.0/glib/gqsort.h /usr/include/glib-2.0/glib/gqueue.h \ /usr/include/glib-2.0/glib/grand.h /usr/include/glib-2.0/glib/grel.h \ /usr/include/glib-2.0/glib/gregex.h \ /usr/include/glib-2.0/glib/gscanner.h \ /usr/include/glib-2.0/glib/gsequence.h \ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \ /usr/include/glib-2.0/glib/gstrfuncs.h \ /usr/include/glib-2.0/glib/gtestutils.h \ /usr/include/glib-2.0/glib/gthreadpool.h \ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \ /usr/include/glib-2.0/glib/gurifuncs.h pyglib-private.h \ pyglib-python-compat.h pygmaincontext.h pygsource.h ../config.h: /usr/include/python2.5/Python.h: /usr/include/python2.5/patchlevel.h: /usr/include/python2.5/pyconfig.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h: /usr/include/limits.h: /usr/include/features.h: /usr/include/sys/cdefs.h: /usr/include/bits/wordsize.h: /usr/include/gnu/stubs.h: /usr/include/gnu/stubs-32.h: /usr/include/bits/posix1_lim.h: /usr/include/bits/local_lim.h: /usr/include/linux/limits.h: /usr/include/bits/posix2_lim.h: /usr/include/bits/xopen_lim.h: /usr/include/bits/stdio_lim.h: /usr/include/stdio.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h: /usr/include/bits/types.h: /usr/include/bits/typesizes.h: /usr/include/libio.h: /usr/include/_G_config.h: /usr/include/wchar.h: /usr/include/bits/wchar.h: /usr/include/gconv.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h: /usr/include/bits/sys_errlist.h: /usr/include/string.h: /usr/include/xlocale.h: /usr/include/errno.h: /usr/include/bits/errno.h: /usr/include/linux/errno.h: /usr/include/asm/errno.h: /usr/include/asm-generic/errno.h: /usr/include/asm-generic/errno-base.h: /usr/include/stdlib.h: /usr/include/bits/waitflags.h: /usr/include/bits/waitstatus.h: /usr/include/endian.h: /usr/include/bits/endian.h: /usr/include/sys/types.h: /usr/include/time.h: /usr/include/sys/select.h: /usr/include/bits/select.h: /usr/include/bits/sigset.h: /usr/include/bits/time.h: /usr/include/sys/sysmacros.h: /usr/include/bits/pthreadtypes.h: /usr/include/alloca.h: /usr/include/unistd.h: /usr/include/bits/posix_opt.h: /usr/include/bits/environments.h: /usr/include/bits/confname.h: /usr/include/getopt.h: /usr/include/assert.h: /usr/include/python2.5/pyport.h: /usr/include/stdint.h: /usr/include/math.h: /usr/include/bits/huge_val.h: /usr/include/bits/huge_valf.h: /usr/include/bits/huge_vall.h: /usr/include/bits/inf.h: /usr/include/bits/nan.h: /usr/include/bits/mathdef.h: /usr/include/bits/mathcalls.h: /usr/include/sys/time.h: /usr/include/sys/stat.h: /usr/include/bits/stat.h: /usr/include/python2.5/pymem.h: /usr/include/python2.5/object.h: /usr/include/python2.5/objimpl.h: /usr/include/python2.5/pydebug.h: /usr/include/python2.5/unicodeobject.h: /usr/include/ctype.h: /usr/include/python2.5/intobject.h: /usr/include/python2.5/boolobject.h: /usr/include/python2.5/longobject.h: /usr/include/python2.5/floatobject.h: /usr/include/python2.5/complexobject.h: /usr/include/python2.5/rangeobject.h: /usr/include/python2.5/stringobject.h: /usr/include/python2.5/bufferobject.h: /usr/include/python2.5/tupleobject.h: /usr/include/python2.5/listobject.h: /usr/include/python2.5/dictobject.h: /usr/include/python2.5/enumobject.h: /usr/include/python2.5/setobject.h: /usr/include/python2.5/methodobject.h: /usr/include/python2.5/moduleobject.h: /usr/include/python2.5/funcobject.h: /usr/include/python2.5/classobject.h: /usr/include/python2.5/fileobject.h: /usr/include/python2.5/cobject.h: /usr/include/python2.5/traceback.h: /usr/include/python2.5/sliceobject.h: /usr/include/python2.5/cellobject.h: /usr/include/python2.5/iterobject.h: /usr/include/python2.5/genobject.h: /usr/include/python2.5/descrobject.h: /usr/include/python2.5/weakrefobject.h: /usr/include/python2.5/codecs.h: /usr/include/python2.5/pyerrors.h: /usr/include/python2.5/pystate.h: /usr/include/python2.5/pyarena.h: /usr/include/python2.5/modsupport.h: /usr/include/python2.5/pythonrun.h: /usr/include/python2.5/ceval.h: /usr/include/python2.5/sysmodule.h: /usr/include/python2.5/intrcheck.h: /usr/include/python2.5/import.h: /usr/include/python2.5/abstract.h: /usr/include/python2.5/compile.h: /usr/include/python2.5/code.h: /usr/include/python2.5/eval.h: /usr/include/python2.5/pystrtod.h: /usr/include/python2.5/pyfpe.h: /usr/include/python2.5/pythread.h: /usr/include/python2.5/structmember.h: pyglib.h: /usr/include/glib-2.0/glib.h: /usr/include/glib-2.0/glib/galloca.h: /usr/include/glib-2.0/glib/gtypes.h: /usr/lib/glib-2.0/include/glibconfig.h: /usr/include/glib-2.0/glib/gmacros.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h: /usr/include/glib-2.0/glib/garray.h: /usr/include/glib-2.0/glib/gasyncqueue.h: /usr/include/glib-2.0/glib/gthread.h: /usr/include/glib-2.0/glib/gerror.h: /usr/include/glib-2.0/glib/gquark.h: /usr/include/glib-2.0/glib/gutils.h: /usr/include/glib-2.0/glib/gatomic.h: /usr/include/glib-2.0/glib/gbacktrace.h: /usr/include/signal.h: /usr/include/bits/signum.h: /usr/include/bits/siginfo.h: /usr/include/bits/sigaction.h: /usr/include/bits/sigcontext.h: /usr/include/asm/sigcontext.h: /usr/include/bits/sigstack.h: /usr/include/sys/ucontext.h: /usr/include/bits/sigthread.h: /usr/include/glib-2.0/glib/gbase64.h: /usr/include/glib-2.0/glib/gbookmarkfile.h: /usr/include/glib-2.0/glib/gcache.h: /usr/include/glib-2.0/glib/glist.h: /usr/include/glib-2.0/glib/gmem.h: /usr/include/glib-2.0/glib/gslice.h: /usr/include/glib-2.0/glib/gchecksum.h: /usr/include/glib-2.0/glib/gcompletion.h: /usr/include/glib-2.0/glib/gconvert.h: /usr/include/glib-2.0/glib/gdataset.h: /usr/include/glib-2.0/glib/gdate.h: /usr/include/glib-2.0/glib/gdir.h: /usr/include/glib-2.0/glib/gfileutils.h: /usr/include/glib-2.0/glib/ghash.h: /usr/include/glib-2.0/glib/ghook.h: /usr/include/glib-2.0/glib/ghostutils.h: /usr/include/glib-2.0/glib/giochannel.h: /usr/include/glib-2.0/glib/gmain.h: /usr/include/glib-2.0/glib/gpoll.h: /usr/include/glib-2.0/glib/gslist.h: /usr/include/glib-2.0/glib/gstring.h: /usr/include/glib-2.0/glib/gunicode.h: /usr/include/glib-2.0/glib/gkeyfile.h: /usr/include/glib-2.0/glib/gmappedfile.h: /usr/include/glib-2.0/glib/gmarkup.h: /usr/include/glib-2.0/glib/gmessages.h: /usr/include/glib-2.0/glib/gnode.h: /usr/include/glib-2.0/glib/goption.h: /usr/include/glib-2.0/glib/gpattern.h: /usr/include/glib-2.0/glib/gprimes.h: /usr/include/glib-2.0/glib/gqsort.h: /usr/include/glib-2.0/glib/gqueue.h: /usr/include/glib-2.0/glib/grand.h: /usr/include/glib-2.0/glib/grel.h: /usr/include/glib-2.0/glib/gregex.h: /usr/include/glib-2.0/glib/gscanner.h: /usr/include/glib-2.0/glib/gsequence.h: /usr/include/glib-2.0/glib/gshell.h: /usr/include/glib-2.0/glib/gspawn.h: /usr/include/glib-2.0/glib/gstrfuncs.h: /usr/include/glib-2.0/glib/gtestutils.h: /usr/include/glib-2.0/glib/gthreadpool.h: /usr/include/glib-2.0/glib/gtimer.h: /usr/include/glib-2.0/glib/gtree.h: /usr/include/glib-2.0/glib/gurifuncs.h: pyglib-private.h: pyglib-python-compat.h: pygmaincontext.h: pygsource.h: ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/_glib_la-glibmodule.Plo0000644000000000000000000003216111272036631026464 0ustar rootroot_glib_la-glibmodule.lo .libs/_glib_la-glibmodule.o: glibmodule.c \ ../config.h /usr/include/python2.5/Python.h \ /usr/include/python2.5/patchlevel.h /usr/include/python2.5/pyconfig.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h \ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ /usr/include/gnu/stubs-32.h /usr/include/bits/posix1_lim.h \ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h \ /usr/include/bits/types.h /usr/include/bits/typesizes.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ /usr/include/bits/wchar.h /usr/include/gconv.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h \ /usr/include/bits/sys_errlist.h /usr/include/string.h \ /usr/include/xlocale.h /usr/include/errno.h /usr/include/bits/errno.h \ /usr/include/linux/errno.h /usr/include/asm/errno.h \ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ /usr/include/stdlib.h /usr/include/bits/waitflags.h \ /usr/include/bits/waitstatus.h /usr/include/endian.h \ /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ /usr/include/sys/select.h /usr/include/bits/select.h \ /usr/include/bits/sigset.h /usr/include/bits/time.h \ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ /usr/include/alloca.h /usr/include/unistd.h \ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ /usr/include/bits/confname.h /usr/include/getopt.h \ /usr/include/assert.h /usr/include/python2.5/pyport.h \ /usr/include/stdint.h /usr/include/math.h /usr/include/bits/huge_val.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ /usr/include/sys/time.h /usr/include/sys/stat.h \ /usr/include/bits/stat.h /usr/include/python2.5/pymem.h \ /usr/include/python2.5/object.h /usr/include/python2.5/objimpl.h \ /usr/include/python2.5/pydebug.h /usr/include/python2.5/unicodeobject.h \ /usr/include/ctype.h /usr/include/python2.5/intobject.h \ /usr/include/python2.5/boolobject.h /usr/include/python2.5/longobject.h \ /usr/include/python2.5/floatobject.h \ /usr/include/python2.5/complexobject.h \ /usr/include/python2.5/rangeobject.h \ /usr/include/python2.5/stringobject.h \ /usr/include/python2.5/bufferobject.h \ /usr/include/python2.5/tupleobject.h \ /usr/include/python2.5/listobject.h /usr/include/python2.5/dictobject.h \ /usr/include/python2.5/enumobject.h /usr/include/python2.5/setobject.h \ /usr/include/python2.5/methodobject.h \ /usr/include/python2.5/moduleobject.h \ /usr/include/python2.5/funcobject.h \ /usr/include/python2.5/classobject.h \ /usr/include/python2.5/fileobject.h /usr/include/python2.5/cobject.h \ /usr/include/python2.5/traceback.h /usr/include/python2.5/sliceobject.h \ /usr/include/python2.5/cellobject.h /usr/include/python2.5/iterobject.h \ /usr/include/python2.5/genobject.h /usr/include/python2.5/descrobject.h \ /usr/include/python2.5/weakrefobject.h /usr/include/python2.5/codecs.h \ /usr/include/python2.5/pyerrors.h /usr/include/python2.5/pystate.h \ /usr/include/python2.5/pyarena.h /usr/include/python2.5/modsupport.h \ /usr/include/python2.5/pythonrun.h /usr/include/python2.5/ceval.h \ /usr/include/python2.5/sysmodule.h /usr/include/python2.5/intrcheck.h \ /usr/include/python2.5/import.h /usr/include/python2.5/abstract.h \ /usr/include/python2.5/compile.h /usr/include/python2.5/code.h \ /usr/include/python2.5/eval.h /usr/include/python2.5/pystrtod.h \ /usr/include/python2.5/pyfpe.h /usr/include/glib-2.0/glib.h \ /usr/include/glib-2.0/glib/galloca.h \ /usr/include/glib-2.0/glib/gtypes.h \ /usr/lib/glib-2.0/include/glibconfig.h \ /usr/include/glib-2.0/glib/gmacros.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h \ /usr/include/glib-2.0/glib/garray.h \ /usr/include/glib-2.0/glib/gasyncqueue.h \ /usr/include/glib-2.0/glib/gthread.h \ /usr/include/glib-2.0/glib/gerror.h /usr/include/glib-2.0/glib/gquark.h \ /usr/include/glib-2.0/glib/gutils.h \ /usr/include/glib-2.0/glib/gatomic.h \ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \ /usr/include/asm/sigcontext.h /usr/include/bits/sigstack.h \ /usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \ /usr/include/glib-2.0/glib/gbase64.h \ /usr/include/glib-2.0/glib/gbookmarkfile.h \ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \ /usr/include/glib-2.0/glib/gchecksum.h \ /usr/include/glib-2.0/glib/gcompletion.h \ /usr/include/glib-2.0/glib/gconvert.h \ /usr/include/glib-2.0/glib/gdataset.h \ /usr/include/glib-2.0/glib/gdate.h /usr/include/glib-2.0/glib/gdir.h \ /usr/include/glib-2.0/glib/gfileutils.h \ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \ /usr/include/glib-2.0/glib/ghostutils.h \ /usr/include/glib-2.0/glib/giochannel.h \ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \ /usr/include/glib-2.0/glib/gslist.h \ /usr/include/glib-2.0/glib/gstring.h \ /usr/include/glib-2.0/glib/gunicode.h \ /usr/include/glib-2.0/glib/gkeyfile.h \ /usr/include/glib-2.0/glib/gmappedfile.h \ /usr/include/glib-2.0/glib/gmarkup.h \ /usr/include/glib-2.0/glib/gmessages.h \ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \ /usr/include/glib-2.0/glib/gpattern.h \ /usr/include/glib-2.0/glib/gprimes.h \ /usr/include/glib-2.0/glib/gqsort.h /usr/include/glib-2.0/glib/gqueue.h \ /usr/include/glib-2.0/glib/grand.h /usr/include/glib-2.0/glib/grel.h \ /usr/include/glib-2.0/glib/gregex.h \ /usr/include/glib-2.0/glib/gscanner.h \ /usr/include/glib-2.0/glib/gsequence.h \ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \ /usr/include/glib-2.0/glib/gstrfuncs.h \ /usr/include/glib-2.0/glib/gtestutils.h \ /usr/include/glib-2.0/glib/gthreadpool.h \ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \ /usr/include/glib-2.0/glib/gurifuncs.h pyglib.h pyglib-private.h \ pyglib-python-compat.h pygiochannel.h pygmaincontext.h pygmainloop.h \ pygoptioncontext.h pygoptiongroup.h pygsource.h pygspawn.h ../config.h: /usr/include/python2.5/Python.h: /usr/include/python2.5/patchlevel.h: /usr/include/python2.5/pyconfig.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h: /usr/include/limits.h: /usr/include/features.h: /usr/include/sys/cdefs.h: /usr/include/bits/wordsize.h: /usr/include/gnu/stubs.h: /usr/include/gnu/stubs-32.h: /usr/include/bits/posix1_lim.h: /usr/include/bits/local_lim.h: /usr/include/linux/limits.h: /usr/include/bits/posix2_lim.h: /usr/include/bits/xopen_lim.h: /usr/include/bits/stdio_lim.h: /usr/include/stdio.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h: /usr/include/bits/types.h: /usr/include/bits/typesizes.h: /usr/include/libio.h: /usr/include/_G_config.h: /usr/include/wchar.h: /usr/include/bits/wchar.h: /usr/include/gconv.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h: /usr/include/bits/sys_errlist.h: /usr/include/string.h: /usr/include/xlocale.h: /usr/include/errno.h: /usr/include/bits/errno.h: /usr/include/linux/errno.h: /usr/include/asm/errno.h: /usr/include/asm-generic/errno.h: /usr/include/asm-generic/errno-base.h: /usr/include/stdlib.h: /usr/include/bits/waitflags.h: /usr/include/bits/waitstatus.h: /usr/include/endian.h: /usr/include/bits/endian.h: /usr/include/sys/types.h: /usr/include/time.h: /usr/include/sys/select.h: /usr/include/bits/select.h: /usr/include/bits/sigset.h: /usr/include/bits/time.h: /usr/include/sys/sysmacros.h: /usr/include/bits/pthreadtypes.h: /usr/include/alloca.h: /usr/include/unistd.h: /usr/include/bits/posix_opt.h: /usr/include/bits/environments.h: /usr/include/bits/confname.h: /usr/include/getopt.h: /usr/include/assert.h: /usr/include/python2.5/pyport.h: /usr/include/stdint.h: /usr/include/math.h: /usr/include/bits/huge_val.h: /usr/include/bits/huge_valf.h: /usr/include/bits/huge_vall.h: /usr/include/bits/inf.h: /usr/include/bits/nan.h: /usr/include/bits/mathdef.h: /usr/include/bits/mathcalls.h: /usr/include/sys/time.h: /usr/include/sys/stat.h: /usr/include/bits/stat.h: /usr/include/python2.5/pymem.h: /usr/include/python2.5/object.h: /usr/include/python2.5/objimpl.h: /usr/include/python2.5/pydebug.h: /usr/include/python2.5/unicodeobject.h: /usr/include/ctype.h: /usr/include/python2.5/intobject.h: /usr/include/python2.5/boolobject.h: /usr/include/python2.5/longobject.h: /usr/include/python2.5/floatobject.h: /usr/include/python2.5/complexobject.h: /usr/include/python2.5/rangeobject.h: /usr/include/python2.5/stringobject.h: /usr/include/python2.5/bufferobject.h: /usr/include/python2.5/tupleobject.h: /usr/include/python2.5/listobject.h: /usr/include/python2.5/dictobject.h: /usr/include/python2.5/enumobject.h: /usr/include/python2.5/setobject.h: /usr/include/python2.5/methodobject.h: /usr/include/python2.5/moduleobject.h: /usr/include/python2.5/funcobject.h: /usr/include/python2.5/classobject.h: /usr/include/python2.5/fileobject.h: /usr/include/python2.5/cobject.h: /usr/include/python2.5/traceback.h: /usr/include/python2.5/sliceobject.h: /usr/include/python2.5/cellobject.h: /usr/include/python2.5/iterobject.h: /usr/include/python2.5/genobject.h: /usr/include/python2.5/descrobject.h: /usr/include/python2.5/weakrefobject.h: /usr/include/python2.5/codecs.h: /usr/include/python2.5/pyerrors.h: /usr/include/python2.5/pystate.h: /usr/include/python2.5/pyarena.h: /usr/include/python2.5/modsupport.h: /usr/include/python2.5/pythonrun.h: /usr/include/python2.5/ceval.h: /usr/include/python2.5/sysmodule.h: /usr/include/python2.5/intrcheck.h: /usr/include/python2.5/import.h: /usr/include/python2.5/abstract.h: /usr/include/python2.5/compile.h: /usr/include/python2.5/code.h: /usr/include/python2.5/eval.h: /usr/include/python2.5/pystrtod.h: /usr/include/python2.5/pyfpe.h: /usr/include/glib-2.0/glib.h: /usr/include/glib-2.0/glib/galloca.h: /usr/include/glib-2.0/glib/gtypes.h: /usr/lib/glib-2.0/include/glibconfig.h: /usr/include/glib-2.0/glib/gmacros.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h: /usr/include/glib-2.0/glib/garray.h: /usr/include/glib-2.0/glib/gasyncqueue.h: /usr/include/glib-2.0/glib/gthread.h: /usr/include/glib-2.0/glib/gerror.h: /usr/include/glib-2.0/glib/gquark.h: /usr/include/glib-2.0/glib/gutils.h: /usr/include/glib-2.0/glib/gatomic.h: /usr/include/glib-2.0/glib/gbacktrace.h: /usr/include/signal.h: /usr/include/bits/signum.h: /usr/include/bits/siginfo.h: /usr/include/bits/sigaction.h: /usr/include/bits/sigcontext.h: /usr/include/asm/sigcontext.h: /usr/include/bits/sigstack.h: /usr/include/sys/ucontext.h: /usr/include/bits/sigthread.h: /usr/include/glib-2.0/glib/gbase64.h: /usr/include/glib-2.0/glib/gbookmarkfile.h: /usr/include/glib-2.0/glib/gcache.h: /usr/include/glib-2.0/glib/glist.h: /usr/include/glib-2.0/glib/gmem.h: /usr/include/glib-2.0/glib/gslice.h: /usr/include/glib-2.0/glib/gchecksum.h: /usr/include/glib-2.0/glib/gcompletion.h: /usr/include/glib-2.0/glib/gconvert.h: /usr/include/glib-2.0/glib/gdataset.h: /usr/include/glib-2.0/glib/gdate.h: /usr/include/glib-2.0/glib/gdir.h: /usr/include/glib-2.0/glib/gfileutils.h: /usr/include/glib-2.0/glib/ghash.h: /usr/include/glib-2.0/glib/ghook.h: /usr/include/glib-2.0/glib/ghostutils.h: /usr/include/glib-2.0/glib/giochannel.h: /usr/include/glib-2.0/glib/gmain.h: /usr/include/glib-2.0/glib/gpoll.h: /usr/include/glib-2.0/glib/gslist.h: /usr/include/glib-2.0/glib/gstring.h: /usr/include/glib-2.0/glib/gunicode.h: /usr/include/glib-2.0/glib/gkeyfile.h: /usr/include/glib-2.0/glib/gmappedfile.h: /usr/include/glib-2.0/glib/gmarkup.h: /usr/include/glib-2.0/glib/gmessages.h: /usr/include/glib-2.0/glib/gnode.h: /usr/include/glib-2.0/glib/goption.h: /usr/include/glib-2.0/glib/gpattern.h: /usr/include/glib-2.0/glib/gprimes.h: /usr/include/glib-2.0/glib/gqsort.h: /usr/include/glib-2.0/glib/gqueue.h: /usr/include/glib-2.0/glib/grand.h: /usr/include/glib-2.0/glib/grel.h: /usr/include/glib-2.0/glib/gregex.h: /usr/include/glib-2.0/glib/gscanner.h: /usr/include/glib-2.0/glib/gsequence.h: /usr/include/glib-2.0/glib/gshell.h: /usr/include/glib-2.0/glib/gspawn.h: /usr/include/glib-2.0/glib/gstrfuncs.h: /usr/include/glib-2.0/glib/gtestutils.h: /usr/include/glib-2.0/glib/gthreadpool.h: /usr/include/glib-2.0/glib/gtimer.h: /usr/include/glib-2.0/glib/gtree.h: /usr/include/glib-2.0/glib/gurifuncs.h: pyglib.h: pyglib-private.h: pyglib-python-compat.h: pygiochannel.h: pygmaincontext.h: pygmainloop.h: pygoptioncontext.h: pygoptiongroup.h: pygsource.h: pygspawn.h: ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/_glib_la-pygoptioncontext.Plo0000644000000000000000000003175311272036632030005 0ustar rootroot_glib_la-pygoptioncontext.lo .libs/_glib_la-pygoptioncontext.o: \ pygoptioncontext.c ../config.h pyglib.h /usr/include/python2.5/Python.h \ /usr/include/python2.5/patchlevel.h /usr/include/python2.5/pyconfig.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h \ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ /usr/include/gnu/stubs-32.h /usr/include/bits/posix1_lim.h \ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h \ /usr/include/bits/types.h /usr/include/bits/typesizes.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ /usr/include/bits/wchar.h /usr/include/gconv.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h \ /usr/include/bits/sys_errlist.h /usr/include/string.h \ /usr/include/xlocale.h /usr/include/errno.h /usr/include/bits/errno.h \ /usr/include/linux/errno.h /usr/include/asm/errno.h \ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ /usr/include/stdlib.h /usr/include/bits/waitflags.h \ /usr/include/bits/waitstatus.h /usr/include/endian.h \ /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ /usr/include/sys/select.h /usr/include/bits/select.h \ /usr/include/bits/sigset.h /usr/include/bits/time.h \ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ /usr/include/alloca.h /usr/include/unistd.h \ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ /usr/include/bits/confname.h /usr/include/getopt.h \ /usr/include/assert.h /usr/include/python2.5/pyport.h \ /usr/include/stdint.h /usr/include/math.h /usr/include/bits/huge_val.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ /usr/include/sys/time.h /usr/include/sys/stat.h \ /usr/include/bits/stat.h /usr/include/python2.5/pymem.h \ /usr/include/python2.5/object.h /usr/include/python2.5/objimpl.h \ /usr/include/python2.5/pydebug.h /usr/include/python2.5/unicodeobject.h \ /usr/include/ctype.h /usr/include/python2.5/intobject.h \ /usr/include/python2.5/boolobject.h /usr/include/python2.5/longobject.h \ /usr/include/python2.5/floatobject.h \ /usr/include/python2.5/complexobject.h \ /usr/include/python2.5/rangeobject.h \ /usr/include/python2.5/stringobject.h \ /usr/include/python2.5/bufferobject.h \ /usr/include/python2.5/tupleobject.h \ /usr/include/python2.5/listobject.h /usr/include/python2.5/dictobject.h \ /usr/include/python2.5/enumobject.h /usr/include/python2.5/setobject.h \ /usr/include/python2.5/methodobject.h \ /usr/include/python2.5/moduleobject.h \ /usr/include/python2.5/funcobject.h \ /usr/include/python2.5/classobject.h \ /usr/include/python2.5/fileobject.h /usr/include/python2.5/cobject.h \ /usr/include/python2.5/traceback.h /usr/include/python2.5/sliceobject.h \ /usr/include/python2.5/cellobject.h /usr/include/python2.5/iterobject.h \ /usr/include/python2.5/genobject.h /usr/include/python2.5/descrobject.h \ /usr/include/python2.5/weakrefobject.h /usr/include/python2.5/codecs.h \ /usr/include/python2.5/pyerrors.h /usr/include/python2.5/pystate.h \ /usr/include/python2.5/pyarena.h /usr/include/python2.5/modsupport.h \ /usr/include/python2.5/pythonrun.h /usr/include/python2.5/ceval.h \ /usr/include/python2.5/sysmodule.h /usr/include/python2.5/intrcheck.h \ /usr/include/python2.5/import.h /usr/include/python2.5/abstract.h \ /usr/include/python2.5/compile.h /usr/include/python2.5/code.h \ /usr/include/python2.5/eval.h /usr/include/python2.5/pystrtod.h \ /usr/include/python2.5/pyfpe.h /usr/include/glib-2.0/glib.h \ /usr/include/glib-2.0/glib/galloca.h \ /usr/include/glib-2.0/glib/gtypes.h \ /usr/lib/glib-2.0/include/glibconfig.h \ /usr/include/glib-2.0/glib/gmacros.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h \ /usr/include/glib-2.0/glib/garray.h \ /usr/include/glib-2.0/glib/gasyncqueue.h \ /usr/include/glib-2.0/glib/gthread.h \ /usr/include/glib-2.0/glib/gerror.h /usr/include/glib-2.0/glib/gquark.h \ /usr/include/glib-2.0/glib/gutils.h \ /usr/include/glib-2.0/glib/gatomic.h \ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \ /usr/include/asm/sigcontext.h /usr/include/bits/sigstack.h \ /usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \ /usr/include/glib-2.0/glib/gbase64.h \ /usr/include/glib-2.0/glib/gbookmarkfile.h \ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \ /usr/include/glib-2.0/glib/gchecksum.h \ /usr/include/glib-2.0/glib/gcompletion.h \ /usr/include/glib-2.0/glib/gconvert.h \ /usr/include/glib-2.0/glib/gdataset.h \ /usr/include/glib-2.0/glib/gdate.h /usr/include/glib-2.0/glib/gdir.h \ /usr/include/glib-2.0/glib/gfileutils.h \ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \ /usr/include/glib-2.0/glib/ghostutils.h \ /usr/include/glib-2.0/glib/giochannel.h \ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \ /usr/include/glib-2.0/glib/gslist.h \ /usr/include/glib-2.0/glib/gstring.h \ /usr/include/glib-2.0/glib/gunicode.h \ /usr/include/glib-2.0/glib/gkeyfile.h \ /usr/include/glib-2.0/glib/gmappedfile.h \ /usr/include/glib-2.0/glib/gmarkup.h \ /usr/include/glib-2.0/glib/gmessages.h \ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \ /usr/include/glib-2.0/glib/gpattern.h \ /usr/include/glib-2.0/glib/gprimes.h \ /usr/include/glib-2.0/glib/gqsort.h /usr/include/glib-2.0/glib/gqueue.h \ /usr/include/glib-2.0/glib/grand.h /usr/include/glib-2.0/glib/grel.h \ /usr/include/glib-2.0/glib/gregex.h \ /usr/include/glib-2.0/glib/gscanner.h \ /usr/include/glib-2.0/glib/gsequence.h \ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \ /usr/include/glib-2.0/glib/gstrfuncs.h \ /usr/include/glib-2.0/glib/gtestutils.h \ /usr/include/glib-2.0/glib/gthreadpool.h \ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \ /usr/include/glib-2.0/glib/gurifuncs.h pyglib-private.h \ pyglib-python-compat.h pygoptioncontext.h pygoptiongroup.h ../config.h: pyglib.h: /usr/include/python2.5/Python.h: /usr/include/python2.5/patchlevel.h: /usr/include/python2.5/pyconfig.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h: /usr/include/limits.h: /usr/include/features.h: /usr/include/sys/cdefs.h: /usr/include/bits/wordsize.h: /usr/include/gnu/stubs.h: /usr/include/gnu/stubs-32.h: /usr/include/bits/posix1_lim.h: /usr/include/bits/local_lim.h: /usr/include/linux/limits.h: /usr/include/bits/posix2_lim.h: /usr/include/bits/xopen_lim.h: /usr/include/bits/stdio_lim.h: /usr/include/stdio.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h: /usr/include/bits/types.h: /usr/include/bits/typesizes.h: /usr/include/libio.h: /usr/include/_G_config.h: /usr/include/wchar.h: /usr/include/bits/wchar.h: /usr/include/gconv.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h: /usr/include/bits/sys_errlist.h: /usr/include/string.h: /usr/include/xlocale.h: /usr/include/errno.h: /usr/include/bits/errno.h: /usr/include/linux/errno.h: /usr/include/asm/errno.h: /usr/include/asm-generic/errno.h: /usr/include/asm-generic/errno-base.h: /usr/include/stdlib.h: /usr/include/bits/waitflags.h: /usr/include/bits/waitstatus.h: /usr/include/endian.h: /usr/include/bits/endian.h: /usr/include/sys/types.h: /usr/include/time.h: /usr/include/sys/select.h: /usr/include/bits/select.h: /usr/include/bits/sigset.h: /usr/include/bits/time.h: /usr/include/sys/sysmacros.h: /usr/include/bits/pthreadtypes.h: /usr/include/alloca.h: /usr/include/unistd.h: /usr/include/bits/posix_opt.h: /usr/include/bits/environments.h: /usr/include/bits/confname.h: /usr/include/getopt.h: /usr/include/assert.h: /usr/include/python2.5/pyport.h: /usr/include/stdint.h: /usr/include/math.h: /usr/include/bits/huge_val.h: /usr/include/bits/huge_valf.h: /usr/include/bits/huge_vall.h: /usr/include/bits/inf.h: /usr/include/bits/nan.h: /usr/include/bits/mathdef.h: /usr/include/bits/mathcalls.h: /usr/include/sys/time.h: /usr/include/sys/stat.h: /usr/include/bits/stat.h: /usr/include/python2.5/pymem.h: /usr/include/python2.5/object.h: /usr/include/python2.5/objimpl.h: /usr/include/python2.5/pydebug.h: /usr/include/python2.5/unicodeobject.h: /usr/include/ctype.h: /usr/include/python2.5/intobject.h: /usr/include/python2.5/boolobject.h: /usr/include/python2.5/longobject.h: /usr/include/python2.5/floatobject.h: /usr/include/python2.5/complexobject.h: /usr/include/python2.5/rangeobject.h: /usr/include/python2.5/stringobject.h: /usr/include/python2.5/bufferobject.h: /usr/include/python2.5/tupleobject.h: /usr/include/python2.5/listobject.h: /usr/include/python2.5/dictobject.h: /usr/include/python2.5/enumobject.h: /usr/include/python2.5/setobject.h: /usr/include/python2.5/methodobject.h: /usr/include/python2.5/moduleobject.h: /usr/include/python2.5/funcobject.h: /usr/include/python2.5/classobject.h: /usr/include/python2.5/fileobject.h: /usr/include/python2.5/cobject.h: /usr/include/python2.5/traceback.h: /usr/include/python2.5/sliceobject.h: /usr/include/python2.5/cellobject.h: /usr/include/python2.5/iterobject.h: /usr/include/python2.5/genobject.h: /usr/include/python2.5/descrobject.h: /usr/include/python2.5/weakrefobject.h: /usr/include/python2.5/codecs.h: /usr/include/python2.5/pyerrors.h: /usr/include/python2.5/pystate.h: /usr/include/python2.5/pyarena.h: /usr/include/python2.5/modsupport.h: /usr/include/python2.5/pythonrun.h: /usr/include/python2.5/ceval.h: /usr/include/python2.5/sysmodule.h: /usr/include/python2.5/intrcheck.h: /usr/include/python2.5/import.h: /usr/include/python2.5/abstract.h: /usr/include/python2.5/compile.h: /usr/include/python2.5/code.h: /usr/include/python2.5/eval.h: /usr/include/python2.5/pystrtod.h: /usr/include/python2.5/pyfpe.h: /usr/include/glib-2.0/glib.h: /usr/include/glib-2.0/glib/galloca.h: /usr/include/glib-2.0/glib/gtypes.h: /usr/lib/glib-2.0/include/glibconfig.h: /usr/include/glib-2.0/glib/gmacros.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h: /usr/include/glib-2.0/glib/garray.h: /usr/include/glib-2.0/glib/gasyncqueue.h: /usr/include/glib-2.0/glib/gthread.h: /usr/include/glib-2.0/glib/gerror.h: /usr/include/glib-2.0/glib/gquark.h: /usr/include/glib-2.0/glib/gutils.h: /usr/include/glib-2.0/glib/gatomic.h: /usr/include/glib-2.0/glib/gbacktrace.h: /usr/include/signal.h: /usr/include/bits/signum.h: /usr/include/bits/siginfo.h: /usr/include/bits/sigaction.h: /usr/include/bits/sigcontext.h: /usr/include/asm/sigcontext.h: /usr/include/bits/sigstack.h: /usr/include/sys/ucontext.h: /usr/include/bits/sigthread.h: /usr/include/glib-2.0/glib/gbase64.h: /usr/include/glib-2.0/glib/gbookmarkfile.h: /usr/include/glib-2.0/glib/gcache.h: /usr/include/glib-2.0/glib/glist.h: /usr/include/glib-2.0/glib/gmem.h: /usr/include/glib-2.0/glib/gslice.h: /usr/include/glib-2.0/glib/gchecksum.h: /usr/include/glib-2.0/glib/gcompletion.h: /usr/include/glib-2.0/glib/gconvert.h: /usr/include/glib-2.0/glib/gdataset.h: /usr/include/glib-2.0/glib/gdate.h: /usr/include/glib-2.0/glib/gdir.h: /usr/include/glib-2.0/glib/gfileutils.h: /usr/include/glib-2.0/glib/ghash.h: /usr/include/glib-2.0/glib/ghook.h: /usr/include/glib-2.0/glib/ghostutils.h: /usr/include/glib-2.0/glib/giochannel.h: /usr/include/glib-2.0/glib/gmain.h: /usr/include/glib-2.0/glib/gpoll.h: /usr/include/glib-2.0/glib/gslist.h: /usr/include/glib-2.0/glib/gstring.h: /usr/include/glib-2.0/glib/gunicode.h: /usr/include/glib-2.0/glib/gkeyfile.h: /usr/include/glib-2.0/glib/gmappedfile.h: /usr/include/glib-2.0/glib/gmarkup.h: /usr/include/glib-2.0/glib/gmessages.h: /usr/include/glib-2.0/glib/gnode.h: /usr/include/glib-2.0/glib/goption.h: /usr/include/glib-2.0/glib/gpattern.h: /usr/include/glib-2.0/glib/gprimes.h: /usr/include/glib-2.0/glib/gqsort.h: /usr/include/glib-2.0/glib/gqueue.h: /usr/include/glib-2.0/glib/grand.h: /usr/include/glib-2.0/glib/grel.h: /usr/include/glib-2.0/glib/gregex.h: /usr/include/glib-2.0/glib/gscanner.h: /usr/include/glib-2.0/glib/gsequence.h: /usr/include/glib-2.0/glib/gshell.h: /usr/include/glib-2.0/glib/gspawn.h: /usr/include/glib-2.0/glib/gstrfuncs.h: /usr/include/glib-2.0/glib/gtestutils.h: /usr/include/glib-2.0/glib/gthreadpool.h: /usr/include/glib-2.0/glib/gtimer.h: /usr/include/glib-2.0/glib/gtree.h: /usr/include/glib-2.0/glib/gurifuncs.h: pyglib-private.h: pyglib-python-compat.h: pygoptioncontext.h: pygoptiongroup.h: ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/_glib_la-pygmainloop.Plo0000644000000000000000000003203011272036633026674 0ustar rootroot_glib_la-pygmainloop.lo .libs/_glib_la-pygmainloop.o: pygmainloop.c \ ../config.h /usr/include/python2.5/Python.h \ /usr/include/python2.5/patchlevel.h /usr/include/python2.5/pyconfig.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h \ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ /usr/include/gnu/stubs-32.h /usr/include/bits/posix1_lim.h \ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h \ /usr/include/bits/types.h /usr/include/bits/typesizes.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ /usr/include/bits/wchar.h /usr/include/gconv.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h \ /usr/include/bits/sys_errlist.h /usr/include/string.h \ /usr/include/xlocale.h /usr/include/errno.h /usr/include/bits/errno.h \ /usr/include/linux/errno.h /usr/include/asm/errno.h \ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ /usr/include/stdlib.h /usr/include/bits/waitflags.h \ /usr/include/bits/waitstatus.h /usr/include/endian.h \ /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ /usr/include/sys/select.h /usr/include/bits/select.h \ /usr/include/bits/sigset.h /usr/include/bits/time.h \ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ /usr/include/alloca.h /usr/include/unistd.h \ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ /usr/include/bits/confname.h /usr/include/getopt.h \ /usr/include/assert.h /usr/include/python2.5/pyport.h \ /usr/include/stdint.h /usr/include/math.h /usr/include/bits/huge_val.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ /usr/include/sys/time.h /usr/include/sys/stat.h \ /usr/include/bits/stat.h /usr/include/python2.5/pymem.h \ /usr/include/python2.5/object.h /usr/include/python2.5/objimpl.h \ /usr/include/python2.5/pydebug.h /usr/include/python2.5/unicodeobject.h \ /usr/include/ctype.h /usr/include/python2.5/intobject.h \ /usr/include/python2.5/boolobject.h /usr/include/python2.5/longobject.h \ /usr/include/python2.5/floatobject.h \ /usr/include/python2.5/complexobject.h \ /usr/include/python2.5/rangeobject.h \ /usr/include/python2.5/stringobject.h \ /usr/include/python2.5/bufferobject.h \ /usr/include/python2.5/tupleobject.h \ /usr/include/python2.5/listobject.h /usr/include/python2.5/dictobject.h \ /usr/include/python2.5/enumobject.h /usr/include/python2.5/setobject.h \ /usr/include/python2.5/methodobject.h \ /usr/include/python2.5/moduleobject.h \ /usr/include/python2.5/funcobject.h \ /usr/include/python2.5/classobject.h \ /usr/include/python2.5/fileobject.h /usr/include/python2.5/cobject.h \ /usr/include/python2.5/traceback.h /usr/include/python2.5/sliceobject.h \ /usr/include/python2.5/cellobject.h /usr/include/python2.5/iterobject.h \ /usr/include/python2.5/genobject.h /usr/include/python2.5/descrobject.h \ /usr/include/python2.5/weakrefobject.h /usr/include/python2.5/codecs.h \ /usr/include/python2.5/pyerrors.h /usr/include/python2.5/pystate.h \ /usr/include/python2.5/pyarena.h /usr/include/python2.5/modsupport.h \ /usr/include/python2.5/pythonrun.h /usr/include/python2.5/ceval.h \ /usr/include/python2.5/sysmodule.h /usr/include/python2.5/intrcheck.h \ /usr/include/python2.5/import.h /usr/include/python2.5/abstract.h \ /usr/include/python2.5/compile.h /usr/include/python2.5/code.h \ /usr/include/python2.5/eval.h /usr/include/python2.5/pystrtod.h \ /usr/include/python2.5/pyfpe.h /usr/include/python2.5/pythread.h \ /usr/include/glib-2.0/glib.h /usr/include/glib-2.0/glib/galloca.h \ /usr/include/glib-2.0/glib/gtypes.h \ /usr/lib/glib-2.0/include/glibconfig.h \ /usr/include/glib-2.0/glib/gmacros.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h \ /usr/include/glib-2.0/glib/garray.h \ /usr/include/glib-2.0/glib/gasyncqueue.h \ /usr/include/glib-2.0/glib/gthread.h \ /usr/include/glib-2.0/glib/gerror.h /usr/include/glib-2.0/glib/gquark.h \ /usr/include/glib-2.0/glib/gutils.h \ /usr/include/glib-2.0/glib/gatomic.h \ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \ /usr/include/asm/sigcontext.h /usr/include/bits/sigstack.h \ /usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \ /usr/include/glib-2.0/glib/gbase64.h \ /usr/include/glib-2.0/glib/gbookmarkfile.h \ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \ /usr/include/glib-2.0/glib/gchecksum.h \ /usr/include/glib-2.0/glib/gcompletion.h \ /usr/include/glib-2.0/glib/gconvert.h \ /usr/include/glib-2.0/glib/gdataset.h \ /usr/include/glib-2.0/glib/gdate.h /usr/include/glib-2.0/glib/gdir.h \ /usr/include/glib-2.0/glib/gfileutils.h \ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \ /usr/include/glib-2.0/glib/ghostutils.h \ /usr/include/glib-2.0/glib/giochannel.h \ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \ /usr/include/glib-2.0/glib/gslist.h \ /usr/include/glib-2.0/glib/gstring.h \ /usr/include/glib-2.0/glib/gunicode.h \ /usr/include/glib-2.0/glib/gkeyfile.h \ /usr/include/glib-2.0/glib/gmappedfile.h \ /usr/include/glib-2.0/glib/gmarkup.h \ /usr/include/glib-2.0/glib/gmessages.h \ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \ /usr/include/glib-2.0/glib/gpattern.h \ /usr/include/glib-2.0/glib/gprimes.h \ /usr/include/glib-2.0/glib/gqsort.h /usr/include/glib-2.0/glib/gqueue.h \ /usr/include/glib-2.0/glib/grand.h /usr/include/glib-2.0/glib/grel.h \ /usr/include/glib-2.0/glib/gregex.h \ /usr/include/glib-2.0/glib/gscanner.h \ /usr/include/glib-2.0/glib/gsequence.h \ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \ /usr/include/glib-2.0/glib/gstrfuncs.h \ /usr/include/glib-2.0/glib/gtestutils.h \ /usr/include/glib-2.0/glib/gthreadpool.h \ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \ /usr/include/glib-2.0/glib/gurifuncs.h pygmainloop.h pygmaincontext.h \ pyglib.h pyglib-private.h pyglib-python-compat.h ../config.h: /usr/include/python2.5/Python.h: /usr/include/python2.5/patchlevel.h: /usr/include/python2.5/pyconfig.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h: /usr/include/limits.h: /usr/include/features.h: /usr/include/sys/cdefs.h: /usr/include/bits/wordsize.h: /usr/include/gnu/stubs.h: /usr/include/gnu/stubs-32.h: /usr/include/bits/posix1_lim.h: /usr/include/bits/local_lim.h: /usr/include/linux/limits.h: /usr/include/bits/posix2_lim.h: /usr/include/bits/xopen_lim.h: /usr/include/bits/stdio_lim.h: /usr/include/stdio.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h: /usr/include/bits/types.h: /usr/include/bits/typesizes.h: /usr/include/libio.h: /usr/include/_G_config.h: /usr/include/wchar.h: /usr/include/bits/wchar.h: /usr/include/gconv.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h: /usr/include/bits/sys_errlist.h: /usr/include/string.h: /usr/include/xlocale.h: /usr/include/errno.h: /usr/include/bits/errno.h: /usr/include/linux/errno.h: /usr/include/asm/errno.h: /usr/include/asm-generic/errno.h: /usr/include/asm-generic/errno-base.h: /usr/include/stdlib.h: /usr/include/bits/waitflags.h: /usr/include/bits/waitstatus.h: /usr/include/endian.h: /usr/include/bits/endian.h: /usr/include/sys/types.h: /usr/include/time.h: /usr/include/sys/select.h: /usr/include/bits/select.h: /usr/include/bits/sigset.h: /usr/include/bits/time.h: /usr/include/sys/sysmacros.h: /usr/include/bits/pthreadtypes.h: /usr/include/alloca.h: /usr/include/unistd.h: /usr/include/bits/posix_opt.h: /usr/include/bits/environments.h: /usr/include/bits/confname.h: /usr/include/getopt.h: /usr/include/assert.h: /usr/include/python2.5/pyport.h: /usr/include/stdint.h: /usr/include/math.h: /usr/include/bits/huge_val.h: /usr/include/bits/huge_valf.h: /usr/include/bits/huge_vall.h: /usr/include/bits/inf.h: /usr/include/bits/nan.h: /usr/include/bits/mathdef.h: /usr/include/bits/mathcalls.h: /usr/include/sys/time.h: /usr/include/sys/stat.h: /usr/include/bits/stat.h: /usr/include/python2.5/pymem.h: /usr/include/python2.5/object.h: /usr/include/python2.5/objimpl.h: /usr/include/python2.5/pydebug.h: /usr/include/python2.5/unicodeobject.h: /usr/include/ctype.h: /usr/include/python2.5/intobject.h: /usr/include/python2.5/boolobject.h: /usr/include/python2.5/longobject.h: /usr/include/python2.5/floatobject.h: /usr/include/python2.5/complexobject.h: /usr/include/python2.5/rangeobject.h: /usr/include/python2.5/stringobject.h: /usr/include/python2.5/bufferobject.h: /usr/include/python2.5/tupleobject.h: /usr/include/python2.5/listobject.h: /usr/include/python2.5/dictobject.h: /usr/include/python2.5/enumobject.h: /usr/include/python2.5/setobject.h: /usr/include/python2.5/methodobject.h: /usr/include/python2.5/moduleobject.h: /usr/include/python2.5/funcobject.h: /usr/include/python2.5/classobject.h: /usr/include/python2.5/fileobject.h: /usr/include/python2.5/cobject.h: /usr/include/python2.5/traceback.h: /usr/include/python2.5/sliceobject.h: /usr/include/python2.5/cellobject.h: /usr/include/python2.5/iterobject.h: /usr/include/python2.5/genobject.h: /usr/include/python2.5/descrobject.h: /usr/include/python2.5/weakrefobject.h: /usr/include/python2.5/codecs.h: /usr/include/python2.5/pyerrors.h: /usr/include/python2.5/pystate.h: /usr/include/python2.5/pyarena.h: /usr/include/python2.5/modsupport.h: /usr/include/python2.5/pythonrun.h: /usr/include/python2.5/ceval.h: /usr/include/python2.5/sysmodule.h: /usr/include/python2.5/intrcheck.h: /usr/include/python2.5/import.h: /usr/include/python2.5/abstract.h: /usr/include/python2.5/compile.h: /usr/include/python2.5/code.h: /usr/include/python2.5/eval.h: /usr/include/python2.5/pystrtod.h: /usr/include/python2.5/pyfpe.h: /usr/include/python2.5/pythread.h: /usr/include/glib-2.0/glib.h: /usr/include/glib-2.0/glib/galloca.h: /usr/include/glib-2.0/glib/gtypes.h: /usr/lib/glib-2.0/include/glibconfig.h: /usr/include/glib-2.0/glib/gmacros.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h: /usr/include/glib-2.0/glib/garray.h: /usr/include/glib-2.0/glib/gasyncqueue.h: /usr/include/glib-2.0/glib/gthread.h: /usr/include/glib-2.0/glib/gerror.h: /usr/include/glib-2.0/glib/gquark.h: /usr/include/glib-2.0/glib/gutils.h: /usr/include/glib-2.0/glib/gatomic.h: /usr/include/glib-2.0/glib/gbacktrace.h: /usr/include/signal.h: /usr/include/bits/signum.h: /usr/include/bits/siginfo.h: /usr/include/bits/sigaction.h: /usr/include/bits/sigcontext.h: /usr/include/asm/sigcontext.h: /usr/include/bits/sigstack.h: /usr/include/sys/ucontext.h: /usr/include/bits/sigthread.h: /usr/include/glib-2.0/glib/gbase64.h: /usr/include/glib-2.0/glib/gbookmarkfile.h: /usr/include/glib-2.0/glib/gcache.h: /usr/include/glib-2.0/glib/glist.h: /usr/include/glib-2.0/glib/gmem.h: /usr/include/glib-2.0/glib/gslice.h: /usr/include/glib-2.0/glib/gchecksum.h: /usr/include/glib-2.0/glib/gcompletion.h: /usr/include/glib-2.0/glib/gconvert.h: /usr/include/glib-2.0/glib/gdataset.h: /usr/include/glib-2.0/glib/gdate.h: /usr/include/glib-2.0/glib/gdir.h: /usr/include/glib-2.0/glib/gfileutils.h: /usr/include/glib-2.0/glib/ghash.h: /usr/include/glib-2.0/glib/ghook.h: /usr/include/glib-2.0/glib/ghostutils.h: /usr/include/glib-2.0/glib/giochannel.h: /usr/include/glib-2.0/glib/gmain.h: /usr/include/glib-2.0/glib/gpoll.h: /usr/include/glib-2.0/glib/gslist.h: /usr/include/glib-2.0/glib/gstring.h: /usr/include/glib-2.0/glib/gunicode.h: /usr/include/glib-2.0/glib/gkeyfile.h: /usr/include/glib-2.0/glib/gmappedfile.h: /usr/include/glib-2.0/glib/gmarkup.h: /usr/include/glib-2.0/glib/gmessages.h: /usr/include/glib-2.0/glib/gnode.h: /usr/include/glib-2.0/glib/goption.h: /usr/include/glib-2.0/glib/gpattern.h: /usr/include/glib-2.0/glib/gprimes.h: /usr/include/glib-2.0/glib/gqsort.h: /usr/include/glib-2.0/glib/gqueue.h: /usr/include/glib-2.0/glib/grand.h: /usr/include/glib-2.0/glib/grel.h: /usr/include/glib-2.0/glib/gregex.h: /usr/include/glib-2.0/glib/gscanner.h: /usr/include/glib-2.0/glib/gsequence.h: /usr/include/glib-2.0/glib/gshell.h: /usr/include/glib-2.0/glib/gspawn.h: /usr/include/glib-2.0/glib/gstrfuncs.h: /usr/include/glib-2.0/glib/gtestutils.h: /usr/include/glib-2.0/glib/gthreadpool.h: /usr/include/glib-2.0/glib/gtimer.h: /usr/include/glib-2.0/glib/gtree.h: /usr/include/glib-2.0/glib/gurifuncs.h: pygmainloop.h: pygmaincontext.h: pyglib.h: pyglib-private.h: pyglib-python-compat.h: ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.deps/libpyglib_2_0_python_la-pyglib.Plo0000644000000000000000000003213511272036630030571 0ustar rootrootlibpyglib_2_0_python_la-pyglib.lo .libs/libpyglib_2_0_python_la-pyglib.o: \ pyglib.c ../config.h /usr/include/python2.5/Python.h \ /usr/include/python2.5/patchlevel.h /usr/include/python2.5/pyconfig.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h \ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ /usr/include/gnu/stubs-32.h /usr/include/bits/posix1_lim.h \ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h \ /usr/include/bits/types.h /usr/include/bits/typesizes.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ /usr/include/bits/wchar.h /usr/include/gconv.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h \ /usr/include/bits/sys_errlist.h /usr/include/string.h \ /usr/include/xlocale.h /usr/include/errno.h /usr/include/bits/errno.h \ /usr/include/linux/errno.h /usr/include/asm/errno.h \ /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ /usr/include/stdlib.h /usr/include/bits/waitflags.h \ /usr/include/bits/waitstatus.h /usr/include/endian.h \ /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ /usr/include/sys/select.h /usr/include/bits/select.h \ /usr/include/bits/sigset.h /usr/include/bits/time.h \ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ /usr/include/alloca.h /usr/include/unistd.h \ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ /usr/include/bits/confname.h /usr/include/getopt.h \ /usr/include/assert.h /usr/include/python2.5/pyport.h \ /usr/include/stdint.h /usr/include/math.h /usr/include/bits/huge_val.h \ /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ /usr/include/bits/inf.h /usr/include/bits/nan.h \ /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ /usr/include/sys/time.h /usr/include/sys/stat.h \ /usr/include/bits/stat.h /usr/include/python2.5/pymem.h \ /usr/include/python2.5/object.h /usr/include/python2.5/objimpl.h \ /usr/include/python2.5/pydebug.h /usr/include/python2.5/unicodeobject.h \ /usr/include/ctype.h /usr/include/python2.5/intobject.h \ /usr/include/python2.5/boolobject.h /usr/include/python2.5/longobject.h \ /usr/include/python2.5/floatobject.h \ /usr/include/python2.5/complexobject.h \ /usr/include/python2.5/rangeobject.h \ /usr/include/python2.5/stringobject.h \ /usr/include/python2.5/bufferobject.h \ /usr/include/python2.5/tupleobject.h \ /usr/include/python2.5/listobject.h /usr/include/python2.5/dictobject.h \ /usr/include/python2.5/enumobject.h /usr/include/python2.5/setobject.h \ /usr/include/python2.5/methodobject.h \ /usr/include/python2.5/moduleobject.h \ /usr/include/python2.5/funcobject.h \ /usr/include/python2.5/classobject.h \ /usr/include/python2.5/fileobject.h /usr/include/python2.5/cobject.h \ /usr/include/python2.5/traceback.h /usr/include/python2.5/sliceobject.h \ /usr/include/python2.5/cellobject.h /usr/include/python2.5/iterobject.h \ /usr/include/python2.5/genobject.h /usr/include/python2.5/descrobject.h \ /usr/include/python2.5/weakrefobject.h /usr/include/python2.5/codecs.h \ /usr/include/python2.5/pyerrors.h /usr/include/python2.5/pystate.h \ /usr/include/python2.5/pyarena.h /usr/include/python2.5/modsupport.h \ /usr/include/python2.5/pythonrun.h /usr/include/python2.5/ceval.h \ /usr/include/python2.5/sysmodule.h /usr/include/python2.5/intrcheck.h \ /usr/include/python2.5/import.h /usr/include/python2.5/abstract.h \ /usr/include/python2.5/compile.h /usr/include/python2.5/code.h \ /usr/include/python2.5/eval.h /usr/include/python2.5/pystrtod.h \ /usr/include/python2.5/pyfpe.h /usr/include/python2.5/pythread.h \ pyglib.h /usr/include/glib-2.0/glib.h \ /usr/include/glib-2.0/glib/galloca.h \ /usr/include/glib-2.0/glib/gtypes.h \ /usr/lib/glib-2.0/include/glibconfig.h \ /usr/include/glib-2.0/glib/gmacros.h \ /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h \ /usr/include/glib-2.0/glib/garray.h \ /usr/include/glib-2.0/glib/gasyncqueue.h \ /usr/include/glib-2.0/glib/gthread.h \ /usr/include/glib-2.0/glib/gerror.h /usr/include/glib-2.0/glib/gquark.h \ /usr/include/glib-2.0/glib/gutils.h \ /usr/include/glib-2.0/glib/gatomic.h \ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \ /usr/include/asm/sigcontext.h /usr/include/bits/sigstack.h \ /usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \ /usr/include/glib-2.0/glib/gbase64.h \ /usr/include/glib-2.0/glib/gbookmarkfile.h \ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \ /usr/include/glib-2.0/glib/gchecksum.h \ /usr/include/glib-2.0/glib/gcompletion.h \ /usr/include/glib-2.0/glib/gconvert.h \ /usr/include/glib-2.0/glib/gdataset.h \ /usr/include/glib-2.0/glib/gdate.h /usr/include/glib-2.0/glib/gdir.h \ /usr/include/glib-2.0/glib/gfileutils.h \ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \ /usr/include/glib-2.0/glib/ghostutils.h \ /usr/include/glib-2.0/glib/giochannel.h \ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \ /usr/include/glib-2.0/glib/gslist.h \ /usr/include/glib-2.0/glib/gstring.h \ /usr/include/glib-2.0/glib/gunicode.h \ /usr/include/glib-2.0/glib/gkeyfile.h \ /usr/include/glib-2.0/glib/gmappedfile.h \ /usr/include/glib-2.0/glib/gmarkup.h \ /usr/include/glib-2.0/glib/gmessages.h \ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \ /usr/include/glib-2.0/glib/gpattern.h \ /usr/include/glib-2.0/glib/gprimes.h \ /usr/include/glib-2.0/glib/gqsort.h /usr/include/glib-2.0/glib/gqueue.h \ /usr/include/glib-2.0/glib/grand.h /usr/include/glib-2.0/glib/grel.h \ /usr/include/glib-2.0/glib/gregex.h \ /usr/include/glib-2.0/glib/gscanner.h \ /usr/include/glib-2.0/glib/gsequence.h \ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \ /usr/include/glib-2.0/glib/gstrfuncs.h \ /usr/include/glib-2.0/glib/gtestutils.h \ /usr/include/glib-2.0/glib/gthreadpool.h \ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \ /usr/include/glib-2.0/glib/gurifuncs.h pyglib-private.h \ pyglib-python-compat.h pygmaincontext.h pygoptioncontext.h \ pygoptiongroup.h ../config.h: /usr/include/python2.5/Python.h: /usr/include/python2.5/patchlevel.h: /usr/include/python2.5/pyconfig.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/limits.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/syslimits.h: /usr/include/limits.h: /usr/include/features.h: /usr/include/sys/cdefs.h: /usr/include/bits/wordsize.h: /usr/include/gnu/stubs.h: /usr/include/gnu/stubs-32.h: /usr/include/bits/posix1_lim.h: /usr/include/bits/local_lim.h: /usr/include/linux/limits.h: /usr/include/bits/posix2_lim.h: /usr/include/bits/xopen_lim.h: /usr/include/bits/stdio_lim.h: /usr/include/stdio.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stddef.h: /usr/include/bits/types.h: /usr/include/bits/typesizes.h: /usr/include/libio.h: /usr/include/_G_config.h: /usr/include/wchar.h: /usr/include/bits/wchar.h: /usr/include/gconv.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/stdarg.h: /usr/include/bits/sys_errlist.h: /usr/include/string.h: /usr/include/xlocale.h: /usr/include/errno.h: /usr/include/bits/errno.h: /usr/include/linux/errno.h: /usr/include/asm/errno.h: /usr/include/asm-generic/errno.h: /usr/include/asm-generic/errno-base.h: /usr/include/stdlib.h: /usr/include/bits/waitflags.h: /usr/include/bits/waitstatus.h: /usr/include/endian.h: /usr/include/bits/endian.h: /usr/include/sys/types.h: /usr/include/time.h: /usr/include/sys/select.h: /usr/include/bits/select.h: /usr/include/bits/sigset.h: /usr/include/bits/time.h: /usr/include/sys/sysmacros.h: /usr/include/bits/pthreadtypes.h: /usr/include/alloca.h: /usr/include/unistd.h: /usr/include/bits/posix_opt.h: /usr/include/bits/environments.h: /usr/include/bits/confname.h: /usr/include/getopt.h: /usr/include/assert.h: /usr/include/python2.5/pyport.h: /usr/include/stdint.h: /usr/include/math.h: /usr/include/bits/huge_val.h: /usr/include/bits/huge_valf.h: /usr/include/bits/huge_vall.h: /usr/include/bits/inf.h: /usr/include/bits/nan.h: /usr/include/bits/mathdef.h: /usr/include/bits/mathcalls.h: /usr/include/sys/time.h: /usr/include/sys/stat.h: /usr/include/bits/stat.h: /usr/include/python2.5/pymem.h: /usr/include/python2.5/object.h: /usr/include/python2.5/objimpl.h: /usr/include/python2.5/pydebug.h: /usr/include/python2.5/unicodeobject.h: /usr/include/ctype.h: /usr/include/python2.5/intobject.h: /usr/include/python2.5/boolobject.h: /usr/include/python2.5/longobject.h: /usr/include/python2.5/floatobject.h: /usr/include/python2.5/complexobject.h: /usr/include/python2.5/rangeobject.h: /usr/include/python2.5/stringobject.h: /usr/include/python2.5/bufferobject.h: /usr/include/python2.5/tupleobject.h: /usr/include/python2.5/listobject.h: /usr/include/python2.5/dictobject.h: /usr/include/python2.5/enumobject.h: /usr/include/python2.5/setobject.h: /usr/include/python2.5/methodobject.h: /usr/include/python2.5/moduleobject.h: /usr/include/python2.5/funcobject.h: /usr/include/python2.5/classobject.h: /usr/include/python2.5/fileobject.h: /usr/include/python2.5/cobject.h: /usr/include/python2.5/traceback.h: /usr/include/python2.5/sliceobject.h: /usr/include/python2.5/cellobject.h: /usr/include/python2.5/iterobject.h: /usr/include/python2.5/genobject.h: /usr/include/python2.5/descrobject.h: /usr/include/python2.5/weakrefobject.h: /usr/include/python2.5/codecs.h: /usr/include/python2.5/pyerrors.h: /usr/include/python2.5/pystate.h: /usr/include/python2.5/pyarena.h: /usr/include/python2.5/modsupport.h: /usr/include/python2.5/pythonrun.h: /usr/include/python2.5/ceval.h: /usr/include/python2.5/sysmodule.h: /usr/include/python2.5/intrcheck.h: /usr/include/python2.5/import.h: /usr/include/python2.5/abstract.h: /usr/include/python2.5/compile.h: /usr/include/python2.5/code.h: /usr/include/python2.5/eval.h: /usr/include/python2.5/pystrtod.h: /usr/include/python2.5/pyfpe.h: /usr/include/python2.5/pythread.h: pyglib.h: /usr/include/glib-2.0/glib.h: /usr/include/glib-2.0/glib/galloca.h: /usr/include/glib-2.0/glib/gtypes.h: /usr/lib/glib-2.0/include/glibconfig.h: /usr/include/glib-2.0/glib/gmacros.h: /usr/lib/gcc/i486-t2-linux-gnu/4.2.2/include/float.h: /usr/include/glib-2.0/glib/garray.h: /usr/include/glib-2.0/glib/gasyncqueue.h: /usr/include/glib-2.0/glib/gthread.h: /usr/include/glib-2.0/glib/gerror.h: /usr/include/glib-2.0/glib/gquark.h: /usr/include/glib-2.0/glib/gutils.h: /usr/include/glib-2.0/glib/gatomic.h: /usr/include/glib-2.0/glib/gbacktrace.h: /usr/include/signal.h: /usr/include/bits/signum.h: /usr/include/bits/siginfo.h: /usr/include/bits/sigaction.h: /usr/include/bits/sigcontext.h: /usr/include/asm/sigcontext.h: /usr/include/bits/sigstack.h: /usr/include/sys/ucontext.h: /usr/include/bits/sigthread.h: /usr/include/glib-2.0/glib/gbase64.h: /usr/include/glib-2.0/glib/gbookmarkfile.h: /usr/include/glib-2.0/glib/gcache.h: /usr/include/glib-2.0/glib/glist.h: /usr/include/glib-2.0/glib/gmem.h: /usr/include/glib-2.0/glib/gslice.h: /usr/include/glib-2.0/glib/gchecksum.h: /usr/include/glib-2.0/glib/gcompletion.h: /usr/include/glib-2.0/glib/gconvert.h: /usr/include/glib-2.0/glib/gdataset.h: /usr/include/glib-2.0/glib/gdate.h: /usr/include/glib-2.0/glib/gdir.h: /usr/include/glib-2.0/glib/gfileutils.h: /usr/include/glib-2.0/glib/ghash.h: /usr/include/glib-2.0/glib/ghook.h: /usr/include/glib-2.0/glib/ghostutils.h: /usr/include/glib-2.0/glib/giochannel.h: /usr/include/glib-2.0/glib/gmain.h: /usr/include/glib-2.0/glib/gpoll.h: /usr/include/glib-2.0/glib/gslist.h: /usr/include/glib-2.0/glib/gstring.h: /usr/include/glib-2.0/glib/gunicode.h: /usr/include/glib-2.0/glib/gkeyfile.h: /usr/include/glib-2.0/glib/gmappedfile.h: /usr/include/glib-2.0/glib/gmarkup.h: /usr/include/glib-2.0/glib/gmessages.h: /usr/include/glib-2.0/glib/gnode.h: /usr/include/glib-2.0/glib/goption.h: /usr/include/glib-2.0/glib/gpattern.h: /usr/include/glib-2.0/glib/gprimes.h: /usr/include/glib-2.0/glib/gqsort.h: /usr/include/glib-2.0/glib/gqueue.h: /usr/include/glib-2.0/glib/grand.h: /usr/include/glib-2.0/glib/grel.h: /usr/include/glib-2.0/glib/gregex.h: /usr/include/glib-2.0/glib/gscanner.h: /usr/include/glib-2.0/glib/gsequence.h: /usr/include/glib-2.0/glib/gshell.h: /usr/include/glib-2.0/glib/gspawn.h: /usr/include/glib-2.0/glib/gstrfuncs.h: /usr/include/glib-2.0/glib/gtestutils.h: /usr/include/glib-2.0/glib/gthreadpool.h: /usr/include/glib-2.0/glib/gtimer.h: /usr/include/glib-2.0/glib/gtree.h: /usr/include/glib-2.0/glib/gurifuncs.h: pyglib-private.h: pyglib-python-compat.h: pygmaincontext.h: pygoptioncontext.h: pygoptiongroup.h: ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/_glib_la-pygiochannel.lo0000644000000000000000000000047711272036632025676 0ustar rootroot# _glib_la-pygiochannel.lo - a libtool object file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # Name of the PIC object. pic_object='.libs/_glib_la-pygiochannel.o' # Name of the non-PIC object non_pic_object=none ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/_glib_la-pygsource.lo0000644000000000000000000000047111272036633025231 0ustar rootroot# _glib_la-pygsource.lo - a libtool object file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # Name of the PIC object. pic_object='.libs/_glib_la-pygsource.o' # Name of the non-PIC object non_pic_object=none ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/libpyglib-2.0-python.la0000644000000000000000000000212211272036631025227 0ustar rootroot# libpyglib-2.0-python.la - a libtool library file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='libpyglib-2.0-python.so.0' # Names of this library. library_names='libpyglib-2.0-python.so.0.0.0 libpyglib-2.0-python.so.0 libpyglib-2.0-python.so' # The name of the static archive. old_library='' # Linker flags that can not go in dependency_libs. inherited_linker_flags=' -pthread' # Libraries that this one depends upon. dependency_libs=' /usr/lib/libgobject-2.0.la /usr/lib/libgthread-2.0.la -lpthread -lrt /usr/lib/libglib-2.0.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for libpyglib-2.0-python. current=0 age=0 revision=0 # Is this an already installed library? installed=no # Should we warn about portability when linking against -modules? shouldnotlink=no # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/lib' ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/_glib_la-pygoptioncontext.lo0000644000000000000000000000050711272036632026645 0ustar rootroot# _glib_la-pygoptioncontext.lo - a libtool object file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # Name of the PIC object. pic_object='.libs/_glib_la-pygoptioncontext.o' # Name of the non-PIC object non_pic_object=none ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/0000755000000000000000000000000011272036720022131 5ustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/_glib.la0000777000000000000000000000000011272036714025330 2../_glib.laustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/_glib.soT0000755000000000000000000022470211272036720023706 0ustar rootrootELFà@4Dæ4 (dÐdÐdÐdàdàDXxÐxàxàøøQåtdÅÑ|µ/[!#ÀºË"δ3ƒÃ§:¯¼yͬg=‹­«G•FŒ~’ªl7±‡ N.£Ç&² Ÿ_¨¶“ŽÂfvÊhY9]¾Ì`¤¥dÉ)¦$–Å‚RÐ;‘Ox˜½žT¹—…k›¡·aBÆ{rϰSˆVœe»czÁ¿4 5 *8+?E%I2 WQK>0,iJZ\-XpUm 6n'q P<ou†”s€™H1L}‰j^MA©šb®Š(³¢„¸@wÄDÈCt¿;e™hé¶¾ÞŠ—c ñ ªÈÛ­ÀÝ ]Î Þeÿ± Z‹ #LÛËu Ö ‰—á|u— ÿí  +‘/&RåBÝ býä–9­ %#À\T?}ûU9 kÅ ‰«¿ äêÒ_þlu ¸¶ü% UI‚€&P mª‘ ° ÁÕw  k;„SÆÐkE Ém Ã; øí¹ô +«¢N«z V^Ò ‰¹n¯ç d[$ $ 3 4{GÌ`ëo£·`÷î¹ ôû‘\y` §Øq6Žyç  ŠG¾^ ȨP{ 36ì eæAÐ \ÙF`dÔ€ 19Öä •UX p*° È †  Rî¹w ‰ô ¹hCÝ ‘})j¶˜ d`"e £«éܰ ¿ÁbT ~;€¶ E _þ V r‚ Eè€5 ôO DÆf^ æ JÊ œ¹ [kó¥ž\2Š ¹û YND @ ¡Vø¦ 5œ,fU O « º@ÄÚ"DÿI2[&’m Z¿’__gmon_start____cxa_finalize_Jv_RegisterClassesPyDict_SizePyExc_TypeErrorPyErr_SetStringPyDict_NextPyString_TypePyType_IsSubtypePyString_AsStringstrcmpPyInt_AsLongPyErr_OccurredPyErr_ClearPyExc_ValueErrorPyTuple_SizePySequence_GetSlice_PyArg_ParseTuple_SizeTPyCallable_Check_Py_BuildValue_SizeT_pyglib_destroy_notify_pyglib_handler_marshalg_idle_add_fullPyInt_FromLongg_timeout_add_fullg_timeout_add_seconds_fullg_return_if_fail_warningpyglib_gil_state_ensurePyTuple_GetItemPySequence_ConcatPyObject_CallObjectPyErr_Print_Py_NoneStructPyExc_WarningPyErr_WarnExPyObject_IsTruepyglib_gil_state_releasePyObject_AsFileDescriptorg_io_channel_unix_newg_io_add_watch_fullg_io_channel_unrefg_source_removePyBool_FromLongg_main_context_defaultpyglib_main_context_new_PyObject_CallFunction_SizeTg_slice_free1_PyArg_ParseTupleAndKeywords_SizeTg_slice_allocg_child_watch_add_fullg_markup_escape_textPyString_FromStringg_freeg_get_current_timepyglib_float_from_timevalg_get_user_cache_dirg_get_user_config_dirg_get_user_data_dirg_get_user_special_dirg_main_depthg_filename_display_namestrlenPyUnicodeUCS2_DecodeUTF8g_filename_display_basenameg_filename_from_utf8pyglib_error_checkPyString_FromStringAndSizeg_get_application_namePyObject_ReprPyErr_Formatg_set_application_nameg_get_prgnameg_set_prgnamePyCObject_FromVoidPtrPyDict_SetItemStringpyglib_init_internalPyDict_NewPyExc_RuntimeErrorPyErr_NewExceptionglib_micro_versionglib_minor_versionglib_major_versionPyModule_AddIntConstantPyModule_AddStringConstantg_option_error_quarkg_quark_to_stringinit_glibPy_InitModule4PyModule_GetDictg_io_channel_read_linePyExc_StopIterationPyObject_Free_Py_TrueStructg_io_channel_shutdowng_io_channel_set_buffer_sizeg_io_channel_get_buffer_sizeg_io_channel_set_bufferedg_io_channel_get_bufferedg_io_channel_set_encodingg_io_channel_get_encoding_PyString_Resizepyglib_unblock_threadsg_io_channel_read_charspyglib_block_threadsg_io_channel_write_charsPyObject_GetIterPyIter_NextPyErr_ExceptionMatchesPyString_AsStringAndSizeg_io_channel_flushg_io_channel_set_flagsg_io_channel_get_flagsg_io_channel_get_buffer_conditiong_io_channel_set_close_on_unrefg_io_channel_get_close_on_unref_Py_ZeroStructPyLong_FromUnsignedLongPyList_NewPyList_Appendg_io_channel_seek_positiong_io_channel_new_filePyType_GenericAllocPyType_GenericNewPyType_Readyg_option_context_newg_option_context_freePyList_TypePyList_Sizeg_mallocPyList_GetItemg_strdupg_strfreevg_strdupvpyglib_threads_enabledPyEval_SaveThreadg_option_context_parsePyEval_RestoreThreadg_strv_lengthPyList_SetItemg_option_context_set_help_enabledg_option_context_get_help_enabledg_option_context_set_ignore_unknown_optionsg_option_context_get_ignore_unknown_optionsPyObject_IsInstancepyglib_option_group_transfer_groupg_option_context_set_main_groupg_option_context_add_groupg_slist_foreachg_slist_freeg_option_group_newg_option_group_freepyglib_gerror_exception_checkg_malloc0PyTuple_Typeg_slist_prependg_option_group_add_entriesg_option_group_set_translation_domaing_main_context_newg_main_context_unrefg_main_context_iterationg_main_context_pendingPyErr_CheckSignalsPyExc_KeyboardInterruptPyErr_SetNoneg_main_loop_quitPyThread_get_key_valueg_assertion_messagecloseg_source_newg_main_loop_newg_source_attachg_source_unrefg_source_destroyg_main_loop_unrefg_main_loop_get_contextg_main_loop_is_runningg_main_loop_runPyThread_create_keyPyThread_delete_key_valueg_main_loop_refPyThread_set_key_valueg_source_get_contextg_snprintfg_source_set_callbackg_source_add_pollg_source_remove_pollg_source_get_current_timePyFloat_FromDoubleg_source_get_priorityPyInt_Typeg_source_set_priorityg_source_get_can_recurseg_source_set_can_recurseg_source_get_idPyObject_ClearWeakRefsPyObject_GC_UnTrackPyObject_GC_Del_PyObject_CallMethod_SizeTPyObject_GetAttrStringg_idle_source_newg_timeout_source_newPyString_FromFormatg_spawn_close_pidPyObject_MallocPyObject_InitPySequence_CheckPySequence_Sizeg_spawn_async_with_pipeslibpyglib-2.0-python.so.0libgobject-2.0.so.0libgthread-2.0.so.0libpthread.so.0librt.so.1libglib-2.0.so.0libc.so.6_glib.soGLIBC_2.0GLIBC_2.1.3b ii ¡Žsi «ii ¡˜á á¤á¬á¼áÄáÈáÌáäáìáååå åååå$å@åDåLåPåTå\å`ådålåpåtå|å€å„åŒåå”åœå å¤å¬å°å´å¼åÀåÄåÌåÐåÔåàåäåðåôåææææ æ$æ0æ4æ@æDæPæTæ`ædæpætæ€æ„ææ”æÌæ€çˆçç˜ç ç¨ç°ç¸çÀçÈçÌçÐçÔçÜçäçìçðçè@èDèPèTè`èdèpètè€è„èè”è è¤è°è´èÀèÄèÐèÔèàèäèðèôèéééé é$é0é4é@éDéPéTé`édépétéé”é˜é¬é`êhêpêxê€ê ê¤ê°ê´êÀêÄêÐêÔêàêäêðêôêëëëë ë$ëLëììì ììì@ìDìPìTìŒì@íDíPíTí€í„íˆíŒí¬í`îdî€î„îî”î î¤î°î´îìî ï¨ï°ïÀïÄïÐïÔïàïäïðïôïðððð ð$ð@ðDðTðXð\ðhðlðpð|ð€ð¤ð¨ð¬ð°ðÌð€ñ¬ñ`òdòŒò@óTóhóó”ó¬ó`ôdô€ô„ôˆôŒôô”ô˜ôœô ôpátáxá|á€á „áˆáŒáá'”á,œá1¨áH°áM´áQ¸á[ÀáhÐá…Ôá†ØáŠÜáàá¡èá¶ðáÄôáÇââ ââââ â â $â (â,â0â4â8â<â@âDâHâLâPâTâXâ\â`âdâhâ lâ!pâ"tâ#xâ$|â%€â&„â(ˆâ)Œâ*â+”â-˜â.œâ/ â0¤â2¨â3¬â4°â5´â6¸â7¼â8Àâ9Äâ:Èâ;Ìâ<Ðâ=Ôâ>Øâ?Üâ@àâAäâBèâCìâDðâEôâFøâGüâIãJãKãL ãNãOãPãRãS ãT$ãU(ãV,ãW0ãY4ãZ8ã\<ã]@ã^Dã_Hã`LãaPãbTãcXãd\ãe`ãfdãghãilãjpãktãlxãm|ãn€ão„ãpˆãqŒãrãs”ãt˜ãuœãv ãw¤ãx¨ãy¬ãz°ã{´ã|¸ã}¼ã~ÀãÄã€ÈãÌã‚ÐãƒÔã„Øã‡Üãˆàã‰äã‹èãŒìãðãŽôãøã‘üã’ä“ä”ä• ä–ä—ä˜ä™äš ä›$äœ(ä,äž0äŸ4ä 8ä¢<ä£@ä¤Dä¥Hä¦Lä§Pä¨Tä©Xäª\ä«`ä¬dä­hä®lä¯pä°tä±xä²|䳀䴄䵈䷌ä¸ä¹”亘仜传佤侨俬äÀ°äÁ´ä¸äüäÅÀäÆÄäÇÈäÈÌäÉÐäÊÔäËØäÌÜäÍàäÎääÏèäÐU‰åSƒìè[Ãô¬ƒ»ÿÿÿtèè2 èzX[]Ãÿ³ÿ£ÿ£ héàÿÿÿÿ£héÐÿÿÿÿ£héÀÿÿÿÿ£hé°ÿÿÿÿ£h é ÿÿÿÿ£ h(éÿÿÿÿ£$h0é€ÿÿÿÿ£(h8épÿÿÿÿ£,h@é`ÿÿÿÿ£0hHéPÿÿÿÿ£4hPé@ÿÿÿÿ£8hXé0ÿÿÿÿ£<h`é ÿÿÿÿ£@hhéÿÿÿÿ£Dhpéÿÿÿÿ£Hhxéðþÿÿÿ£Lh€éàþÿÿÿ£PhˆéÐþÿÿÿ£ThéÀþÿÿÿ£Xh˜é°þÿÿÿ£\h é þÿÿÿ£`h¨éþÿÿÿ£dh°é€þÿÿÿ£hh¸épþÿÿÿ£lhÀé`þÿÿÿ£phÈéPþÿÿÿ£thÐé@þÿÿÿ£xhØé0þÿÿÿ£|hàé þÿÿÿ£€hèéþÿÿÿ£„hðéþÿÿÿ£ˆhøéðýÿÿÿ£Œhéàýÿÿÿ£héÐýÿÿÿ£”héÀýÿÿÿ£˜hé°ýÿÿÿ£œh é ýÿÿÿ£ h(éýÿÿÿ£¤h0é€ýÿÿÿ£¨h8épýÿÿÿ£¬h@é`ýÿÿÿ£°hHéPýÿÿÿ£´hPé@ýÿÿÿ£¸hXé0ýÿÿÿ£¼h`é ýÿÿÿ£Àhhéýÿÿÿ£Ähpéýÿÿÿ£Èhxéðüÿÿÿ£Ìh€éàüÿÿÿ£ÐhˆéÐüÿÿÿ£ÔhéÀüÿÿÿ£Øh˜é°üÿÿÿ£Üh é üÿÿÿ£àh¨éüÿÿÿ£äh°é€üÿÿÿ£èh¸épüÿÿÿ£ìhÀé`üÿÿÿ£ðhÈéPüÿÿÿ£ôhÐé@üÿÿÿ£øhØé0üÿÿÿ£ühàé üÿÿÿ£hèéüÿÿÿ£hðéüÿÿÿ£høéðûÿÿÿ£ héàûÿÿÿ£héÐûÿÿÿ£héÀûÿÿÿ£hé°ûÿÿÿ£h é ûÿÿÿ£ h(éûÿÿÿ£$h0é€ûÿÿÿ£(h8épûÿÿÿ£,h@é`ûÿÿÿ£0hHéPûÿÿÿ£4hPé@ûÿÿÿ£8hXé0ûÿÿÿ£<h`é ûÿÿÿ£@hhéûÿÿÿ£Dhpéûÿÿÿ£Hhxéðúÿÿÿ£Lh€éàúÿÿÿ£PhˆéÐúÿÿÿ£ThéÀúÿÿÿ£Xh˜é°úÿÿÿ£\h é úÿÿÿ£`h¨éúÿÿÿ£dh°é€úÿÿÿ£hh¸épúÿÿÿ£lhÀé`úÿÿÿ£phÈéPúÿÿÿ£thÐé@úÿÿÿ£xhØé0úÿÿÿ£|hàé úÿÿÿ£€hèéúÿÿÿ£„hðéúÿÿÿ£ˆhøéðùÿÿÿ£Œhéàùÿÿÿ£héÐùÿÿÿ£”héÀùÿÿÿ£˜hé°ùÿÿÿ£œh é ùÿÿÿ£ h(éùÿÿÿ£¤h0é€ùÿÿÿ£¨h8épùÿÿÿ£¬h@é`ùÿÿÿ£°hHéPùÿÿÿ£´hPé@ùÿÿÿ£¸hXé0ùÿÿÿ£¼h`é ùÿÿÿ£Àhhéùÿÿÿ£Ähpéùÿÿÿ£Èhxéðøÿÿÿ£Ìh€éàøÿÿÿ£ÐhˆéÐøÿÿÿ£ÔhéÀøÿÿÿ£Øh˜é°øÿÿÿ£Üh é øÿÿÿ£àh¨éøÿÿÿ£äh°逸ÿÿÿ£èh¸épøÿÿÿ£ìhÀé`øÿÿÿ£ðhÈéPøÿÿÿ£ôhÐé@øÿÿÿ£øhØé0øÿÿÿ£ühàé øÿÿÿ£hèéøÿÿÿ£hðéøÿÿÿ£høéð÷ÿÿÿ£ héà÷ÿÿÿ£héÐ÷ÿÿÿ£héÀ÷ÿÿÿ£hé°÷ÿÿÿ£h é ÷ÿÿÿ£ h(é÷ÿÿÿ£$h0é€÷ÿÿÿ£(h8ép÷ÿÿÿ£,h@é`÷ÿÿÿ£0hHéP÷ÿÿÿ£4hPé@÷ÿÿÿ£8hXé0÷ÿÿÿ£<h`é ÷ÿÿÿ£@hhé÷ÿÿÿ£Dhpé÷ÿÿÿ£Hhxéðöÿÿÿ£Lh€éàöÿÿÿ£PhˆéÐöÿÿÿ£ThéÀöÿÿÿ£Xh˜é°öÿÿÿ£\h é öÿÿÿ£`h¨éöÿÿÿ£dh°é€öÿÿÿ£hh¸épöÿÿÿ£lhÀé`öÿÿÿ£phÈéPöÿÿÿ£thÐé@öÿÿÿ£xhØé0öÿÿÿ£|hàé öÿÿÿ£€hèéöÿÿÿ£„hðéöÿÿÿ£ˆhøéðõÿÿÿ£Œhéàõÿÿÿ£héÐõÿÿÿ£”héÀõÿÿÿ£˜hé°õÿÿÿ£œh é õÿÿÿ£ h(éõÿÿÿ£¤h0é€õÿÿÿ£¨h8épõÿÿÿ£¬h@é`õÿÿÿ£°hHéPõÿÿÿ£´hPé@õÿÿÿ£¸hXé0õÿÿÿ£¼h`é õÿÿÿ£Àhhéõÿÿÿ£Ähpéõÿÿÿ£Èhxéðôÿÿÿ£Ìh€éàôÿÿÿ£ÐhˆéÐôÿÿÿ£ÔhéÀôÿÿÿ£Øh˜é°ôÿÿÿ£Üh é ôÿÿÿ£àh¨éôÿÿÿ£äh°é€ôÿÿÿ£èh¸épôÿÿÿ£ìhÀé`ôÿÿÿ£ðhÈéPôÿÿU‰åSƒìè[à ¡€»°uB‹“üÿÿÿ…Òt%ƒì ‹ƒPè#ÿÿÿƒÄ붃À‰ƒ ÿÒ‹ƒ ‹…ÒuéÆƒ°‹]üÉö¼'U‰åSƒìè[Ü ‹‹|þÿÿ…Ét‹“”ÿÿÿ…Òtƒì ƒ|þÿÿPÿ҃ċ]üÉÃU‰åSƒì$èSÃ` ƒ} u ÇEèéU‹E ‰$èmøÿÿ‰Eøƒ}øu ÇEèé5ƒ}øt&‹ƒœÿÿÿ‹ƒ¨Íÿÿ‰D$‰$èØüÿÿÇEèÿÿÿÿé ÇEôEì‰D$ Eð‰D$Eô‰D$‹E ‰$èÅõÿÿ‹Eð‹P‹ƒðÿÿÿ9ÂtB‹Eð‹P‹ƒðÿÿÿ‰D$‰$è­øÿÿ…Àu&‹ƒœÿÿÿ‹ƒÐÍÿÿ‰D$‰$è_üÿÿÇEèÿÿÿÿé‹Eð‰$èøòÿÿ‰ÂƒöÍÿÿ‰D$‰$èTýÿÿ…Àt#‹ƒœÿÿÿ‹ƒÎÿÿ‰D$‰$èüÿÿÇEèÿÿÿÿëJ‹Eì‰$èÂ÷ÿÿ‰Â‹E‰èöõÿÿ…Àt(è-ûÿÿ‹ƒŒÿÿÿ‹ƒ*Îÿÿ‰D$‰$èÓûÿÿÇEèÿÿÿÿëÇEè‹EèƒÄ$[]ÃU‰åSƒì4èÑÃÞžÇEìÇEàÈ‹E ‰$è¿úÿÿ‰Eôƒ}ô&‹ƒœÿÿÿ‹ƒHÎÿÿ‰D$‰$èlûÿÿÇEØé€ÇD$ÇD$‹E ‰$èeúÿÿ‰EèEä‰D$ƒnÎÿÿ‰D$‹Eè‰$èVóÿÿ…Àu3‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEØé‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä‰$è=üÿÿ…Àu&‹ƒœÿÿÿ‹ƒyÎÿÿ‰D$‰$èŸúÿÿÇEØé³‹E‰D$Eà‰$èEýÿÿ…Ày ÇEØé‘‹Eô‰D$ÇD$‹E ‰$èwùÿÿ‰Eìƒ}ìu ÇEØëe‹Uä‹Eì‰D$‰T$ƒ•Îÿÿ‰$èùûÿÿ‰Eðƒ}ðu ÇEØë7‹Uà‹ƒ°ÿÿÿ‰D$ ‹Eð‰D$‹ƒäÿÿÿ‰D$‰$è±øÿÿ‰Eø‹Eø‰$èãôÿÿ‰EØ‹E؃Ä4[]ÃU‰åSƒìDèîÃûœÇEìÇEà‹E ‰$èÜøÿÿ‰Eôƒ}ô&‹ƒœÿÿÿ‹ƒœÎÿÿ‰D$‰$è‰ùÿÿÇEØéŽÇD$ÇD$‹E ‰$è‚øÿÿ‰EèEä‰D$ E܉D$ƒÁÎÿÿ‰D$‹Eè‰$èlñÿÿ…Àu3‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEØé‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä‰$èSúÿÿ…Àu&‹ƒœÿÿÿ‹ƒÐÎÿÿ‰D$‰$èµøÿÿÇEØéº‹E‰D$Eà‰$è[ûÿÿ…Ày ÇEØé˜‹Eô‰D$ÇD$‹E ‰$è÷ÿÿ‰Eìƒ}ìu ÇEØël‹Uä‹Eì‰D$‰T$ƒ•Îÿÿ‰$èúÿÿ‰Eðƒ}ðu ÇEØë>‹UÜ‹Mà‹ƒ°ÿÿÿ‰D$‹Eð‰D$ ‹ƒäÿÿÿ‰D$‰T$‰ $è óÿÿ‰Eø‹Eø‰$èòòÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒìDèýà ›ÇEìÇEà‹E ‰$èëöÿÿ‰Eôƒ}ô&‹ƒœÿÿÿ‹ƒðÎÿÿ‰D$‰$è˜÷ÿÿÇEØéŽÇD$ÇD$‹E ‰$è‘öÿÿ‰EèEä‰D$ E܉D$ƒÏÿÿ‰D$‹Eè‰$è{ïÿÿ…Àu3‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEØé‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä‰$èbøÿÿ…Àu&‹ƒœÿÿÿ‹ƒÐÎÿÿ‰D$‰$èÄöÿÿÇEØéº‹E‰D$Eà‰$èjùÿÿ…Ày ÇEØé˜‹Eô‰D$ÇD$‹E ‰$èœõÿÿ‰Eìƒ}ìu ÇEØël‹Uä‹Eì‰D$‰T$ƒ•Îÿÿ‰$èøÿÿ‰Eðƒ}ðu ÇEØë>‹UÜ‹Mà‹ƒ°ÿÿÿ‰D$‹Eð‰D$ ‹ƒäÿÿÿ‰D$‰T$‰ $èoöÿÿ‰Eø‹Eø‰$èñÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4è Ùƒ}u,ƒDÏÿÿ‰D$ƒ4Ïÿÿ‰D$Ç$èñÿÿÇEØémè ðÿÿ‰Eà‹E‰EäÇD$‹Eä‰$è`õÿÿ‰EèÇD$‹Eä‰$èJõÿÿ‰Â‹E ‰D$‰T$ƒVÏÿÿ‰$è/÷ÿÿ‰EìÇD$‹Eä‰$èõÿÿ‰D$‹Eì‰$èÚïÿÿ‰Eð‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eð‰D$‹Eè‰$è¾ñÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒ}ôuè9óÿÿÇEøëk‹ƒàÿÿÿ9Eôu+‹ƒØÿÿÿ‹ÇD$ƒ\Ïÿÿ‰D$‰$è3ñÿÿ…Àtèúòÿÿ‹Eô‰$èíÿÿ‰Eø‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eà‰$èŠïÿÿ‹Eø‰EØ‹E؃Ä4[]ÃU‰åSƒìTèRÃ_—ÇEäÇEÔ‹E ‰$è@óÿÿ‰Eðƒ}ð&‹ƒœÿÿÿ‹ƒ Ïÿÿ‰D$‰$èíóÿÿÇEÈéáÇD$ÇD$‹E ‰$èæòÿÿ‰EàE؉D$EЉD$ E܉D$ƒÆÏÿÿ‰D$‹Eà‰$èÉëÿÿ…Àu3‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒÇEÈéb‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒ‹E܉$èàëÿÿ‰Eìƒ}ìy ÇEÈé‹E؉$èôÿÿ…Àu&‹ƒœÿÿÿ‹ƒ×Ïÿÿ‰D$‰$èòòÿÿÇEÈéæ‹E‰D$EÔ‰$è˜õÿÿ…Ày ÇEÈéÄ‹Eð‰D$ÇD$‹E ‰$èÊñÿÿ‰Eäƒ}äu ÇEÈé•‹UÜ‹MØ‹Eä‰D$ ‰T$‰L$ƒóÏÿÿ‰$èBôÿÿ‰Eèƒ}èu ÇEÈë`‹Eì‰$èÕéÿÿ‰Eô‹EЉ‹MÔ‹ƒ°ÿÿÿ‰D$‹Eè‰D$ƒÛfÿÿ‰D$ ‰T$‰L$‹Eô‰$èüèÿÿ‰Eø‹Eô‰$è^ñÿÿ‹Eø‰$èíÿÿ‰EÈ‹EȃÄT[]ÃU‰åSƒì$èÕEø‰D$ƒùÏÿÿ‰D$‹E ‰$èùéÿÿ…Àu ÇEèë‹Eø‰$èAïÿÿ‰$èééÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè´ÃÁ”è–íÿÿ‰$è¾ëÿÿƒÄ[]ÃU‰åSƒì$èÜ”‹E‰Eðè»ëÿÿ‰Eø‹Eð‹@…Àt4‹Eð‹P‹Eð‹‰T$‹E ‰D$ ‹E‰D$ƒ Ðÿÿ‰D$‰ $èŸéÿÿ‰Eôë(‹Eð‹‹E ‰D$ ‹E‰D$ƒ Ðÿÿ‰D$‰$èuéÿÿ‰Eôƒ}ôt)‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒëè.ïÿÿ‹Eø‰$èóëÿÿƒÄ$[]ÃU‰åSƒì$èÄÃÑ“‹E‰Eø‹Eø‹‹ƒê‰‹…Àu‹Eø‹‹@‹P‹Eø‹‰$ÿÒ‹Eø‹@…Àt*‹Eø‹@‹ƒê‰‹…Àu‹Eø‹@‹@‹P‹Eø‹@‰$ÿÒ‹Eø‰D$Ç$è‡ñÿÿƒÄ$[]ÃU‰åSƒìDè8ÃE“ÇEðÇEäEð‰D$Eä‰D$Eè‰D$Eì‰D$ƒ‰D$ ƒ"Ðÿÿ‰D$‹E‰D$‹E ‰$èðÿÿ…Àu ÇEØé¶‹Eè‰$è$ñÿÿ…Àu&‹ƒœÿÿÿ‹ƒ@Ðÿÿ‰D$‰$è†ïÿÿÇEØéÇ$èÎëÿÿ‰Eø‹Uè‹Eø‰‹Uä‹Eø‰P‹Eø‹‹ƒÀ‰‹Eø‹@…Àt ‹Eø‹P‹ƒÀ‰‹Uì‹Mðƒ#lÿÿ‰D$‹Eø‰D$ ƒXkÿÿ‰D$‰T$‰ $èJíÿÿ‰Eô‹Eô‰$èüéÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4èÃ’Eì‰D$Eð‰D$ƒ$‰D$ ƒ|Ðÿÿ‰D$‹E‰D$‹E ‰$èzïÿÿ…Àu ÇEèë4‹Eì‹Uð‰D$‰$èÛæÿÿ‰Eô‹Eô‰$èMéÿÿ‰Eø‹Eô‰$èßäÿÿ‹Eø‰Eè‹EèƒÄ4[]ÃU‰åSƒì$èwÄ‘Eô‰$ècîÿÿ‹Eô‹Uø‰$‰T$è‘ëÿÿƒÄ$[]ÃU‰åSƒì$èBÃO‘è”îÿÿ‰Eøƒ}øt‹Eø‰$èÐèÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èí Ãúè_éÿÿ‰Eøƒ}øt‹Eø‰$è{èÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è˜ Ã¥èêëÿÿ‰Eøƒ}øt‹Eø‰$è&èÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èC ÃPEô‰D$ƒ,‰D$ ƒ¡Ðÿÿ‰D$‹E‰D$‹E ‰$è½íÿÿ…Àu ÇEèë@‹Eô‰$èuíÿÿ‰Eøƒ}øt‹Eø‰$è‘çÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè® Ã»èæÿÿ‰$èxçÿÿƒÄ[]ÃU‰åSƒì$è‰ Ã–Eð‰D$ƒ½Ðÿÿ‰D$‹E ‰$ètäÿÿ…Àu ÇEèëD‹Eð‰$è,íÿÿ‰Eø‹Eø‰$èNçÿÿÇD$‰D$‹Eø‰$èGåÿÿ‰Eô‹Eø‰$èiâÿÿ‹Eô‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è ÃEð‰D$ƒÜÐÿÿ‰D$‹E ‰$èìãÿÿ…Àu ÇEèëD‹Eð‰$èèÿÿ‰Eø‹Eø‰$èÆæÿÿÇD$‰D$‹Eø‰$è¿äÿÿ‰Eô‹Eø‰$èááÿÿ‹Eô‰Eè‹EèƒÄ$[]ÃU‰åSƒìDèy ÆŽÇEäEì‰D$ Eð‰D$ƒýÐÿÿ‰D$‹E ‰$èVãÿÿ…Àu ÇEØët‹Uì‹MðEä‰D$Eè‰D$ ÇD$‰T$‰ $èÑäÿÿ‰EôEä‰$èãìÿÿ…Àt‹Eô‰$èDáÿÿÇEØë&‹Eè‰D$‹Eô‰$èÉãÿÿ‰Eø‹Eô‰$èáÿÿ‹Eø‰EØ‹E؃ÄD[]ÃU‰åSƒì$è³ ÃÀè5åÿÿ‰Eøƒ}øu‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eèë‹Eø‰$è#åÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè^ Ãk‹E ‹P‹ƒðÿÿÿ9ÂtQ‹E ‹P‹ƒðÿÿÿ‰D$‰$è=æÿÿ…Àu5‹E ‰$è¾ëÿÿP‹ƒœÿÿÿ‹‰T$ƒÑÿÿ‰D$‰ $è}ãÿÿÇEøë*‹E ƒÀ‰$èvçÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒì$è¸ ÃÅŒèŠæÿÿ‰Eøƒ}øu‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eèë‹Eø‰$è(äÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìèc ÃpŒ‹E ‹P‹ƒðÿÿÿ9ÂtQ‹E ‹P‹ƒðÿÿÿ‰D$‰$èBåÿÿ…Àu5‹E ‰$èÃêÿÿP‹ƒœÿÿÿ‹‰T$ƒÑÿÿ‰D$‰ $è‚âÿÿÇEøë*‹E ƒÀ‰$è[êÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒì$è½ÃÊ‹ÇD$ƒ´‰$è~àÿÿ‰Eø‹Eø‰D$ƒ@Ûÿÿ‰D$‹E‰$èïÞÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eø‰$èÝæÿÿƒÄ$[]ÃU‰åSƒì$è>ÃK‹èðéÿÿ‰Eô‹ƒàÿÿÿ‰D$ƒLÛÿÿ‰D$‹Eô‰$è~Þÿÿ‹ƒÈÿÿÿ‹‹Eô‰D$‰T$ƒTÛÿÿ‰$è½åÿÿ‰Eø‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰D$ƒ`Ûÿÿ‰D$‹E‰$èÞÿÿ‹Eø‰ƒ¸ƒÄ$[]ÃU‰åSƒì$èÃœŠ‹ƒ¸ÿÿÿ‹‹ƒÜÿÿÿ‹‹ƒ|ÿÿÿ‹‰T$ ‰L$‰D$ƒgÛÿÿ‰$èéÿÿ‰Eø‹Eø‰D$ƒmÛÿÿ‰D$‹E‰$è¥Ýÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒÇD$ ÇD$ÇD$ƒgÛÿÿ‰$è˜èÿÿ‰Eø‹Eø‰D$ƒzÛÿÿ‰D$‹E‰$è9Ýÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒìè“à‰ÇD$ƒ‰Ûÿÿ‰D$‹E‰$è½ßÿÿÇD$ƒ¦Ûÿÿ‰D$‹E‰$è ßÿÿÇD$ƒ¾Ûÿÿ‰D$‹E‰$èƒßÿÿÇD$ƒÐÛÿÿ‰D$‹E‰$èfßÿÿÇD$ƒéÛÿÿ‰D$‹E‰$èIßÿÿÇD$ ƒÜÿÿ‰D$‹E‰$è,ßÿÿÇD$@ƒÜÿÿ‰D$‹E‰$èßÿÿÇD$œÿÿÿƒ6Üÿÿ‰D$‹E‰$èòÞÿÿÇD$ƒDÜÿÿ‰D$‹E‰$èÕÞÿÿÇD$dƒUÜÿÿ‰D$‹E‰$è¸ÞÿÿÇD$ȃhÜÿÿ‰D$‹E‰$è›ÞÿÿÇD$,ƒ~Üÿÿ‰D$‹E‰$è~ÞÿÿÇD$ƒ‹Üÿÿ‰D$‹E‰$èaÞÿÿÇD$ƒ‘Üÿÿ‰D$‹E‰$èDÞÿÿÇD$ƒ˜Üÿÿ‰D$‹E‰$è'ÞÿÿÇD$ƒŸÜÿÿ‰D$‹E‰$è ÞÿÿÇD$ƒ¦Üÿÿ‰D$‹E‰$èíÝÿÿÇD$ ƒ­Üÿÿ‰D$‹E‰$èÐÝÿÿÇD$ƒµÜÿÿ‰D$‹E‰$è³ÝÿÿÇD$ƒÅÜÿÿ‰D$‹E‰$è–ÝÿÿÇD$ƒÖÜÿÿ‰D$‹E‰$èyÝÿÿÇD$ƒäÜÿÿ‰D$‹E‰$è\ÝÿÿÇD$ƒôÜÿÿ‰D$‹E‰$è?ÝÿÿÇD$ƒÝÿÿ‰D$‹E‰$è"ÝÿÿÇD$ƒÝÿÿ‰D$‹E‰$èÝÿÿÇD$ƒ(Ýÿÿ‰D$‹E‰$èèÜÿÿÇD$ƒ=Ýÿÿ‰D$‹E‰$èËÜÿÿÇD$ƒQÝÿÿ‰D$‹E‰$è®ÜÿÿÇD$ƒ^Ýÿÿ‰D$‹E‰$è‘ÜÿÿÇD$ƒoÝÿÿ‰D$‹E‰$ètÜÿÿÇD$ƒ€Ýÿÿ‰D$‹E‰$èWÜÿÿÇD$ƒ“Ýÿÿ‰D$‹E‰$è:ÜÿÿÇD$ƒ§Ýÿÿ‰D$‹E‰$èÜÿÿÇD$ƒ»Ýÿÿ‰D$‹E‰$èÜÿÿÇD$ƒÎÝÿÿ‰D$‹E‰$èãÛÿÿÇD$ ƒãÝÿÿ‰D$‹E‰$èÆÛÿÿÇD$@ƒüÝÿÿ‰D$‹E‰$è©ÛÿÿÇD$ƒÞÿÿ‰D$‹E‰$èŒÛÿÿÇD$ƒ,Þÿÿ‰D$‹E‰$èoÛÿÿÇD$ƒCÞÿÿ‰D$‹E‰$èRÛÿÿÇD$ƒWÞÿÿ‰D$‹E‰$è5ÛÿÿÇD$ƒnÞÿÿ‰D$‹E‰$èÛÿÿÇD$ƒ‡Þÿÿ‰D$‹E‰$èûÚÿÿÇD$ƒŸÞÿÿ‰D$‹E‰$èÞÚÿÿÇD$ƒ´Þÿÿ‰D$‹E‰$èÁÚÿÿÇD$ƒÌÞÿÿ‰D$‹E‰$è¤ÚÿÿÇD$ƒèÞÿÿ‰D$‹E‰$è‡ÚÿÿÇD$ƒßÿÿ‰D$‹E‰$èjÚÿÿƒßÿÿ‰D$ƒßÿÿ‰D$‹E‰$è›ØÿÿèÆØÿÿ‰$è®áÿÿ‰D$ƒ)ßÿÿ‰D$‹E‰$èuØÿÿƒÄ[]ÃU‰åSƒì$èÆÃÓƒÇD$õÇD$ ÇD$ƒH‰D$ƒ6ßÿÿ‰$èMßÿÿ‰Eô‹Eô‰$èÜÿÿ‰Eø‹Eô‰$èÕùÿÿ‹Eø‰$è ÷ÿÿ‹Eø‰$èøÿÿ‹Eø‰$è¸øÿÿ‹Eø‰$è‹Eø‰$èð.‹Eø‰$è(‹Eø‰$èþB‹Eø‰$èŒO‹Eø‰$èß‹Eø‰$è%ƒÄ$[]Ë$ÃU‰åSƒìDèïÿÿÿÃü‚ÇEôÇEðÇEèÇEä‹E‹PEä‰D$Eì‰D$ Eð‰D$Eè‰D$‰$è@Ùÿÿ‰EøEä‰$èráÿÿ…Àt ÇEØëOƒ}øu#‹ƒ„ÿÿÿ‹ƒSßÿÿ‰D$‰$èEßÿÿÇEØë&‹Eð‹Uè‰D$‰$è:Øÿÿ‰Eô‹Eè‰$èŒÕÿÿ‹Eô‰EØ‹E؃ÄD[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰å‹E‹P‹E‰‹E]ÃU‰å‹E‹@]ÃU‰åSƒìèÀþÿÿÃÍ‹E‹@…Àt‹E‹@‰$èÏÝÿÿ‹E‰$è„ÝÿÿƒÄ[]ÃU‰åSƒì4è…þÿÿÃ’‹ƒ¼ÿÿÿ‰EôÇEðEô‰D$ƒˆ‰D$ ƒ]ßÿÿ‰D$‹E‰D$‹E ‰$èïÞÿÿ…Àu ÇEèëO‹Eô‰$è§Öÿÿ‰Â‹E‹HEð‰D$‰T$‰ $è¼Ôÿÿ‰EøEð‰$èÞßÿÿ…Àt ÇEèë‹Eø‰$èÆØÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èÑýÿÿÃÞ€Eø‰D$ƒ‰D$ ƒ€ßÿÿ‰D$‹E‰D$‹E ‰$èKÞÿÿ…Àu ÇEèë3‹Eø‰Â‹E‹@‰T$‰$ègÔÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèIýÿÿÃV€‹E‹@‰$èÒÕÿÿ‰$è ØÿÿƒÄ[]ÃU‰åSƒì4èýÿÿÃ(€Eø‰D$ƒ˜‰D$ ƒªßÿÿ‰D$‹E‰D$‹E ‰$è•Ýÿÿ…Àu ÇEèë1‹Uø‹E‹@‰T$‰$è³Öÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè•üÿÿâ‹E‹@‰$èÞÿÿ‰$èV×ÿÿƒÄ[]ÃU‰åSƒì4ègüÿÿÃtÇEôEø‰D$ƒ ‰D$ ƒÑßÿÿ‰D$‹E‰D$‹E ‰$èÚÜÿÿ…Àu ÇEèëP‹Uø‹E‹HEô‰D$‰T$‰ $è1ÓÿÿEô‰$èÖÝÿÿ…Àt ÇEè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$è»ûÿÿÃÈ~‹E‹@‰$è´Üÿÿ‰Eøƒ}øu‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eèë‹Eø‰$è"Öÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìDè]ûÿÿÃj~ÇEèÿÿÿÿÇEäÇEìÇEàÇEðEè‰D$ƒ¨‰D$ ƒùßÿÿ‰D$‹E‰D$‹E ‰$è´Ûÿÿ…Àu ÇEØéw‹Eè…À…õƒàÿÿ‰$è‹Õÿÿ‰EØéV‹Eèƒøÿu ÇEø ë‹Eè+Eì‰Eø}ø vÇEø ‹Eä…Àu#‹Eø‰D$Ç$èÓÿÿ‰Eä‹Eä…À„Õë0‹Eì‹Uø‹Eä‹@9Âv‹EìEø‰D$Eä‰$èÚÿÿƒøÿ„£‹EäP‹Eì‰Eôè;Öÿÿ‹E‹PEà‰D$E܉D$ ‹Eø‰D$‹Eô‰D$‰$èÑÖÿÿ‰EðèyÒÿÿEà‰$èÞÛÿÿ…ÀuN‹EÜEìƒ}ðu‹Eèƒøÿ„ÿÿÿ‹Eè;Eì‡ÿÿÿ‹Eä‹@;Eìt‹Eì‰D$Eä‰$èyÙÿÿƒøÿt‹Eä‰EØë/‹Eä…Àt!‹E䋃ꉋ…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEØ‹E؃ÄD[]ÃU‰åVSƒì@èjùÿÿÃw|ÇEäEì‰D$Eð‰D$ƒ°‰D$ ƒàÿÿ‰D$‹E‰D$‹E ‰$èÖÙÿÿ…Àu ÇEÔë]èÕÿÿ‹Uì‹Mð‹E‹pEä‰D$Eè‰D$ ‰T$‰L$‰4$èúÒÿÿ‰EôèRÑÿÿEä‰$è·Úÿÿ…Àt ÇEÔë‹Eè‰$èŸÓÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@è¨øÿÿõ{ÇEÜE؉D$ƒ¸‰D$ ƒ3àÿÿ‰D$‹E‰D$‹E ‰$èÙÿÿ…Àu ÇEÔé°‹E؉$è Ôÿÿ‰Eð‹Eð‰$èBÏÿÿ‰Eô‹ƒ„ÿÿÿ‹‰$èÿÑÿÿ…Àt èF×ÿÿé3‹Eô‹P‹ƒðÿÿÿ9Âti‹Eô‹P‹ƒðÿÿÿ‰D$‰$è Ôÿÿ…ÀuM‹ƒœÿÿÿ‹ƒPàÿÿ‰D$‰$è»×ÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEÔéýEä‰D$Eè‰D$‹Eô‰$è_ÖÿÿèŠÓÿÿ‹Uä‹Mè‹E‹pE܉D$Eà‰D$ ‰T$‰L$‰4$èpÑÿÿ‰EìèXÓÿÿ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒE܉$èÙÿÿ…À„Ñþÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEÔëC‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åSƒì$è˜öÿÿÃ¥yÇEôèƒÒÿÿ‹E‹PEô‰D$‰$è¾Õÿÿ‰EøèÖÎÿÿEô‰$è;Øÿÿ…Àt ÇEèë‹Eø‰$è#Ñÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4è.öÿÿÃ;yÇEðEô‰D$ƒÀ‰D$ ƒ•àÿÿ‰D$‹E‰D$‹E ‰$è¡Öÿÿ…Àu ÇEèëE‹Uô‹E‹HEð‰D$‰T$‰ $è˜Ðÿÿ‰EøEð‰$èš×ÿÿ…Àt ÇEèë‹Eø‰$è‚Ðÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèõÿÿÚx‹E‹@‰$èÖËÿÿ‰$èNÐÿÿƒÄ[]ÃU‰åSƒìè_õÿÿÃlx‹E‹@‰$è¸Ìÿÿ‰$è ÐÿÿƒÄ[]ÃU‰åSƒì4è1õÿÿÃ>xEø‰D$ƒÈ‰D$ ƒ¼àÿÿ‰D$‹E‰D$‹E ‰$è«Õÿÿ…Àu ÇEèë;‹Eø‰$ècÍÿÿ‰Â‹E‹@‰T$‰$è?Õÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè¡ôÿÿîw‹E‹@‰$èÑÿÿ…Àt‹ƒ¼ÿÿÿ‰Â‹ƒÀ‰‹ƒ¼ÿÿÿ‰Eøë‹ƒ€ÿÿÿ‰Â‹ƒÀ‰‹ƒ€ÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèBôÿÿÃOw‹E‹‹ƒê‰‹…Àu‹E‹‹@‹P‹E‹‰$ÿÒ‹E‹@…Àt*‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‰D$Ç$ èáÔÿÿƒÄ[]ÃU‰åVSƒì0è‘óÿÿÞv‹E‰Eðƒ}u,ƒôàÿÿ‰D$ƒààÿÿ‰D$Ç$è ÏÿÿÇEäé‹Eð‹@‹@;Et,ƒáÿÿ‰D$ƒààÿÿ‰D$Ç$èÒÎÿÿÇEäéÎèQÍÿÿ‰Eô‹Eð‹@…Àt7‹Eð‹P‹Eð‹H‹Eð‹0‰T$‹E ‰D$ ‰L$ƒ>áÿÿ‰D$‰4$è2Ëÿÿ‰Eèë+‹Eð‹P‹Eð‹‹E ‰D$ ‰T$ƒBáÿÿ‰D$‰ $èËÿÿ‰Eèƒ}èuèçÐÿÿÇEìë5‹Eè‰$èËÿÿ‰Eì‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eô‰$ènÍÿÿ‹Eì‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLè3òÿÿÃ@uÇEàÇEÜÇEèE܉D$Eà‰D$Eä‰D$E؉D$ƒÐ‰D$ ƒláÿÿ‰D$‹E‰D$‹E ‰$èƒÒÿÿ…Àu ÇEÐéÙ‹E‹@‰Eè‹Eä‰$èÓÿÿ…Àu&‹ƒœÿÿÿ‹ƒ‹áÿÿ‰D$‰$èqÑÿÿÇEÐé›Ç$ è¹Íÿÿ‰Eð‹Uä‹Eð‰‹U䋃À‰‹Uà‹Eð‰P‹Eà…Àt ‹Eà‹ƒÂ‰‹Uð‹E‰B‹E‹P‹E‰“¥ˆÿÿ‹E؉Á‹uÜ‹E‹x‰T$‹Eð‰D$ƒU‰ÿÿ‰D$ ‰L$‰t$‰<$è»Çÿÿ‰Eì‹Eì‰$è}Èÿÿ‰EЋEЃÄL[^_]ÃU‰åSƒìDèÖðÿÿÃãsÇEôÇEðÇEèÇEäÇEàÿÿÿÿEà‰D$ƒä‰D$ ƒ£áÿÿ‰D$‹E‰D$‹E ‰$è-Ñÿÿ…Àu ÇEØëk‹E‹PEä‰D$Eì‰D$ Eð‰D$Eè‰D$‰$èæÉÿÿ‰EøEä‰$èÒÿÿ…Àt ÇEØë&‹Eð‹Uè‰D$‰$è Éÿÿ‰Eô‹Eè‰$è[Æÿÿ‹Eô‰EØ‹E؃ÄD[]ÃU‰åSƒìDèóïÿÿÃsÇEðÇEìÇEäÇEàÇEÜÿÿÿÿÇEôE܉D$ƒì‰D$ ƒ¾áÿÿ‰D$‹E‰D$‹E ‰$èCÐÿÿ…Àu ÇEØé Ç$è—Ðÿÿ‰Eøéü‹E‹PEà‰D$Eè‰D$ Eì‰D$Eä‰D$‰$èåÈÿÿ‰EôEà‰$èÑÿÿ…Àt3‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEØé‹Eì‹Uä‰D$‰$èÞÇÿÿ‰Eð‹Eä‰$è0Åÿÿ‹Eð‰D$‹Eø‰$è®Ìÿÿ…ÀtW‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒÇEØëƒ}ô„úþÿÿ‹Eø‰EØ‹E؃ÄD[]ÃU‰åVSƒì@èPîÿÿÃ]qÇEäÇEàEä‰D$Eè‰D$ƒô‰D$ ƒèáÿÿ‰D$‹E‰D$‹E ‰$èµÎÿÿ…Àu ÇEÐé«‹Eä‰EÔƒ}Ôtƒ}Ôtƒ}ÔtëÇEôë5ÇEôë,ÇEôë#‹ƒŒÿÿÿ‹ƒâÿÿ‰D$‰$è†ÍÿÿÇEÐëS‹Uè‹Mì‹E‹pEà‰D$‹Eô‰D$ ‰T$‰L$‰4$èsÇÿÿ‰EðEà‰$èEÏÿÿ…Àt ÇEÐë‹Eð‰$è-Èÿÿ‰EЋEЃÄ@[^]ÃU‰åSƒì4è7íÿÿÃDpÇEøÿÿÿÿƒãÿÿ‰EôÇEðÇEìEô‰D$Eð‰D$Eø‰D$ƒ˜‰D$ ƒãÿÿ‰D$‹E‰D$‹E ‰$è…Íÿÿ…Àu ÇEèÿÿÿÿ釋Eøƒøÿt‹Eø‰$èÄÿÿ‰Â‹E‰Pëc‹Eð…Àt9‹Uô‹MðEì‰D$‰T$‰ $è8Åÿÿ‰Â‹E‰PEì‰$èUÎÿÿ…Àt,ÇEèÿÿÿÿë*‹ƒœÿÿÿ‹ƒ8ãÿÿ‰D$‰$è.ÌÿÿÇEèÿÿÿÿëÇEè‹EèƒÄ4[]ÃU‰åSƒìè,ìÿÿÃ9o“°ÿÿ‹ƒ´ÿÿÿ‰”“'~ÿÿ‹ƒ´ÿÿÿ‰P‹ƒ´ÿÿÿÇ@Të‹“´ÿÿÿƒ‰Bx‹“´ÿÿÿƒH‰Bt“~ÿÿ‹ƒ´ÿÿÿ‰P<“Ã}ÿÿ‹ƒ´ÿÿÿ‰P(‹“´ÿÿÿƒ~ÿÿ‰Bl“ø|ÿÿ‹ƒ´ÿÿÿ‰Pp‹ƒ´ÿÿÿ‹€˜…Àu‹ƒ´ÿÿÿ‹“øÿÿÿ‰˜‹ƒ´ÿÿÿ‹€œ…Àu‹ƒ´ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ´ÿÿÿ‰$è‰Âÿÿ…Àu‹ƒ´ÿÿÿ‰D$ƒuãÿÿ‰D$‹E‰$è–ÁÿÿƒÄ[]ÃU‰åSƒì$èëÿÿÃ$nEø‰D$ƒ”ãÿÿ‰D$‹E ‰$èÃÿÿ…Àu ÇEèÿÿÿÿë‹Eø‰$èzÊÿÿ‰Â‹E‰P ÇEè‹EèƒÄ$[]ÃU‰åSƒìè¹êÿÿÃÆm‹E‹@…Àt:‹E‹@‰Eô‹EÇ@‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹E‹@ …Àt‹E‹@ ‰Eø‹EÇ@ ‹Eø‰$èÄÁÿÿ‹E‰$è)ÉÿÿƒÄ[]ÃU‰åVSƒìPè)êÿÿÃ6mÇEÌE؉D$ƒh‰D$ ƒÑãÿÿ‰D$‹E‰D$‹E ‰$èœÊÿÿ…Àu ÇEÄéH‹EØ‹P‹ƒ˜ÿÿÿ9ÂtB‹EØ‹P‹ƒ˜ÿÿÿ‰D$‰$èÄÅÿÿ…Àu&‹ƒœÿÿÿ‹ƒèãÿÿ‰D$‰$èvÉÿÿÇEÄéö‹E؉$è_Åÿÿ‰Eäƒ}äÿu&‹ƒœÿÿÿ‹ƒèãÿÿ‰D$‰$è<ÉÿÿÇEÄ鼋EäƒÀÀÀ‰$èþÁÿÿ‰EЋEäÀÀ‰Â‹EÐÇÇEèëi‹UØ‹Eè‰D$‰$èë¿ÿÿ‰EÜ‹EèÀÀ‰Â‹EÐ4‹E܉$è~¿ÿÿ‰$èæÀÿÿ‰‹EèÀÀ‰Â‹EЋ…Àu‹EЉ$èäÈÿÿÇEÄé$ƒEè‹Eè;Eä|‹EЉ$èA¿ÿÿ‰Eì‹Eä‰EÔÇEôè,Éÿÿ…ÀtèsÃÿÿ‰Eô‹E‹P ẺD$ EЉD$EÔ‰D$‰$èÃÿÿ‰EðèõÈÿÿ…Àt ‹Eô‰$è¶Âÿÿ‹EÔ‰Eäƒ}ðu*‹EЉ$èOÈÿÿ‹Eì‰$èDÈÿÿẺ$èùÉÿÿÇEÄë|‹EЉ$èµÁÿÿ‰$èÉÿÿ‰EàÇEèë9‹EèÀÀ‰Â‹EЋ‰$èˆÂÿÿ‰EÜ‹E܉D$‹Eè‰D$‹Eà‰$èÌÇÿÿƒEè‹Eè;Eä|¿‹Eì‰$èÅÇÿÿ‹EЉ$èºÇÿÿ‹Eà‰EÄ‹EăÄP[^]ÃU‰åSƒì4èçÿÿÃŽjEø‰D$ƒp‰D$ ƒ$äÿÿ‰D$‹E‰D$‹E ‰$èûÇÿÿ…Àu ÇEèë;‹Eø‰$賿ÿÿ‰Â‹E‹@ ‰T$‰$èïÈÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèñæÿÿÃþi‹E‹@ ‰$è*Çÿÿ‰$èò¾ÿÿƒÄ[]ÃU‰åSƒì4èÃæÿÿÃÐiEø‰D$ƒx‰D$ ƒ`äÿÿ‰D$‹E‰D$‹E ‰$è=Çÿÿ…Àu ÇEèë;‹Eø‰$èõ¾ÿÿ‰Â‹E‹@ ‰T$‰$èq½ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè3æÿÿÃ@i‹E‹@ ‰$èì¼ÿÿ‰$è4¾ÿÿƒÄ[]ÃU‰åSƒì4èæÿÿÃiEô‰D$ƒ€‰D$ ƒ”äÿÿ‰D$‹E‰D$‹E ‰$èÆÿÿ…Àu ÇEè麋ƒÌÿÿÿ‹Uô‰D$‰$è*Ãÿÿƒøt#‹ƒœÿÿÿ‹ƒ´äÿÿ‰D$‰$èkÅÿÿÇEèë}‹Eô‰$ègÅÿÿ‰Eøƒ}øu#‹ƒÈÿÿÿ‹ƒìäÿÿ‰D$‰$è4ÅÿÿÇEèëF‹E‹P ‹Eø‰D$‰$èÆÿÿ‹Uô‹ƒÀ‰‹Eô‰Â‹E‰P‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åƒìè›Áh‹E‹@…Àu‹àÿÿÿ‹P‹àÿÿÿ‰‹àÿÿÿ‰Eüë‹E‹P‹ƒÀ‰‹E‹@‰Eü‹EüÉÃU‰åSƒì4èŸäÿÿìgEô‰D$ƒˆ‰D$ ƒåÿÿ‰D$‹E‰D$‹E ‰$èÅÿÿ…Àu ÇEè鯋ƒÌÿÿÿ‹Uô‰D$‰$èÄÁÿÿƒøt#‹ƒœÿÿÿ‹ƒ,åÿÿ‰D$‰$èÄÿÿÇEèër‹Eô‰$èÄÿÿ‰Eøƒ}øu#‹ƒÈÿÿÿ‹ƒìäÿÿ‰D$‰$èÎÃÿÿÇEèë;‹Uô‹ƒÀ‰‹E‹P ‹Eø‰D$‰$èæ¿ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åƒì‹E‹P ‹E ‹@ 9Âu ÇEüë ‹E‹P ‹E ‹@ 9Âv ÇEüëÇEüÿÿÿÿ‹EüÉÃU‰åSƒìèTãÿÿÃaf‹E‹@ ÇD$‰$è»ÿÿƒÄ[]ÃU‰åSƒìè&ãÿÿÃ3f“.’ÿÿ‹ƒÔÿÿÿ‰P“O™ÿÿ‹ƒÔÿÿÿ‰P(‹ƒÔÿÿÿÇ@Të‹“Ôÿÿÿƒ¨‰Bt“Бÿÿ‹ƒÔÿÿÿ‰”‹ƒÔÿÿÿ‹€˜…Àu‹ƒÔÿÿÿ‹“øÿÿÿ‰˜‹ƒÔÿÿÿ‹€œ…Àu‹ƒÔÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÔÿÿÿ‰$迹ÿÿ…Àu‹ƒÔÿÿÿ‰D$ƒðåÿÿ‰D$‹E‰$è̸ÿÿƒÄ[]Ë $ÃU‰åSƒìèGâÿÿÃTe‹E‹@ …Àt#‹ƒŒÿÿÿ‹ƒæÿÿ‰D$‰$èúÁÿÿÇEøëÇEø‹EøƒÄ[]ÃU‰åSƒì$èøáÿÿÃeè*¼ÿÿ‰Eô‹EÇ@‹E‹@…Àt:‹E‹@‰Eø‹EÇ@‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹ƒxÿÿÿ‰Â‹E‹@ÇD$‰T$‰$èG¾ÿÿ‹E‹@‰$艸ÿÿ‹EÇ@‹E‹@…Àt'‹E‹Pÿ‹E‰‹E‹…Àu‹E‹@‹P‹E‰$ÿÒ‹Eô‰$èC¼ÿÿƒÄ$[]ÃU‰åVSƒì@èáÿÿà dEè‰D$Eì‰D$Eð‰D$Eô‰D$ƒ ‰D$ ƒ•æÿÿ‰D$‹E‰D$‹E ‰$èxÁÿÿ…Àu ÇEäÿÿÿÿë`ƒïšÿÿ‹Uì‹Mð‹uô‰D$‹E‰D$ ‰T$‰L$‰4$èA¿ÿÿ‰Â‹E‰P‹EÇ@ ‹EÇ@‹U苃À‰‹Uè‹E‰PÇEä‹EäƒÄ@[^]ÃU‰åSƒìèHàÿÿÃUc‹E‹@ …Àu.‹E‹@…Àu$‹E‹@‰Eø‹EÇ@ƒ}øt ‹Eø‰$è7Áÿÿ‹E‰$èì¾ÿÿƒÄ[]ÃU‰åSƒì$èíßÿÿÃúbèºÿÿ‰Eôƒ} u5‹E‹P‹E‰D$‹ƒàÿÿÿ‰D$ ‹E‰D$ƒ°æÿÿ‰D$‰$è¸ÿÿ‰Eðë0‹E‹P‹E‰D$‹E ‰D$ ‹E‰D$ƒ´æÿÿ‰D$‰$èÔ·ÿÿ‰Eðƒ}ðt0‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEøë‹E‰$è¸ÿÿƒøÿ•À¶À‰Eø‹Eô‰$è9ºÿÿ‹EøƒÄ$[]ÃU‰åSƒìDèßÿÿÃb‹E‰$è£üÿÿ…Àt ÇEØéUEè‰D$ƒ ‰D$ ƒÀæÿÿ‰D$‹E‰D$‹E ‰$èf¿ÿÿ…Àu ÇEØé‹Eè‹P‹ƒ˜ÿÿÿ9ÂtB‹Eè‹P‹ƒ˜ÿÿÿ‰D$‰$莺ÿÿ…Àu&‹ƒœÿÿÿ‹ƒÜæÿÿ‰D$‰$è@¾ÿÿÇEØéÆ‹Eè‰$è)ºÿÿ‰Eìƒ}ìÿu&‹ƒœÿÿÿ‹ƒÜæÿÿ‰D$‰$è¾ÿÿÇEØéŒ‹EìƒÀÀÕ)Љ$è~¼ÿÿ‰EøÇEðé‹Uè‹Eð‰D$‰$è½´ÿÿ‰Eô‹Eô‹P‹ƒÀÿÿÿ9ÂtM‹Eô‹P‹ƒÀÿÿÿ‰D$‰$è¹ÿÿ…Àu1‹ƒœÿÿÿ‹ƒÜæÿÿ‰D$‰$èt½ÿÿ‹Eø‰$èÙ³ÿÿÇEØéï‹EðÀÕ)ÐEøH‹EðÀÕ)ÐEøPE܉D$Eà‰D$‰L$‰T$ Eä‰D$ƒçÿÿ‰D$‹Eô‰$è-µÿÿ…Àu1‹ƒœÿÿÿ‹ƒÜæÿÿ‰D$‰$èß¼ÿÿ‹Eø‰$èD³ÿÿÇEØéZ‹Eä‰$èÝ´ÿÿ‰Eä‹Uä‹E‹@‰T$‰$èe·ÿÿ‰Â‹E‰P‹EðÀÕ)ЉÂUø‹E䉋Eà‰$è—´ÿÿ‰Eà‹Uà‹E‹@‰T$‰$è·ÿÿ‰Â‹E‰P‹EðÀÕ)ЉÂUø‹Eà‰B‹E܉$èP´ÿÿ‰EÜ‹UÜ‹E‹@‰T$‰$èØ¶ÿÿ‰Â‹E‰P‹EðÀÕ)ЉÂUø‹E܉B‹EðÀÕ)ÐEøÇ@ ‹EðÀÕ)ЉÂUøƒúœÿÿ‰BƒEð‹Eð;EìŒÛýÿÿ‹E‹P‹Eø‰D$‰$èE¼ÿÿ‹Eø‰$èú±ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4è|ÛÿÿÉ^‹E‰$èùÿÿ…Àt ÇEè阋E‹@…Àu#‹ƒÈÿÿÿ‹ƒ çÿÿ‰D$‰$è»ÿÿÇEèëkEø‰D$ƒ$ ‰D$ ƒ„çÿÿ‰D$‹E‰D$‹E ‰$è®»ÿÿ…Àu ÇEèë1‹Uø‹E‹@‰T$‰$èlºÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüëÇEüÿÿÿÿ‹EüÉÃU‰åSƒìèjÚÿÿÃw]“Ÿœÿÿ‹ƒÌÿÿÿ‰P“9¢ÿÿ‹ƒÌÿÿÿ‰P(‹ƒÌÿÿÿÇ@Të‹“ÌÿÿÿƒH ‰Bt“Ó›ÿÿ‹ƒÌÿÿÿ‰”‹ƒÌÿÿÿ‹€˜…Àu‹ƒÌÿÿÿ‹“øÿÿÿ‰˜‹ƒÌÿÿÿ‹€œ…Àu‹ƒÌÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÌÿÿÿ‰$è±ÿÿ…Àu‹ƒÌÿÿÿ‰D$ƒËçÿÿ‰D$‹E‰$è°ÿÿƒÄ[]ÃU‰åSƒìèÙÿÿÜ\èѳÿÿ‰Â‹E‰P¸ƒÄ[]ÃU‰åSƒìèeÙÿÿÃr\‹E‹@…Àt‹E‹@‰$è·ÿÿ‹EÇ@‹E‰$è¸ÿÿƒÄ[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰åSƒì$èÜØÿÿÃé[ÇEðEð‰D$ƒèçÿÿ‰D$‹E ‰$èÀ°ÿÿ…Àu ÇEèëRÇEøè7¹ÿÿ…Àtè~³ÿÿ‰Eø‹Uð‹E‹@‰T$‰$èÖ²ÿÿ‰Eôè¹ÿÿ…Àt ‹Eø‰$èϲÿÿ‹Eô‰$èt°ÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè?ØÿÿÃL[‹E‹@‰$è(¶ÿÿ‰$è@°ÿÿƒÄ[]ÃU‰åSƒìèØÿÿÃ[“‚£ÿÿ‹ƒ¬ÿÿÿ‰P“Ç£ÿÿ‹ƒ¬ÿÿÿ‰P(‹ƒ¬ÿÿÿÇ@Të‹“¬ÿÿÿƒH ‰Bt“X£ÿÿ‹ƒ¬ÿÿÿ‰”‹ƒ¬ÿÿÿ‹€˜…Àu‹ƒ¬ÿÿÿ‹“øÿÿÿ‰˜‹ƒ¬ÿÿÿ‹€œ…Àu‹ƒ¬ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ¬ÿÿÿ‰$誮ÿÿ…Àu‹ƒ¬ÿÿÿ‰D$ƒèÿÿ‰D$‹E‰$è·­ÿÿƒÄ[]ÃU‰åSƒìè7×ÿÿÃDZèÉ·ÿÿ…Àu ÇEøë‹E ÇèÇEø‹EøƒÄ[]ÃU‰åSƒìèúÖÿÿÃZè,±ÿÿ‰EôèD‰Eøèì´ÿÿƒøÿu!ƒ}øt‹ƒèÿÿÿ‹‰$è±´ÿÿ‹Eø‰$è®ÿÿ‹Eô‰$è˱ÿÿ¸ƒÄ[]ÃU‰åSƒìè—ÖÿÿäY‹ƒx ƒøÿu ÇEøë‹ƒx ‰$è̲ÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèWÖÿÿÃdYÇD$ƒ èÿÿ‰D$ ÇD$ƃ:èÿÿ‰D$Ç$èžµÿÿU‰åSƒìèÖÿÿÃ"Y‹E‰Eøƒ}t0‹Eø‹@4…Àt‹Eø‹@4‰$èØ²ÿÿ‹Eø‹@8…Àt‹Eø‹@8‰$èÀ²ÿÿƒÄ[]ÃU‰åSƒìèÁÕÿÿÃÎXÇD$Dƒˆ ‰$èÒ®ÿÿƒÄ[]ÃU‰åSƒì4è“ÕÿÿàX‹ƒàÿÿÿ‰EôÇEðEð‰D$Eô‰D$ƒh ‰D$ ƒièÿÿ‰D$‹E‰D$‹E ‰$èöµÿÿ…Àu ÇEèÿÿÿÿéÌ‹Eô‹P‹ƒ¬ÿÿÿ9ÂtL‹Eô‹P‹ƒ¬ÿÿÿ‰D$‰$è±ÿÿ…Àu0‹Eô‹“àÿÿÿ9Ðt#‹ƒœÿÿÿ‹ƒ€èÿÿ‰D$‰$èôÿÿÇEèÿÿÿÿëp‹Eô‹“àÿÿÿ9Ðt ‹Eô‹@‰EøëÇEø‹Eð‰D$‹Eø‰$è ®ÿÿ‰Â‹E‰PèÒþÿÿ‰Â‹E‰P ‹E‹P ‹Eø‰D$‰$èO´ÿÿ‹E‹@ ‰$èá³ÿÿÇEè‹EèƒÄ4[]ÃU‰åSƒìèXÔÿÿÃeW‹E‹@ …Àt‹E‹@ ‰$èw³ÿÿ‹EÇ@ ‹E‹@…Àt‹E‹@‰$èõ²ÿÿ‹EÇ@‹E‰$èð²ÿÿƒÄ[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰åSƒìè­ÓÿÿúV‹E‹@‰$èÆ±ÿÿ‰$è®­ÿÿƒÄ[]ÃU‰åSƒìèÓÿÿÃŒV‹E‹@‰$èØ¯ÿÿ‰$耫ÿÿƒÄ[]ÃU‰åSƒìèQÓÿÿÃ^V‹E‹@‰$芪ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿƒÄ[]ÃU‰åSƒì$èÓÿÿÃV‹E‹@‰$è‰EôÇEøèŒ³ÿÿ…ÀtèÓ­ÿÿ‰Eø‹E‹@‰$è³ÿÿèm³ÿÿ…Àt ‹Eø‰$è.­ÿÿ‹Eô‰$èÙ莬ÿÿ…Àt ÇEè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èsÒÿÿÀUƒ}u)ƒÆèÿÿ‰D$ƒ«èÿÿ‰D$Ç$èô­ÿÿÇEèëX‹ƒx ƒøÿu 英ÿÿ‰ƒx ‹ƒx ‰$èw®ÿÿ‰Eø‹ƒx ‰$è6²ÿÿ‹E‰$蛯ÿÿ‹“x ‰D$‰$è)°ÿÿ‹Eø‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èÑÑÿÿÃÞT‹ƒx ƒøÿu"ƒøèÿÿ‰D$ƒØèÿÿ‰D$Ç$èM­ÿÿëK‹ƒx ‰$èí­ÿÿ‰Eøƒ}øt ‹Eø‰$èY°ÿÿ‹ƒx ‰$è›±ÿÿƒ}t‹“x ‹E‰D$‰$è¯ÿÿƒÄ$[]ÃU‰åSƒìèAÑÿÿÃNT“¨ÿÿ‹ƒ¨ÿÿÿ‰P“ö¨ÿÿ‹ƒ¨ÿÿÿ‰P(‹ƒ¨ÿÿÿÇ@Të‹“¨ÿÿÿƒˆ ‰Bt“T§ÿÿ‹ƒ¨ÿÿÿ‰”‹ƒ¨ÿÿÿ‹€˜…Àu‹ƒ¨ÿÿÿ‹“øÿÿÿ‰˜‹ƒ¨ÿÿÿ‹€œ…Àu‹ƒ¨ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ¨ÿÿÿ‰$èÚ§ÿÿ…Àu‹ƒ¨ÿÿÿ‰D$ƒ-éÿÿ‰D$‹E‰$èç¦ÿÿƒÄ[]ÃU‰åSì4èdÐÿÿÃqS‹E‹@…Àt(‹E‹@‰$ès­ÿÿ…Àt ƒDéÿÿ‰EøëƒMéÿÿ‰Eøë ƒXéÿÿ‰Eøƒ} t7‹E‰D$‹E ‰D$‹Eø‰D$ ƒbéÿÿ‰D$ÇD$…øþÿÿ‰$è5«ÿÿë.‹E‰D$‹Eø‰D$ ƒéÿÿ‰D$ÇD$…øþÿÿ‰$è«ÿÿ…øþÿÿ‰$èWªÿÿÄ4[]ÃU‰åSƒì4è•ÏÿÿâRÇEìÇEðEì‰D$‹ƒ¬ÿÿÿ‰D$ƒ¨ ‰D$ ƒ¡éÿÿ‰D$‹E‰D$‹E ‰$è÷¯ÿÿ…Àu ÇEè郋Eì…Àt ‹Eì‹@‰Eð‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$èã®ÿÿÇEèëF‹E‹@…Àt‹E‹@‰Eø‹Eø‹P4‹ƒÀ‰‹E‹P‹Eð‰D$‰$è•®ÿÿ‰Eô‹Eô‰$è—©ÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$è¢ÎÿÿïQ‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$èU®ÿÿÇEèë~‹E‹@…Àt@‹E‹@‹@…Àt3‹E‹@‰Eø‹Eø‹@4‹ƒê‰‹…Àu‹Eø‹@4‹@‹P‹Eø‹@4‰$ÿÒ‹E‹@‰$èT­ÿÿ‹EÇ@‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èÜÍÿÿÃéPÇEð‹E‹@…Àu&‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$舭ÿÿÇEØé¦‹E ‰$衬ÿÿ‰Eøƒ}ø&‹ƒœÿÿÿ‹ƒÀéÿÿ‰D$‰$èN­ÿÿÇEØélÇD$ÇD$‹E ‰$èG¬ÿÿ‰EìEè‰D$ƒêéÿÿ‰D$‹Eì‰$è8¥ÿÿ…Àu3‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒÇEØéû‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eè‰$è®ÿÿ…Àu&‹ƒœÿÿÿ‹ƒùéÿÿ‰D$‰$è¬ÿÿÇEØéŸ‹Eø‰D$ÇD$‹E ‰$è{«ÿÿ‰Eðƒ}ðu ÇEØës‹Uè‹Eð‰D$‰T$ƒêÿÿ‰$èý­ÿÿ‰Eôƒ}ôu ÇEØëE‹E‹P‹ƒ°ÿÿÿ‰D$ ‹Eô‰D$‹ƒäÿÿÿ‰D$‰$èÒ£ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰EØ‹E؃Ä4[]ÃU‰åSƒì$èäËÿÿÃñN‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$è—«ÿÿÇEèëC‹E‹@‰$èШÿÿ‰Eøƒ}øt‹Eø‰$謥ÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èYËÿÿÃfN‹E‹@…Àu&‹ƒœÿÿÿ‹ƒ êÿÿ‰D$‰$è «ÿÿÇEèé¥Eø‰D$‹ƒ ÿÿÿ‰D$ƒ° ‰D$ ƒ]êÿÿ‰D$‹E‰D$‹E ‰$虫ÿÿ…Àu ÇEèëa‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$蘪ÿÿÇEèë4‹EøP‹E‹@‰T$‰$è·§ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èiÊÿÿÃvM‹E‹@…Àu&‹ƒœÿÿÿ‹ƒlêÿÿ‰D$‰$èªÿÿÇEèé¥Eø‰D$‹ƒ ÿÿÿ‰D$ƒ¸ ‰D$ ƒ¬êÿÿ‰D$‹E‰D$‹E ‰$詪ÿÿ…Àu ÇEèëa‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$訩ÿÿÇEèë4‹EøP‹E‹@‰T$‰$è×£ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$èyÉÿÿÆL‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$è,©ÿÿÇEäëF‹E‹PEè‰D$‰$èž§ÿÿ‹EèPÛ$d$‹EìPÛ$d$݃èìÿÿÞÉÞÁÝ]ðÝEðÝ$è¢ÿÿ‰Eä‹EäƒÄ$[]ÃU‰åSƒìèëÈÿÿÃøK‹E‹@ …Àu 蓪ÿÿ‰Â‹E‰P ‹E‹@ …Àu ÇEøë‹E‹P ‹ƒÀ‰‹E‹@ ‰Eø‹EøƒÄ[]ÃU‰åSƒìèÈÿÿÃK‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¬éÿÿ‰D$‰$èC¨ÿÿÇEøë‹E‹@‰$èü¥ÿÿ‰$è$£ÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìè/ÈÿÿÃÿÿ‰Eø‹Eì‹P4ÇD$ƒìÿÿ‰D$‰$è[¤ÿÿ‰Eðƒ}ðuè¡ÿÿÇEôë5‹Eð‰$è9›ÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‰$è¤ÿÿ‹EôƒÄ$[]ÃU‰åSƒì4èrÂÿÿÃE‹E‰Eàèžœÿÿ‰Eøƒ} t4‹E‰EìÇD$‹Eì‰$èì¡ÿÿ‰EäÇD$‹Eì‰$èÖ¡ÿÿ‰Eè닃àÿÿÿ‰E䋃àÿÿÿ‰Eè‹Eà‹P4‹Eè‰D$‹Eä‰D$ ƒ ìÿÿ‰D$ƒìÿÿ‰D$‰$è_£ÿÿ‰Eðƒ}ðuè! ÿÿÇEôë5‹Eð‰$è=šÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‰$訜ÿÿ‹EôƒÄ4[]ÃU‰åSƒì$èvÁÿÿÃD‹E‰Eì袛ÿÿ‰Eø‹Eì‹P4ƒìÿÿ‰D$‰$è§žÿÿ‰Eðƒ}ðtqÇD$‹Eð‰$èËÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒ}ôuèFŸÿÿë'‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰$èâ›ÿÿƒÄ$[]ÃU‰åSƒì$è³ÀÿÿÃÀCÇD$8ƒ¬‰$èÄ™ÿÿ‰Â‹E‰P‹E‹@‰Eø‹U‹Eø‰P4‹EÇ@ ‹EÇ@‹EÇ@¸ƒÄ$[]ÃU‰åSƒìèHÀÿÿÃUC‹E‰$èt˜ÿÿƒÄ[]ÃU‰åSƒìè%ÀÿÿÃ2Cƒ*ìÿÿ‰D$‹E‰$è—ïÿÿƒÄ[]ÃU‰åSƒì4èø¿ÿÿÃCÇEøÈEø‰D$ƒˆ‰D$ ƒ/ìÿÿ‰D$‹E‰D$‹E ‰$èk ÿÿ…Àu ÇEèÿÿÿÿëOè ›ÿÿ‹U‰B‹Eø=Èt‹Eø‹U‹R‰D$‰$è–ÿÿ‹EÇ@ ‹EÇ@‹EÇ@ÇEè‹EèƒÄ4[]ÃU‰åSƒìèM¿ÿÿÃZBƒRìÿÿ‰D$‹E‰$è¿îÿÿƒÄ[]ÃU‰åSƒì4è ¿ÿÿÃ-BÇEøEø‰D$Eô‰D$ƒh‰D$ ƒcìÿÿ‰D$‹E‰D$‹E ‰$茟ÿÿ…Àu ÇEèÿÿÿÿëT‹Eô‰$èœÿÿ‰Â‹E‰P‹Eø…Àt‹Eø‹U‹R‰D$‰$è •ÿÿ‹EÇ@ ‹EÇ@‹EÇ@ÇEè‹EèƒÄ4[]ÃU‰åSƒìèi¾ÿÿÃvA‹E‹@…Àt*‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‰$èÿÿƒÄ[]ÃU‰åSƒìè¾ÿÿÃA‹M‹E·@ ·Ð‹E‹@‰L$ ‰T$‰D$ƒ˜ìÿÿ‰$蜘ÿÿƒÄ[]ÃU‰åSƒì4èͽÿÿÃÚ@Eò‰D$Eô‰D$ƒ˜‰D$ ƒ³ìÿÿ‰D$‹E‰D$‹E ‰$è@žÿÿ…Àu ÇEèÿÿÿÿëT‹Eô‰$è–ÿÿ‰Eøƒ}øÿu ÇEèÿÿÿÿë7‹U‹Eø‰B·Uò‹Ef‰P ‹EfÇ@‹Uô‹ƒÀ‰‹Uô‹E‰PÇEè‹EèƒÄ4[]ÃU‰åSƒìè½ÿÿÃ*@‹ƒôÿÿÿÇ@TëE“4¼ÿÿ‹ƒôÿÿÿ‰”“Ÿ¼ÿÿ‹ƒôÿÿÿ‰ “¸ÿÿ‹ƒôÿÿÿ‰P‹“ôÿÿÿƒÈ ‰Bt“/·ÿÿ‹ƒôÿÿÿ‰P,“J·ÿÿ‹ƒôÿÿÿ‰P\““·ÿÿ‹ƒôÿÿÿ‰P`‹“ôÿÿÿƒH‰B|‹ƒôÿÿÿÇ@h‹ƒôÿÿÿÇ€ ‹ƒôÿÿÿ‹€˜…Àu‹ƒôÿÿÿ‹“øÿÿÿ‰˜‹ƒôÿÿÿ‹€œ…Àu‹ƒôÿÿÿ‹“ˆÿÿÿ‰œ‹ƒôÿÿÿ‰$èZ“ÿÿ…À…R‹ƒôÿÿÿ‰D$ƒËìÿÿ‰D$‹E‰$èc’ÿÿ“¼ÿÿ‹ƒÄÿÿÿ‰P,‹ƒÄÿÿÿÇ@Të‹“Äÿÿÿ‹ƒôÿÿÿ‰‚€“ï¼ÿÿ‹ƒÄÿÿÿ‰”‹ƒÄÿÿÿ‹€˜…Àu‹ƒÄÿÿÿ‹“øÿÿÿ‰˜‹ƒÄÿÿÿ‹€œ…Àu‹ƒÄÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÄÿÿÿ‰$è¡’ÿÿ…À…™‹ƒÄÿÿÿ‰D$ƒÒìÿÿ‰D$‹E‰$誑ÿÿ“š½ÿÿ‹ƒÐÿÿÿ‰P,‹ƒÐÿÿÿÇ@Të‹“Ðÿÿÿ‹ƒôÿÿÿ‰‚€“ǽÿÿ‹ƒÐÿÿÿ‰”‹ƒÐÿÿÿ‹€˜…Àu‹ƒÐÿÿÿ‹“øÿÿÿ‰˜‹ƒÐÿÿÿ‹€œ…Àu‹ƒÐÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÐÿÿÿ‰$èè‘ÿÿ…À…à‹ƒÐÿÿÿ‰D$ƒ×ìÿÿ‰D$‹E‰$èñÿÿ“~¾ÿÿ‹ƒ ÿÿÿ‰P“Õ¾ÿÿ‹ƒ ÿÿÿ‰P,‹ƒ ÿÿÿÇ@Të‹“ ÿÿÿƒH‰Bx“¿ÿÿ‹ƒ ÿÿÿ‰”‹ƒ ÿÿÿ‹€˜…Àu‹ƒ ÿÿÿ‹“øÿÿÿ‰˜‹ƒ ÿÿÿ‹€œ…Àu‹ƒ ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ ÿÿÿ‰$è#‘ÿÿ…Àu‹ƒ ÿÿÿ‰D$ƒßìÿÿ‰D$‹E‰$è0ÿÿƒÄ[]ÃU‰åSƒì诹ÿÿü<‹E‰$è;•ÿÿ‰$èÓ’ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿƒÄ[]ÃU‰åSƒìèk¹ÿÿÃx<‹E‰$è÷”ÿÿ‰$è’ÿÿ‹ƒ¤ÿÿÿ‹ ‹E‰$ÿÒƒÄ[]ÃU‰åSƒìè,¹ÿÿÃ9<‹ƒœÿÿÿ‹ƒíÿÿ‰D$‰$èé˜ÿÿ¸ÿÿÿÿƒÄ[]ÃU‰åSƒì$èõ¸ÿÿÃ<‹ƒìÿÿÿ‹@‰$è‹•ÿÿ‰Â‹ƒìÿÿÿ‰D$‰$è÷”ÿÿ‰Eø‹Uø‹E‰B‹EøƒÄ$[]ÃU‰åSƒì$詸ÿÿö;‹E‰EðèÕ’ÿÿ‰Eø‹Eð‹@…Àt&‹Eð‹P‹Eð‹‰T$ƒ)íÿÿ‰D$‰ $èÇÿÿ‰Eôë‹Eð‹ÇD$‰$è­ÿÿ‰Eôƒ}ôt)‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒëèf–ÿÿ‹Eð‹‹ƒê‰‹…Àu‹Eð‹‹@‹P‹Eð‹‰$ÿÒ‹Eð‹@…Àt*‹Eð‹@‹ƒê‰‹…Àu‹Eð‹@‹@‹P‹Eð‹@‰$ÿÒ‹Eð‰D$Ç$èè˜ÿÿ‹Eø‰$è½’ÿÿƒÄ$[]ÃU‰åWVSì¬è‰·ÿÿÖ:ÇEÄÇEЋƒàÿÿÿ‰EÀÇE¼ÇE¸ÇE´ÇE°ÿÿÿÿÇE¬ÿÿÿÿÇE¨ÿÿÿÿÇE¤ÇE ÇEœÇEàÇE˜ÇE”ÿÿÿÿEœ‰D$0E ‰D$,E¤‰D$(E¼‰D$$EÀ‰D$ E´‰D$E¸‰D$EĉD$EȉD$ƒˆ‰D$ ƒ‘íÿÿ‰D$‹E‰D$‹E ‰$è`—ÿÿ…Àu ÇEˆé‹E¤…Àt‹E¤‰$èÿÿ…ÀtE°‰EÔëÇEÔ‹E …Àt‹E ‰$èéŽÿÿ…ÀtE¬‰EØëÇEØ‹Eœ…Àt‹Eœ‰$èÄŽÿÿ…ÀtE¨‰EÜëÇEÜ‹Eȉ$è&“ÿÿ…Àu&‹ƒœÿÿÿ‹ƒ°íÿÿ‰D$‰$èè•ÿÿÇEˆéa‹Eȉ$豑ÿÿ‰Eä‹EäƒÀÀÀ‰$è\”ÿÿ‰EÌÇEèéì‹EÈ‹@‹@4‹H ‹UÈ‹Eè‰D$‰$ÿщEì‹Eì‹P‹ƒðÿÿÿ9Âtz‹Eì‹P‹ƒðÿÿÿ‰D$‰$è—‘ÿÿ…Àu^‹ƒœÿÿÿ‹ƒ°íÿÿ‰D$‰$èI•ÿÿ‹Ẻ$讋ÿÿƒ}ìt'‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒÇEˆéŠ‹EèÀÀ‰ÆuÌ‹Eì‰$èž‹ÿÿ‰‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒƒEè‹Eè;EäŒÿÿÿ‹EÄ…À„v‹Eĉ$è¿‘ÿÿ…Àu1‹ƒœÿÿÿ‹ƒðíÿÿ‰D$‰$è”ÿÿ‹Ẻ$èæŠÿÿÇEˆéï‹Eĉ$è?ÿÿ‰Eä‹EäƒÀÀÀ‰$èê’ÿÿ‰EÐÇEèéû‹EÄ‹@‹@4‹H ‹UÄ‹Eè‰D$‰$ÿщEð‹Eð‹P‹ƒðÿÿÿ9„…‹Eð‹P‹ƒðÿÿÿ‰D$‰$è!ÿÿ…Àui‹ƒœÿÿÿ‹ƒðíÿÿ‰D$‰$èÓ“ÿÿ‹EЉ$è8Šÿÿƒ}ðt'‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Ẻ$èŠÿÿÇEˆé ‹EèÀÀ‰ÆuЋEð‰$èŠÿÿ‰‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒEè‹Eè;EäŒùþÿÿ‹EÀ‹“àÿÿÿ9Є”‹EÀ‰$蘔ÿÿ…ÀuB‹ƒœÿÿÿ‹ƒ0îÿÿ‰D$‰$èú’ÿÿ‹Ẻ$è_‰ÿÿƒ}Ðt ‹EЉ$èN‰ÿÿÇEˆéWÇ$è&ÿÿ‰Eà‹UÀ‹Eà‰‹U¼‹Eà‰P‹Eà‹‹ƒÀ‰‹Eà‹@…Àt ‹Eà‹P‹ƒÀ‰‹EÀ‹“àÿÿÿ9Ðt ƒ>Äÿÿ‰EŒëÇEŒ‹E´‰Â‹M¸E˜‰D$(‹E܉D$$‹E؉D$ ‹EÔ‰D$E”‰D$‹Eà‰D$‹EŒ‰D$‰T$ ‹EЉD$‹ẺD$‰ $è‹ÿÿ…À…§‹Ẻ$èzˆÿÿƒ}Ðt ‹EЉ$èiˆÿÿƒ}àtn‹Eà‹‹ƒê‰‹…Àu‹Eà‹‹@‹P‹Eà‹‰$ÿÒ‹Eà‹@…Àt*‹Eà‹@‹ƒê‰‹…Àu‹Eà‹@‹@‹P‹Eà‹@‰$ÿÒ‹Eà‰D$Ç$èå’ÿÿE˜‰$èz“ÿÿÇEˆéó‹Ẻ$èÓ‡ÿÿƒ}Ðt ‹EЉ$è‡ÿÿƒ}Ôt‹EÔ‹‰$è?Œÿÿ‰E¤ë‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰E¤ƒ}Øt‹EØ‹‰$è Œÿÿ‰E ë‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰E ƒ}Üt‹EÜ‹‰$è׋ÿÿ‰Eœë‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eœ‹uœ‹} ‹U¤‰U‹E”‰$èÁ÷ÿÿ‰t$‰|$ ‹U‰T$‰D$ƒ_îÿÿ‰$èN’ÿÿ‰Eˆ‹EˆÄ¬[^_]ÃU‰åSƒìè„°ÿÿÑ3‹“ìÿÿÿ‹ƒ¤ÿÿÿ‰‚€‹ƒìÿÿÿÇ@Të‹“ìÿÿÿƒh‰Bt‹“ìÿÿÿƒ»Ãÿÿ‰‚”“|Ãÿÿ‹ƒìÿÿÿ‰ ‹ƒìÿÿÿ‹€˜…Àu‹ƒìÿÿÿ‹“øÿÿÿ‰˜‹ƒìÿÿÿ‹€œ…Àu‹ƒìÿÿÿ‹“ˆÿÿÿ‰œ‹ƒìÿÿÿ‰$è‡ÿÿ…Àu‹ƒìÿÿÿ‰D$ƒdîÿÿ‰D$‹E‰$è$†ÿÿƒÄ[]ÃU‰åVSè[î2ƒpþÿÿPü‹@üƒøÿt‰Ö¶¿ÿЋFüƒîƒøÿuó[^]ÃU‰åSƒìè[Ãh2èD‘ÿÿZ[]Ãexpecting at most one keyword argumentkeyword argument name is not a stringpriorityonly 'priority' keyword argument acceptedcould not get priority valueidle_add requires at least 1 argumentO:idle_addfirst argument not callable(ON)timeout_add requires at least 2 argsIO:timeout_addsecond argument not callabletimeout_add_seconds requires at least 2 argsIO:timeout_add_secondsiowatch_marshaluser_data != NULL(Oi)glib.io_add_watch callback returned None; should return True/Falseio_add_watch requires at least 3 argsOiO:io_add_watchthird argument not callable(OON)i:source_removeiiOiipidfunctiondataiO|Oi:glib.child_watch_addglib.child_watch_add: second argument must be callabletexts#:glib.markup_escape_textdirectoryi:glib.get_user_special_dirs:glib.filename_display_names:glib.filename_display_basenames#:glib.filename_from_utf8first argument must be a string, not '%s'idle_addidle_add(callable, user_data=None, priority=None) -> source id callable receives (user_data) Adds a callable to be called whenever there are no higher priority events pending to the default main loop.timeout_addtimeout_add(interval, callable, user_data=None, priority=None) -> source id callable receives (user_data) Sets a callable be called repeatedly until it returns False.timeout_add_secondstimeout_add(interval, callable, user_data=None, priority=None) -> source_id callable receives (user_data) Sets a callable be called repeatedly until it returns False. Use this if you want to have a timer in the "seconds" range and do not care about the exact time of the first call of the timer, use this for more efficient system power usage.io_add_watchio_add_watch(fd, condition, callback, user_data=None) -> source id callable receives (fd, condition, user_data) Arranges for the fd to be monitored by the main loop for the specified condition. Condition is a combination of glib.IO_IN, glib.IO_OUT, glib.IO_PRI, gio.IO_ERR and gio.IO_HUB. child_watch_addchild_watch_add(pid, callable, user_data=None, priority=None) -> source id callable receives (pid, condition, user_data) Sets the function specified by function to be called with the user data specified by data when the child indicated by pid exits. Condition is a combination of glib.IO_IN, glib.IO_OUT, glib.IO_PRI, gio.IO_ERR and gio.IO_HUB.source_removesource_remove(source_id) -> True if removed Removes the event source specified by source id as returned by the glib.idle_add(), glib.timeout_add() or glib.io_add_watch() functions.spawn_asyncspawn_async(argv, envp=None, working_directory=None, flags=0, child_setup=None, user_data=None, standard_input=None, standard_output=None, standard_error=None) -> (pid, stdin, stdout, stderr) Execute a child program asynchronously within a glib.MainLoop() See the reference manual for a complete reference.main_context_defaultmain_context_default() -> a main context Returns the default main context. This is the main context used for main loop functions when a main loop is not explicitly specified.main_depthmain_depth() -> stack depth Returns the depth of the stack of calls in the main context.filename_display_namefilename_display_basenamefilename_from_utf8get_application_nameset_application_nameget_prgnameset_prgnameget_current_timeget_user_cache_dirget_user_config_dirget_user_data_dirget_user_special_dirmarkup_escape_text_PyGLib_APImessageglib.GErrorGError(iii)glib_versionpyglib_versionSPAWN_LEAVE_DESCRIPTORS_OPENSPAWN_DO_NOT_REAP_CHILDSPAWN_SEARCH_PATHSPAWN_STDOUT_TO_DEV_NULLSPAWN_STDERR_TO_DEV_NULLSPAWN_CHILD_INHERITS_STDINSPAWN_FILE_AND_ARGV_ZEROPRIORITY_HIGHPRIORITY_DEFAULTPRIORITY_HIGH_IDLEPRIORITY_DEFAULT_IDLEPRIORITY_LOWIO_INIO_OUTIO_PRIIO_ERRIO_HUPIO_NVALIO_STATUS_ERRORIO_STATUS_NORMALIO_STATUS_EOFIO_STATUS_AGAINIO_FLAG_APPENDIO_FLAG_NONBLOCKIO_FLAG_IS_READABLEIO_FLAG_IS_WRITEABLEIO_FLAG_IS_SEEKABLEIO_FLAG_MASKIO_FLAG_GET_MASKIO_FLAG_SET_MASKOPTION_FLAG_HIDDENOPTION_FLAG_IN_MAINOPTION_FLAG_REVERSEOPTION_FLAG_NO_ARGOPTION_FLAG_FILENAMEOPTION_FLAG_OPTIONAL_ARGOPTION_FLAG_NOALIASOPTION_ERROR_UNKNOWN_OPTIONOPTION_ERROR_BAD_VALUEOPTION_ERROR_FAILEDUSER_DIRECTORY_DESKTOPUSER_DIRECTORY_DOCUMENTSUSER_DIRECTORY_DOWNLOADUSER_DIRECTORY_MUSICUSER_DIRECTORY_PICTURESUSER_DIRECTORY_PUBLIC_SHAREUSER_DIRECTORY_TEMPLATESUSER_DIRECTORY_VIDEOSOPTION_REMAININGOPTION_ERRORglib._glibglib.IOChannelEOFflush|O:glib.IOChannel.shutdownsizei:glib.IOChannel.set_buffer_sizebufferedi:glib.IOChannel.set_bufferedencodingz:glib.IOChannel.set_encodingmax_count|i:glib.IOChannel.readbufs#:glib.IOChannel.writelinesO:glib.IOChannel.writelinesglib.IOChannel.writelines must be sequence/iterator of stringsflagsi:glib.IOChannel.set_flagsdo_closeO:glib.IOChannel.set_close_on_unrefpyg_iowatch_marshaluser_data != NULL((PyGIOChannel *) data->iochannel)->channel == sourceOiOOiconditioncallbackuser_datapriorityiO|Oi:glib.IOChannel.add_watchsecond must be callable|i:glib.IOChannel.readline|i:glib.IOChannel.readlinesoffsetwhenceL|i:glib.IOChannel.seekinvalid 'whence' valuesoftspacecloseset_encodingget_encodingset_bufferedget_bufferedset_buffer_sizeget_buffer_sizereadreadlinereadlineswritewritelinesset_flagsget_flagsget_buffer_conditionset_close_on_unrefget_close_on_unrefadd_watchseekfiledesfilenamemoder|iss:glib.IOChannel.__init__either a valid file descriptor or file name must be suppliedIOChannelglib.OptionContexts:glib.GOptionContext.__init__pyg_option_context_parseargvO:GOptionContext.parseGOptionContext.parse expects a list of strings.help_enableO:GOptionContext.set_help_enabledignore_unknown_optionsO:GOptionContext.set_ignore_unknown_optionsgroupO:GOptionContext.set_main_groupGOptionContext.set_main_group expects a GOptionGroup.Group is already in a OptionContext.O:GOptionContext.add_groupGOptionContext.add_group expects a GOptionGroup.parseset_help_enabledget_help_enabledset_ignore_unknown_optionsget_ignore_unknown_optionsset_main_groupget_main_groupadd_group_get_contextOptionContextglib.OptionGroupThe GOptionGroup was not created by glib.OptionGroup(), so operation is not possible.namedescriptionhelp_descriptioncallbackzzzO:GOptionGroup.__init__sOOssOentriesO:GOptionGroup.add_entriesGOptionGroup.add_entries expected a list of entriessciszdomainThe corresponding GOptionGroup was already freed, probably through the release of GOptionContextz:GOptionGroup.set_translate_domainadd_entriesset_translation_domainOptionGroupglib.MainContext|i:GMainContext.iterationiterationpendingMainContextpyg_signal_watch_dispatchpygmainloop.cglib.MainLoopcontextis_running|Ob:GMainLoop.__init__context must be a glib.MainContext or Nonepyg_save_current_main_loopmain_loop != NULLpyg_restore_current_main_looppyg_current_main_loop_key != -1get_contextquitrunMainLoopglib.Sourceattachedunattacheddestroyed<%s glib %s source at 0x%lx><%s glib source at 0x%lx>context|O!:attachsource is destroyedset_callback requires at least 1 argumentO:set_callbackfirst argument not callable(ON)fdadd_poll can only be used with sources implemented in pythonO!:add_pollremove_poll can only be used with sources implemented in pythonO!:remove_pollattachdestroyset_callbackget_contextadd_pollremove_pollget_current_timecannot delete prioritytype mismatchcannot delete can_recursesource is not attached__dict__prioritycan_recurseidpreparesource prepare function must return a tuple or Falsesource prepare function return tuple must be exactly 2 elements longcheckOOdispatchfinalizeglib.Idleidle|i:glib.Idle.__init__glib.TimeouttimeoutintervalI|i:glib.Timeout.__init__glib.PollFDeventsreventsOH:glib.PollFD.__init__SourceIdleTimeoutPollFDíµ ÷ư>glib.Pidcloseglib.Pid cannot be manually instantiatedOargvenvpworking_directoryflagschild_setupuser_datastandard_inputstandard_outputstandard_errorO|OsiOOOOO:glib.spawn_asyncglib.spawn_async: first argument must be a sequence of stringsglib.spawn_async: second argument must be a sequence of stringschild_setup parameter must be callable or NoneNNNNPidÿÿÿÿÿÿÿÿ :Nbr}Ž˜ ø4 „¯´$ · øáÐ(/Ð&Xþÿÿo€&ÿÿÿoðÿÿoÜ$úÿÿoó€ò í€ìÀæÀð@ë ñ é óàîxà>5N5^5n5~5Ž5ž5®5¾5Î5Þ5î5þ566.6>6N6^6n6~6Ž6ž6®6¾6Î6Þ6î6þ677.7>7N7^7n7~7Ž7ž7®7¾7Î7Þ7î7þ788.8>8N8^8n8~8Ž8ž8®8¾8Î8Þ8î8þ899.9>9N9^9n9~9Ž9ž9®9¾9Î9Þ9î9þ9::.:>:N:^:n:~:Ž:ž:®:¾:Î:Þ:î:þ:;;.;>;N;^;n;~;Ž;ž;®;¾;Î;Þ;î;þ;<<.<><N<^<n<~<Ž<ž<®<¾<Î<Þ<î<þ<==.=>=N=^=n=~=Ž=ž=®=¾=Î=Þ=î=þ=>>.>>>N>^>n>~>Ž>ž>®>¾>Î>Þ>î>þ>??.?>?N?^?n?~?Ž?ž?®?¾?Î?Þ?î?þ?@@.@>@N@^@n@~@Ž@ž@®@¾@Î@åpಠ²²î¯o²²:³CD³´ñD´Ñ´âFè´N¶J\¶€·§N·ë¸ÑLü¸±¹Q§À¹»+M,»Û»1Rè»A¼VRW¼ÞRq¼fS„¼,T™¼T®¼'Uº¼|UƼhP×¼Pê¼òPþ¼GQ½œQ%½ØO<ÁOÁpÁ™ÁÀÁçÁ Â%‡¨Â=ÃGÃPÃZÃpÁpÁÒÃÙÃÄ ÄZ`OÁGhÄxb,Ä$c9ÄÄaFÄJbSÄacÄ–asÄ‚cxÄ nÄìn‹Äte‘Ä6fœÄ±h¦ÄRi°Ä€iÅÄ®iØÄ>jëĪlõÄŽpúÄÅ ÅxÅÄÅÆ>ƄƄÆUǵt[Ç^wlÇîw}Çx˜Ç¬x³ÇÚxÂÇìyÑÇ@zÛÇ‹{øÇbÈgÈsȄȰÈÉ ÉØ¬ÉcƒÏÉ úɆʠ†ÿÿÿÿ¨‡å‡ˆˆÊˆ@ÊNÊVÊË2‹VÊ`‹ËŽ‹!ËÍ‹0Ë‘ËÌ̳ÌJºÌ=ÂÌ‘ÏÌû’Û̆“äÌv”ðÌf•WÍô•`ÍO–°–iÍ™—ú—uÍ‘˜NšÍ›mœiÎ`Í=ÎRÎ`ÍuÎÌÎ ˆÎ ÌÎèÎ ñÎ0¥#Ï(Ï-Ï?ÏEÏQÏ[ÏjÏzÏGCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2GCC: (GNU) 4.2.2.symtab.strtab.shstrtab.hash.dynsym.dynstr.gnu.version.gnu.version_r.rel.dyn.rel.plt.init.text.fini.rodata.eh_frame.ctors.dtors.jcr.dynamic.got.got.plt.data.bss.comment´´`!  )$$·1ÿÿÿoÜ$Ü$¢>þÿÿo€&€&PM Ð&Ð&XV (/(/Ð _ø4ø4/Z(5(5° eà@à@¤nk„¯„¯q ¯ ¯À y`Ð`ЃdàdЊlàlБtàtЖxàxÐøŸpápш¤øáøÑô­åÕ¨ ³¨ô¨ä¸¨äØ€åÁTê ú ôÎ"dàlàtà*à@ @¨ôOåVPA bhàopà|`Ð Štà–@¯ ¬ŒA‚ ÁCã ÑñDñ äâFñ ÿ,± ÓHº )JD =ÑLZ R+M% nPMË NŒ “å §N1 ·åÄØO ÞhP5 öPU òPU +GQU D$åQœQ• m1R% VRˆ œÞRˆ ½fSÆ ×,TU óT¦ 'UU "|U¦ 5@åpE¬ôP"V d¡V¯ zPWü ™LXÍ ³ð^Ë Æ»_D Üÿ_ ó`  `; €ç)Z`´ @ˆçMaˆ k–a. ‰ç–Äa† ±Jb. ̘çÙxb¬ ô$c^  ç‚cò 5¨çBte \°çi6f ƒGhj —¸ç¤±h¡ ¼Ri. Ô€i. ÷Àç®i %>j_ Fj° \ØÂ vMk] ŠÈç—ªl_ ¯Üç¼ nã Ôäçáìn¢ úìç Žp è(0@èPFéS¨q  fÈs^ ~&t ™«Å ³`êÀµt© Ùhêæ^w îw. .pê;x i¬x. —xê¤Úx ÆìyT è€êõ@z  G{D - ‹{. D  ê _ ˜|O n ç|ä ~ ì‹ Ë}Ì ¡ —~[ º ò~æ à ìÐ Ø‹ í ìú cƒÎ " 1„D ; @ì0T P…* j z…E ƒ ¿…D œ † »  †. Ø @í0ð pí ¨‡= # å‡c : Hˆ@ T Ê n ˆˆB ˆ ʈT ¢ €í¹ ‰. Î `î Û L‰; î ‡Šg  îŠD  2‹. 8 `‹. U Ž‹? l Í‹Ÿ ‚ lŒ¢  » £Ê Õ ÐÊ ï €îP xŽÒ   ï Jó / =Æ B ‘ø Z û’‹ q ¨ï~ †“ð ’ °ïŸ v”ð ¶ f•Ž Ò Àï€å ô•[ ù O–a °–é )™—a Dú—— _‘˜– q@ðd„'™ ”B™I ¨‹™ ¹ šD ÌNš ßÍ›  ðmœü ià ¤ð),žk 9—ž# Iºž- W€ñdçž« r’Ÿ- ƒ`ò ¿Ÿ· ¡@óPµv W ÉÍ E Úó ç¡° ø0¥D `ô t¥? #³¥7 36¦ M€ô(Z„¯ `ê¥L l¡l ‰øáñÿŸ€òÀ® íÀ¿€ìÀÓÀæÀåΆÙ ³r 'ÀðÀ4åA@ëÀU ñÀežÙ „ éÀšQ§  ­¹{Ù Ò¨ôñÿÞ’| õu„Ù ¼ôñÿ[®ß 9 óÀE¨ôñÿLàîÀ[ë^ rxàñÿ{ø4´$Ü$€&Ð&(/ø4(5 à@ „¯  ¯ `Ð dàlàtàxàpáøáå¨ô;ˆ™Ÿ´Ç¾Ýìþ$ª.ÛDÀX]„“e°¼Zè#õÛ -‰>áTuvÿŒ¤¿ Î â‘ø& #B<bE]m‚’ž²Ï\äôU;kQ‰Zeäƒêœ·ÃlÓì¸ù #U3@M`&wm…‘š±ÀÚÁõw k&„=ÆRkjÉ} –©¾Ðçö+.«ETf^Ò p¹ƒ¯•¢[»$ ÒÞ4éGû`ë*;H`aq‚•¡û¸\Ïà§û 6y3JŠan^Ž¢²PÊ3Úìèeù !Ð3\HFb`wŽ€ž²1É×êúUp%4GUcz¼‰Ôë÷¹ C%‘/)D¶Tdgv£¡¯ÃÐèôb~€+?_NVbrˆE­¾ôÎÞD f # J. H ¹c [… “ ¥¨ \È Šß ¹ú Y!4! F!¡f!ø~!5Ž!, !Uº!Å!Ù!ºí!Äû!Ú""("ÿ6"Q"[k"y"Ž"™"Z»"’__CTOR_LIST____DTOR_LIST____JCR_LIST____do_global_dtors_auxcompleted.5958p.5956frame_dummy__CTOR_END____DTOR_END____FRAME_END____JCR_END____do_global_ctors_auxget_handler_prioritypyglib_idle_addpyglib_timeout_addpyglib_timeout_add_seconds__PRETTY_FUNCTION__.14385iowatch_marshalpyglib_io_add_watchpyglib_source_removepyglib_main_context_defaultchild_watch_funcchild_watch_dnotifykwlist.14575pyglib_child_watch_addkwlist.14614pyglib_markup_escape_textpyglib_get_current_timepyglib_get_user_cache_dirpyglib_get_user_config_dirpyglib_get_user_data_dirkwlist.14676pyglib_get_user_special_dirpyglib_main_depthpyglib_filename_display_namepyglib_filename_display_basenamepyglib_filename_from_utf8pyglib_get_application_namepyglib_set_application_namepyglib_get_prgnamepyglib_set_prgname_glib_functionspyglib_apipyglib_register_apipyglib_register_errorpyglib_register_version_tuplespyglib_register_constantspy_io_channel_nextpy_io_channel_comparepy_io_channel_get_iterpy_io_channel_hashpy_io_channel_deallockwlist.14233py_io_channel_shutdownkwlist.14257py_io_channel_set_buffer_sizepy_io_channel_get_buffer_sizekwlist.14283py_io_channel_set_bufferedpy_io_channel_get_bufferedkwlist.14307py_io_channel_set_encodingpy_io_channel_get_encodingkwlist.14340py_io_channel_read_charskwlist.14430py_io_channel_write_charskwlist.14456py_io_channel_write_linespy_io_channel_flushkwlist.14543py_io_channel_set_flagspy_io_channel_get_flagspy_io_channel_get_buffer_conditionkwlist.14583py_io_channel_set_close_on_unrefpy_io_channel_get_close_on_unrefpyg_iowatch_data_free__PRETTY_FUNCTION__.14660pyg_iowatch_marshalkwlist.14698py_io_channel_add_watchkwlist.14744py_io_channel_read_linekwlist.14772py_io_channel_read_lineskwlist.14829py_io_channel_seekpy_io_channel_memberspy_io_channel_methodskwlist.14862py_io_channel_initpyg_option_context_initpyg_option_context_dealloc__PRETTY_FUNCTION__.14171kwlist.14157pyg_option_context_parsekwlist.14255pyg_option_context_set_help_enabledpyg_option_context_get_help_enabledkwlist.14280pyg_option_context_set_ignore_unknown_optionspyg_option_context_get_ignore_unknown_optionskwlist.14305pyg_option_context_set_main_grouppyg_option_context_get_main_groupkwlist.14351pyg_option_context_add_grouppyg_option_context_comparepyg_option_get_contextpyg_option_context_methodscheck_if_owneddestroy_g_groupkwlist.14156pyg_option_group_initpyg_option_group_deallocarg_funckwlist.14222pyg_option_group_add_entrieskwlist.14331pyg_option_group_set_translation_domainpyg_option_group_comparepyg_option_group_methodspyg_main_context_initpyg_main_context_deallocpyg_main_context_compare_wrap_g_main_context_iteration_wrap_g_main_context_pending_PyGMainContext_methodspyg_current_main_loop_keypyg_signal_watch_preparepyg_signal_watch_checkpyg_get_current_main_loop__PRETTY_FUNCTION__.14235pyg_signal_watch_dispatchpyg_signal_watch_finalizepyg_signal_watch_funcspyg_signal_watch_newkwlist.14265pyg_main_loop_initpyg_main_loop_deallocpyg_main_loop_compare_wrap_g_main_loop_get_context_wrap_g_main_loop_is_running_wrap_g_main_loop_quit_wrap_g_main_loop_runpyg_save_current_main_looppyg_restore_current_main_loop__PRETTY_FUNCTION__.14165__PRETTY_FUNCTION__.14183_PyGMainLoop_methodssource_reprkwlist.14226pyg_source_attachpyg_source_destroypyg_source_set_callbackpyg_source_get_contextkwlist.14360pyg_source_add_pollkwlist.14385pyg_source_remove_pollpyg_source_get_current_timepyg_source_methodspyg_source_get_dictpyg_source_get_prioritypyg_source_set_prioritypyg_source_get_can_recursepyg_source_set_can_recursepyg_source_get_idpyg_source_getsetspyg_source_reprpyg_source_traversepyg_source_clearpyg_source_deallocpyg_source_preparepyg_source_checkpyg_source_dispatchpyg_source_finalizepyg_source_funcspyg_source_initpyg_source_freepyg_idle_reprkwlist.14736pyg_idle_initpyg_timeout_reprkwlist.14761pyg_timeout_initpyg_poll_fd_memberspyg_poll_fd_deallocpyg_poll_fd_reprkwlist.14809pyg_poll_fd_initpyg_pid_closepyg_pid_methodspyg_pid_freepyg_pid_tp_init_pyg_spawn_async_callbackkwlist.14191_finipyg_pid_newpyglib_source_register_types_GLOBAL_OFFSET_TABLE_PyGPollFD_TypePyGMainLoop_TypePyGMainContext_TypePyGIOChannel_Typepyglib_maincontext_register_typespyglib_iochannel_register_typesPyGIdle_Type__dso_handlePyGOptionGroup_TypePyGTimeout_Typepyglib_mainloop_register_typesPyGOptionContext_Typepyglib_spawn_asyncpyglib_option_context_register_types__bss_start__i686.get_pc_thunk.cxpyglib_option_group_register_types_endpyglib_spawn_register_typesPyGPid_Type_edataPyGSource_Type__i686.get_pc_thunk.bx_DYNAMIC_initg_freeg_io_channel_get_flagsPyDict_SetItemStringglib_major_versiong_source_set_priority_Py_ZeroStructPyString_AsStringPyExc_StopIterationPyType_GenericNewg_strdupvg_io_channel_shutdowng_io_add_watch_fullg_option_context_get_ignore_unknown_optionsPyList_GetItemg_io_channel_set_buffer_sizePyIter_Nextg_option_context_set_ignore_unknown_optionsg_slist_freeg_io_channel_set_encodingPyExc_ValueErrorPyType_Readyg_main_loop_quitg_io_channel_unix_newg_io_channel_get_buffer_conditiong_option_context_freePyLong_FromUnsignedLongPyModule_AddStringConstant__gmon_start___Jv_RegisterClassesg_source_set_callbackg_option_error_quarkPyCObject_FromVoidPtrg_source_set_can_recurseg_strdup_PyArg_ParseTuple_SizeTPyBool_FromLongg_markup_escape_textPyObject_GC_DelPyList_TypePyObject_GC_UnTrack_PyObject_CallFunction_SizeTpyglib_block_threadsPyObject_IsTruePyExc_TypeErrorPyObject_AsFileDescriptorg_io_channel_get_buffer_sizeg_io_channel_new_fileg_mallocPyInt_Typepyglib_gerror_exception_checkg_spawn_async_with_pipesPyString_FromStringAndSizePyDict_Nextg_source_get_idPyUnicodeUCS2_DecodeUTF8g_source_newg_spawn_close_pidPyModule_AddIntConstantg_main_loop_newg_main_depthPyErr_FormatPyFloat_FromDoubleg_io_channel_read_lineg_strv_lengthg_filename_from_utf8PyErr_ExceptionMatchesPyErr_Occurredg_io_channel_set_bufferedg_io_channel_seek_positiong_io_channel_write_charspyglib_main_context_new_pyglib_destroy_notifyg_source_remove_pollpyglib_gil_state_ensureg_main_context_newg_main_context_iterationglib_micro_versionPyEval_RestoreThreadPySequence_Concatg_get_application_name_Py_TrueStructg_slist_prependPyString_FromStringPyString_FromFormatg_io_channel_set_flagsPyInt_FromLongPyEval_SaveThreadinit_glibg_timeout_add_fullstrlen@@GLIBC_2.0PyTuple_Typepyglib_gil_state_releaseg_option_context_parsePyDict_Sizeg_snprintfg_idle_source_newg_source_get_can_recurseg_get_user_config_dirPyModule_GetDictPyInt_AsLongg_return_if_fail_warningPySequence_SizePyObject_GetIterPyExc_RuntimeErrorPyList_Sizeg_main_context_defaultpyglib_unblock_threadsPyType_IsSubtypeg_option_context_add_groupPyObject_Initg_slice_allocg_filename_display_basenamePyThread_get_key_valueg_main_loop_is_runningPyErr_WarnExg_io_channel_get_close_on_unrefPyObject_CallObjectPyObject_Mallocg_io_channel_read_charsg_slist_foreachg_get_prgnameclose@@GLIBC_2.0PySequence_CheckPyObject_ClearWeakRefsg_source_add_pollg_source_get_contextpyglib_float_from_timevalg_timeout_source_newPyObject_GetAttrStringg_source_removePyObject_IsInstanceg_set_application_namePyExc_Warningglib_minor_versiong_main_loop_refg_source_get_priorityg_main_context_unref_Py_NoneStructPyErr_NewExceptionPyList_AppendPyErr_SetNoneg_main_context_pendingPyErr_CheckSignals_pyglib_handler_marshalg_child_watch_add_fullg_main_loop_get_contextPyThread_set_key_valuePyErr_Printg_get_user_data_dirg_source_get_current_timeg_malloc0pyglib_init_internalg_idle_add_fullg_option_group_newPy_InitModule4PyString_AsStringAndSizeg_main_loop_unrefPyObject_FreePySequence_GetSlicePyTuple_SizePyExc_KeyboardInterruptPyErr_Clearg_io_channel_unrefg_source_destroyg_io_channel_flushPyThread_create_keyg_source_unrefg_assertion_messageg_option_group_set_translation_domaing_option_context_newPyTuple_GetItem_PyString_Resizeg_source_attachPyErr_SetStringpyglib_option_group_transfer_groupg_get_current_timePyList_SetItemg_strfreevPyThread_delete_key_valueg_timeout_add_seconds_fullg_option_context_get_help_enabledPyString_Typeg_get_user_cache_dirg_io_channel_set_close_on_unrefg_get_user_special_dirg_option_group_add_entriespyglib_threads_enabled_PyArg_ParseTupleAndKeywords_SizeTg_quark_to_stringg_option_context_set_main_groupg_filename_display_nameg_main_loop_runstrcmp@@GLIBC_2.0g_io_channel_get_encodingPyList_NewPyType_GenericAllocg_option_group_freeg_slice_free1__cxa_finalize@@GLIBC_2.1.3PyCallable_Checkg_set_prgname_PyObject_CallMethod_SizeTg_io_channel_get_bufferedPyObject_Repr_Py_BuildValue_SizeTPyDict_Newg_option_context_set_help_enabledpyglib_error_check./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/_glib.ver0000644000000000000000000000004211272036635023724 0ustar rootroot{ global: init_glib; local: *; }; ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/libpyglib-2.0-python.so0000777000000000000000000000000011272036714033053 2libpyglib-2.0-python.so.0.0.0ustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/libpyglib-2.0-python.so.00000777000000000000000000000000011272036714033211 2libpyglib-2.0-python.so.0.0.0ustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/libpyglib-2.0-python.la0000777000000000000000000000000011272036714032562 2../libpyglib-2.0-python.laustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/_glib.exp0000644000000000000000000000001211272036635023721 0ustar rootrootinit_glib ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/_glib.so0000755000000000000000000022474211272036720023566 0ustar rootrootELFA4dæ4 („ЄÐ„Єà„àDX˜Ð˜à˜àQåtdÅÑ|µ/[!#ÀºË"δ3ƒÃ§:¯¼yͬg=‹­«G•FŒ~’ªl7±‡ N.£Ç&² Ÿ_¨¶“ŽÂfvÊhY9]¾Ì`¤¥dÉ)¦$–Å‚RÐ;‘Ox˜½žT¹—…k›¡·aBÆ{rϰSˆVœe»czÁ¿4 5 *8+?E%I2 WQK>0,iJZ\-XpUm 6n'q P<ou†”s€™H1L}‰j^MA©šb®Š(³¢„¸@wÄDÈCt¿;e™hé¶¾ÞŠ—c ñ ªÈÛ­ÀÝ ]Î Þeÿ± Z‹ #LÛËu Ö ‰—á|u— ÿí  +‘/&RåBÝ býä–9­ %#À\T?}ûU9 kÅ ‰«¿ äêÒ_þlu ¸¶ü% UI‚€&P mª‘ ° ÁÕw  k;„SÆÐkE Ém Ã; øí¹ô +«¢N«z V9^Ò ‰¹n¯ç d[$ $ 3 4{GÌ`ëo£·`÷î¹ ôû‘\y` §Øq6Žyç  ŠG¾^ ȨP{ 36ì eæAÐ \ÙF`dÔ€ 19Öä •UX p*° È †  Rî¹w ‰ô ¹hCÝ ‘})j¶˜ d`"e £«éܰ ¿ÁbT ~;€¶ E _þ V r‚ Eè€5 ôO DÆf^ æ JÊ œ¹ [kó¥ž\2Š ¹û YND @ ¡Vø¦ 5œ,fU O « º@ÄÚ"DÿI2[&’m Z¿’__gmon_start____cxa_finalize_Jv_RegisterClassesPyDict_SizePyExc_TypeErrorPyErr_SetStringPyDict_NextPyString_TypePyType_IsSubtypePyString_AsStringstrcmpPyInt_AsLongPyErr_OccurredPyErr_ClearPyExc_ValueErrorPyTuple_SizePySequence_GetSlice_PyArg_ParseTuple_SizeTPyCallable_Check_Py_BuildValue_SizeT_pyglib_destroy_notify_pyglib_handler_marshalg_idle_add_fullPyInt_FromLongg_timeout_add_fullg_timeout_add_seconds_fullg_return_if_fail_warningpyglib_gil_state_ensurePyTuple_GetItemPySequence_ConcatPyObject_CallObjectPyErr_Print_Py_NoneStructPyExc_WarningPyErr_WarnExPyObject_IsTruepyglib_gil_state_releasePyObject_AsFileDescriptorg_io_channel_unix_newg_io_add_watch_fullg_io_channel_unrefg_source_removePyBool_FromLongg_main_context_defaultpyglib_main_context_new_PyObject_CallFunction_SizeTg_slice_free1_PyArg_ParseTupleAndKeywords_SizeTg_slice_allocg_child_watch_add_fullg_markup_escape_textPyString_FromStringg_freeg_get_current_timepyglib_float_from_timevalg_get_user_cache_dirg_get_user_config_dirg_get_user_data_dirg_get_user_special_dirg_main_depthg_filename_display_namestrlenPyUnicodeUCS2_DecodeUTF8g_filename_display_basenameg_filename_from_utf8pyglib_error_checkPyString_FromStringAndSizeg_get_application_namePyObject_ReprPyErr_Formatg_set_application_nameg_get_prgnameg_set_prgnamePyCObject_FromVoidPtrPyDict_SetItemStringpyglib_init_internalPyDict_NewPyExc_RuntimeErrorPyErr_NewExceptionglib_micro_versionglib_minor_versionglib_major_versionPyModule_AddIntConstantPyModule_AddStringConstantg_option_error_quarkg_quark_to_stringinit_glibPy_InitModule4PyModule_GetDictg_io_channel_read_linePyExc_StopIterationPyObject_Free_Py_TrueStructg_io_channel_shutdowng_io_channel_set_buffer_sizeg_io_channel_get_buffer_sizeg_io_channel_set_bufferedg_io_channel_get_bufferedg_io_channel_set_encodingg_io_channel_get_encoding_PyString_Resizepyglib_unblock_threadsg_io_channel_read_charspyglib_block_threadsg_io_channel_write_charsPyObject_GetIterPyIter_NextPyErr_ExceptionMatchesPyString_AsStringAndSizeg_io_channel_flushg_io_channel_set_flagsg_io_channel_get_flagsg_io_channel_get_buffer_conditiong_io_channel_set_close_on_unrefg_io_channel_get_close_on_unref_Py_ZeroStructPyLong_FromUnsignedLongPyList_NewPyList_Appendg_io_channel_seek_positiong_io_channel_new_filePyType_GenericAllocPyType_GenericNewPyType_Readyg_option_context_newg_option_context_freePyList_TypePyList_Sizeg_mallocPyList_GetItemg_strdupg_strfreevg_strdupvpyglib_threads_enabledPyEval_SaveThreadg_option_context_parsePyEval_RestoreThreadg_strv_lengthPyList_SetItemg_option_context_set_help_enabledg_option_context_get_help_enabledg_option_context_set_ignore_unknown_optionsg_option_context_get_ignore_unknown_optionsPyObject_IsInstancepyglib_option_group_transfer_groupg_option_context_set_main_groupg_option_context_add_groupg_slist_foreachg_slist_freeg_option_group_newg_option_group_freepyglib_gerror_exception_checkg_malloc0PyTuple_Typeg_slist_prependg_option_group_add_entriesg_option_group_set_translation_domaing_main_context_newg_main_context_unrefg_main_context_iterationg_main_context_pendingPyErr_CheckSignalsPyExc_KeyboardInterruptPyErr_SetNoneg_main_loop_quitPyThread_get_key_valueg_assertion_messagecloseg_source_newg_main_loop_newg_source_attachg_source_unrefg_source_destroyg_main_loop_unrefg_main_loop_get_contextg_main_loop_is_runningg_main_loop_runPyThread_create_keyPyThread_delete_key_valueg_main_loop_refPyThread_set_key_valueg_source_get_contextg_snprintfg_source_set_callbackg_source_add_pollg_source_remove_pollg_source_get_current_timePyFloat_FromDoubleg_source_get_priorityPyInt_Typeg_source_set_priorityg_source_get_can_recurseg_source_set_can_recurseg_source_get_idPyObject_ClearWeakRefsPyObject_GC_UnTrackPyObject_GC_Del_PyObject_CallMethod_SizeTPyObject_GetAttrStringg_idle_source_newg_timeout_source_newPyString_FromFormatg_spawn_close_pidPyObject_MallocPyObject_InitPySequence_CheckPySequence_Sizeg_spawn_async_with_pipeslibpyglib-2.0-python.so.0libgobject-2.0.so.0libgthread-2.0.so.0libpthread.so.0librt.so.1libglib-2.0.so.0libc.so.6_glib.so/root/Desktop/pygobject-2.20.0/glib/.libsGLIBC_2.0GLIBC_2.1.3b ii ËŽsi Õii ËÀáÈáÌáÔáäáìáðáôá ââ å$å(å,å0å4å<åDå`ådålåpåtå|å€å„åŒåå”åœå å¤å¬å°å´å¼åÀåÄåÌåÐåÔåÜåàåäåìåðåôåææææ æ$æ0æ4æ@æDæPæTæ`ædæpætæ€æ„ææ”æ æ¤æ°æ´æìæ ç¨ç°ç¸çÀçÈçÐçØçàçèçìçðçôçüçè èè è`èdèpètè€è„èè”è è¤è°è´èÀèÄèÐèÔèàèäèðèôèéééé é$é0é4é@éDéPéTé`édépété€é„éé”é°é´é¸éÌé€êˆêê˜ê êÀêÄêÐêÔêàêäêðêôêëëëë ë$ë0ë4ë@ëDëlë ì$ì(ì,ì4ì<ì`ìdìpìtì¬ì`ídípítí í¤í¨í¬íÌí€î„î î¤î°î´îÀîÄîÐîÔî ïÀïÈïÐïàïäïðïôïðððð ð$ð0ð4ð@ðDð`ðdðtðxð|ðˆðŒððœð ðÄðÈðÌðÐðìð ñÌñ€ò„ò¬ò`ótóˆó°ó´óÌó€ô„ô ô¤ô¨ô¬ô°ô´ô¸ô¼ôÀô˜áœá á¤á¨á ¬á°á´á¸á'¼á,Äá1ÐáHØáMÜáQàá[èáhøá…üá†âŠââ¡â¶âÄâÇ,â0â4â8â<â@â Dâ Hâ Lâ PâTâXâ\â`âdâhâlâpâtâxâ|â€â„âˆâŒââ ”â!˜â"œâ# â$¤â%¨â&¬â(°â)´â*¸â+¼â-Àâ.Äâ/Èâ0Ìâ2Ðâ3Ôâ4Øâ5Üâ6àâ7äâ8èâ9ìâ:ðâ;ôâ<øâ=üâ>ã?ã@ãA ãBãCãDãEãF ãG$ãI(ãJ,ãK0ãL4ãN8ãO<ãP@ãRDãSHãTLãUPãVTãWXãY\ãZ`ã\dã]hã^lã_pã`tãaxãb|ãc€ãd„ãeˆãfŒãgãi”ãj˜ãkœãl ãm¤ãn¨ão¬ãp°ãq´ãr¸ãs¼ãtÀãuÄãvÈãwÌãxÐãyÔãzØã{Üã|àã}äã~èãìã€ðãôã‚øãƒüã„ä‡äˆä‰ ä‹äŒääŽä ä‘$ä’(ä“,ä”0ä•4ä–8ä—<ä˜@ä™DäšHä›LäœPäTäžXäŸ\ä `ä¢dä£hä¤lä¥pä¦tä§xä¨|䩀䪄䫈䬌ä­ä®”䯘䰜䱠䲤䳨䴬䵰䷴丸乼äºÀä»Ää¼Èä½Ìä¾Ðä¿ÔäÀØäÁÜäÂàäÃääÅèäÆìäÇðäÈôäÉøäÊüäËåÌåÍåÎ åÏåÐU‰åSƒìè[Ãô¬ƒ»ÿÿÿtèè* èzX[]Ãÿ³ÿ£ÿ£ héàÿÿÿÿ£héÐÿÿÿÿ£héÀÿÿÿÿ£hé°ÿÿÿÿ£h é ÿÿÿÿ£ h(éÿÿÿÿ£$h0é€ÿÿÿÿ£(h8épÿÿÿÿ£,h@é`ÿÿÿÿ£0hHéPÿÿÿÿ£4hPé@ÿÿÿÿ£8hXé0ÿÿÿÿ£<h`é ÿÿÿÿ£@hhéÿÿÿÿ£Dhpéÿÿÿÿ£Hhxéðþÿÿÿ£Lh€éàþÿÿÿ£PhˆéÐþÿÿÿ£ThéÀþÿÿÿ£Xh˜é°þÿÿÿ£\h é þÿÿÿ£`h¨éþÿÿÿ£dh°é€þÿÿÿ£hh¸épþÿÿÿ£lhÀé`þÿÿÿ£phÈéPþÿÿÿ£thÐé@þÿÿÿ£xhØé0þÿÿÿ£|hàé þÿÿÿ£€hèéþÿÿÿ£„hðéþÿÿÿ£ˆhøéðýÿÿÿ£Œhéàýÿÿÿ£héÐýÿÿÿ£”héÀýÿÿÿ£˜hé°ýÿÿÿ£œh é ýÿÿÿ£ h(éýÿÿÿ£¤h0é€ýÿÿÿ£¨h8épýÿÿÿ£¬h@é`ýÿÿÿ£°hHéPýÿÿÿ£´hPé@ýÿÿÿ£¸hXé0ýÿÿÿ£¼h`é ýÿÿÿ£Àhhéýÿÿÿ£Ähpéýÿÿÿ£Èhxéðüÿÿÿ£Ìh€éàüÿÿÿ£ÐhˆéÐüÿÿÿ£ÔhéÀüÿÿÿ£Øh˜é°üÿÿÿ£Üh é üÿÿÿ£àh¨éüÿÿÿ£äh°é€üÿÿÿ£èh¸épüÿÿÿ£ìhÀé`üÿÿÿ£ðhÈéPüÿÿÿ£ôhÐé@üÿÿÿ£øhØé0üÿÿÿ£ühàé üÿÿÿ£hèéüÿÿÿ£hðéüÿÿÿ£høéðûÿÿÿ£ héàûÿÿÿ£héÐûÿÿÿ£héÀûÿÿÿ£hé°ûÿÿÿ£h é ûÿÿÿ£ h(éûÿÿÿ£$h0é€ûÿÿÿ£(h8épûÿÿÿ£,h@é`ûÿÿÿ£0hHéPûÿÿÿ£4hPé@ûÿÿÿ£8hXé0ûÿÿÿ£<h`é ûÿÿÿ£@hhéûÿÿÿ£Dhpéûÿÿÿ£Hhxéðúÿÿÿ£Lh€éàúÿÿÿ£PhˆéÐúÿÿÿ£ThéÀúÿÿÿ£Xh˜é°úÿÿÿ£\h é úÿÿÿ£`h¨éúÿÿÿ£dh°é€úÿÿÿ£hh¸épúÿÿÿ£lhÀé`úÿÿÿ£phÈéPúÿÿÿ£thÐé@úÿÿÿ£xhØé0úÿÿÿ£|hàé úÿÿÿ£€hèéúÿÿÿ£„hðéúÿÿÿ£ˆhøéðùÿÿÿ£Œhéàùÿÿÿ£héÐùÿÿÿ£”héÀùÿÿÿ£˜hé°ùÿÿÿ£œh é ùÿÿÿ£ h(éùÿÿÿ£¤h0é€ùÿÿÿ£¨h8épùÿÿÿ£¬h@é`ùÿÿÿ£°hHéPùÿÿÿ£´hPé@ùÿÿÿ£¸hXé0ùÿÿÿ£¼h`é ùÿÿÿ£Àhhéùÿÿÿ£Ähpéùÿÿÿ£Èhxéðøÿÿÿ£Ìh€éàøÿÿÿ£ÐhˆéÐøÿÿÿ£ÔhéÀøÿÿÿ£Øh˜é°øÿÿÿ£Üh é øÿÿÿ£àh¨éøÿÿÿ£äh°逸ÿÿÿ£èh¸épøÿÿÿ£ìhÀé`øÿÿÿ£ðhÈéPøÿÿÿ£ôhÐé@øÿÿÿ£øhØé0øÿÿÿ£ühàé øÿÿÿ£hèéøÿÿÿ£hðéøÿÿÿ£høéð÷ÿÿÿ£ héà÷ÿÿÿ£héÐ÷ÿÿÿ£héÀ÷ÿÿÿ£hé°÷ÿÿÿ£h é ÷ÿÿÿ£ h(é÷ÿÿÿ£$h0é€÷ÿÿÿ£(h8ép÷ÿÿÿ£,h@é`÷ÿÿÿ£0hHéP÷ÿÿÿ£4hPé@÷ÿÿÿ£8hXé0÷ÿÿÿ£<h`é ÷ÿÿÿ£@hhé÷ÿÿÿ£Dhpé÷ÿÿÿ£Hhxéðöÿÿÿ£Lh€éàöÿÿÿ£PhˆéÐöÿÿÿ£ThéÀöÿÿÿ£Xh˜é°öÿÿÿ£\h é öÿÿÿ£`h¨éöÿÿÿ£dh°é€öÿÿÿ£hh¸épöÿÿÿ£lhÀé`öÿÿÿ£phÈéPöÿÿÿ£thÐé@öÿÿÿ£xhØé0öÿÿÿ£|hàé öÿÿÿ£€hèéöÿÿÿ£„hðéöÿÿÿ£ˆhøéðõÿÿÿ£Œhéàõÿÿÿ£héÐõÿÿÿ£”héÀõÿÿÿ£˜hé°õÿÿÿ£œh é õÿÿÿ£ h(éõÿÿÿ£¤h0é€õÿÿÿ£¨h8épõÿÿÿ£¬h@é`õÿÿÿ£°hHéPõÿÿÿ£´hPé@õÿÿÿ£¸hXé0õÿÿÿ£¼h`é õÿÿÿ£Àhhéõÿÿÿ£Ähpéõÿÿÿ£Èhxéðôÿÿÿ£Ìh€éàôÿÿÿ£ÐhˆéÐôÿÿÿ£ÔhéÀôÿÿÿ£Øh˜é°ôÿÿÿ£Üh é ôÿÿÿ£àh¨éôÿÿÿ£äh°é€ôÿÿÿ£èh¸épôÿÿÿ£ìhÀé`ôÿÿÿ£ðhÈéPôÿÿU‰åSƒìè[ျ¨uB‹“üÿÿÿ…Òt%ƒì ‹ƒPè+ÿÿÿƒÄ붃À‰ƒÿÒ‹ƒ‹…ÒuéÆƒ¨‹]üÉö¼'U‰åSƒìè[ä ‹‹tþÿÿ…Ét‹“”ÿÿÿ…Òtƒì ƒtþÿÿPÿ҃ċ]üÉÃU‰åSƒì$èSÃh ƒ} u ÇEèéU‹E ‰$èuøÿÿ‰Eøƒ}øu ÇEèé5ƒ}øt&‹ƒœÿÿÿ‹ƒ Íÿÿ‰D$‰$èàüÿÿÇEèÿÿÿÿé ÇEôEì‰D$ Eð‰D$Eô‰D$‹E ‰$èÍõÿÿ‹Eð‹P‹ƒðÿÿÿ9ÂtB‹Eð‹P‹ƒðÿÿÿ‰D$‰$èµøÿÿ…Àu&‹ƒœÿÿÿ‹ƒÈÍÿÿ‰D$‰$ègüÿÿÇEèÿÿÿÿé‹Eð‰$èóÿÿ‰ÂƒîÍÿÿ‰D$‰$è\ýÿÿ…Àt#‹ƒœÿÿÿ‹ƒøÍÿÿ‰D$‰$èüÿÿÇEèÿÿÿÿëJ‹Eì‰$èÊ÷ÿÿ‰Â‹E‰èþõÿÿ…Àt(è5ûÿÿ‹ƒŒÿÿÿ‹ƒ"Îÿÿ‰D$‰$èÛûÿÿÇEèÿÿÿÿëÇEè‹EèƒÄ$[]ÃU‰åSƒì4èÑÃæžÇEìÇEàÈ‹E ‰$èÇúÿÿ‰Eôƒ}ô&‹ƒœÿÿÿ‹ƒ@Îÿÿ‰D$‰$ètûÿÿÇEØé€ÇD$ÇD$‹E ‰$èmúÿÿ‰EèEä‰D$ƒfÎÿÿ‰D$‹Eè‰$è^óÿÿ…Àu3‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEØé‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä‰$èEüÿÿ…Àu&‹ƒœÿÿÿ‹ƒqÎÿÿ‰D$‰$è§úÿÿÇEØé³‹E‰D$Eà‰$èEýÿÿ…Ày ÇEØé‘‹Eô‰D$ÇD$‹E ‰$èùÿÿ‰Eìƒ}ìu ÇEØëe‹Uä‹Eì‰D$‰T$ƒÎÿÿ‰$èüÿÿ‰Eðƒ}ðu ÇEØë7‹Uà‹ƒ°ÿÿÿ‰D$ ‹Eð‰D$‹ƒäÿÿÿ‰D$‰$è¹øÿÿ‰Eø‹Eø‰$èëôÿÿ‰EØ‹E؃Ä4[]ÃU‰åSƒìDèîÃÇEìÇEà‹E ‰$èäøÿÿ‰Eôƒ}ô&‹ƒœÿÿÿ‹ƒ”Îÿÿ‰D$‰$è‘ùÿÿÇEØéŽÇD$ÇD$‹E ‰$èŠøÿÿ‰EèEä‰D$ E܉D$ƒ¹Îÿÿ‰D$‹Eè‰$ètñÿÿ…Àu3‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEØé‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä‰$è[úÿÿ…Àu&‹ƒœÿÿÿ‹ƒÈÎÿÿ‰D$‰$è½øÿÿÇEØéº‹E‰D$Eà‰$è[ûÿÿ…Ày ÇEØé˜‹Eô‰D$ÇD$‹E ‰$è•÷ÿÿ‰Eìƒ}ìu ÇEØël‹Uä‹Eì‰D$‰T$ƒÎÿÿ‰$èúÿÿ‰Eðƒ}ðu ÇEØë>‹UÜ‹Mà‹ƒ°ÿÿÿ‰D$‹Eð‰D$ ‹ƒäÿÿÿ‰D$‰T$‰ $è(óÿÿ‰Eø‹Eø‰$èúòÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒìDèýÛÇEìÇEà‹E ‰$èóöÿÿ‰Eôƒ}ô&‹ƒœÿÿÿ‹ƒèÎÿÿ‰D$‰$è ÷ÿÿÇEØéŽÇD$ÇD$‹E ‰$è™öÿÿ‰EèEä‰D$ E܉D$ƒÏÿÿ‰D$‹Eè‰$èƒïÿÿ…Àu3‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒÇEØé‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eä‰$èjøÿÿ…Àu&‹ƒœÿÿÿ‹ƒÈÎÿÿ‰D$‰$èÌöÿÿÇEØéº‹E‰D$Eà‰$èjùÿÿ…Ày ÇEØé˜‹Eô‰D$ÇD$‹E ‰$è¤õÿÿ‰Eìƒ}ìu ÇEØël‹Uä‹Eì‰D$‰T$ƒÎÿÿ‰$è&øÿÿ‰Eðƒ}ðu ÇEØë>‹UÜ‹Mà‹ƒ°ÿÿÿ‰D$‹Eð‰D$ ‹ƒäÿÿÿ‰D$‰T$‰ $èwöÿÿ‰Eø‹Eø‰$è ñÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4è Ã!™ƒ}u,ƒ<Ïÿÿ‰D$ƒ,Ïÿÿ‰D$Ç$è•ñÿÿÇEØémèðÿÿ‰Eà‹E‰EäÇD$‹Eä‰$èhõÿÿ‰EèÇD$‹Eä‰$èRõÿÿ‰Â‹E ‰D$‰T$ƒNÏÿÿ‰$è7÷ÿÿ‰EìÇD$‹Eä‰$è!õÿÿ‰D$‹Eì‰$èâïÿÿ‰Eð‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eð‰D$‹Eè‰$èÆñÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒ}ôuèAóÿÿÇEøëk‹ƒàÿÿÿ9Eôu+‹ƒØÿÿÿ‹ÇD$ƒTÏÿÿ‰D$‰$è;ñÿÿ…Àtèóÿÿ‹Eô‰$è'íÿÿ‰Eø‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eà‰$è’ïÿÿ‹Eø‰EØ‹E؃Ä4[]ÃU‰åSƒìTèRÃg—ÇEäÇEÔ‹E ‰$èHóÿÿ‰Eðƒ}ð&‹ƒœÿÿÿ‹ƒ˜Ïÿÿ‰D$‰$èõóÿÿÇEÈéáÇD$ÇD$‹E ‰$èîòÿÿ‰EàE؉D$EЉD$ E܉D$ƒ¾Ïÿÿ‰D$‹Eà‰$èÑëÿÿ…Àu3‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒÇEÈéb‹Eà‹Pÿ‹Eà‰‹Eà‹…Àu‹Eà‹@‹P‹Eà‰$ÿÒ‹E܉$èèëÿÿ‰Eìƒ}ìy ÇEÈé‹E؉$è˜ôÿÿ…Àu&‹ƒœÿÿÿ‹ƒÏÏÿÿ‰D$‰$èúòÿÿÇEÈéæ‹E‰D$EÔ‰$è˜õÿÿ…Ày ÇEÈéÄ‹Eð‰D$ÇD$‹E ‰$èÒñÿÿ‰Eäƒ}äu ÇEÈé•‹UÜ‹MØ‹Eä‰D$ ‰T$‰L$ƒëÏÿÿ‰$èJôÿÿ‰Eèƒ}èu ÇEÈë`‹Eì‰$èÝéÿÿ‰Eô‹EЉ‹MÔ‹ƒ°ÿÿÿ‰D$‹Eè‰D$ƒÓfÿÿ‰D$ ‰T$‰L$‹Eô‰$èéÿÿ‰Eø‹Eô‰$èfñÿÿ‹Eø‰$è íÿÿ‰EÈ‹EȃÄT[]ÃU‰åSƒì$èÃ#•Eø‰D$ƒñÏÿÿ‰D$‹E ‰$èêÿÿ…Àu ÇEèë‹Eø‰$èIïÿÿ‰$èñéÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè´ÃÉ”èžíÿÿ‰$èÆëÿÿƒÄ[]ÃU‰åSƒì$è䔋E‰EðèÃëÿÿ‰Eø‹Eð‹@…Àt4‹Eð‹P‹Eð‹‰T$‹E ‰D$ ‹E‰D$ƒÐÿÿ‰D$‰ $è§éÿÿ‰Eôë(‹Eð‹‹E ‰D$ ‹E‰D$ƒÐÿÿ‰D$‰$è}éÿÿ‰Eôƒ}ôt)‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒëè6ïÿÿ‹Eø‰$èûëÿÿƒÄ$[]ÃU‰åSƒì$èÄÃÙ“‹E‰Eø‹Eø‹‹ƒê‰‹…Àu‹Eø‹‹@‹P‹Eø‹‰$ÿÒ‹Eø‹@…Àt*‹Eø‹@‹ƒê‰‹…Àu‹Eø‹@‹@‹P‹Eø‹@‰$ÿÒ‹Eø‰D$Ç$èñÿÿƒÄ$[]ÃU‰åSƒìDè8ÃM“ÇEðÇEäEð‰D$Eä‰D$Eè‰D$Eì‰D$ƒ‰D$ ƒÐÿÿ‰D$‹E‰D$‹E ‰$è—ðÿÿ…Àu ÇEØé¶‹Eè‰$è,ñÿÿ…Àu&‹ƒœÿÿÿ‹ƒ8Ðÿÿ‰D$‰$èŽïÿÿÇEØéÇ$èÖëÿÿ‰Eø‹Uè‹Eø‰‹Uä‹Eø‰P‹Eø‹‹ƒÀ‰‹Eø‹@…Àt ‹Eø‹P‹ƒÀ‰‹Uì‹Mðƒlÿÿ‰D$‹Eø‰D$ ƒPkÿÿ‰D$‰T$‰ $èRíÿÿ‰Eô‹Eô‰$èêÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4èÃ’Eì‰D$Eð‰D$ƒ‰D$ ƒtÐÿÿ‰D$‹E‰D$‹E ‰$è‚ïÿÿ…Àu ÇEèë4‹Eì‹Uð‰D$‰$èãæÿÿ‰Eô‹Eô‰$èUéÿÿ‰Eø‹Eô‰$èçäÿÿ‹Eø‰Eè‹EèƒÄ4[]ÃU‰åSƒì$èwÃŒ‘Eô‰$èkîÿÿ‹Eô‹Uø‰$‰T$è™ëÿÿƒÄ$[]ÃU‰åSƒì$èBÃW‘èœîÿÿ‰Eøƒ}øt‹Eø‰$èØèÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èí Ñègéÿÿ‰Eøƒ}øt‹Eø‰$èƒèÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è˜ Ã­èòëÿÿ‰Eøƒ}øt‹Eø‰$è.èÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èC ÃXEô‰D$ƒ$‰D$ ƒ™Ðÿÿ‰D$‹E‰D$‹E ‰$èÅíÿÿ…Àu ÇEèë@‹Eô‰$è}íÿÿ‰Eøƒ}øt‹Eø‰$è™çÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè® ÃÃèæÿÿ‰$è€çÿÿƒÄ[]ÃU‰åSƒì$è‰ ÃžEð‰D$ƒµÐÿÿ‰D$‹E ‰$è|äÿÿ…Àu ÇEèëD‹Eð‰$è4íÿÿ‰Eø‹Eø‰$èVçÿÿÇD$‰D$‹Eø‰$èOåÿÿ‰Eô‹Eø‰$èqâÿÿ‹Eô‰Eè‹EèƒÄ$[]ÃU‰åSƒì$è ÃEð‰D$ƒÔÐÿÿ‰D$‹E ‰$èôãÿÿ…Àu ÇEèëD‹Eð‰$èèÿÿ‰Eø‹Eø‰$èÎæÿÿÇD$‰D$‹Eø‰$èÇäÿÿ‰Eô‹Eø‰$èéáÿÿ‹Eô‰Eè‹EèƒÄ$[]ÃU‰åSƒìDèy ÃŽŽÇEäEì‰D$ Eð‰D$ƒõÐÿÿ‰D$‹E ‰$è^ãÿÿ…Àu ÇEØët‹Uì‹MðEä‰D$Eè‰D$ ÇD$‰T$‰ $èÙäÿÿ‰EôEä‰$èëìÿÿ…Àt‹Eô‰$èLáÿÿÇEØë&‹Eè‰D$‹Eô‰$èÑãÿÿ‰Eø‹Eô‰$è#áÿÿ‹Eø‰EØ‹E؃ÄD[]ÃU‰åSƒì$è³ ÃÈè=åÿÿ‰Eøƒ}øu‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eèë‹Eø‰$è+åÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè^ Ãs‹E ‹P‹ƒðÿÿÿ9ÂtQ‹E ‹P‹ƒðÿÿÿ‰D$‰$èEæÿÿ…Àu5‹E ‰$èÆëÿÿP‹ƒœÿÿÿ‹‰T$ƒÑÿÿ‰D$‰ $è…ãÿÿÇEøë*‹E ƒÀ‰$è~çÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒì$è¸ ÃÍŒè’æÿÿ‰Eøƒ}øu‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eèë‹Eø‰$è0äÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìèc ÃxŒ‹E ‹P‹ƒðÿÿÿ9ÂtQ‹E ‹P‹ƒðÿÿÿ‰D$‰$èJåÿÿ…Àu5‹E ‰$èËêÿÿP‹ƒœÿÿÿ‹‰T$ƒÑÿÿ‰D$‰ $èŠâÿÿÇEøë*‹E ƒÀ‰$ècêÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒì$è½ÃÒ‹ÇD$ƒ¬‰$è†àÿÿ‰Eø‹Eø‰D$ƒ8Ûÿÿ‰D$‹E‰$è÷Þÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹Eø‰$èåæÿÿƒÄ$[]ÃU‰åSƒì$è>ÃS‹èøéÿÿ‰Eô‹ƒàÿÿÿ‰D$ƒDÛÿÿ‰D$‹Eô‰$è†Þÿÿ‹ƒÈÿÿÿ‹‹Eô‰D$‰T$ƒLÛÿÿ‰$èÅåÿÿ‰Eø‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰D$ƒXÛÿÿ‰D$‹E‰$èÞÿÿ‹Eø‰ƒ°ƒÄ$[]ÃU‰åSƒì$èÃ¤Š‹ƒ¸ÿÿÿ‹‹ƒÜÿÿÿ‹‹ƒ|ÿÿÿ‹‰T$ ‰L$‰D$ƒ_Ûÿÿ‰$è éÿÿ‰Eø‹Eø‰D$ƒeÛÿÿ‰D$‹E‰$è­Ýÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒÇD$ ÇD$ÇD$ƒ_Ûÿÿ‰$è èÿÿ‰Eø‹Eø‰D$ƒrÛÿÿ‰D$‹E‰$èAÝÿÿ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒƒÄ$[]ÃU‰åSƒìè“è‰ÇD$ƒÛÿÿ‰D$‹E‰$èÅßÿÿÇD$ƒžÛÿÿ‰D$‹E‰$è¨ßÿÿÇD$ƒ¶Ûÿÿ‰D$‹E‰$è‹ßÿÿÇD$ƒÈÛÿÿ‰D$‹E‰$ènßÿÿÇD$ƒáÛÿÿ‰D$‹E‰$èQßÿÿÇD$ ƒúÛÿÿ‰D$‹E‰$è4ßÿÿÇD$@ƒÜÿÿ‰D$‹E‰$èßÿÿÇD$œÿÿÿƒ.Üÿÿ‰D$‹E‰$èúÞÿÿÇD$ƒ<Üÿÿ‰D$‹E‰$èÝÞÿÿÇD$dƒMÜÿÿ‰D$‹E‰$èÀÞÿÿÇD$ȃ`Üÿÿ‰D$‹E‰$è£ÞÿÿÇD$,ƒvÜÿÿ‰D$‹E‰$è†ÞÿÿÇD$ƒƒÜÿÿ‰D$‹E‰$èiÞÿÿÇD$ƒ‰Üÿÿ‰D$‹E‰$èLÞÿÿÇD$ƒÜÿÿ‰D$‹E‰$è/ÞÿÿÇD$ƒ—Üÿÿ‰D$‹E‰$èÞÿÿÇD$ƒžÜÿÿ‰D$‹E‰$èõÝÿÿÇD$ ƒ¥Üÿÿ‰D$‹E‰$èØÝÿÿÇD$ƒ­Üÿÿ‰D$‹E‰$è»ÝÿÿÇD$ƒ½Üÿÿ‰D$‹E‰$èžÝÿÿÇD$ƒÎÜÿÿ‰D$‹E‰$èÝÿÿÇD$ƒÜÜÿÿ‰D$‹E‰$èdÝÿÿÇD$ƒìÜÿÿ‰D$‹E‰$èGÝÿÿÇD$ƒûÜÿÿ‰D$‹E‰$è*ÝÿÿÇD$ƒ Ýÿÿ‰D$‹E‰$è ÝÿÿÇD$ƒ Ýÿÿ‰D$‹E‰$èðÜÿÿÇD$ƒ5Ýÿÿ‰D$‹E‰$èÓÜÿÿÇD$ƒIÝÿÿ‰D$‹E‰$è¶ÜÿÿÇD$ƒVÝÿÿ‰D$‹E‰$è™ÜÿÿÇD$ƒgÝÿÿ‰D$‹E‰$è|ÜÿÿÇD$ƒxÝÿÿ‰D$‹E‰$è_ÜÿÿÇD$ƒ‹Ýÿÿ‰D$‹E‰$èBÜÿÿÇD$ƒŸÝÿÿ‰D$‹E‰$è%ÜÿÿÇD$ƒ³Ýÿÿ‰D$‹E‰$èÜÿÿÇD$ƒÆÝÿÿ‰D$‹E‰$èëÛÿÿÇD$ ƒÛÝÿÿ‰D$‹E‰$èÎÛÿÿÇD$@ƒôÝÿÿ‰D$‹E‰$è±ÛÿÿÇD$ƒÞÿÿ‰D$‹E‰$è”ÛÿÿÇD$ƒ$Þÿÿ‰D$‹E‰$èwÛÿÿÇD$ƒ;Þÿÿ‰D$‹E‰$èZÛÿÿÇD$ƒOÞÿÿ‰D$‹E‰$è=ÛÿÿÇD$ƒfÞÿÿ‰D$‹E‰$è ÛÿÿÇD$ƒÞÿÿ‰D$‹E‰$èÛÿÿÇD$ƒ—Þÿÿ‰D$‹E‰$èæÚÿÿÇD$ƒ¬Þÿÿ‰D$‹E‰$èÉÚÿÿÇD$ƒÄÞÿÿ‰D$‹E‰$è¬ÚÿÿÇD$ƒàÞÿÿ‰D$‹E‰$èÚÿÿÇD$ƒùÞÿÿ‰D$‹E‰$èrÚÿÿƒßÿÿ‰D$ƒßÿÿ‰D$‹E‰$è£ØÿÿèÎØÿÿ‰$è¶áÿÿ‰D$ƒ!ßÿÿ‰D$‹E‰$è}ØÿÿƒÄ[]ÃU‰åSƒì$èÆÃÛƒÇD$õÇD$ ÇD$ƒ@‰D$ƒ.ßÿÿ‰$èUßÿÿ‰Eô‹Eô‰$èÜÿÿ‰Eø‹Eô‰$èÕùÿÿ‹Eø‰$è ÷ÿÿ‹Eø‰$èøÿÿ‹Eø‰$è¸øÿÿ‹Eø‰$è‹Eø‰$èð.‹Eø‰$è(‹Eø‰$èþB‹Eø‰$èŒO‹Eø‰$èß‹Eø‰$è%ƒÄ$[]Ë$ÃU‰åSƒìDèïÿÿÿÃÇEôÇEðÇEèÇEä‹E‹PEä‰D$Eì‰D$ Eð‰D$Eè‰D$‰$èHÙÿÿ‰EøEä‰$èzáÿÿ…Àt ÇEØëOƒ}øu#‹ƒ„ÿÿÿ‹ƒKßÿÿ‰D$‰$èMßÿÿÇEØë&‹Eð‹Uè‰D$‰$èBØÿÿ‰Eô‹Eè‰$è”Õÿÿ‹Eô‰EØ‹E؃ÄD[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰å‹E‹P‹E‰‹E]ÃU‰å‹E‹@]ÃU‰åSƒìèÀþÿÿÃÕ‹E‹@…Àt‹E‹@‰$è×Ýÿÿ‹E‰$èŒÝÿÿƒÄ[]ÃU‰åSƒì4è…þÿÿÚ‹ƒ¼ÿÿÿ‰EôÇEðEô‰D$ƒ€‰D$ ƒUßÿÿ‰D$‹E‰D$‹E ‰$è÷Þÿÿ…Àu ÇEèëO‹Eô‰$è¯Öÿÿ‰Â‹E‹HEð‰D$‰T$‰ $èÄÔÿÿ‰EøEð‰$èæßÿÿ…Àt ÇEèë‹Eø‰$èÎØÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èÑýÿÿÃæ€Eø‰D$ƒˆ‰D$ ƒxßÿÿ‰D$‹E‰D$‹E ‰$èSÞÿÿ…Àu ÇEèë3‹Eø‰Â‹E‹@‰T$‰$èoÔÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèIýÿÿÃ^€‹E‹@‰$èÚÕÿÿ‰$èØÿÿƒÄ[]ÃU‰åSƒì4èýÿÿÃ0€Eø‰D$ƒ‰D$ ƒ¢ßÿÿ‰D$‹E‰D$‹E ‰$èÝÿÿ…Àu ÇEèë1‹Uø‹E‹@‰T$‰$è»Öÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè•üÿÿê‹E‹@‰$èÞÿÿ‰$è^×ÿÿƒÄ[]ÃU‰åSƒì4ègüÿÿÃ|ÇEôEø‰D$ƒ˜‰D$ ƒÉßÿÿ‰D$‹E‰D$‹E ‰$èâÜÿÿ…Àu ÇEèëP‹Uø‹E‹HEô‰D$‰T$‰ $è9ÓÿÿEô‰$èÞÝÿÿ…Àt ÇEè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$è»ûÿÿÃÐ~‹E‹@‰$è¼Üÿÿ‰Eøƒ}øu‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eèë‹Eø‰$è*Öÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìDè]ûÿÿÃr~ÇEèÿÿÿÿÇEäÇEìÇEàÇEðEè‰D$ƒ ‰D$ ƒñßÿÿ‰D$‹E‰D$‹E ‰$è¼Ûÿÿ…Àu ÇEØéw‹Eè…À…õƒàÿÿ‰$è“Õÿÿ‰EØéV‹Eèƒøÿu ÇEø ë‹Eè+Eì‰Eø}ø vÇEø ‹Eä…Àu#‹Eø‰D$Ç$è‡Óÿÿ‰Eä‹Eä…À„Õë0‹Eì‹Uø‹Eä‹@9Âv‹EìEø‰D$Eä‰$è Úÿÿƒøÿ„£‹EäP‹Eì‰EôèCÖÿÿ‹E‹PEà‰D$E܉D$ ‹Eø‰D$‹Eô‰D$‰$èÙÖÿÿ‰EðèÒÿÿEà‰$èæÛÿÿ…ÀuN‹EÜEìƒ}ðu‹Eèƒøÿ„ÿÿÿ‹Eè;Eì‡ÿÿÿ‹Eä‹@;Eìt‹Eì‰D$Eä‰$èÙÿÿƒøÿt‹Eä‰EØë/‹Eä…Àt!‹E䋃ꉋ…Àu‹Eä‹@‹P‹Eä‰$ÿÒÇEØ‹E؃ÄD[]ÃU‰åVSƒì@èjùÿÿÃ|ÇEäEì‰D$Eð‰D$ƒ¨‰D$ ƒ àÿÿ‰D$‹E‰D$‹E ‰$èÞÙÿÿ…Àu ÇEÔë]èÕÿÿ‹Uì‹Mð‹E‹pEä‰D$Eè‰D$ ‰T$‰L$‰4$èÓÿÿ‰EôèZÑÿÿEä‰$è¿Úÿÿ…Àt ÇEÔë‹Eè‰$è§Óÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åVSƒì@è¨øÿÿý{ÇEÜE؉D$ƒ°‰D$ ƒ+àÿÿ‰D$‹E‰D$‹E ‰$è#Ùÿÿ…Àu ÇEÔé°‹E؉$è(Ôÿÿ‰Eð‹Eð‰$èJÏÿÿ‰Eô‹ƒ„ÿÿÿ‹‰$èÒÿÿ…Àt èN×ÿÿé3‹Eô‹P‹ƒðÿÿÿ9Âti‹Eô‹P‹ƒðÿÿÿ‰D$‰$èÔÿÿ…ÀuM‹ƒœÿÿÿ‹ƒHàÿÿ‰D$‰$èÃ×ÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEÔéýEä‰D$Eè‰D$‹Eô‰$ègÖÿÿè’Óÿÿ‹Uä‹Mè‹E‹pE܉D$Eà‰D$ ‰T$‰L$‰4$èxÑÿÿ‰Eìè`Óÿÿ‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒE܉$èÙÿÿ…À„Ñþÿÿ‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEÔëC‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰EÔ‹EÔƒÄ@[^]ÃU‰åSƒì$è˜öÿÿíyÇEôè‹Òÿÿ‹E‹PEô‰D$‰$èÆÕÿÿ‰EøèÞÎÿÿEô‰$èCØÿÿ…Àt ÇEèë‹Eø‰$è+Ñÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4è.öÿÿÃCyÇEðEô‰D$ƒ¸‰D$ ƒàÿÿ‰D$‹E‰D$‹E ‰$è©Öÿÿ…Àu ÇEèëE‹Uô‹E‹HEð‰D$‰T$‰ $è Ðÿÿ‰EøEð‰$è¢×ÿÿ…Àt ÇEèë‹Eø‰$èŠÐÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèõÿÿâx‹E‹@‰$èÞËÿÿ‰$èVÐÿÿƒÄ[]ÃU‰åSƒìè_õÿÿÃtx‹E‹@‰$èÀÌÿÿ‰$è(ÐÿÿƒÄ[]ÃU‰åSƒì4è1õÿÿÃFxEø‰D$ƒÀ‰D$ ƒ´àÿÿ‰D$‹E‰D$‹E ‰$è³Õÿÿ…Àu ÇEèë;‹Eø‰$èkÍÿÿ‰Â‹E‹@‰T$‰$èGÕÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè¡ôÿÿöw‹E‹@‰$è"Ñÿÿ…Àt‹ƒ¼ÿÿÿ‰Â‹ƒÀ‰‹ƒ¼ÿÿÿ‰Eøë‹ƒ€ÿÿÿ‰Â‹ƒÀ‰‹ƒ€ÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèBôÿÿÃWw‹E‹‹ƒê‰‹…Àu‹E‹‹@‹P‹E‹‰$ÿÒ‹E‹@…Àt*‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‰D$Ç$ èéÔÿÿƒÄ[]ÃU‰åVSƒì0è‘óÿÿæv‹E‰Eðƒ}u,ƒìàÿÿ‰D$ƒØàÿÿ‰D$Ç$èÏÿÿÇEäé‹Eð‹@‹@;Et,ƒáÿÿ‰D$ƒØàÿÿ‰D$Ç$èÚÎÿÿÇEäéÎèYÍÿÿ‰Eô‹Eð‹@…Àt7‹Eð‹P‹Eð‹H‹Eð‹0‰T$‹E ‰D$ ‰L$ƒ6áÿÿ‰D$‰4$è:Ëÿÿ‰Eèë+‹Eð‹P‹Eð‹‹E ‰D$ ‰T$ƒ:áÿÿ‰D$‰ $è Ëÿÿ‰Eèƒ}èuèïÐÿÿÇEìë5‹Eè‰$è Ëÿÿ‰Eì‹Eè‹Pÿ‹E艋Eè‹…Àu‹Eè‹@‹P‹Eè‰$ÿÒ‹Eô‰$èvÍÿÿ‹Eì‰Eä‹EäƒÄ0[^]ÃU‰åWVSƒìLè3òÿÿÃHuÇEàÇEÜÇEèE܉D$Eà‰D$Eä‰D$E؉D$ƒÈ‰D$ ƒdáÿÿ‰D$‹E‰D$‹E ‰$è‹Òÿÿ…Àu ÇEÐéÙ‹E‹@‰Eè‹Eä‰$èÓÿÿ…Àu&‹ƒœÿÿÿ‹ƒƒáÿÿ‰D$‰$èyÑÿÿÇEÐé›Ç$ èÁÍÿÿ‰Eð‹Uä‹Eð‰‹U䋃À‰‹Uà‹Eð‰P‹Eà…Àt ‹Eà‹ƒÂ‰‹Uð‹E‰B‹E‹P‹E‰“ˆÿÿ‹E؉Á‹uÜ‹E‹x‰T$‹Eð‰D$ƒM‰ÿÿ‰D$ ‰L$‰t$‰<$èÃÇÿÿ‰Eì‹Eì‰$è…Èÿÿ‰EЋEЃÄL[^_]ÃU‰åSƒìDèÖðÿÿÃësÇEôÇEðÇEèÇEäÇEàÿÿÿÿEà‰D$ƒÜ‰D$ ƒ›áÿÿ‰D$‹E‰D$‹E ‰$è5Ñÿÿ…Àu ÇEØëk‹E‹PEä‰D$Eì‰D$ Eð‰D$Eè‰D$‰$èîÉÿÿ‰EøEä‰$è Òÿÿ…Àt ÇEØë&‹Eð‹Uè‰D$‰$èÉÿÿ‰Eô‹Eè‰$ècÆÿÿ‹Eô‰EØ‹E؃ÄD[]ÃU‰åSƒìDèóïÿÿÃsÇEðÇEìÇEäÇEàÇEÜÿÿÿÿÇEôE܉D$ƒä‰D$ ƒ¶áÿÿ‰D$‹E‰D$‹E ‰$èKÐÿÿ…Àu ÇEØé Ç$èŸÐÿÿ‰Eøéü‹E‹PEà‰D$Eè‰D$ Eì‰D$Eä‰D$‰$èíÈÿÿ‰EôEà‰$èÑÿÿ…Àt3‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEØé‹Eì‹Uä‰D$‰$èæÇÿÿ‰Eð‹Eä‰$è8Åÿÿ‹Eð‰D$‹Eø‰$è¶Ìÿÿ…ÀtW‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒÇEØëƒ}ô„úþÿÿ‹Eø‰EØ‹E؃ÄD[]ÃU‰åVSƒì@èPîÿÿÃeqÇEäÇEàEä‰D$Eè‰D$ƒì‰D$ ƒàáÿÿ‰D$‹E‰D$‹E ‰$è½Îÿÿ…Àu ÇEÐé«‹Eä‰EÔƒ}Ôtƒ}Ôtƒ}ÔtëÇEôë5ÇEôë,ÇEôë#‹ƒŒÿÿÿ‹ƒøáÿÿ‰D$‰$èŽÍÿÿÇEÐëS‹Uè‹Mì‹E‹pEà‰D$‹Eô‰D$ ‰T$‰L$‰4$è{Çÿÿ‰EðEà‰$èMÏÿÿ…Àt ÇEÐë‹Eð‰$è5Èÿÿ‰EЋEЃÄ@[^]ÃU‰åSƒì4è7íÿÿÃLpÇEøÿÿÿÿƒãÿÿ‰EôÇEðÇEìEô‰D$Eð‰D$Eø‰D$ƒ‰D$ ƒãÿÿ‰D$‹E‰D$‹E ‰$èÍÿÿ…Àu ÇEèÿÿÿÿ釋Eøƒøÿt‹Eø‰$èÄÿÿ‰Â‹E‰Pëc‹Eð…Àt9‹Uô‹MðEì‰D$‰T$‰ $è@Åÿÿ‰Â‹E‰PEì‰$è]Îÿÿ…Àt,ÇEèÿÿÿÿë*‹ƒœÿÿÿ‹ƒ0ãÿÿ‰D$‰$è6ÌÿÿÇEèÿÿÿÿëÇEè‹EèƒÄ4[]ÃU‰åSƒìè,ìÿÿÃAo“¨ÿÿ‹ƒ´ÿÿÿ‰”“~ÿÿ‹ƒ´ÿÿÿ‰P‹ƒ´ÿÿÿÇ@Të‹“´ÿÿÿƒ‰Bx‹“´ÿÿÿƒ@‰Bt“~ÿÿ‹ƒ´ÿÿÿ‰P<“»}ÿÿ‹ƒ´ÿÿÿ‰P(‹“´ÿÿÿƒÿ}ÿÿ‰Bl“ð|ÿÿ‹ƒ´ÿÿÿ‰Pp‹ƒ´ÿÿÿ‹€˜…Àu‹ƒ´ÿÿÿ‹“øÿÿÿ‰˜‹ƒ´ÿÿÿ‹€œ…Àu‹ƒ´ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ´ÿÿÿ‰$è‘Âÿÿ…Àu‹ƒ´ÿÿÿ‰D$ƒmãÿÿ‰D$‹E‰$èžÁÿÿƒÄ[]ÃU‰åSƒì$èëÿÿÃ,nEø‰D$ƒŒãÿÿ‰D$‹E ‰$è Ãÿÿ…Àu ÇEèÿÿÿÿë‹Eø‰$è‚Êÿÿ‰Â‹E‰P ÇEè‹EèƒÄ$[]ÃU‰åSƒìè¹êÿÿÃÎm‹E‹@…Àt:‹E‹@‰Eô‹EÇ@‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹E‹@ …Àt‹E‹@ ‰Eø‹EÇ@ ‹Eø‰$èÌÁÿÿ‹E‰$è1ÉÿÿƒÄ[]ÃU‰åVSƒìPè)êÿÿÃ>mÇEÌE؉D$ƒ`‰D$ ƒÉãÿÿ‰D$‹E‰D$‹E ‰$è¤Êÿÿ…Àu ÇEÄéH‹EØ‹P‹ƒ˜ÿÿÿ9ÂtB‹EØ‹P‹ƒ˜ÿÿÿ‰D$‰$èÌÅÿÿ…Àu&‹ƒœÿÿÿ‹ƒàãÿÿ‰D$‰$è~ÉÿÿÇEÄéö‹E؉$ègÅÿÿ‰Eäƒ}äÿu&‹ƒœÿÿÿ‹ƒàãÿÿ‰D$‰$èDÉÿÿÇEÄ鼋EäƒÀÀÀ‰$èÂÿÿ‰EЋEäÀÀ‰Â‹EÐÇÇEèëi‹UØ‹Eè‰D$‰$èó¿ÿÿ‰EÜ‹EèÀÀ‰Â‹EÐ4‹E܉$膿ÿÿ‰$èîÀÿÿ‰‹EèÀÀ‰Â‹EЋ…Àu‹EЉ$èìÈÿÿÇEÄé$ƒEè‹Eè;Eä|‹EЉ$èI¿ÿÿ‰Eì‹Eä‰EÔÇEôè4Éÿÿ…Àtè{Ãÿÿ‰Eô‹E‹P ẺD$ EЉD$EÔ‰D$‰$è•Ãÿÿ‰EðèýÈÿÿ…Àt ‹Eô‰$è¾Âÿÿ‹EÔ‰Eäƒ}ðu*‹EЉ$èWÈÿÿ‹Eì‰$èLÈÿÿẺ$èÊÿÿÇEÄë|‹EЉ$è½Áÿÿ‰$è%Éÿÿ‰EàÇEèë9‹EèÀÀ‰Â‹EЋ‰$èÂÿÿ‰EÜ‹E܉D$‹Eè‰D$‹Eà‰$èÔÇÿÿƒEè‹Eè;Eä|¿‹Eì‰$èÍÇÿÿ‹EЉ$èÂÇÿÿ‹Eà‰EÄ‹EăÄP[^]ÃU‰åSƒì4èçÿÿÖjEø‰D$ƒh‰D$ ƒäÿÿ‰D$‹E‰D$‹E ‰$èÈÿÿ…Àu ÇEèë;‹Eø‰$軿ÿÿ‰Â‹E‹@ ‰T$‰$è÷Èÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìèñæÿÿÃj‹E‹@ ‰$è2Çÿÿ‰$èú¾ÿÿƒÄ[]ÃU‰åSƒì4èÃæÿÿÃØiEø‰D$ƒp‰D$ ƒXäÿÿ‰D$‹E‰D$‹E ‰$èEÇÿÿ…Àu ÇEèë;‹Eø‰$èý¾ÿÿ‰Â‹E‹@ ‰T$‰$èy½ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒìè3æÿÿÃHi‹E‹@ ‰$èô¼ÿÿ‰$è<¾ÿÿƒÄ[]ÃU‰åSƒì4èæÿÿÃiEô‰D$ƒx‰D$ ƒŒäÿÿ‰D$‹E‰D$‹E ‰$è‡Æÿÿ…Àu ÇEè麋ƒÌÿÿÿ‹Uô‰D$‰$è2Ãÿÿƒøt#‹ƒœÿÿÿ‹ƒ¬äÿÿ‰D$‰$èsÅÿÿÇEèë}‹Eô‰$èoÅÿÿ‰Eøƒ}øu#‹ƒÈÿÿÿ‹ƒääÿÿ‰D$‰$è<ÅÿÿÇEèëF‹E‹P ‹Eø‰D$‰$èÆÿÿ‹Uô‹ƒÀ‰‹Eô‰Â‹E‰P‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åƒìè›Á h‹E‹@…Àu‹àÿÿÿ‹P‹àÿÿÿ‰‹àÿÿÿ‰Eüë‹E‹P‹ƒÀ‰‹E‹@‰Eü‹EüÉÃU‰åSƒì4èŸäÿÿôgEô‰D$ƒ€‰D$ ƒ åÿÿ‰D$‹E‰D$‹E ‰$è!Åÿÿ…Àu ÇEè鯋ƒÌÿÿÿ‹Uô‰D$‰$èÌÁÿÿƒøt#‹ƒœÿÿÿ‹ƒ$åÿÿ‰D$‰$è ÄÿÿÇEèër‹Eô‰$è Äÿÿ‰Eøƒ}øu#‹ƒÈÿÿÿ‹ƒääÿÿ‰D$‰$èÖÃÿÿÇEèë;‹Uô‹ƒÀ‰‹E‹P ‹Eø‰D$‰$èî¿ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åƒì‹E‹P ‹E ‹@ 9Âu ÇEüë ‹E‹P ‹E ‹@ 9Âv ÇEüëÇEüÿÿÿÿ‹EüÉÃU‰åSƒìèTãÿÿÃif‹E‹@ ÇD$‰$è»ÿÿƒÄ[]ÃU‰åSƒìè&ãÿÿÃ;f“&’ÿÿ‹ƒÔÿÿÿ‰P“G™ÿÿ‹ƒÔÿÿÿ‰P(‹ƒÔÿÿÿÇ@Të‹“Ôÿÿÿƒ ‰Bt“È‘ÿÿ‹ƒÔÿÿÿ‰”‹ƒÔÿÿÿ‹€˜…Àu‹ƒÔÿÿÿ‹“øÿÿÿ‰˜‹ƒÔÿÿÿ‹€œ…Àu‹ƒÔÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÔÿÿÿ‰$èǹÿÿ…Àu‹ƒÔÿÿÿ‰D$ƒèåÿÿ‰D$‹E‰$èÔ¸ÿÿƒÄ[]Ë $ÃU‰åSƒìèGâÿÿÃ\e‹E‹@ …Àt#‹ƒŒÿÿÿ‹ƒ æÿÿ‰D$‰$èÂÿÿÇEøëÇEø‹EøƒÄ[]ÃU‰åSƒì$èøáÿÿà eè2¼ÿÿ‰Eô‹EÇ@‹E‹@…Àt:‹E‹@‰Eø‹EÇ@‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹ƒxÿÿÿ‰Â‹E‹@ÇD$‰T$‰$èO¾ÿÿ‹E‹@‰$葸ÿÿ‹EÇ@‹E‹@…Àt'‹E‹Pÿ‹E‰‹E‹…Àu‹E‹@‹P‹E‰$ÿÒ‹Eô‰$èK¼ÿÿƒÄ$[]ÃU‰åVSƒì@èáÿÿÃ(dEè‰D$Eì‰D$Eð‰D$Eô‰D$ƒ ‰D$ ƒæÿÿ‰D$‹E‰D$‹E ‰$è€Áÿÿ…Àu ÇEäÿÿÿÿë`ƒçšÿÿ‹Uì‹Mð‹uô‰D$‹E‰D$ ‰T$‰L$‰4$èI¿ÿÿ‰Â‹E‰P‹EÇ@ ‹EÇ@‹U苃À‰‹Uè‹E‰PÇEä‹EäƒÄ@[^]ÃU‰åSƒìèHàÿÿÃ]c‹E‹@ …Àu.‹E‹@…Àu$‹E‹@‰Eø‹EÇ@ƒ}øt ‹Eø‰$è?Áÿÿ‹E‰$èô¾ÿÿƒÄ[]ÃU‰åSƒì$èíßÿÿÃcè'ºÿÿ‰Eôƒ} u5‹E‹P‹E‰D$‹ƒàÿÿÿ‰D$ ‹E‰D$ƒ¨æÿÿ‰D$‰$è¸ÿÿ‰Eðë0‹E‹P‹E‰D$‹E ‰D$ ‹E‰D$ƒ¬æÿÿ‰D$‰$èÜ·ÿÿ‰Eðƒ}ðt0‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒÇEøë‹E‰$è¸ÿÿƒøÿ•À¶À‰Eø‹Eô‰$èAºÿÿ‹EøƒÄ$[]ÃU‰åSƒìDèßÿÿÃb‹E‰$è£üÿÿ…Àt ÇEØéUEè‰D$ƒ ‰D$ ƒ¸æÿÿ‰D$‹E‰D$‹E ‰$èn¿ÿÿ…Àu ÇEØé‹Eè‹P‹ƒ˜ÿÿÿ9ÂtB‹Eè‹P‹ƒ˜ÿÿÿ‰D$‰$è–ºÿÿ…Àu&‹ƒœÿÿÿ‹ƒÔæÿÿ‰D$‰$èH¾ÿÿÇEØéÆ‹Eè‰$è1ºÿÿ‰Eìƒ}ìÿu&‹ƒœÿÿÿ‹ƒÔæÿÿ‰D$‰$è¾ÿÿÇEØéŒ‹EìƒÀÀÕ)Љ$膼ÿÿ‰EøÇEðé‹Uè‹Eð‰D$‰$èÅ´ÿÿ‰Eô‹Eô‹P‹ƒÀÿÿÿ9ÂtM‹Eô‹P‹ƒÀÿÿÿ‰D$‰$èʹÿÿ…Àu1‹ƒœÿÿÿ‹ƒÔæÿÿ‰D$‰$è|½ÿÿ‹Eø‰$èá³ÿÿÇEØéï‹EðÀÕ)ÐEøH‹EðÀÕ)ÐEøPE܉D$Eà‰D$‰L$‰T$ Eä‰D$ƒçÿÿ‰D$‹Eô‰$è5µÿÿ…Àu1‹ƒœÿÿÿ‹ƒÔæÿÿ‰D$‰$èç¼ÿÿ‹Eø‰$èL³ÿÿÇEØéZ‹Eä‰$èå´ÿÿ‰Eä‹Uä‹E‹@‰T$‰$èm·ÿÿ‰Â‹E‰P‹EðÀÕ)ЉÂUø‹E䉋Eà‰$蟴ÿÿ‰Eà‹Uà‹E‹@‰T$‰$è'·ÿÿ‰Â‹E‰P‹EðÀÕ)ЉÂUø‹Eà‰B‹E܉$èX´ÿÿ‰EÜ‹UÜ‹E‹@‰T$‰$èà¶ÿÿ‰Â‹E‰P‹EðÀÕ)ЉÂUø‹E܉B‹EðÀÕ)ÐEøÇ@ ‹EðÀÕ)ЉÂUøƒòœÿÿ‰BƒEð‹Eð;EìŒÛýÿÿ‹E‹P‹Eø‰D$‰$èM¼ÿÿ‹Eø‰$è²ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰EØ‹E؃ÄD[]ÃU‰åSƒì4è|ÛÿÿÑ^‹E‰$èùÿÿ…Àt ÇEè阋E‹@…Àu#‹ƒÈÿÿÿ‹ƒçÿÿ‰D$‰$è»ÿÿÇEèëkEø‰D$ƒ ‰D$ ƒ|çÿÿ‰D$‹E‰D$‹E ‰$è¶»ÿÿ…Àu ÇEèë1‹Uø‹E‹@‰T$‰$ètºÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüëÇEüÿÿÿÿ‹EüÉÃU‰åSƒìèjÚÿÿÃ]“—œÿÿ‹ƒÌÿÿÿ‰P“1¢ÿÿ‹ƒÌÿÿÿ‰P(‹ƒÌÿÿÿÇ@Të‹“Ìÿÿÿƒ@ ‰Bt“Ë›ÿÿ‹ƒÌÿÿÿ‰”‹ƒÌÿÿÿ‹€˜…Àu‹ƒÌÿÿÿ‹“øÿÿÿ‰˜‹ƒÌÿÿÿ‹€œ…Àu‹ƒÌÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÌÿÿÿ‰$è ±ÿÿ…Àu‹ƒÌÿÿÿ‰D$ƒÃçÿÿ‰D$‹E‰$è°ÿÿƒÄ[]ÃU‰åSƒìèÙÿÿä\èÙ³ÿÿ‰Â‹E‰P¸ƒÄ[]ÃU‰åSƒìèeÙÿÿÃz\‹E‹@…Àt‹E‹@‰$è ·ÿÿ‹EÇ@‹E‰$è'¸ÿÿƒÄ[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰åSƒì$èÜØÿÿÃñ[ÇEðEð‰D$ƒàçÿÿ‰D$‹E ‰$èȰÿÿ…Àu ÇEèëRÇEøè?¹ÿÿ…Àt膳ÿÿ‰Eø‹Uð‹E‹@‰T$‰$èÞ²ÿÿ‰Eôè¹ÿÿ…Àt ‹Eø‰$èײÿÿ‹Eô‰$è|°ÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒìè?ØÿÿÃT[‹E‹@‰$è0¶ÿÿ‰$èH°ÿÿƒÄ[]ÃU‰åSƒìèØÿÿÃ&[“z£ÿÿ‹ƒ¬ÿÿÿ‰P“¿£ÿÿ‹ƒ¬ÿÿÿ‰P(‹ƒ¬ÿÿÿÇ@Të‹“¬ÿÿÿƒ@ ‰Bt“P£ÿÿ‹ƒ¬ÿÿÿ‰”‹ƒ¬ÿÿÿ‹€˜…Àu‹ƒ¬ÿÿÿ‹“øÿÿÿ‰˜‹ƒ¬ÿÿÿ‹€œ…Àu‹ƒ¬ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ¬ÿÿÿ‰$è²®ÿÿ…Àu‹ƒ¬ÿÿÿ‰D$ƒ èÿÿ‰D$‹E‰$è¿­ÿÿƒÄ[]ÃU‰åSƒìè7×ÿÿÃLZèÑ·ÿÿ…Àu ÇEøë‹E ÇèÇEø‹EøƒÄ[]ÃU‰åSƒìèúÖÿÿÃZè4±ÿÿ‰EôèD‰Eøèô´ÿÿƒøÿu!ƒ}øt‹ƒèÿÿÿ‹‰$è¹´ÿÿ‹Eø‰$è®ÿÿ‹Eô‰$èÓ±ÿÿ¸ƒÄ[]ÃU‰åSƒìè—ÖÿÿìY‹ƒp ƒøÿu ÇEøë‹ƒp ‰$èÔ²ÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèWÖÿÿÃlYÇD$ƒèÿÿ‰D$ ÇD$ƃ2èÿÿ‰D$Ç$覵ÿÿU‰åSƒìèÖÿÿÃ*Y‹E‰Eøƒ}t0‹Eø‹@4…Àt‹Eø‹@4‰$èà²ÿÿ‹Eø‹@8…Àt‹Eø‹@8‰$èȲÿÿƒÄ[]ÃU‰åSƒìèÁÕÿÿÃÖXÇD$Dƒ€ ‰$èÚ®ÿÿƒÄ[]ÃU‰åSƒì4è“ÕÿÿèX‹ƒàÿÿÿ‰EôÇEðEð‰D$Eô‰D$ƒ` ‰D$ ƒaèÿÿ‰D$‹E‰D$‹E ‰$èþµÿÿ…Àu ÇEèÿÿÿÿéÌ‹Eô‹P‹ƒ¬ÿÿÿ9ÂtL‹Eô‹P‹ƒ¬ÿÿÿ‰D$‰$è&±ÿÿ…Àu0‹Eô‹“àÿÿÿ9Ðt#‹ƒœÿÿÿ‹ƒxèÿÿ‰D$‰$èË´ÿÿÇEèÿÿÿÿëp‹Eô‹“àÿÿÿ9Ðt ‹Eô‹@‰EøëÇEø‹Eð‰D$‹Eø‰$è®ÿÿ‰Â‹E‰PèÒþÿÿ‰Â‹E‰P ‹E‹P ‹Eø‰D$‰$èW´ÿÿ‹E‹@ ‰$èé³ÿÿÇEè‹EèƒÄ4[]ÃU‰åSƒìèXÔÿÿÃmW‹E‹@ …Àt‹E‹@ ‰$è³ÿÿ‹EÇ@ ‹E‹@…Àt‹E‹@‰$èý²ÿÿ‹EÇ@‹E‰$èø²ÿÿƒÄ[]ÃU‰åƒì‹E‹P‹E ‹@9Âu ÇEüë ‹E‹P‹E ‹@9Âv ÇEüÿÿÿÿëÇEü‹EüÉÃU‰åSƒìè­ÓÿÿÃÂV‹E‹@‰$èαÿÿ‰$è¶­ÿÿƒÄ[]ÃU‰åSƒìèÓÿÿÔV‹E‹@‰$èà¯ÿÿ‰$舫ÿÿƒÄ[]ÃU‰åSƒìèQÓÿÿÃfV‹E‹@‰$è’ªÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿƒÄ[]ÃU‰åSƒì$èÓÿÿÃ'V‹E‹@‰$è‰EôÇEøè”³ÿÿ…ÀtèÛ­ÿÿ‰Eø‹E‹@‰$èʳÿÿèu³ÿÿ…Àt ‹Eø‰$è6­ÿÿ‹Eô‰$èÙè–¬ÿÿ…Àt ÇEè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èsÒÿÿÈUƒ}u)ƒ¾èÿÿ‰D$ƒ£èÿÿ‰D$Ç$èü­ÿÿÇEèëX‹ƒp ƒøÿu 蓱ÿÿ‰ƒp ‹ƒp ‰$è®ÿÿ‰Eø‹ƒp ‰$è>²ÿÿ‹E‰$裯ÿÿ‹“p ‰D$‰$è1°ÿÿ‹Eø‰Eè‹EèƒÄ$[]ÃU‰åSƒì$èÑÑÿÿÃæT‹ƒp ƒøÿu"ƒðèÿÿ‰D$ƒÐèÿÿ‰D$Ç$èU­ÿÿëK‹ƒp ‰$èõ­ÿÿ‰Eøƒ}øt ‹Eø‰$èa°ÿÿ‹ƒp ‰$裱ÿÿƒ}t‹“p ‹E‰D$‰$蘯ÿÿƒÄ$[]ÃU‰åSƒìèAÑÿÿÃVT“‡¨ÿÿ‹ƒ¨ÿÿÿ‰P“î¨ÿÿ‹ƒ¨ÿÿÿ‰P(‹ƒ¨ÿÿÿÇ@Të‹“¨ÿÿÿƒ€ ‰Bt“L§ÿÿ‹ƒ¨ÿÿÿ‰”‹ƒ¨ÿÿÿ‹€˜…Àu‹ƒ¨ÿÿÿ‹“øÿÿÿ‰˜‹ƒ¨ÿÿÿ‹€œ…Àu‹ƒ¨ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ¨ÿÿÿ‰$èâ§ÿÿ…Àu‹ƒ¨ÿÿÿ‰D$ƒ%éÿÿ‰D$‹E‰$èï¦ÿÿƒÄ[]ÃU‰åSì4èdÐÿÿÃyS‹E‹@…Àt(‹E‹@‰$è{­ÿÿ…Àt ƒ<éÿÿ‰EøëƒEéÿÿ‰Eøë ƒPéÿÿ‰Eøƒ} t7‹E‰D$‹E ‰D$‹Eø‰D$ ƒZéÿÿ‰D$ÇD$…øþÿÿ‰$è=«ÿÿë.‹E‰D$‹Eø‰D$ ƒwéÿÿ‰D$ÇD$…øþÿÿ‰$è «ÿÿ…øþÿÿ‰$è_ªÿÿÄ4[]ÃU‰åSƒì4è•ÏÿÿêRÇEìÇEðEì‰D$‹ƒ¬ÿÿÿ‰D$ƒ  ‰D$ ƒ™éÿÿ‰D$‹E‰D$‹E ‰$èÿ¯ÿÿ…Àu ÇEè郋Eì…Àt ‹Eì‹@‰Eð‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$èë®ÿÿÇEèëF‹E‹@…Àt‹E‹@‰Eø‹Eø‹P4‹ƒÀ‰‹E‹P‹Eð‰D$‰$è®ÿÿ‰Eô‹Eô‰$蟩ÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$è¢Îÿÿ÷Q‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$è]®ÿÿÇEèë~‹E‹@…Àt@‹E‹@‹@…Àt3‹E‹@‰Eø‹Eø‹@4‹ƒê‰‹…Àu‹Eø‹@4‹@‹P‹Eø‹@4‰$ÿÒ‹E‹@‰$è\­ÿÿ‹EÇ@‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èÜÍÿÿÃñPÇEð‹E‹@…Àu&‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$è­ÿÿÇEØé¦‹E ‰$詬ÿÿ‰Eøƒ}ø&‹ƒœÿÿÿ‹ƒ¸éÿÿ‰D$‰$èV­ÿÿÇEØélÇD$ÇD$‹E ‰$èO¬ÿÿ‰EìEè‰D$ƒâéÿÿ‰D$‹Eì‰$è@¥ÿÿ…Àu3‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒÇEØéû‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eè‰$è'®ÿÿ…Àu&‹ƒœÿÿÿ‹ƒñéÿÿ‰D$‰$艬ÿÿÇEØéŸ‹Eø‰D$ÇD$‹E ‰$胫ÿÿ‰Eðƒ}ðu ÇEØës‹Uè‹Eð‰D$‰T$ƒ êÿÿ‰$è®ÿÿ‰Eôƒ}ôu ÇEØëE‹E‹P‹ƒ°ÿÿÿ‰D$ ‹Eô‰D$‹ƒäÿÿÿ‰D$‰$èÚ£ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰EØ‹E؃Ä4[]ÃU‰åSƒì$èäËÿÿÃùN‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$蟫ÿÿÇEèëC‹E‹@‰$èØ¨ÿÿ‰Eøƒ}øt‹Eø‰$è´¥ÿÿ‰Eè닃àÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ$[]ÃU‰åSƒì4èYËÿÿÃnN‹E‹@…Àu&‹ƒœÿÿÿ‹ƒêÿÿ‰D$‰$è«ÿÿÇEèé¥Eø‰D$‹ƒ ÿÿÿ‰D$ƒ¨ ‰D$ ƒUêÿÿ‰D$‹E‰D$‹E ‰$è¡«ÿÿ…Àu ÇEèëa‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$è ªÿÿÇEèë4‹EøP‹E‹@‰T$‰$è¿§ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì4èiÊÿÿÃ~M‹E‹@…Àu&‹ƒœÿÿÿ‹ƒdêÿÿ‰D$‰$è$ªÿÿÇEèé¥Eø‰D$‹ƒ ÿÿÿ‰D$ƒ° ‰D$ ƒ¤êÿÿ‰D$‹E‰D$‹E ‰$豪ÿÿ…Àu ÇEèëa‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$è°©ÿÿÇEèë4‹EøP‹E‹@‰T$‰$èߣÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eè‹EèƒÄ4[]ÃU‰åSƒì$èyÉÿÿÃŽL‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$è4©ÿÿÇEäëF‹E‹PEè‰D$‰$覧ÿÿ‹EèPÛ$d$‹EìPÛ$d$݃àìÿÿÞÉÞÁÝ]ðÝEðÝ$蘢ÿÿ‰Eä‹EäƒÄ$[]ÃU‰åSƒìèëÈÿÿÃL‹E‹@ …Àu 蛪ÿÿ‰Â‹E‰P ‹E‹@ …Àu ÇEøë‹E‹P ‹ƒÀ‰‹E‹@ ‰Eø‹EøƒÄ[]ÃU‰åSƒìèÈÿÿÃ¥K‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$èK¨ÿÿÇEøë‹E‹@‰$è¦ÿÿ‰$è,£ÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìè/ÈÿÿÃDK‹E‹@…Àu&‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$èê§ÿÿÇEøÿÿÿÿ鞃} u#‹ƒœÿÿÿ‹ƒëÿÿ‰D$‰$è¾§ÿÿÇEøÿÿÿÿëu‹E ‹P‹ƒ¤ÿÿÿ9Ât?‹E ‹P‹ƒ¤ÿÿÿ‰D$‰$è½£ÿÿ…Àu#‹ƒœÿÿÿ‹ƒëÿÿ‰D$‰$èo§ÿÿÇEøÿÿÿÿë&‹E ‰$è£ÿÿ‰Â‹E‹@‰T$‰$èçÿÿÇEø‹EøƒÄ[]ÃU‰åSƒìèFÇÿÿÃ[J‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$è§ÿÿÇEøë‹E‹@‰$èz¢ÿÿ‰$è"Ÿÿÿ‰Eø‹EøƒÄ[]ÃU‰åSƒìèåÆÿÿÃúI‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$è ¦ÿÿÇEøÿÿÿÿëOƒ} u#‹ƒœÿÿÿ‹ƒ&ëÿÿ‰D$‰$èw¦ÿÿÇEøÿÿÿÿë&‹E ‰$èŸÿÿ‰Â‹E‹@‰T$‰$è_žÿÿÇEø‹EøƒÄ[]ÃU‰åSƒìèNÆÿÿÃcI‹E‹@…Àu#‹ƒÈÿÿÿ‹ƒ¤éÿÿ‰D$‰$è ¦ÿÿÇEøëN‹E‹@‰$èB£ÿÿ…Àu#‹ƒÈÿÿÿ‹ƒ@ëÿÿ‰D$‰$èÔ¥ÿÿÇEøë‹E‹@‰$èížÿÿ‰$èµ ÿÿ‰Eø‹EøƒÄ[]ÃU‰åƒìÇD$‹E‰$è8õÿÿÉÃU‰åƒì(ÇEü‹E‹@ …Àt‹E‹P ‹E‰D$‰$‹E ÿЉEüƒ}üt‹Eü‰EìëÇEì‹EìÉÃU‰åSƒìèTÅÿÿÃiH‹E‹@ ‰Eø‹EÇ@ ƒ}øt'‹Eø‹Pÿ‹Eø‰‹Eø‹…Àu‹Eø‹@‹P‹Eø‰$ÿÒ‹E‹@…Àt‹E‹@‰$èk¤ÿÿ‹EÇ@¸ƒÄ[]ÃU‰åSƒìèÕÄÿÿÃêG‹E‰$èÙ¡ÿÿ‹E‰$èÿÿ‹E‰$èNÿÿÿ‹E‰$èèœÿÿƒÄ[]ÃU‰åSƒì4è‘ÄÿÿæG‹E‰EèÇEðÇEôè·žÿÿ‰Eø‹Eè‹P4ÇD$ƒxëÿÿ‰D$‰$èÔ¥ÿÿ‰Eìƒ}ì„Ø‹Eì‰$輜ÿÿ…Àu ÇEô齋Eì‹P‹ƒÀÿÿÿ9Ât8‹Eì‹P‹ƒÀÿÿÿ‰D$‰$è ÿÿ…Àu‹ƒœÿÿÿ‹ƒ€ëÿÿ‰D$‰$èÆ£ÿÿëu‹Eì‰$èé¢ÿÿƒøt‹ƒœÿÿÿ‹ƒ¸ëÿÿ‰D$‰$蚣ÿÿëI‹Eì‹@ ‰$è*œÿÿ‰Eð‹Eì‹@‰$è9Ÿÿÿ‰Â‹E ‰‹E ‹ƒøÿuècÿÿ…Àt ÇEðëÇEôƒ}ôtè´¡ÿÿƒ}ìt'‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒ‹Eø‰$èLžÿÿ‹EðƒÄ4[]ÃU‰åSƒì$èÃÿÿÃ'F‹E‰EìèFÿÿ‰Eø‹Eì‹P4ÇD$ƒýëÿÿ‰D$‰$èc¤ÿÿ‰Eðƒ}ðuè%¡ÿÿÇEôë5‹Eð‰$èA›ÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‰$è¬ÿÿ‹EôƒÄ$[]ÃU‰åSƒì4èrÂÿÿÇE‹E‰Eà覜ÿÿ‰Eøƒ} t4‹E‰EìÇD$‹Eì‰$èô¡ÿÿ‰EäÇD$‹Eì‰$èÞ¡ÿÿ‰Eè닃àÿÿÿ‰E䋃àÿÿÿ‰Eè‹Eà‹P4‹Eè‰D$‹Eä‰D$ ƒìÿÿ‰D$ƒìÿÿ‰D$‰$èg£ÿÿ‰Eðƒ}ðuè) ÿÿÇEôë5‹Eð‰$èEšÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Eø‰$è°œÿÿ‹EôƒÄ4[]ÃU‰åSƒì$èvÁÿÿËD‹E‰Eì誛ÿÿ‰Eø‹Eì‹P4ƒìÿÿ‰D$‰$诞ÿÿ‰Eðƒ}ðtqÇD$‹Eð‰$èÓÿÿ‰Eô‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒ}ôuèNŸÿÿë'‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒ‹Eø‰$èê›ÿÿƒÄ$[]ÃU‰åSƒì$è³ÀÿÿÃÈCÇD$8ƒ¤‰$èÌ™ÿÿ‰Â‹E‰P‹E‹@‰Eø‹U‹Eø‰P4‹EÇ@ ‹EÇ@‹EÇ@¸ƒÄ$[]ÃU‰åSƒìèHÀÿÿÃ]C‹E‰$è|˜ÿÿƒÄ[]ÃU‰åSƒìè%ÀÿÿÃ:Cƒ"ìÿÿ‰D$‹E‰$è—ïÿÿƒÄ[]ÃU‰åSƒì4èø¿ÿÿà CÇEøÈEø‰D$ƒ€‰D$ ƒ'ìÿÿ‰D$‹E‰D$‹E ‰$ès ÿÿ…Àu ÇEèÿÿÿÿëOè›ÿÿ‹U‰B‹Eø=Èt‹Eø‹U‹R‰D$‰$è –ÿÿ‹EÇ@ ‹EÇ@‹EÇ@ÇEè‹EèƒÄ4[]ÃU‰åSƒìèM¿ÿÿÃbBƒJìÿÿ‰D$‹E‰$è¿îÿÿƒÄ[]ÃU‰åSƒì4è ¿ÿÿÃ5BÇEøEø‰D$Eô‰D$ƒ`‰D$ ƒ[ìÿÿ‰D$‹E‰D$‹E ‰$蔟ÿÿ…Àu ÇEèÿÿÿÿëT‹Eô‰$èœÿÿ‰Â‹E‰P‹Eø…Àt‹Eø‹U‹R‰D$‰$è(•ÿÿ‹EÇ@ ‹EÇ@‹EÇ@ÇEè‹EèƒÄ4[]ÃU‰åSƒìèi¾ÿÿÃ~A‹E‹@…Àt*‹E‹@‹ƒê‰‹…Àu‹E‹@‹@‹P‹E‹@‰$ÿÒ‹E‰$èÿÿƒÄ[]ÃU‰åSƒìè¾ÿÿÃ'A‹M‹E·@ ·Ð‹E‹@‰L$ ‰T$‰D$ƒìÿÿ‰$褘ÿÿƒÄ[]ÃU‰åSƒì4èͽÿÿÃâ@Eò‰D$Eô‰D$ƒ‰D$ ƒ«ìÿÿ‰D$‹E‰D$‹E ‰$èHžÿÿ…Àu ÇEèÿÿÿÿëT‹Eô‰$è–ÿÿ‰Eøƒ}øÿu ÇEèÿÿÿÿë7‹U‹Eø‰B·Uò‹Ef‰P ‹EfÇ@‹Uô‹ƒÀ‰‹Uô‹E‰PÇEè‹EèƒÄ4[]ÃU‰åSƒìè½ÿÿÃ2@‹ƒôÿÿÿÇ@TëE“,¼ÿÿ‹ƒôÿÿÿ‰”“—¼ÿÿ‹ƒôÿÿÿ‰ “ ¸ÿÿ‹ƒôÿÿÿ‰P‹“ôÿÿÿƒÀ ‰Bt“'·ÿÿ‹ƒôÿÿÿ‰P,“B·ÿÿ‹ƒôÿÿÿ‰P\“‹·ÿÿ‹ƒôÿÿÿ‰P`‹“ôÿÿÿƒ@‰B|‹ƒôÿÿÿÇ@h‹ƒôÿÿÿÇ€ ‹ƒôÿÿÿ‹€˜…Àu‹ƒôÿÿÿ‹“øÿÿÿ‰˜‹ƒôÿÿÿ‹€œ…Àu‹ƒôÿÿÿ‹“ˆÿÿÿ‰œ‹ƒôÿÿÿ‰$èb“ÿÿ…À…R‹ƒôÿÿÿ‰D$ƒÃìÿÿ‰D$‹E‰$èk’ÿÿ“º¼ÿÿ‹ƒÄÿÿÿ‰P,‹ƒÄÿÿÿÇ@Të‹“Äÿÿÿ‹ƒôÿÿÿ‰‚€“ç¼ÿÿ‹ƒÄÿÿÿ‰”‹ƒÄÿÿÿ‹€˜…Àu‹ƒÄÿÿÿ‹“øÿÿÿ‰˜‹ƒÄÿÿÿ‹€œ…Àu‹ƒÄÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÄÿÿÿ‰$è©’ÿÿ…À…™‹ƒÄÿÿÿ‰D$ƒÊìÿÿ‰D$‹E‰$貑ÿÿ“’½ÿÿ‹ƒÐÿÿÿ‰P,‹ƒÐÿÿÿÇ@Të‹“Ðÿÿÿ‹ƒôÿÿÿ‰‚€“¿½ÿÿ‹ƒÐÿÿÿ‰”‹ƒÐÿÿÿ‹€˜…Àu‹ƒÐÿÿÿ‹“øÿÿÿ‰˜‹ƒÐÿÿÿ‹€œ…Àu‹ƒÐÿÿÿ‹“ˆÿÿÿ‰œ‹ƒÐÿÿÿ‰$èð‘ÿÿ…À…à‹ƒÐÿÿÿ‰D$ƒÏìÿÿ‰D$‹E‰$èùÿÿ“v¾ÿÿ‹ƒ ÿÿÿ‰P“;ÿÿ‹ƒ ÿÿÿ‰P,‹ƒ ÿÿÿÇ@Të‹“ ÿÿÿƒ@‰Bx“¿ÿÿ‹ƒ ÿÿÿ‰”‹ƒ ÿÿÿ‹€˜…Àu‹ƒ ÿÿÿ‹“øÿÿÿ‰˜‹ƒ ÿÿÿ‹€œ…Àu‹ƒ ÿÿÿ‹“ˆÿÿÿ‰œ‹ƒ ÿÿÿ‰$è+‘ÿÿ…Àu‹ƒ ÿÿÿ‰D$ƒ×ìÿÿ‰D$‹E‰$è8ÿÿƒÄ[]ÃU‰åSƒì诹ÿÿÃÄ<‹E‰$èC•ÿÿ‰$èÛ’ÿÿ‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿƒÄ[]ÃU‰åSƒìèk¹ÿÿÀ<‹E‰$èÿ”ÿÿ‰$è—’ÿÿ‹ƒ¤ÿÿÿ‹ ‹E‰$ÿÒƒÄ[]ÃU‰åSƒìè,¹ÿÿÃA<‹ƒœÿÿÿ‹ƒøìÿÿ‰D$‰$èñ˜ÿÿ¸ÿÿÿÿƒÄ[]ÃU‰åSƒì$èõ¸ÿÿà <‹ƒìÿÿÿ‹@‰$è“•ÿÿ‰Â‹ƒìÿÿÿ‰D$‰$èÿ”ÿÿ‰Eø‹Uø‹E‰B‹EøƒÄ$[]ÃU‰åSƒì$詸ÿÿþ;‹E‰EðèÝ’ÿÿ‰Eø‹Eð‹@…Àt&‹Eð‹P‹Eð‹‰T$ƒ!íÿÿ‰D$‰ $èÏÿÿ‰Eôë‹Eð‹ÇD$‰$èµÿÿ‰Eôƒ}ôt)‹Eô‹Pÿ‹Eô‰‹Eô‹…Àu‹Eô‹@‹P‹Eô‰$ÿÒëèn–ÿÿ‹Eð‹‹ƒê‰‹…Àu‹Eð‹‹@‹P‹Eð‹‰$ÿÒ‹Eð‹@…Àt*‹Eð‹@‹ƒê‰‹…Àu‹Eð‹@‹@‹P‹Eð‹@‰$ÿÒ‹Eð‰D$Ç$èð˜ÿÿ‹Eø‰$èÅ’ÿÿƒÄ$[]ÃU‰åWVSì¬è‰·ÿÿÞ:ÇEÄÇEЋƒàÿÿÿ‰EÀÇE¼ÇE¸ÇE´ÇE°ÿÿÿÿÇE¬ÿÿÿÿÇE¨ÿÿÿÿÇE¤ÇE ÇEœÇEàÇE˜ÇE”ÿÿÿÿEœ‰D$0E ‰D$,E¤‰D$(E¼‰D$$EÀ‰D$ E´‰D$E¸‰D$EĉD$EȉD$ƒ€‰D$ ƒ‰íÿÿ‰D$‹E‰D$‹E ‰$èh—ÿÿ…Àu ÇEˆé‹E¤…Àt‹E¤‰$èÿÿ…ÀtE°‰EÔëÇEÔ‹E …Àt‹E ‰$èñŽÿÿ…ÀtE¬‰EØëÇEØ‹Eœ…Àt‹Eœ‰$èÌŽÿÿ…ÀtE¨‰EÜëÇEÜ‹Eȉ$è.“ÿÿ…Àu&‹ƒœÿÿÿ‹ƒ¨íÿÿ‰D$‰$èð•ÿÿÇEˆéa‹Eȉ$蹑ÿÿ‰Eä‹EäƒÀÀÀ‰$èd”ÿÿ‰EÌÇEèéì‹EÈ‹@‹@4‹H ‹UÈ‹Eè‰D$‰$ÿщEì‹Eì‹P‹ƒðÿÿÿ9Âtz‹Eì‹P‹ƒðÿÿÿ‰D$‰$蟑ÿÿ…Àu^‹ƒœÿÿÿ‹ƒ¨íÿÿ‰D$‰$èQ•ÿÿ‹Ẻ$è¶‹ÿÿƒ}ìt'‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒÇEˆéŠ‹EèÀÀ‰ÆuÌ‹Eì‰$見ÿÿ‰‹Eì‹Pÿ‹E쉋Eì‹…Àu‹Eì‹@‹P‹Eì‰$ÿÒƒEè‹Eè;EäŒÿÿÿ‹EÄ…À„v‹Eĉ$èÇ‘ÿÿ…Àu1‹ƒœÿÿÿ‹ƒèíÿÿ‰D$‰$艔ÿÿ‹Ẻ$èîŠÿÿÇEˆéï‹Eĉ$èGÿÿ‰Eä‹EäƒÀÀÀ‰$èò’ÿÿ‰EÐÇEèéû‹EÄ‹@‹@4‹H ‹UÄ‹Eè‰D$‰$ÿщEð‹Eð‹P‹ƒðÿÿÿ9„…‹Eð‹P‹ƒðÿÿÿ‰D$‰$è)ÿÿ…Àui‹ƒœÿÿÿ‹ƒèíÿÿ‰D$‰$èÛ“ÿÿ‹EЉ$è@Šÿÿƒ}ðt'‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒ‹Ẻ$èŠÿÿÇEˆé ‹EèÀÀ‰ÆuЋEð‰$è%Šÿÿ‰‹Eð‹Pÿ‹Eð‰‹Eð‹…Àu‹Eð‹@‹P‹Eð‰$ÿÒƒEè‹Eè;EäŒùþÿÿ‹EÀ‹“àÿÿÿ9Є”‹EÀ‰$è ”ÿÿ…ÀuB‹ƒœÿÿÿ‹ƒ(îÿÿ‰D$‰$è“ÿÿ‹Ẻ$èg‰ÿÿƒ}Ðt ‹EЉ$èV‰ÿÿÇEˆéWÇ$è.ÿÿ‰Eà‹UÀ‹Eà‰‹U¼‹Eà‰P‹Eà‹‹ƒÀ‰‹Eà‹@…Àt ‹Eà‹P‹ƒÀ‰‹EÀ‹“àÿÿÿ9Ðt ƒ6Äÿÿ‰EŒëÇEŒ‹E´‰Â‹M¸E˜‰D$(‹E܉D$$‹E؉D$ ‹EÔ‰D$E”‰D$‹Eà‰D$‹EŒ‰D$‰T$ ‹EЉD$‹ẺD$‰ $è%‹ÿÿ…À…§‹Ẻ$肈ÿÿƒ}Ðt ‹EЉ$èqˆÿÿƒ}àtn‹Eà‹‹ƒê‰‹…Àu‹Eà‹‹@‹P‹Eà‹‰$ÿÒ‹Eà‹@…Àt*‹Eà‹@‹ƒê‰‹…Àu‹Eà‹@‹@‹P‹Eà‹@‰$ÿÒ‹Eà‰D$Ç$èí’ÿÿE˜‰$è‚“ÿÿÇEˆéó‹Ẻ$èÛ‡ÿÿƒ}Ðt ‹EЉ$èʇÿÿƒ}Ôt‹EÔ‹‰$èGŒÿÿ‰E¤ë‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰E¤ƒ}Øt‹EØ‹‰$èŒÿÿ‰E ë‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰E ƒ}Üt‹EÜ‹‰$èß‹ÿÿ‰Eœë‹ƒàÿÿÿ‹P‹ƒàÿÿÿ‰‹ƒàÿÿÿ‰Eœ‹uœ‹} ‹U¤‰U‹E”‰$èÁ÷ÿÿ‰t$‰|$ ‹U‰T$‰D$ƒWîÿÿ‰$èV’ÿÿ‰Eˆ‹EˆÄ¬[^_]ÃU‰åSƒìè„°ÿÿÙ3‹“ìÿÿÿ‹ƒ¤ÿÿÿ‰‚€‹ƒìÿÿÿÇ@Të‹“ìÿÿÿƒ`‰Bt‹“ìÿÿÿƒ³Ãÿÿ‰‚”“tÃÿÿ‹ƒìÿÿÿ‰ ‹ƒìÿÿÿ‹€˜…Àu‹ƒìÿÿÿ‹“øÿÿÿ‰˜‹ƒìÿÿÿ‹€œ…Àu‹ƒìÿÿÿ‹“ˆÿÿÿ‰œ‹ƒìÿÿÿ‰$è‡ÿÿ…Àu‹ƒìÿÿÿ‰D$ƒ\îÿÿ‰D$‹E‰$è,†ÿÿƒÄ[]ÃU‰åVSè[ö2ƒhþÿÿPü‹@üƒøÿt‰Ö¶¿ÿЋFüƒîƒøÿuó[^]ÃU‰åSƒìè[Ãp2èD‘ÿÿZ[]Ãexpecting at most one keyword argumentkeyword argument name is not a stringpriorityonly 'priority' keyword argument acceptedcould not get priority valueidle_add requires at least 1 argumentO:idle_addfirst argument not callable(ON)timeout_add requires at least 2 argsIO:timeout_addsecond argument not callabletimeout_add_seconds requires at least 2 argsIO:timeout_add_secondsiowatch_marshaluser_data != NULL(Oi)glib.io_add_watch callback returned None; should return True/Falseio_add_watch requires at least 3 argsOiO:io_add_watchthird argument not callable(OON)i:source_removeiiOiipidfunctiondataiO|Oi:glib.child_watch_addglib.child_watch_add: second argument must be callabletexts#:glib.markup_escape_textdirectoryi:glib.get_user_special_dirs:glib.filename_display_names:glib.filename_display_basenames#:glib.filename_from_utf8first argument must be a string, not '%s'idle_addidle_add(callable, user_data=None, priority=None) -> source id callable receives (user_data) Adds a callable to be called whenever there are no higher priority events pending to the default main loop.timeout_addtimeout_add(interval, callable, user_data=None, priority=None) -> source id callable receives (user_data) Sets a callable be called repeatedly until it returns False.timeout_add_secondstimeout_add(interval, callable, user_data=None, priority=None) -> source_id callable receives (user_data) Sets a callable be called repeatedly until it returns False. Use this if you want to have a timer in the "seconds" range and do not care about the exact time of the first call of the timer, use this for more efficient system power usage.io_add_watchio_add_watch(fd, condition, callback, user_data=None) -> source id callable receives (fd, condition, user_data) Arranges for the fd to be monitored by the main loop for the specified condition. Condition is a combination of glib.IO_IN, glib.IO_OUT, glib.IO_PRI, gio.IO_ERR and gio.IO_HUB. child_watch_addchild_watch_add(pid, callable, user_data=None, priority=None) -> source id callable receives (pid, condition, user_data) Sets the function specified by function to be called with the user data specified by data when the child indicated by pid exits. Condition is a combination of glib.IO_IN, glib.IO_OUT, glib.IO_PRI, gio.IO_ERR and gio.IO_HUB.source_removesource_remove(source_id) -> True if removed Removes the event source specified by source id as returned by the glib.idle_add(), glib.timeout_add() or glib.io_add_watch() functions.spawn_asyncspawn_async(argv, envp=None, working_directory=None, flags=0, child_setup=None, user_data=None, standard_input=None, standard_output=None, standard_error=None) -> (pid, stdin, stdout, stderr) Execute a child program asynchronously within a glib.MainLoop() See the reference manual for a complete reference.main_context_defaultmain_context_default() -> a main context Returns the default main context. This is the main context used for main loop functions when a main loop is not explicitly specified.main_depthmain_depth() -> stack depth Returns the depth of the stack of calls in the main context.filename_display_namefilename_display_basenamefilename_from_utf8get_application_nameset_application_nameget_prgnameset_prgnameget_current_timeget_user_cache_dirget_user_config_dirget_user_data_dirget_user_special_dirmarkup_escape_text_PyGLib_APImessageglib.GErrorGError(iii)glib_versionpyglib_versionSPAWN_LEAVE_DESCRIPTORS_OPENSPAWN_DO_NOT_REAP_CHILDSPAWN_SEARCH_PATHSPAWN_STDOUT_TO_DEV_NULLSPAWN_STDERR_TO_DEV_NULLSPAWN_CHILD_INHERITS_STDINSPAWN_FILE_AND_ARGV_ZEROPRIORITY_HIGHPRIORITY_DEFAULTPRIORITY_HIGH_IDLEPRIORITY_DEFAULT_IDLEPRIORITY_LOWIO_INIO_OUTIO_PRIIO_ERRIO_HUPIO_NVALIO_STATUS_ERRORIO_STATUS_NORMALIO_STATUS_EOFIO_STATUS_AGAINIO_FLAG_APPENDIO_FLAG_NONBLOCKIO_FLAG_IS_READABLEIO_FLAG_IS_WRITEABLEIO_FLAG_IS_SEEKABLEIO_FLAG_MASKIO_FLAG_GET_MASKIO_FLAG_SET_MASKOPTION_FLAG_HIDDENOPTION_FLAG_IN_MAINOPTION_FLAG_REVERSEOPTION_FLAG_NO_ARGOPTION_FLAG_FILENAMEOPTION_FLAG_OPTIONAL_ARGOPTION_FLAG_NOALIASOPTION_ERROR_UNKNOWN_OPTIONOPTION_ERROR_BAD_VALUEOPTION_ERROR_FAILEDUSER_DIRECTORY_DESKTOPUSER_DIRECTORY_DOCUMENTSUSER_DIRECTORY_DOWNLOADUSER_DIRECTORY_MUSICUSER_DIRECTORY_PICTURESUSER_DIRECTORY_PUBLIC_SHAREUSER_DIRECTORY_TEMPLATESUSER_DIRECTORY_VIDEOSOPTION_REMAININGOPTION_ERRORglib._glibglib.IOChannelEOFflush|O:glib.IOChannel.shutdownsizei:glib.IOChannel.set_buffer_sizebufferedi:glib.IOChannel.set_bufferedencodingz:glib.IOChannel.set_encodingmax_count|i:glib.IOChannel.readbufs#:glib.IOChannel.writelinesO:glib.IOChannel.writelinesglib.IOChannel.writelines must be sequence/iterator of stringsflagsi:glib.IOChannel.set_flagsdo_closeO:glib.IOChannel.set_close_on_unrefpyg_iowatch_marshaluser_data != NULL((PyGIOChannel *) data->iochannel)->channel == sourceOiOOiconditioncallbackuser_datapriorityiO|Oi:glib.IOChannel.add_watchsecond must be callable|i:glib.IOChannel.readline|i:glib.IOChannel.readlinesoffsetwhenceL|i:glib.IOChannel.seekinvalid 'whence' valuesoftspacecloseset_encodingget_encodingset_bufferedget_bufferedset_buffer_sizeget_buffer_sizereadreadlinereadlineswritewritelinesset_flagsget_flagsget_buffer_conditionset_close_on_unrefget_close_on_unrefadd_watchseekfiledesfilenamemoder|iss:glib.IOChannel.__init__either a valid file descriptor or file name must be suppliedIOChannelglib.OptionContexts:glib.GOptionContext.__init__pyg_option_context_parseargvO:GOptionContext.parseGOptionContext.parse expects a list of strings.help_enableO:GOptionContext.set_help_enabledignore_unknown_optionsO:GOptionContext.set_ignore_unknown_optionsgroupO:GOptionContext.set_main_groupGOptionContext.set_main_group expects a GOptionGroup.Group is already in a OptionContext.O:GOptionContext.add_groupGOptionContext.add_group expects a GOptionGroup.parseset_help_enabledget_help_enabledset_ignore_unknown_optionsget_ignore_unknown_optionsset_main_groupget_main_groupadd_group_get_contextOptionContextglib.OptionGroupThe GOptionGroup was not created by glib.OptionGroup(), so operation is not possible.namedescriptionhelp_descriptioncallbackzzzO:GOptionGroup.__init__sOOssOentriesO:GOptionGroup.add_entriesGOptionGroup.add_entries expected a list of entriessciszdomainThe corresponding GOptionGroup was already freed, probably through the release of GOptionContextz:GOptionGroup.set_translate_domainadd_entriesset_translation_domainOptionGroupglib.MainContext|i:GMainContext.iterationiterationpendingMainContextpyg_signal_watch_dispatchpygmainloop.cglib.MainLoopcontextis_running|Ob:GMainLoop.__init__context must be a glib.MainContext or Nonepyg_save_current_main_loopmain_loop != NULLpyg_restore_current_main_looppyg_current_main_loop_key != -1get_contextquitrunMainLoopglib.Sourceattachedunattacheddestroyed<%s glib %s source at 0x%lx><%s glib source at 0x%lx>context|O!:attachsource is destroyedset_callback requires at least 1 argumentO:set_callbackfirst argument not callable(ON)fdadd_poll can only be used with sources implemented in pythonO!:add_pollremove_poll can only be used with sources implemented in pythonO!:remove_pollattachdestroyset_callbackget_contextadd_pollremove_pollget_current_timecannot delete prioritytype mismatchcannot delete can_recursesource is not attached__dict__prioritycan_recurseidpreparesource prepare function must return a tuple or Falsesource prepare function return tuple must be exactly 2 elements longcheckOOdispatchfinalizeglib.Idleidle|i:glib.Idle.__init__glib.TimeouttimeoutintervalI|i:glib.Timeout.__init__glib.PollFDeventsreventsOH:glib.PollFD.__init__SourceIdleTimeoutPollFDíµ ÷ư>glib.Pidcloseglib.Pid cannot be manually instantiatedOargvenvpworking_directoryflagschild_setupuser_datastandard_inputstandard_outputstandard_errorO|OsiOOOOO:glib.spawn_asyncglib.spawn_async: first argument must be a sequence of stringsglib.spawn_async: second argument must be a sequence of stringschild_setup parameter must be callable or NoneNNNNPidÿÿÿÿÿÿÿÿ :Nbr}Ž˜¡ 5 ¤¯´$ á  âÐP/ø&Xþÿÿo¨&ÿÿÿoðÿÿo%úÿÿoó òÀí ìàæàð`ëÀñÀéÀóï˜àf5v5†5–5¦5¶5Æ5Ö5æ5ö566&666F6V6f6v6†6–6¦6¶6Æ6Ö6æ6ö677&767F7V7f7v7†7–7¦7¶7Æ7Ö7æ7ö788&868F8V8f8v8†8–8¦8¶8Æ8Ö8æ8ö899&969F9V9f9v9†9–9¦9¶9Æ9Ö9æ9ö9::&:6:F:V:f:v:†:–:¦:¶:Æ:Ö:æ:ö:;;&;6;F;V;f;v;†;–;¦;¶;Æ;Ö;æ;ö;<<&<6<F<V<f<v<†<–<¦<¶<Æ<Ö<æ<ö<==&=6=F=V=f=v=†=–=¦=¶=Æ=Ö=æ=ö=>>&>6>F>V>f>v>†>–>¦>¶>Æ>Ö>æ>ö>??&?6?F?V?f?v?†?–?¦?¶?Æ?Ö?æ?ö?@@&@6@F@V@f@v@†@–@¦@¶@Æ@Ö@æ@ö@ åà(²,²5²°²¯²Z³.Cd³/´E<´ñ´Gµn¶­J|¶ ·ÇN°· ¹ñL¹Ñ¹q§à¹7»KML»û»QR¼a¼vRw¼þR‘¼†S¤¼LT¹¼¡TμGUÚ¼œU漈P÷¼½P ½Q½gQ0½¼QE½øO\ÁoÁÁ¹ÁàÁÂ)ÂE§ÂÈÂ]ÃgÃpÃzÃÁÁòÃùÃ/Ä 9Äz`oÁgh?ĘbLÄDcYÄäafÄjbsÄ.aƒÄ¶a“Ä¢c˜Ä)n¡Ä o«Ä”e±ÄVf¼ÄÑhÆÄriÐÄ iåÄÎiøÄ^j ÅÊlÅ®pÅ"Å+ŘÅäÅ0Æ^ƤƤÆuÇÕt{Ç~wŒÇxÇþÿÿo¨&¨&PM ø&ø&XV P/P/Ð _ 5 5/ZP5P5° eAA¤nk¤¯¤¯qÀ¯À¯À y€Ð€Ðƒ„à„ЊŒàŒÐ‘”à”Ж˜à˜ÐŸ˜á˜Ñˆ¤ â Òô­ å Õ¨ ³ÈôÈä¸È䨠åÁtê ú Î"„àŒà”à*A @ÈôO$åVpA bˆàoà|€Ð Š”à–`¯ ¬¬A‚ Á.Cã ÑEñ äGñ ÿL± óHº )­JD =ñLZ RKM% npMË ;NŒ “(å ÇN1 ·<åÄøO ÞˆP5 ö½PU QU +gQU DDåQ¼Q• mQR% vRˆ œþRˆ ½†SÆ ×LTU ó¡T¦ GUU "œU¦ 5`åpEÌôPBV dÁV¯ zpWü ™lXÍ ³_Ë ÆÛ_D Ü` ó4`  ?`;  ç)z`´ @¨çM.aˆ k¶a. ‰°ç–äa† ±jb. ̸çÙ˜b¬ ôDc^ Àç¢cò 5ÈçB”e \ÐçiVf ƒghj —Øç¤Ñh¡ ¼ri. Ô i. ÷àçÎi %^j_ F½j° \øÂ vmk] Šèç—Êl_ ¯üç¼)nã Ôèá o¢ ú è ®p  è(0`èPF°éSÈq  fès^ ~Ft ™ËÅ ³€êÀÕt© Ùˆêæ~w x. .ê;‰. Î €î Û l‰; î §Šg  ‹D  R‹. 8 €‹. U ®‹? l 틟 ‚ ŒŒ¢ . » ÃÊ Õ ðÊ ï  îP ˜ŽÒ  Àï jó / ]Æ B #‘ø Z “‹ q Èï~ ¦“ð ’ ÐïŸ –”ð ¶ †•Ž Ò àï€å –[ ù o–a Жé )¹—a D˜— _±˜– q`ðd„G™ ”b™I ¨«™ ¹*šD Ìnš ßí›  ðœü ‰Ã Äð)Lžk 9·ž# IÚž- W ñdŸ« r²Ÿ- ƒ€ò ߟ· ¡`óPµ– W Éí E Ú°ó ç2¡° øP¥D €ô ”¥? #Ó¥7 3V¦ M ô(Z¤¯ ` ¦L lâ¡l ‰ âñÿŸ òÀ®ÀíÀ¿ ìÀÓàæÀåî†Ù Ór 'àðÀ4 åA`ëÀUÀñÀe¾Ù „ÀéÀšq§  ­Ù{Ù ÒÈôñÿÞ²| õ•„Ù Üôñÿ{®ß 9ÀóÀEÈôñÿLïÀ[ _ r˜àñÿ{ 5´$%¨&ø&P/ 5P5 A ¤¯ À¯ €Ð „àŒà”à˜à˜á â åÈô;ˆ™Ÿ´Ç¾Ýìþ$ª.ÛDÀX]„“e°¼Zè#õÛ -‰>áTuvÿŒ¤¿ Î â‘ø& #B<bE]m‚’ž²Ï\äôU;kQ‰Zeäƒêœ·ÃlÓì¸ù #U3@M`&wm…‘š±ÀÚÁõw k&„=ÆRkjÉ} –©¾Ðçö+.«ETf9^Ò p¹ƒ¯•¢[»$ ÒÞ4éGû`ë*;H`aq‚•¡û¸\Ïà§û 6y3JŠan^Ž¢²PÊ3Úìèeù !Ð3\HFb`wŽ€ž²1É×êúUp%4GUcz¼‰Ôë÷¹ C%‘/)D¶Tdgv£¡¯ÃÐèôb~€+?_NVbrˆE­¾ôÎÞD f # J. H ¹c [… “ ¥¨ \È Šß ¹ú Y!4! F!¡f!ø~!5Ž!, !Uº!Å!Ù!ºí!Äû!Ú""("ÿ6"Q"[k"y"Ž"™"Z»"’__CTOR_LIST____DTOR_LIST____JCR_LIST____do_global_dtors_auxcompleted.5958p.5956frame_dummy__CTOR_END____DTOR_END____FRAME_END____JCR_END____do_global_ctors_auxget_handler_prioritypyglib_idle_addpyglib_timeout_addpyglib_timeout_add_seconds__PRETTY_FUNCTION__.14385iowatch_marshalpyglib_io_add_watchpyglib_source_removepyglib_main_context_defaultchild_watch_funcchild_watch_dnotifykwlist.14575pyglib_child_watch_addkwlist.14614pyglib_markup_escape_textpyglib_get_current_timepyglib_get_user_cache_dirpyglib_get_user_config_dirpyglib_get_user_data_dirkwlist.14676pyglib_get_user_special_dirpyglib_main_depthpyglib_filename_display_namepyglib_filename_display_basenamepyglib_filename_from_utf8pyglib_get_application_namepyglib_set_application_namepyglib_get_prgnamepyglib_set_prgname_glib_functionspyglib_apipyglib_register_apipyglib_register_errorpyglib_register_version_tuplespyglib_register_constantspy_io_channel_nextpy_io_channel_comparepy_io_channel_get_iterpy_io_channel_hashpy_io_channel_deallockwlist.14233py_io_channel_shutdownkwlist.14257py_io_channel_set_buffer_sizepy_io_channel_get_buffer_sizekwlist.14283py_io_channel_set_bufferedpy_io_channel_get_bufferedkwlist.14307py_io_channel_set_encodingpy_io_channel_get_encodingkwlist.14340py_io_channel_read_charskwlist.14430py_io_channel_write_charskwlist.14456py_io_channel_write_linespy_io_channel_flushkwlist.14543py_io_channel_set_flagspy_io_channel_get_flagspy_io_channel_get_buffer_conditionkwlist.14583py_io_channel_set_close_on_unrefpy_io_channel_get_close_on_unrefpyg_iowatch_data_free__PRETTY_FUNCTION__.14660pyg_iowatch_marshalkwlist.14698py_io_channel_add_watchkwlist.14744py_io_channel_read_linekwlist.14772py_io_channel_read_lineskwlist.14829py_io_channel_seekpy_io_channel_memberspy_io_channel_methodskwlist.14862py_io_channel_initpyg_option_context_initpyg_option_context_dealloc__PRETTY_FUNCTION__.14171kwlist.14157pyg_option_context_parsekwlist.14255pyg_option_context_set_help_enabledpyg_option_context_get_help_enabledkwlist.14280pyg_option_context_set_ignore_unknown_optionspyg_option_context_get_ignore_unknown_optionskwlist.14305pyg_option_context_set_main_grouppyg_option_context_get_main_groupkwlist.14351pyg_option_context_add_grouppyg_option_context_comparepyg_option_get_contextpyg_option_context_methodscheck_if_owneddestroy_g_groupkwlist.14156pyg_option_group_initpyg_option_group_deallocarg_funckwlist.14222pyg_option_group_add_entrieskwlist.14331pyg_option_group_set_translation_domainpyg_option_group_comparepyg_option_group_methodspyg_main_context_initpyg_main_context_deallocpyg_main_context_compare_wrap_g_main_context_iteration_wrap_g_main_context_pending_PyGMainContext_methodspyg_current_main_loop_keypyg_signal_watch_preparepyg_signal_watch_checkpyg_get_current_main_loop__PRETTY_FUNCTION__.14235pyg_signal_watch_dispatchpyg_signal_watch_finalizepyg_signal_watch_funcspyg_signal_watch_newkwlist.14265pyg_main_loop_initpyg_main_loop_deallocpyg_main_loop_compare_wrap_g_main_loop_get_context_wrap_g_main_loop_is_running_wrap_g_main_loop_quit_wrap_g_main_loop_runpyg_save_current_main_looppyg_restore_current_main_loop__PRETTY_FUNCTION__.14165__PRETTY_FUNCTION__.14183_PyGMainLoop_methodssource_reprkwlist.14226pyg_source_attachpyg_source_destroypyg_source_set_callbackpyg_source_get_contextkwlist.14360pyg_source_add_pollkwlist.14385pyg_source_remove_pollpyg_source_get_current_timepyg_source_methodspyg_source_get_dictpyg_source_get_prioritypyg_source_set_prioritypyg_source_get_can_recursepyg_source_set_can_recursepyg_source_get_idpyg_source_getsetspyg_source_reprpyg_source_traversepyg_source_clearpyg_source_deallocpyg_source_preparepyg_source_checkpyg_source_dispatchpyg_source_finalizepyg_source_funcspyg_source_initpyg_source_freepyg_idle_reprkwlist.14736pyg_idle_initpyg_timeout_reprkwlist.14761pyg_timeout_initpyg_poll_fd_memberspyg_poll_fd_deallocpyg_poll_fd_reprkwlist.14809pyg_poll_fd_initpyg_pid_closepyg_pid_methodspyg_pid_freepyg_pid_tp_init_pyg_spawn_async_callbackkwlist.14191_finipyg_pid_newpyglib_source_register_types_GLOBAL_OFFSET_TABLE_PyGPollFD_TypePyGMainLoop_TypePyGMainContext_TypePyGIOChannel_Typepyglib_maincontext_register_typespyglib_iochannel_register_typesPyGIdle_Type__dso_handlePyGOptionGroup_TypePyGTimeout_Typepyglib_mainloop_register_typesPyGOptionContext_Typepyglib_spawn_asyncpyglib_option_context_register_types__bss_start__i686.get_pc_thunk.cxpyglib_option_group_register_types_endpyglib_spawn_register_typesPyGPid_Type_edataPyGSource_Type__i686.get_pc_thunk.bx_DYNAMIC_initg_freeg_io_channel_get_flagsPyDict_SetItemStringglib_major_versiong_source_set_priority_Py_ZeroStructPyString_AsStringPyExc_StopIterationPyType_GenericNewg_strdupvg_io_channel_shutdowng_io_add_watch_fullg_option_context_get_ignore_unknown_optionsPyList_GetItemg_io_channel_set_buffer_sizePyIter_Nextg_option_context_set_ignore_unknown_optionsg_slist_freeg_io_channel_set_encodingPyExc_ValueErrorPyType_Readyg_main_loop_quitg_io_channel_unix_newg_io_channel_get_buffer_conditiong_option_context_freePyLong_FromUnsignedLongPyModule_AddStringConstant__gmon_start___Jv_RegisterClassesg_source_set_callbackg_option_error_quarkPyCObject_FromVoidPtrg_source_set_can_recurseg_strdup_PyArg_ParseTuple_SizeTPyBool_FromLongg_markup_escape_textPyObject_GC_DelPyList_TypePyObject_GC_UnTrack_PyObject_CallFunction_SizeTpyglib_block_threadsPyObject_IsTruePyExc_TypeErrorPyObject_AsFileDescriptorg_io_channel_get_buffer_sizeg_io_channel_new_fileg_mallocPyInt_Typepyglib_gerror_exception_checkg_spawn_async_with_pipesPyString_FromStringAndSizePyDict_Nextg_source_get_idPyUnicodeUCS2_DecodeUTF8g_source_newg_spawn_close_pidPyModule_AddIntConstantg_main_loop_newg_main_depthPyErr_FormatPyFloat_FromDoubleg_io_channel_read_lineg_strv_lengthg_filename_from_utf8PyErr_ExceptionMatchesPyErr_Occurredg_io_channel_set_bufferedg_io_channel_seek_positiong_io_channel_write_charspyglib_main_context_new_pyglib_destroy_notifyg_source_remove_pollpyglib_gil_state_ensureg_main_context_newg_main_context_iterationglib_micro_versionPyEval_RestoreThreadPySequence_Concatg_get_application_name_Py_TrueStructg_slist_prependPyString_FromStringPyString_FromFormatg_io_channel_set_flagsPyInt_FromLongPyEval_SaveThreadinit_glibg_timeout_add_fullstrlen@@GLIBC_2.0PyTuple_Typepyglib_gil_state_releaseg_option_context_parsePyDict_Sizeg_snprintfg_idle_source_newg_source_get_can_recurseg_get_user_config_dirPyModule_GetDictPyInt_AsLongg_return_if_fail_warningPySequence_SizePyObject_GetIterPyExc_RuntimeErrorPyList_Sizeg_main_context_defaultpyglib_unblock_threadsPyType_IsSubtypeg_option_context_add_groupPyObject_Initg_slice_allocg_filename_display_basenamePyThread_get_key_valueg_main_loop_is_runningPyErr_WarnExg_io_channel_get_close_on_unrefPyObject_CallObjectPyObject_Mallocg_io_channel_read_charsg_slist_foreachg_get_prgnameclose@@GLIBC_2.0PySequence_CheckPyObject_ClearWeakRefsg_source_add_pollg_source_get_contextpyglib_float_from_timevalg_timeout_source_newPyObject_GetAttrStringg_source_removePyObject_IsInstanceg_set_application_namePyExc_Warningglib_minor_versiong_main_loop_refg_source_get_priorityg_main_context_unref_Py_NoneStructPyErr_NewExceptionPyList_AppendPyErr_SetNoneg_main_context_pendingPyErr_CheckSignals_pyglib_handler_marshalg_child_watch_add_fullg_main_loop_get_contextPyThread_set_key_valuePyErr_Printg_get_user_data_dirg_source_get_current_timeg_malloc0pyglib_init_internalg_idle_add_fullg_option_group_newPy_InitModule4PyString_AsStringAndSizeg_main_loop_unrefPyObject_FreePySequence_GetSlicePyTuple_SizePyExc_KeyboardInterruptPyErr_Clearg_io_channel_unrefg_source_destroyg_io_channel_flushPyThread_create_keyg_source_unrefg_assertion_messageg_option_group_set_translation_domaing_option_context_newPyTuple_GetItem_PyString_Resizeg_source_attachPyErr_SetStringpyglib_option_group_transfer_groupg_get_current_timePyList_SetItemg_strfreevPyThread_delete_key_valueg_timeout_add_seconds_fullg_option_context_get_help_enabledPyString_Typeg_get_user_cache_dirg_io_channel_set_close_on_unrefg_get_user_special_dirg_option_group_add_entriespyglib_threads_enabled_PyArg_ParseTupleAndKeywords_SizeTg_quark_to_stringg_option_context_set_main_groupg_filename_display_nameg_main_loop_runstrcmp@@GLIBC_2.0g_io_channel_get_encodingPyList_NewPyType_GenericAllocg_option_group_freeg_slice_free1__cxa_finalize@@GLIBC_2.1.3PyCallable_Checkg_set_prgname_PyObject_CallMethod_SizeTg_io_channel_get_bufferedPyObject_Repr_Py_BuildValue_SizeTPyDict_Newg_option_context_set_help_enabledpyglib_error_check./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/_glib.lai0000644000000000000000000000206611272036634023704 0ustar rootroot# _glib.la - a libtool library file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='_glib.so' # Names of this library. library_names='_glib.so _glib.so _glib.so' # The name of the static archive. old_library='' # Linker flags that can not go in dependency_libs. inherited_linker_flags=' -pthread' # Libraries that this one depends upon. dependency_libs=' /usr/lib/libpyglib-2.0-python.la /usr/lib/libgobject-2.0.la /usr/lib/libgthread-2.0.la -lpthread -lrt /usr/lib/libglib-2.0.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for _glib. current=0 age=0 revision=0 # Is this an already installed library? installed=yes # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/lib/python2.5/site-packages/gtk-2.0/glib' ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/.libs/libpyglib-2.0-python.lai0000644000000000000000000000212311272036631026410 0ustar rootroot# libpyglib-2.0-python.la - a libtool library file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='libpyglib-2.0-python.so.0' # Names of this library. library_names='libpyglib-2.0-python.so.0.0.0 libpyglib-2.0-python.so.0 libpyglib-2.0-python.so' # The name of the static archive. old_library='' # Linker flags that can not go in dependency_libs. inherited_linker_flags=' -pthread' # Libraries that this one depends upon. dependency_libs=' /usr/lib/libgobject-2.0.la /usr/lib/libgthread-2.0.la -lpthread -lrt /usr/lib/libglib-2.0.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for libpyglib-2.0-python. current=0 age=0 revision=0 # Is this an already installed library? installed=yes # Should we warn about portability when linking against -modules? shouldnotlink=no # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/lib' ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/libpyglib_2_0_python_la-pyglib.lo0000644000000000000000000000052111272036630027432 0ustar rootroot# libpyglib_2_0_python_la-pyglib.lo - a libtool object file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # Name of the PIC object. pic_object='.libs/libpyglib_2_0_python_la-pyglib.o' # Name of the non-PIC object non_pic_object=none ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/glib/_glib_la-pygoptiongroup.lo0000644000000000000000000000050311272036632026311 0ustar rootroot# _glib_la-pygoptiongroup.lo - a libtool object file # Generated by ltmain.sh (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # # Please DO NOT delete this file! # It is necessary for linking the library. # Name of the PIC object. pic_object='.libs/_glib_la-pygoptiongroup.o' # Name of the non-PIC object non_pic_object=none ./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/gio/0000755000000000000000000000000011272036725020770 5ustar rootroot./pygobject-2.20.0-i686/root/Desktop/pygobject-2.20.0/gio/gio.c0000644000000000000000000157341311272036645021731 0ustar rootroot/* -- THIS FILE IS GENERATED - DO NOT EDIT *//* -*- Mode: C; c-basic-offset: 4 -*- */ #define PY_SSIZE_T_CLEAN #include #if PY_VERSION_HEX < 0x02050000 typedef int Py_ssize_t; #define PY_SSIZE_T_MAX INT_MAX #define PY_SSIZE_T_MIN INT_MIN typedef inquiry lenfunc; typedef intargfunc ssizeargfunc; typedef intobjargproc ssizeobjargproc; #endif #line 28 "gio.override" #define NO_IMPORT_PYGOBJECT #include #include #include "pygio-utils.h" #include "pyglib.h" #define BUFSIZE 8192 typedef struct _PyGIONotify PyGIONotify; struct _PyGIONotify { gboolean referenced; PyObject *callback; PyObject *data; gboolean attach_self; gpointer buffer; gsize buffer_size; /* If a structure has any 'slaves', those will reference their * callbacks and be freed together with the 'master'. */ PyGIONotify *slaves; }; static GQuark pygio_notify_get_internal_quark(void) { static GQuark quark = 0; if (!quark) quark = g_quark_from_string("pygio::notify"); return quark; } static PyGIONotify * pygio_notify_new(void) { return g_slice_new0(PyGIONotify); } static PyGIONotify * pygio_notify_new_slave(PyGIONotify* master) { PyGIONotify *slave = pygio_notify_new(); while (master->slaves) master = master->slaves; master->slaves = slave; return slave; } static gboolean pygio_notify_using_optional_callback(PyGIONotify *notify) { if (notify->callback) return TRUE; else { notify->data = NULL; return FALSE; } } static gboolean pygio_notify_callback_is_valid_full(PyGIONotify *notify, const gchar *name) { if (!notify->callback) { PyErr_SetString(PyExc_RuntimeError, "internal error: callback is not set"); return FALSE; } if (!PyCallable_Check(notify->callback)) { gchar *error_message = g_strdup_printf("%s argument not callable", name); PyErr_SetString(PyExc_TypeError, error_message); g_free(error_message); return FALSE; } return TRUE; } static gboolean pygio_notify_callback_is_valid(PyGIONotify *notify) { return pygio_notify_callback_is_valid_full(notify, "callback"); } static void pygio_notify_reference_callback(PyGIONotify *notify) { if (!notify->referenced) { notify->referenced = TRUE; Py_XINCREF(notify->callback); Py_XINCREF(notify->data); if (notify->slaves) pygio_notify_reference_callback(notify->slaves); } } static void pygio_notify_copy_buffer(PyGIONotify *notify, gpointer buffer, gsize buffer_size) { if (buffer_size > 0) { notify->buffer = g_slice_copy(buffer_size, buffer); notify->buffer_size = buffer_size; } } static gboolean pygio_notify_allocate_buffer(PyGIONotify *notify, gsize buffer_size) { if (buffer_size > 0) { notify->buffer = g_slice_alloc(buffer_size); if (!notify->buffer) { PyErr_Format(PyExc_MemoryError, "failed to allocate %d bytes", buffer_size); return FALSE; } notify->buffer_size = buffer_size; } return TRUE; } static void pygio_notify_attach_to_result(PyGIONotify *notify) { notify->attach_self = TRUE; } static PyGIONotify * pygio_notify_get_attached(PyGObject *result) { return g_object_get_qdata(G_OBJECT(result->obj), pygio_notify_get_internal_quark()); } static void pygio_notify_free(PyGIONotify *notify) { if (notify) { if (notify->slaves) pygio_notify_free(notify->slaves); if (notify->referenced) { PyGILState_STATE state; state = pyg_gil_state_ensure(); Py_XDECREF(notify->callback); Py_XDECREF(notify->data); pyg_gil_state_release(state); } if (notify->buffer) g_slice_free1(notify->buffer_size, notify->buffer); g_slice_free(PyGIONotify, notify); } } static void async_result_callback_marshal(GObject *source_object, GAsyncResult *result, PyGIONotify *notify) { PyObject *ret; PyGILState_STATE state; state = pyg_gil_state_ensure(); if (!notify->referenced) g_warning("pygio_notify_reference_callback() hasn't been called before using the structure"); if (notify->attach_self) { g_object_set_qdata_full(G_OBJECT(result), pygio_notify_get_internal_quark(), notify, (GDestroyNotify) pygio_notify_free); } if (notify->data) ret = PyEval_CallFunction(notify->callback, "NNO", pygobject_new(source_object), pygobject_new((GObject *)result), notify->data); else ret = PyObject_CallFunction(notify->callback, "NN", pygobject_new(source_object), pygobject_new((GObject *)result)); if (ret == NULL) { PyErr_Print(); PyErr_Clear(); } Py_XDECREF(ret); /* Otherwise the structure is attached to 'result' and will be * freed when that object dies. */ if (!notify->attach_self) pygio_notify_free(notify); pyg_gil_state_release(state); } #line 24 "gfile.override" static void file_progress_callback_marshal(goffset current_num_bytes, goffset total_num_bytes, PyGIONotify *notify) { PyObject *ret; PyGILState_STATE state; state = pyg_gil_state_ensure(); if (notify->data) ret = PyObject_CallFunction(notify->callback, "(KKO)", current_num_bytes, total_num_bytes, notify->data); else ret = PyObject_CallFunction(notify->callback, "(KK)", current_num_bytes, total_num_bytes); if (ret == NULL) { PyErr_Print(); PyErr_Clear(); } Py_XDECREF(ret); pyg_gil_state_release(state); } #line 24 "gfileattribute.override" extern PyTypeObject PyGFileAttributeInfo_Type; typedef struct { PyObject_HEAD const GFileAttributeInfo *info; } PyGFileAttributeInfo; static PyObject * pygio_file_attribute_info_tp_new(PyTypeObject *type) { PyGFileAttributeInfo *self; GFileAttributeInfo *info = NULL; self = (PyGFileAttributeInfo *) PyObject_NEW(PyGFileAttributeInfo, &PyGFileAttributeInfo_Type); self->info = info; return (PyObject *) self; } static PyMethodDef pyg_file_attribute_info_methods[] = { { NULL, 0, 0 } }; static PyObject * pyg_file_attribute_info__get_name(PyObject *self, void *closure) { const gchar *ret; ret = ((PyGFileAttributeInfo*)self)->info->name; if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * pyg_file_attribute_info__get_type(PyObject *self, void *closure) { gint ret; ret = ((PyGFileAttributeInfo*)self)->info->type; return pyg_enum_from_gtype(G_TYPE_FILE_ATTRIBUTE_TYPE, ret); } static PyObject * pyg_file_attribute_info__get_flags(PyObject *self, void *closure) { guint ret; ret = ((PyGFileAttributeInfo*)self)->info->flags; return pyg_flags_from_gtype(G_TYPE_FILE_ATTRIBUTE_INFO_FLAGS, ret); } static const PyGetSetDef pyg_file_attribute_info_getsets[] = { { "name", (getter)pyg_file_attribute_info__get_name, (setter)0 }, { "type", (getter)pyg_file_attribute_info__get_type, (setter)0 }, { "flags", (getter)pyg_file_attribute_info__get_flags, (setter)0 }, { NULL, (getter)0, (setter)0 }, }; PyTypeObject PyGFileAttributeInfo_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FileAttributeInfo", /* tp_name */ sizeof(PyGFileAttributeInfo), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ 0, /* tp_as_number */ 0, /* tp_as_sequence */ 0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ 0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT, /* tp_flags */ "Holds information about an attribute", /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ 0, /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)pyg_file_attribute_info_methods, /* tp_methods */ 0, /* tp_members */ (struct PyGetSetDef*)pyg_file_attribute_info_getsets, /* tp_getset */ (PyTypeObject *)0, /* tp_base */ (PyObject *)0, /* tp_dict */ 0, /* tp_descr_get */ 0, /* tp_descr_set */ 0, /* tp_dictoffset */ (initproc)0, /* tp_init */ 0, /* tp_alloc */ (newfunc)pygio_file_attribute_info_tp_new, /* tp_new */ 0, /* tp_free */ (inquiry)0, /* tp_is_gc */ (PyObject *)0, /* tp_bases */ }; PyObject* pyg_file_attribute_info_new(const GFileAttributeInfo *info) { PyGFileAttributeInfo *self; self = (PyGFileAttributeInfo *)PyObject_NEW(PyGFileAttributeInfo, &PyGFileAttributeInfo_Type); if (G_UNLIKELY(self == NULL)) return NULL; if (info) self->info = info; return (PyObject *)self; } #line 26 "gfileinfo.override" #ifndef G_TYPE_FILE_ATTRIBUTE_MATCHER #define G_TYPE_FILE_ATTRIBUTE_MATCHER (_g_file_attribute_matcher_get_type ()) static GType _g_file_attribute_matcher_get_type (void) { static GType our_type = 0; if (our_type == 0) our_type = g_boxed_type_register_static ("GFileAttributeMatcher", (GBoxedCopyFunc)g_file_attribute_matcher_ref, (GBoxedFreeFunc)g_file_attribute_matcher_unref); return our_type; } #endif #line 24 "ginputstream.override" #define BUFSIZE 8192 #line 400 "gio.c" /* ---------- types from other modules ---------- */ static PyTypeObject *_PyGObject_Type; #define PyGObject_Type (*_PyGObject_Type) /* ---------- forward type declarations ---------- */ PyTypeObject G_GNUC_INTERNAL PyGFileAttributeMatcher_Type; PyTypeObject G_GNUC_INTERNAL PyGAppLaunchContext_Type; PyTypeObject G_GNUC_INTERNAL PyGCancellable_Type; PyTypeObject G_GNUC_INTERNAL PyGEmblem_Type; PyTypeObject G_GNUC_INTERNAL PyGEmblemedIcon_Type; PyTypeObject G_GNUC_INTERNAL PyGFileEnumerator_Type; PyTypeObject G_GNUC_INTERNAL PyGFileInfo_Type; PyTypeObject G_GNUC_INTERNAL PyGFileMonitor_Type; PyTypeObject G_GNUC_INTERNAL PyGInputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGFileInputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGFilterInputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGBufferedInputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGDataInputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGMemoryInputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGMountOperation_Type; PyTypeObject G_GNUC_INTERNAL PyGOutputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGMemoryOutputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGFilterOutputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGBufferedOutputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGDataOutputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGFileOutputStream_Type; PyTypeObject G_GNUC_INTERNAL PyGSimpleAsyncResult_Type; PyTypeObject G_GNUC_INTERNAL PyGVfs_Type; PyTypeObject G_GNUC_INTERNAL PyGVolumeMonitor_Type; PyTypeObject G_GNUC_INTERNAL PyGNativeVolumeMonitor_Type; PyTypeObject G_GNUC_INTERNAL PyGFileIcon_Type; PyTypeObject G_GNUC_INTERNAL PyGThemedIcon_Type; PyTypeObject G_GNUC_INTERNAL PyGAppInfo_Type; PyTypeObject G_GNUC_INTERNAL PyGAsyncResult_Type; PyTypeObject G_GNUC_INTERNAL PyGDrive_Type; PyTypeObject G_GNUC_INTERNAL PyGFile_Type; PyTypeObject G_GNUC_INTERNAL PyGIcon_Type; PyTypeObject G_GNUC_INTERNAL PyGLoadableIcon_Type; PyTypeObject G_GNUC_INTERNAL PyGMount_Type; PyTypeObject G_GNUC_INTERNAL PyGSeekable_Type; PyTypeObject G_GNUC_INTERNAL PyGVolume_Type; #line 446 "gio.c" /* ----------- GFileAttributeMatcher ----------- */ static int _wrap_g_file_attribute_matcher_new(PyGBoxed *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", NULL }; char *attributes; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileAttributeMatcher.__init__", kwlist, &attributes)) return -1; self->gtype = G_TYPE_FILE_ATTRIBUTE_MATCHER; self->free_on_dealloc = FALSE; self->boxed = g_file_attribute_matcher_new(attributes); if (!self->boxed) { PyErr_SetString(PyExc_RuntimeError, "could not create GFileAttributeMatcher object"); return -1; } self->free_on_dealloc = TRUE; return 0; } static PyObject * _wrap_g_file_attribute_matcher_matches(PyObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileAttributeMatcher.matches", kwlist, &attribute)) return NULL; ret = g_file_attribute_matcher_matches(pyg_boxed_get(self, GFileAttributeMatcher), attribute); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_attribute_matcher_matches_only(PyObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileAttributeMatcher.matches_only", kwlist, &attribute)) return NULL; ret = g_file_attribute_matcher_matches_only(pyg_boxed_get(self, GFileAttributeMatcher), attribute); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_attribute_matcher_enumerate_namespace(PyObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "ns", NULL }; char *ns; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileAttributeMatcher.enumerate_namespace", kwlist, &ns)) return NULL; ret = g_file_attribute_matcher_enumerate_namespace(pyg_boxed_get(self, GFileAttributeMatcher), ns); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_attribute_matcher_enumerate_next(PyObject *self) { const gchar *ret; ret = g_file_attribute_matcher_enumerate_next(pyg_boxed_get(self, GFileAttributeMatcher)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGFileAttributeMatcher_methods[] = { { "matches", (PyCFunction)_wrap_g_file_attribute_matcher_matches, METH_VARARGS|METH_KEYWORDS, NULL }, { "matches_only", (PyCFunction)_wrap_g_file_attribute_matcher_matches_only, METH_VARARGS|METH_KEYWORDS, NULL }, { "enumerate_namespace", (PyCFunction)_wrap_g_file_attribute_matcher_enumerate_namespace, METH_VARARGS|METH_KEYWORDS, NULL }, { "enumerate_next", (PyCFunction)_wrap_g_file_attribute_matcher_enumerate_next, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGFileAttributeMatcher_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FileAttributeMatcher", /* tp_name */ sizeof(PyGBoxed), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ 0, /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGFileAttributeMatcher_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ 0, /* tp_dictoffset */ (initproc)_wrap_g_file_attribute_matcher_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GAppLaunchContext ----------- */ static int _wrap_g_app_launch_context_new(PyGObject *self, PyObject *args, PyObject *kwargs) { static char* kwlist[] = { NULL }; if (!PyArg_ParseTupleAndKeywords(args, kwargs, ":gio.AppLaunchContext.__init__", kwlist)) return -1; pygobject_constructv(self, 0, NULL); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.AppLaunchContext object"); return -1; } return 0; } #line 25 "gapplaunchcontext.override" static PyObject * _wrap_g_app_launch_context_get_display(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "info", "files", NULL }; GList *file_list = NULL; PyGObject *py_info; PyObject *pyfile_list; gchar *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O:gio.AppLaunchContext.get_display", kwlist, &PyGAppInfo_Type, &py_info, &pyfile_list)) return NULL; if (!PySequence_Check (pyfile_list)) { PyErr_Format (PyExc_TypeError, "argument must be a list or tuple of GFile objects"); return NULL; } file_list = pygio_pylist_to_gfile_glist(pyfile_list); ret = g_app_launch_context_get_display(G_APP_LAUNCH_CONTEXT(self->obj), G_APP_INFO(py_info->obj), file_list); g_list_free(file_list); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } #line 652 "gio.c" #line 63 "gapplaunchcontext.override" static PyObject * _wrap_g_app_launch_context_get_startup_notify_id(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "info", "files", NULL }; GList *file_list = NULL; PyGObject *py_info; PyObject *pyfile_list; gchar *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O:gio.AppLaunchContext.get_startup_notify_id", kwlist, &PyGAppInfo_Type, &py_info, &pyfile_list)) return NULL; if (!PySequence_Check (pyfile_list)) { PyErr_Format (PyExc_TypeError, "argument must be a list or tuple of GFile objects"); return NULL; } file_list = pygio_pylist_to_gfile_glist(pyfile_list); ret = g_app_launch_context_get_startup_notify_id( G_APP_LAUNCH_CONTEXT(self->obj), G_APP_INFO(py_info->obj), file_list); g_list_free(file_list); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } #line 693 "gio.c" static PyObject * _wrap_g_app_launch_context_launch_failed(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "startup_notify_id", NULL }; char *startup_notify_id; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.AppLaunchContext.launch_failed", kwlist, &startup_notify_id)) return NULL; g_app_launch_context_launch_failed(G_APP_LAUNCH_CONTEXT(self->obj), startup_notify_id); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGAppLaunchContext_methods[] = { { "get_display", (PyCFunction)_wrap_g_app_launch_context_get_display, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_startup_notify_id", (PyCFunction)_wrap_g_app_launch_context_get_startup_notify_id, METH_VARARGS|METH_KEYWORDS, NULL }, { "launch_failed", (PyCFunction)_wrap_g_app_launch_context_launch_failed, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGAppLaunchContext_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.AppLaunchContext", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGAppLaunchContext_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_app_launch_context_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GCancellable ----------- */ static int _wrap_g_cancellable_new(PyGObject *self, PyObject *args, PyObject *kwargs) { static char* kwlist[] = { NULL }; if (!PyArg_ParseTupleAndKeywords(args, kwargs, ":gio.Cancellable.__init__", kwlist)) return -1; pygobject_constructv(self, 0, NULL); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.Cancellable object"); return -1; } return 0; } static PyObject * _wrap_g_cancellable_is_cancelled(PyGObject *self) { int ret; ret = g_cancellable_is_cancelled(G_CANCELLABLE(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_cancellable_set_error_if_cancelled(PyGObject *self) { int ret; GError *error = NULL; ret = g_cancellable_set_error_if_cancelled(G_CANCELLABLE(self->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_cancellable_get_fd(PyGObject *self) { int ret; ret = g_cancellable_get_fd(G_CANCELLABLE(self->obj)); return PyInt_FromLong(ret); } static PyObject * _wrap_g_cancellable_push_current(PyGObject *self) { g_cancellable_push_current(G_CANCELLABLE(self->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_cancellable_pop_current(PyGObject *self) { g_cancellable_pop_current(G_CANCELLABLE(self->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_cancellable_reset(PyGObject *self) { g_cancellable_reset(G_CANCELLABLE(self->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_cancellable_cancel(PyGObject *self) { g_cancellable_cancel(G_CANCELLABLE(self->obj)); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGCancellable_methods[] = { { "is_cancelled", (PyCFunction)_wrap_g_cancellable_is_cancelled, METH_NOARGS, NULL }, { "set_error_if_cancelled", (PyCFunction)_wrap_g_cancellable_set_error_if_cancelled, METH_NOARGS, NULL }, { "get_fd", (PyCFunction)_wrap_g_cancellable_get_fd, METH_NOARGS, NULL }, { "push_current", (PyCFunction)_wrap_g_cancellable_push_current, METH_NOARGS, NULL }, { "pop_current", (PyCFunction)_wrap_g_cancellable_pop_current, METH_NOARGS, NULL }, { "reset", (PyCFunction)_wrap_g_cancellable_reset, METH_NOARGS, NULL }, { "cancel", (PyCFunction)_wrap_g_cancellable_cancel, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGCancellable_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.Cancellable", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGCancellable_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_cancellable_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GEmblem ----------- */ static int _wrap_g_emblem_new(PyGObject *self, PyObject *args, PyObject *kwargs) { GType obj_type = pyg_type_from_object((PyObject *) self); GParameter params[2]; PyObject *parsed_args[2] = {NULL, }; char *arg_names[] = {"icon", "origin", NULL }; char *prop_names[] = {"icon", "origin", NULL }; guint nparams, i; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|O:gio.Emblem.__init__" , arg_names , &parsed_args[0] , &parsed_args[1])) return -1; memset(params, 0, sizeof(GParameter)*2); if (!pyg_parse_constructor_args(obj_type, arg_names, prop_names, params, &nparams, parsed_args)) return -1; pygobject_constructv(self, nparams, params); for (i = 0; i < nparams; ++i) g_value_unset(¶ms[i].value); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.Emblem object"); return -1; } return 0; } static PyObject * _wrap_g_emblem_get_icon(PyGObject *self) { GIcon *ret; ret = g_emblem_get_icon(G_EMBLEM(self->obj)); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static PyObject * _wrap_g_emblem_get_origin(PyGObject *self) { gint ret; ret = g_emblem_get_origin(G_EMBLEM(self->obj)); return pyg_enum_from_gtype(G_TYPE_EMBLEM_ORIGIN, ret); } static const PyMethodDef _PyGEmblem_methods[] = { { "get_icon", (PyCFunction)_wrap_g_emblem_get_icon, METH_NOARGS, NULL }, { "get_origin", (PyCFunction)_wrap_g_emblem_get_origin, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGEmblem_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.Emblem", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGEmblem_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_emblem_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GEmblemedIcon ----------- */ static int _wrap_g_emblemed_icon_new(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "icon", "emblem", NULL }; PyGObject *icon, *emblem; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!O!:gio.EmblemedIcon.__init__", kwlist, &PyGIcon_Type, &icon, &PyGEmblem_Type, &emblem)) return -1; self->obj = (GObject *)g_emblemed_icon_new(G_ICON(icon->obj), G_EMBLEM(emblem->obj)); if (!self->obj) { PyErr_SetString(PyExc_RuntimeError, "could not create GEmblemedIcon object"); return -1; } pygobject_register_wrapper((PyObject *)self); return 0; } static PyObject * _wrap_g_emblemed_icon_get_icon(PyGObject *self) { GIcon *ret; ret = g_emblemed_icon_get_icon(G_EMBLEMED_ICON(self->obj)); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static PyObject * _wrap_g_emblemed_icon_add_emblem(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "emblem", NULL }; PyGObject *emblem; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.EmblemedIcon.add_emblem", kwlist, &PyGEmblem_Type, &emblem)) return NULL; g_emblemed_icon_add_emblem(G_EMBLEMED_ICON(self->obj), G_EMBLEM(emblem->obj)); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGEmblemedIcon_methods[] = { { "get_icon", (PyCFunction)_wrap_g_emblemed_icon_get_icon, METH_NOARGS, NULL }, { "add_emblem", (PyCFunction)_wrap_g_emblemed_icon_add_emblem, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGEmblemedIcon_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.EmblemedIcon", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGEmblemedIcon_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_emblemed_icon_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GFileEnumerator ----------- */ static PyObject * _wrap_g_file_enumerator_next_file(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; PyObject *py_ret; GCancellable *cancellable = NULL; GFileInfo *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.FileEnumerator.next_file", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_enumerator_next_file(G_FILE_ENUMERATOR(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_enumerator_close(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.FileEnumerator.close", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_enumerator_close(G_FILE_ENUMERATOR(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 59 "gfileenumerator.override" static PyObject * _wrap_g_file_enumerator_next_files_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "num_files", "callback", "io_priority", "cancellable", "user_data", NULL }; PyGIONotify *notify; int num_files; int io_priority = G_PRIORITY_DEFAULT; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iO|iOO:gio.FileEnumerator.enumerate_next_files_async", kwlist, &num_files, ¬ify->callback, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_enumerator_next_files_async(G_FILE_ENUMERATOR(self->obj), num_files, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 1252 "gio.c" #line 106 "gfileenumerator.override" static PyObject * _wrap_g_file_enumerator_next_files_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GList *next_files, *l; GError *error = NULL; PyObject *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:gio.FileEnumerator.next_files_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; next_files = g_file_enumerator_next_files_finish(G_FILE_ENUMERATOR(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; ret = PyList_New(0); for (l = next_files; l; l = l->next) { GFileInfo *file_info = l->data; PyObject *item = pygobject_new((GObject *)file_info); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(file_info); } g_list_free(next_files); return ret; } #line 1289 "gio.c" #line 141 "gfileenumerator.override" static PyObject * _wrap_g_file_enumerator_close_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:gio.FileEnumerator.close_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_enumerator_close_async(G_FILE_ENUMERATOR(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 1337 "gio.c" static PyObject * _wrap_g_file_enumerator_close_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.FileEnumerator.close_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_file_enumerator_close_finish(G_FILE_ENUMERATOR(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_enumerator_is_closed(PyGObject *self) { int ret; ret = g_file_enumerator_is_closed(G_FILE_ENUMERATOR(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_enumerator_has_pending(PyGObject *self) { int ret; ret = g_file_enumerator_has_pending(G_FILE_ENUMERATOR(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_enumerator_set_pending(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "pending", NULL }; int pending; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.FileEnumerator.set_pending", kwlist, &pending)) return NULL; g_file_enumerator_set_pending(G_FILE_ENUMERATOR(self->obj), pending); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_enumerator_get_container(PyGObject *self) { GFile *ret; ret = g_file_enumerator_get_container(G_FILE_ENUMERATOR(self->obj)); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static const PyMethodDef _PyGFileEnumerator_methods[] = { { "next_file", (PyCFunction)_wrap_g_file_enumerator_next_file, METH_VARARGS|METH_KEYWORDS, NULL }, { "close", (PyCFunction)_wrap_g_file_enumerator_close, METH_VARARGS|METH_KEYWORDS, NULL }, { "next_files_async", (PyCFunction)_wrap_g_file_enumerator_next_files_async, METH_VARARGS|METH_KEYWORDS, (char *) "FE.next_files_async(num_files, callback, [io_priority, cancellable,\n" " user_data])\n" "Request information for a number of files from the enumerator\n" "asynchronously. When all i/o for the operation is finished the callback\n" "will be called with the requested information.\n" "\n" "The callback can be called with less than num_files files in case of error\n" "or at the end of the enumerator. In case of a partial error the callback\n" "will be called with any succeeding items and no error, and on the next\n" "request the error will be reported. If a request is cancelled the callback\n" "will be called with gio.ERROR_CANCELLED.\n" "\n" "During an async request no other sync and async calls are allowed, and will\n" "result in gio.ERROR_PENDING errors.\n" "\n" "Any outstanding i/o request with higher priority (lower numerical value)\n" "will be executed before an outstanding request with lower priority.\n" "Default priority is gobject.PRIORITY_DEFAULT." }, { "next_files_finish", (PyCFunction)_wrap_g_file_enumerator_next_files_finish, METH_VARARGS|METH_KEYWORDS, (char *) "FE.next_files_finish(result) -> a list of gio.FileInfos\n" "Finishes the asynchronous operation started with\n" "gio.FileEnumerator.next_files_async()." }, { "close_async", (PyCFunction)_wrap_g_file_enumerator_close_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "close_finish", (PyCFunction)_wrap_g_file_enumerator_close_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "is_closed", (PyCFunction)_wrap_g_file_enumerator_is_closed, METH_NOARGS, NULL }, { "has_pending", (PyCFunction)_wrap_g_file_enumerator_has_pending, METH_NOARGS, NULL }, { "set_pending", (PyCFunction)_wrap_g_file_enumerator_set_pending, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_container", (PyCFunction)_wrap_g_file_enumerator_get_container, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; #line 24 "gfileenumerator.override" static PyObject* _wrap_g_file_enumerator_tp_iter(PyGObject *self) { Py_INCREF (self); return (PyObject *) self; } #line 1460 "gio.c" #line 32 "gfileenumerator.override" static PyObject* _wrap_g_file_enumerator_tp_iternext(PyGObject *iter) { GFileInfo *file_info; GError *error = NULL; if (!iter->obj) { PyErr_SetNone(PyExc_StopIteration); return NULL; } file_info = g_file_enumerator_next_file(G_FILE_ENUMERATOR(iter->obj), NULL, &error); if (pyg_error_check(&error)) { return NULL; } if (!file_info) { PyErr_SetNone(PyExc_StopIteration); return NULL; } return pygobject_new((GObject*)file_info); } #line 1489 "gio.c" PyTypeObject G_GNUC_INTERNAL PyGFileEnumerator_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FileEnumerator", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)_wrap_g_file_enumerator_tp_iter, /* tp_iter */ (iternextfunc)_wrap_g_file_enumerator_tp_iternext, /* tp_iternext */ (struct PyMethodDef*)_PyGFileEnumerator_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GFileInfo ----------- */ static int _wrap_g_file_info_new(PyGObject *self, PyObject *args, PyObject *kwargs) { static char* kwlist[] = { NULL }; if (!PyArg_ParseTupleAndKeywords(args, kwargs, ":gio.FileInfo.__init__", kwlist)) return -1; pygobject_constructv(self, 0, NULL); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.FileInfo object"); return -1; } return 0; } static PyObject * _wrap_g_file_info_dup(PyGObject *self) { PyObject *py_ret; GFileInfo *ret; ret = g_file_info_dup(G_FILE_INFO(self->obj)); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_info_copy_into(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "dest_info", NULL }; PyGObject *dest_info; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.FileInfo.copy_into", kwlist, &PyGFileInfo_Type, &dest_info)) return NULL; g_file_info_copy_into(G_FILE_INFO(self->obj), G_FILE_INFO(dest_info->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_has_attribute(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.has_attribute", kwlist, &attribute)) return NULL; ret = g_file_info_has_attribute(G_FILE_INFO(self->obj), attribute); return PyBool_FromLong(ret); } #line 45 "gfileinfo.override" static PyObject * _wrap_g_file_info_list_attributes(PyGObject *self, PyObject *args, PyObject *kwargs) { char *kwlist[] = { "name_space", NULL}; gchar *name_space = NULL; gchar **names; gchar **n; PyObject *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|z:gio.FileInfo.list_attributes", kwlist, &name_space)) return NULL; names = g_file_info_list_attributes(G_FILE_INFO(self->obj), name_space); ret = PyList_New(0); n = names; while (n && *n) { PyObject *item = PyString_FromString(n[0]); PyList_Append(ret, item); Py_DECREF(item); n++; } g_strfreev(names); return ret; } #line 1640 "gio.c" static PyObject * _wrap_g_file_info_get_attribute_type(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; gint ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_type", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_type(G_FILE_INFO(self->obj), attribute); return pyg_enum_from_gtype(G_TYPE_FILE_ATTRIBUTE_TYPE, ret); } static PyObject * _wrap_g_file_info_remove_attribute(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.remove_attribute", kwlist, &attribute)) return NULL; g_file_info_remove_attribute(G_FILE_INFO(self->obj), attribute); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_attribute_status(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; gint ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_status", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_status(G_FILE_INFO(self->obj), attribute); return pyg_enum_from_gtype(G_TYPE_FILE_ATTRIBUTE_STATUS, ret); } static PyObject * _wrap_g_file_info_get_attribute_as_string(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; gchar *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_as_string", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_as_string(G_FILE_INFO(self->obj), attribute); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_attribute_string(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; const gchar *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_string", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_string(G_FILE_INFO(self->obj), attribute); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_attribute_byte_string(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; const gchar *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_byte_string", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_byte_string(G_FILE_INFO(self->obj), attribute); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_attribute_boolean(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_boolean", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_boolean(G_FILE_INFO(self->obj), attribute); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_info_get_attribute_uint32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; guint32 ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_uint32", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_uint32(G_FILE_INFO(self->obj), attribute); return PyLong_FromUnsignedLong(ret); } static PyObject * _wrap_g_file_info_get_attribute_int32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_int32", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_int32(G_FILE_INFO(self->obj), attribute); return PyInt_FromLong(ret); } static PyObject * _wrap_g_file_info_get_attribute_uint64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; guint64 ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_uint64", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_uint64(G_FILE_INFO(self->obj), attribute); return PyLong_FromUnsignedLongLong(ret); } static PyObject * _wrap_g_file_info_get_attribute_int64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; gint64 ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_int64", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_int64(G_FILE_INFO(self->obj), attribute); return PyLong_FromLongLong(ret); } static PyObject * _wrap_g_file_info_get_attribute_object(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", NULL }; char *attribute; GObject *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.get_attribute_object", kwlist, &attribute)) return NULL; ret = g_file_info_get_attribute_object(G_FILE_INFO(self->obj), attribute); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static PyObject * _wrap_g_file_info_set_attribute_string(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "attr_value", NULL }; char *attribute, *attr_value; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"ss:gio.FileInfo.set_attribute_string", kwlist, &attribute, &attr_value)) return NULL; g_file_info_set_attribute_string(G_FILE_INFO(self->obj), attribute, attr_value); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_attribute_byte_string(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "attr_value", NULL }; char *attribute, *attr_value; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"ss:gio.FileInfo.set_attribute_byte_string", kwlist, &attribute, &attr_value)) return NULL; g_file_info_set_attribute_byte_string(G_FILE_INFO(self->obj), attribute, attr_value); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_attribute_boolean(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "attr_value", NULL }; char *attribute; int attr_value; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"si:gio.FileInfo.set_attribute_boolean", kwlist, &attribute, &attr_value)) return NULL; g_file_info_set_attribute_boolean(G_FILE_INFO(self->obj), attribute, attr_value); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_attribute_uint32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "attr_value", NULL }; char *attribute; unsigned long attr_value; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sk:gio.FileInfo.set_attribute_uint32", kwlist, &attribute, &attr_value)) return NULL; g_file_info_set_attribute_uint32(G_FILE_INFO(self->obj), attribute, attr_value); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_attribute_int32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "attr_value", NULL }; char *attribute; int attr_value; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"si:gio.FileInfo.set_attribute_int32", kwlist, &attribute, &attr_value)) return NULL; g_file_info_set_attribute_int32(G_FILE_INFO(self->obj), attribute, attr_value); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_attribute_uint64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "attr_value", NULL }; char *attribute; PyObject *py_attr_value = NULL; guint64 attr_value; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sO!:gio.FileInfo.set_attribute_uint64", kwlist, &attribute, &PyLong_Type, &py_attr_value)) return NULL; attr_value = PyLong_AsUnsignedLongLong(py_attr_value); g_file_info_set_attribute_uint64(G_FILE_INFO(self->obj), attribute, attr_value); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_attribute_int64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "attr_value", NULL }; char *attribute; gint64 attr_value; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sL:gio.FileInfo.set_attribute_int64", kwlist, &attribute, &attr_value)) return NULL; g_file_info_set_attribute_int64(G_FILE_INFO(self->obj), attribute, attr_value); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_attribute_object(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "attr_value", NULL }; char *attribute; PyGObject *attr_value; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sO!:gio.FileInfo.set_attribute_object", kwlist, &attribute, &PyGObject_Type, &attr_value)) return NULL; g_file_info_set_attribute_object(G_FILE_INFO(self->obj), attribute, G_OBJECT(attr_value->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_clear_status(PyGObject *self) { g_file_info_clear_status(G_FILE_INFO(self->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_file_type(PyGObject *self) { gint ret; ret = g_file_info_get_file_type(G_FILE_INFO(self->obj)); return pyg_enum_from_gtype(G_TYPE_FILE_TYPE, ret); } static PyObject * _wrap_g_file_info_get_is_hidden(PyGObject *self) { int ret; ret = g_file_info_get_is_hidden(G_FILE_INFO(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_info_get_is_backup(PyGObject *self) { int ret; ret = g_file_info_get_is_backup(G_FILE_INFO(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_info_get_is_symlink(PyGObject *self) { int ret; ret = g_file_info_get_is_symlink(G_FILE_INFO(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_info_get_name(PyGObject *self) { const gchar *ret; ret = g_file_info_get_name(G_FILE_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_display_name(PyGObject *self) { const gchar *ret; ret = g_file_info_get_display_name(G_FILE_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_edit_name(PyGObject *self) { const gchar *ret; ret = g_file_info_get_edit_name(G_FILE_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_icon(PyGObject *self) { GIcon *ret; ret = g_file_info_get_icon(G_FILE_INFO(self->obj)); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static PyObject * _wrap_g_file_info_get_content_type(PyGObject *self) { const gchar *ret; ret = g_file_info_get_content_type(G_FILE_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_size(PyGObject *self) { gint64 ret; ret = g_file_info_get_size(G_FILE_INFO(self->obj)); return PyLong_FromLongLong(ret); } #line 79 "gfileinfo.override" static PyObject * _wrap_g_file_info_get_modification_time(PyGObject *self, PyObject *unused) { GTimeVal timeval; g_file_info_get_modification_time(G_FILE_INFO(self->obj), &timeval); return pyglib_float_from_timeval(timeval); } /* GFileInfo.get_attribute_data: No ArgType for GFileAttributeType* */ /* GFileInfo.set_attribute: No ArgType for gpointer */ /* GFileInfo.set_modification_time: No ArgType for GTimeVal* */ #line 2115 "gio.c" static PyObject * _wrap_g_file_info_get_symlink_target(PyGObject *self) { const gchar *ret; ret = g_file_info_get_symlink_target(G_FILE_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_etag(PyGObject *self) { const gchar *ret; ret = g_file_info_get_etag(G_FILE_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_get_sort_order(PyGObject *self) { int ret; ret = g_file_info_get_sort_order(G_FILE_INFO(self->obj)); return PyInt_FromLong(ret); } static PyObject * _wrap_g_file_info_set_attribute_mask(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "mask", NULL }; PyObject *py_mask; GFileAttributeMatcher *mask = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O:gio.FileInfo.set_attribute_mask", kwlist, &py_mask)) return NULL; if (pyg_boxed_check(py_mask, G_TYPE_FILE_ATTRIBUTE_MATCHER)) mask = pyg_boxed_get(py_mask, GFileAttributeMatcher); else { PyErr_SetString(PyExc_TypeError, "mask should be a GFileAttributeMatcher"); return NULL; } g_file_info_set_attribute_mask(G_FILE_INFO(self->obj), mask); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_unset_attribute_mask(PyGObject *self) { g_file_info_unset_attribute_mask(G_FILE_INFO(self->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_file_type(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "type", NULL }; GFileType type; PyObject *py_type = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O:gio.FileInfo.set_file_type", kwlist, &py_type)) return NULL; if (pyg_enum_get_value(G_TYPE_FILE_TYPE, py_type, (gpointer)&type)) return NULL; g_file_info_set_file_type(G_FILE_INFO(self->obj), type); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_is_hidden(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "is_hidden", NULL }; int is_hidden; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.FileInfo.set_is_hidden", kwlist, &is_hidden)) return NULL; g_file_info_set_is_hidden(G_FILE_INFO(self->obj), is_hidden); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_is_symlink(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "is_symlink", NULL }; int is_symlink; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.FileInfo.set_is_symlink", kwlist, &is_symlink)) return NULL; g_file_info_set_is_symlink(G_FILE_INFO(self->obj), is_symlink); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_name(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "name", NULL }; char *name; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.set_name", kwlist, &name)) return NULL; g_file_info_set_name(G_FILE_INFO(self->obj), name); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_display_name(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "display_name", NULL }; char *display_name; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.set_display_name", kwlist, &display_name)) return NULL; g_file_info_set_display_name(G_FILE_INFO(self->obj), display_name); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_edit_name(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "edit_name", NULL }; char *edit_name; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.set_edit_name", kwlist, &edit_name)) return NULL; g_file_info_set_edit_name(G_FILE_INFO(self->obj), edit_name); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_icon(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "icon", NULL }; PyGObject *icon; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.FileInfo.set_icon", kwlist, &PyGIcon_Type, &icon)) return NULL; g_file_info_set_icon(G_FILE_INFO(self->obj), G_ICON(icon->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_content_type(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "content_type", NULL }; char *content_type; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.set_content_type", kwlist, &content_type)) return NULL; g_file_info_set_content_type(G_FILE_INFO(self->obj), content_type); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_size(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "size", NULL }; gint64 size; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"L:gio.FileInfo.set_size", kwlist, &size)) return NULL; g_file_info_set_size(G_FILE_INFO(self->obj), size); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_symlink_target(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "symlink_target", NULL }; char *symlink_target; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.FileInfo.set_symlink_target", kwlist, &symlink_target)) return NULL; g_file_info_set_symlink_target(G_FILE_INFO(self->obj), symlink_target); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_info_set_sort_order(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "sort_order", NULL }; int sort_order; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.FileInfo.set_sort_order", kwlist, &sort_order)) return NULL; g_file_info_set_sort_order(G_FILE_INFO(self->obj), sort_order); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGFileInfo_methods[] = { { "dup", (PyCFunction)_wrap_g_file_info_dup, METH_NOARGS, NULL }, { "copy_into", (PyCFunction)_wrap_g_file_info_copy_into, METH_VARARGS|METH_KEYWORDS, NULL }, { "has_attribute", (PyCFunction)_wrap_g_file_info_has_attribute, METH_VARARGS|METH_KEYWORDS, NULL }, { "list_attributes", (PyCFunction)_wrap_g_file_info_list_attributes, METH_VARARGS|METH_KEYWORDS, (char *) "INFO.list_attributes(name_space) -> Attribute list\n\n" "Lists the file info structure's attributes." }, { "get_attribute_type", (PyCFunction)_wrap_g_file_info_get_attribute_type, METH_VARARGS|METH_KEYWORDS, NULL }, { "remove_attribute", (PyCFunction)_wrap_g_file_info_remove_attribute, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_status", (PyCFunction)_wrap_g_file_info_get_attribute_status, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_as_string", (PyCFunction)_wrap_g_file_info_get_attribute_as_string, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_string", (PyCFunction)_wrap_g_file_info_get_attribute_string, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_byte_string", (PyCFunction)_wrap_g_file_info_get_attribute_byte_string, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_boolean", (PyCFunction)_wrap_g_file_info_get_attribute_boolean, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_uint32", (PyCFunction)_wrap_g_file_info_get_attribute_uint32, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_int32", (PyCFunction)_wrap_g_file_info_get_attribute_int32, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_uint64", (PyCFunction)_wrap_g_file_info_get_attribute_uint64, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_int64", (PyCFunction)_wrap_g_file_info_get_attribute_int64, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_attribute_object", (PyCFunction)_wrap_g_file_info_get_attribute_object, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_attribute_string", (PyCFunction)_wrap_g_file_info_set_attribute_string, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_attribute_byte_string", (PyCFunction)_wrap_g_file_info_set_attribute_byte_string, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_attribute_boolean", (PyCFunction)_wrap_g_file_info_set_attribute_boolean, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_attribute_uint32", (PyCFunction)_wrap_g_file_info_set_attribute_uint32, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_attribute_int32", (PyCFunction)_wrap_g_file_info_set_attribute_int32, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_attribute_uint64", (PyCFunction)_wrap_g_file_info_set_attribute_uint64, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_attribute_int64", (PyCFunction)_wrap_g_file_info_set_attribute_int64, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_attribute_object", (PyCFunction)_wrap_g_file_info_set_attribute_object, METH_VARARGS|METH_KEYWORDS, NULL }, { "clear_status", (PyCFunction)_wrap_g_file_info_clear_status, METH_NOARGS, NULL }, { "get_file_type", (PyCFunction)_wrap_g_file_info_get_file_type, METH_NOARGS, NULL }, { "get_is_hidden", (PyCFunction)_wrap_g_file_info_get_is_hidden, METH_NOARGS, NULL }, { "get_is_backup", (PyCFunction)_wrap_g_file_info_get_is_backup, METH_NOARGS, NULL }, { "get_is_symlink", (PyCFunction)_wrap_g_file_info_get_is_symlink, METH_NOARGS, NULL }, { "get_name", (PyCFunction)_wrap_g_file_info_get_name, METH_NOARGS, NULL }, { "get_display_name", (PyCFunction)_wrap_g_file_info_get_display_name, METH_NOARGS, NULL }, { "get_edit_name", (PyCFunction)_wrap_g_file_info_get_edit_name, METH_NOARGS, NULL }, { "get_icon", (PyCFunction)_wrap_g_file_info_get_icon, METH_NOARGS, NULL }, { "get_content_type", (PyCFunction)_wrap_g_file_info_get_content_type, METH_NOARGS, NULL }, { "get_size", (PyCFunction)_wrap_g_file_info_get_size, METH_NOARGS, NULL }, { "get_modification_time", (PyCFunction)_wrap_g_file_info_get_modification_time, METH_NOARGS, (char *) "INFO.get_modification_time() -> modification time\n" "Returns the modification time, in UNIX time format\n" }, { "get_symlink_target", (PyCFunction)_wrap_g_file_info_get_symlink_target, METH_NOARGS, NULL }, { "get_etag", (PyCFunction)_wrap_g_file_info_get_etag, METH_NOARGS, NULL }, { "get_sort_order", (PyCFunction)_wrap_g_file_info_get_sort_order, METH_NOARGS, NULL }, { "set_attribute_mask", (PyCFunction)_wrap_g_file_info_set_attribute_mask, METH_VARARGS|METH_KEYWORDS, NULL }, { "unset_attribute_mask", (PyCFunction)_wrap_g_file_info_unset_attribute_mask, METH_NOARGS, NULL }, { "set_file_type", (PyCFunction)_wrap_g_file_info_set_file_type, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_is_hidden", (PyCFunction)_wrap_g_file_info_set_is_hidden, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_is_symlink", (PyCFunction)_wrap_g_file_info_set_is_symlink, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_name", (PyCFunction)_wrap_g_file_info_set_name, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_display_name", (PyCFunction)_wrap_g_file_info_set_display_name, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_edit_name", (PyCFunction)_wrap_g_file_info_set_edit_name, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_icon", (PyCFunction)_wrap_g_file_info_set_icon, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_content_type", (PyCFunction)_wrap_g_file_info_set_content_type, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_size", (PyCFunction)_wrap_g_file_info_set_size, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_symlink_target", (PyCFunction)_wrap_g_file_info_set_symlink_target, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_sort_order", (PyCFunction)_wrap_g_file_info_set_sort_order, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGFileInfo_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FileInfo", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGFileInfo_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_file_info_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GFileMonitor ----------- */ static PyObject * _wrap_g_file_monitor_cancel(PyGObject *self) { int ret; ret = g_file_monitor_cancel(G_FILE_MONITOR(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_monitor_is_cancelled(PyGObject *self) { int ret; ret = g_file_monitor_is_cancelled(G_FILE_MONITOR(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_monitor_set_rate_limit(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "limit_msecs", NULL }; int limit_msecs; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.FileMonitor.set_rate_limit", kwlist, &limit_msecs)) return NULL; g_file_monitor_set_rate_limit(G_FILE_MONITOR(self->obj), limit_msecs); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_monitor_emit_event(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "file", "other_file", "event_type", NULL }; PyGObject *file, *other_file; PyObject *py_event_type = NULL; GFileMonitorEvent event_type; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!O!O:gio.FileMonitor.emit_event", kwlist, &PyGFile_Type, &file, &PyGFile_Type, &other_file, &py_event_type)) return NULL; if (pyg_enum_get_value(G_TYPE_FILE_MONITOR_EVENT, py_event_type, (gpointer)&event_type)) return NULL; g_file_monitor_emit_event(G_FILE_MONITOR(self->obj), G_FILE(file->obj), G_FILE(other_file->obj), event_type); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGFileMonitor_methods[] = { { "cancel", (PyCFunction)_wrap_g_file_monitor_cancel, METH_NOARGS, NULL }, { "is_cancelled", (PyCFunction)_wrap_g_file_monitor_is_cancelled, METH_NOARGS, NULL }, { "set_rate_limit", (PyCFunction)_wrap_g_file_monitor_set_rate_limit, METH_VARARGS|METH_KEYWORDS, NULL }, { "emit_event", (PyCFunction)_wrap_g_file_monitor_emit_event, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGFileMonitor_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FileMonitor", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGFileMonitor_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GInputStream ----------- */ #line 28 "ginputstream.override" static PyObject * _wrap_g_input_stream_read(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "cancellable", NULL }; PyGObject *pycancellable = NULL; PyObject *v; GCancellable *cancellable; long count = -1; GError *error = NULL; size_t bytesread, buffersize, chunksize; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|lO:InputStream.read", kwlist, &count, &pycancellable)) return NULL; buffersize = (count < 0 ? BUFSIZE : count); if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; v = PyString_FromStringAndSize((char *)NULL, buffersize); if (v == NULL) return NULL; bytesread = 0; for (;;) { pyg_begin_allow_threads; errno = 0; chunksize = g_input_stream_read(G_INPUT_STREAM(self->obj), PyString_AS_STRING((PyStringObject *)v) + bytesread, buffersize - bytesread, cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) { Py_DECREF(v); return NULL; } if (chunksize == 0) { /* End of file. */ break; } bytesread += chunksize; if (bytesread < buffersize) { /* g_input_stream_read() decided to not read full buffer. We * then return early too, even if 'count' is less than 0. */ break; } if (count < 0) { buffersize += BUFSIZE; if (_PyString_Resize(&v, buffersize) < 0) return NULL; } else { /* Got what was requested. */ break; } } if (bytesread != buffersize) _PyString_Resize(&v, bytesread); return v; } #line 2706 "gio.c" #line 100 "ginputstream.override" static PyObject * _wrap_g_input_stream_read_all(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "cancellable", NULL }; PyGObject *pycancellable = NULL; PyObject *v; GCancellable *cancellable; long count = -1; GError *error = NULL; size_t bytesread, buffersize, chunksize; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|lO:InputStream.read", kwlist, &count, &pycancellable)) return NULL; buffersize = (count < 0 ? BUFSIZE : count); if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; v = PyString_FromStringAndSize((char *)NULL, buffersize); if (v == NULL) return NULL; bytesread = 0; for (;;) { pyg_begin_allow_threads; errno = 0; g_input_stream_read_all(G_INPUT_STREAM(self->obj), PyString_AS_STRING((PyStringObject *)v) + bytesread, buffersize - bytesread, &chunksize, cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) { Py_DECREF(v); return NULL; } bytesread += chunksize; if (bytesread < buffersize || chunksize == 0) { /* End of file. */ break; } if (count < 0) { buffersize += BUFSIZE; if (_PyString_Resize(&v, buffersize) < 0) return NULL; } else { /* Got what was requested. */ break; } } if (bytesread != buffersize) _PyString_Resize(&v, bytesread); return v; } #line 2775 "gio.c" static PyObject * _wrap_g_input_stream_skip(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "cancellable", NULL }; PyGObject *py_cancellable = NULL; gsize count; GCancellable *cancellable = NULL; GError *error = NULL; gssize ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"k|O:gio.InputStream.skip", kwlist, &count, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_input_stream_skip(G_INPUT_STREAM(self->obj), count, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyLong_FromLongLong(ret); } static PyObject * _wrap_g_input_stream_close(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.InputStream.close", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_input_stream_close(G_INPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 167 "ginputstream.override" static PyObject * _wrap_g_input_stream_read_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "callback", "io_priority", "cancellable", "user_data", NULL }; long count = -1; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "lO|iOO:InputStream.read_async", kwlist, &count, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; if (!pygio_notify_allocate_buffer(notify, count)) goto error; pygio_notify_reference_callback(notify); pygio_notify_attach_to_result(notify); g_input_stream_read_async(G_INPUT_STREAM(self->obj), notify->buffer, notify->buffer_size, io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 2888 "gio.c" #line 221 "ginputstream.override" static PyObject * _wrap_g_input_stream_read_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; Py_ssize_t bytesread; PyGIONotify *notify; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:gio.InputStream.read_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; bytesread = g_input_stream_read_finish(G_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; if (bytesread == 0) return PyString_FromString(""); notify = pygio_notify_get_attached(result); return PyString_FromStringAndSize(notify->buffer, bytesread); } #line 2920 "gio.c" #line 297 "ginputstream.override" static PyObject * _wrap_g_input_stream_skip_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "callback", "io_priority", "cancellable", "user_data", NULL }; long count = -1; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "lO|iOO:InputStream.skip_async", kwlist, &count, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_input_stream_skip_async(G_INPUT_STREAM(self->obj), count, io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 2972 "gio.c" static PyObject * _wrap_g_input_stream_skip_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; gssize ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.InputStream.skip_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_input_stream_skip_finish(G_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyLong_FromLongLong(ret); } #line 251 "ginputstream.override" static PyObject * _wrap_g_input_stream_close_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:InputStream.close_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_input_stream_close_async(G_INPUT_STREAM(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 3039 "gio.c" static PyObject * _wrap_g_input_stream_close_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.InputStream.close_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_input_stream_close_finish(G_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_input_stream_is_closed(PyGObject *self) { int ret; ret = g_input_stream_is_closed(G_INPUT_STREAM(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_input_stream_has_pending(PyGObject *self) { int ret; ret = g_input_stream_has_pending(G_INPUT_STREAM(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_input_stream_set_pending(PyGObject *self) { int ret; GError *error = NULL; ret = g_input_stream_set_pending(G_INPUT_STREAM(self->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_input_stream_clear_pending(PyGObject *self) { g_input_stream_clear_pending(G_INPUT_STREAM(self->obj)); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGInputStream_methods[] = { { "read_part", (PyCFunction)_wrap_g_input_stream_read, METH_VARARGS|METH_KEYWORDS, (char *) "STREAM.read_part([count, [cancellable]]) -> string\n" "\n" "Read 'count' bytes from the stream. If 'count' is not specified or is\n" "omitted, read until the end of the stream. This method is allowed to\n" "stop at any time after reading at least 1 byte from the stream. E.g.\n" "when reading over a (relatively slow) HTTP connection, it will often\n" "stop after receiving one packet. Therefore, to reliably read requested\n" "number of bytes, you need to use a loop. See also gio.InputStream.read\n" "for easier to use (though less efficient) method.\n" "\n" "Note: this method roughly corresponds to C GIO g_input_stream_read." }, { "read", (PyCFunction)_wrap_g_input_stream_read_all, METH_VARARGS|METH_KEYWORDS, (char *) "STREAM.read([count, [cancellable]]) -> string\n" "\n" "Read 'count' bytes from the stream. If 'count' is not specified or is\n" "omitted, read until the end of the stream. This method will stop only\n" "after reading requested number of bytes, reaching end of stream or\n" "triggering an I/O error. See also gio.InputStream.read_part for more\n" "efficient, but more cumbersome to use method.\n" "\n" "Note: this method roughly corresponds to C GIO g_input_stream_read_all.\n" "It was renamed for consistency with Python standard file.read." }, { "skip", (PyCFunction)_wrap_g_input_stream_skip, METH_VARARGS|METH_KEYWORDS, NULL }, { "close", (PyCFunction)_wrap_g_input_stream_close, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_async", (PyCFunction)_wrap_g_input_stream_read_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_finish", (PyCFunction)_wrap_g_input_stream_read_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "skip_async", (PyCFunction)_wrap_g_input_stream_skip_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "skip_finish", (PyCFunction)_wrap_g_input_stream_skip_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "close_async", (PyCFunction)_wrap_g_input_stream_close_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "close_finish", (PyCFunction)_wrap_g_input_stream_close_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "is_closed", (PyCFunction)_wrap_g_input_stream_is_closed, METH_NOARGS, NULL }, { "has_pending", (PyCFunction)_wrap_g_input_stream_has_pending, METH_NOARGS, NULL }, { "set_pending", (PyCFunction)_wrap_g_input_stream_set_pending, METH_NOARGS, NULL }, { "clear_pending", (PyCFunction)_wrap_g_input_stream_clear_pending, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGInputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.InputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGInputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GFileInputStream ----------- */ static PyObject * _wrap_g_file_input_stream_query_info(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "cancellable", NULL }; char *attributes; PyGObject *py_cancellable = NULL; GCancellable *cancellable = NULL; GFileInfo *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s|O:gio.FileInputStream.query_info", kwlist, &attributes, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_input_stream_query_info(G_FILE_INPUT_STREAM(self->obj), attributes, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } #line 25 "gfileinputstream.override" static PyObject * _wrap_g_file_input_stream_query_info_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; int io_priority = G_PRIORITY_DEFAULT; char *attributes; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.FileInputStream.query_info_async", kwlist, &attributes, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_input_stream_query_info_async(G_FILE_INPUT_STREAM(self->obj), attributes, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 3284 "gio.c" static PyObject * _wrap_g_file_input_stream_query_info_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GFileInfo *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.FileInputStream.query_info_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_file_input_stream_query_info_finish(G_FILE_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static const PyMethodDef _PyGFileInputStream_methods[] = { { "query_info", (PyCFunction)_wrap_g_file_input_stream_query_info, METH_VARARGS|METH_KEYWORDS, NULL }, { "query_info_async", (PyCFunction)_wrap_g_file_input_stream_query_info_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "query_info_finish", (PyCFunction)_wrap_g_file_input_stream_query_info_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGFileInputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FileInputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGFileInputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GFilterInputStream ----------- */ static PyObject * _wrap_g_filter_input_stream_get_base_stream(PyGObject *self) { GInputStream *ret; ret = g_filter_input_stream_get_base_stream(G_FILTER_INPUT_STREAM(self->obj)); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static PyObject * _wrap_g_filter_input_stream_get_close_base_stream(PyGObject *self) { int ret; ret = g_filter_input_stream_get_close_base_stream(G_FILTER_INPUT_STREAM(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_filter_input_stream_set_close_base_stream(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "close_base", NULL }; int close_base; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.FilterInputStream.set_close_base_stream", kwlist, &close_base)) return NULL; g_filter_input_stream_set_close_base_stream(G_FILTER_INPUT_STREAM(self->obj), close_base); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGFilterInputStream_methods[] = { { "get_base_stream", (PyCFunction)_wrap_g_filter_input_stream_get_base_stream, METH_NOARGS, NULL }, { "get_close_base_stream", (PyCFunction)_wrap_g_filter_input_stream_get_close_base_stream, METH_NOARGS, NULL }, { "set_close_base_stream", (PyCFunction)_wrap_g_filter_input_stream_set_close_base_stream, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGFilterInputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FilterInputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGFilterInputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GBufferedInputStream ----------- */ static int _wrap_g_buffered_input_stream_new(PyGObject *self, PyObject *args, PyObject *kwargs) { GType obj_type = pyg_type_from_object((PyObject *) self); GParameter params[1]; PyObject *parsed_args[1] = {NULL, }; char *arg_names[] = {"base_stream", NULL }; char *prop_names[] = {"base_stream", NULL }; guint nparams, i; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:gio.BufferedInputStream.__init__" , arg_names , &parsed_args[0])) return -1; memset(params, 0, sizeof(GParameter)*1); if (!pyg_parse_constructor_args(obj_type, arg_names, prop_names, params, &nparams, parsed_args)) return -1; pygobject_constructv(self, nparams, params); for (i = 0; i < nparams; ++i) g_value_unset(¶ms[i].value); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.BufferedInputStream object"); return -1; } return 0; } static PyObject * _wrap_g_buffered_input_stream_get_buffer_size(PyGObject *self) { gsize ret; ret = g_buffered_input_stream_get_buffer_size(G_BUFFERED_INPUT_STREAM(self->obj)); return PyLong_FromUnsignedLongLong(ret); } static PyObject * _wrap_g_buffered_input_stream_set_buffer_size(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "size", NULL }; gsize size; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"k:gio.BufferedInputStream.set_buffer_size", kwlist, &size)) return NULL; g_buffered_input_stream_set_buffer_size(G_BUFFERED_INPUT_STREAM(self->obj), size); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_buffered_input_stream_get_available(PyGObject *self) { gsize ret; ret = g_buffered_input_stream_get_available(G_BUFFERED_INPUT_STREAM(self->obj)); return PyLong_FromUnsignedLongLong(ret); } static PyObject * _wrap_g_buffered_input_stream_fill(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "cancellable", NULL }; PyGObject *py_cancellable = NULL; GCancellable *cancellable = NULL; GError *error = NULL; gssize count, ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"l|O:gio.BufferedInputStream.fill", kwlist, &count, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_buffered_input_stream_fill(G_BUFFERED_INPUT_STREAM(self->obj), count, (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyLong_FromLongLong(ret); } #line 24 "gbufferedinputstream.override" static PyObject * _wrap_g_buffered_input_stream_fill_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "count", "callback", "io_priority", "cancellable", "user_data", NULL }; long count = -1; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "lO|iOO:gio.BufferedInputStream.fill_async", kwlist, &count, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_buffered_input_stream_fill_async(G_BUFFERED_INPUT_STREAM(self->obj), count, io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 3608 "gio.c" static PyObject * _wrap_g_buffered_input_stream_fill_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; gssize ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.BufferedInputStream.fill_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_buffered_input_stream_fill_finish(G_BUFFERED_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyLong_FromLongLong(ret); } static PyObject * _wrap_g_buffered_input_stream_read_byte(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.BufferedInputStream.read_byte", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_buffered_input_stream_read_byte(G_BUFFERED_INPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyInt_FromLong(ret); } static const PyMethodDef _PyGBufferedInputStream_methods[] = { { "get_buffer_size", (PyCFunction)_wrap_g_buffered_input_stream_get_buffer_size, METH_NOARGS, NULL }, { "set_buffer_size", (PyCFunction)_wrap_g_buffered_input_stream_set_buffer_size, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_available", (PyCFunction)_wrap_g_buffered_input_stream_get_available, METH_NOARGS, NULL }, { "fill", (PyCFunction)_wrap_g_buffered_input_stream_fill, METH_VARARGS|METH_KEYWORDS, NULL }, { "fill_async", (PyCFunction)_wrap_g_buffered_input_stream_fill_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "fill_finish", (PyCFunction)_wrap_g_buffered_input_stream_fill_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_byte", (PyCFunction)_wrap_g_buffered_input_stream_read_byte, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGBufferedInputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.BufferedInputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGBufferedInputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_buffered_input_stream_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GDataInputStream ----------- */ static int _wrap_g_data_input_stream_new(PyGObject *self, PyObject *args, PyObject *kwargs) { GType obj_type = pyg_type_from_object((PyObject *) self); GParameter params[1]; PyObject *parsed_args[1] = {NULL, }; char *arg_names[] = {"base_stream", NULL }; char *prop_names[] = {"base_stream", NULL }; guint nparams, i; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:gio.DataInputStream.__init__" , arg_names , &parsed_args[0])) return -1; memset(params, 0, sizeof(GParameter)*1); if (!pyg_parse_constructor_args(obj_type, arg_names, prop_names, params, &nparams, parsed_args)) return -1; pygobject_constructv(self, nparams, params); for (i = 0; i < nparams; ++i) g_value_unset(¶ms[i].value); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.DataInputStream object"); return -1; } return 0; } static PyObject * _wrap_g_data_input_stream_set_byte_order(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "order", NULL }; PyObject *py_order = NULL; GDataStreamByteOrder order; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O:gio.DataInputStream.set_byte_order", kwlist, &py_order)) return NULL; if (pyg_enum_get_value(G_TYPE_DATA_STREAM_BYTE_ORDER, py_order, (gpointer)&order)) return NULL; g_data_input_stream_set_byte_order(G_DATA_INPUT_STREAM(self->obj), order); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_data_input_stream_get_byte_order(PyGObject *self) { gint ret; ret = g_data_input_stream_get_byte_order(G_DATA_INPUT_STREAM(self->obj)); return pyg_enum_from_gtype(G_TYPE_DATA_STREAM_BYTE_ORDER, ret); } static PyObject * _wrap_g_data_input_stream_set_newline_type(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "type", NULL }; PyObject *py_type = NULL; GDataStreamNewlineType type; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O:gio.DataInputStream.set_newline_type", kwlist, &py_type)) return NULL; if (pyg_enum_get_value(G_TYPE_DATA_STREAM_NEWLINE_TYPE, py_type, (gpointer)&type)) return NULL; g_data_input_stream_set_newline_type(G_DATA_INPUT_STREAM(self->obj), type); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_data_input_stream_get_newline_type(PyGObject *self) { gint ret; ret = g_data_input_stream_get_newline_type(G_DATA_INPUT_STREAM(self->obj)); return pyg_enum_from_gtype(G_TYPE_DATA_STREAM_NEWLINE_TYPE, ret); } static PyObject * _wrap_g_data_input_stream_read_byte(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; gchar ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.DataInputStream.read_byte", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_input_stream_read_byte(G_DATA_INPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyString_FromStringAndSize(&ret, 1); } static PyObject * _wrap_g_data_input_stream_read_int16(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.DataInputStream.read_int16", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_input_stream_read_int16(G_DATA_INPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyInt_FromLong(ret); } static PyObject * _wrap_g_data_input_stream_read_uint16(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.DataInputStream.read_uint16", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_input_stream_read_uint16(G_DATA_INPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyInt_FromLong(ret); } static PyObject * _wrap_g_data_input_stream_read_int32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.DataInputStream.read_int32", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_input_stream_read_int32(G_DATA_INPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyInt_FromLong(ret); } static PyObject * _wrap_g_data_input_stream_read_uint32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; GCancellable *cancellable = NULL; GError *error = NULL; guint32 ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.DataInputStream.read_uint32", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_input_stream_read_uint32(G_DATA_INPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyLong_FromUnsignedLong(ret); } static PyObject * _wrap_g_data_input_stream_read_int64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; gint64 ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.DataInputStream.read_int64", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_input_stream_read_int64(G_DATA_INPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyLong_FromLongLong(ret); } static PyObject * _wrap_g_data_input_stream_read_uint64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; GCancellable *cancellable = NULL; GError *error = NULL; guint64 ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.DataInputStream.read_uint64", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_input_stream_read_uint64(G_DATA_INPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyLong_FromUnsignedLongLong(ret); } #line 26 "gdatainputstream.override" static PyObject * _wrap_g_data_input_stream_read_line(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *pycancellable = NULL; GCancellable *cancellable; char *line; gsize length; PyObject *py_line; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O:gio.DataInputStream.read_line", kwlist, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; line = g_data_input_stream_read_line(G_DATA_INPUT_STREAM(self->obj), &length, cancellable, &error); if (pyg_error_check(&error)) return NULL; py_line = PyString_FromStringAndSize(line, length); g_free(line); return py_line; } #line 4034 "gio.c" #line 138 "gdatainputstream.override" static PyObject * _wrap_g_data_input_stream_read_until(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "stop_chars", "cancellable", NULL }; const char *stop_chars; PyGObject *pycancellable = NULL; GCancellable *cancellable; char *line; gsize length; PyObject *py_line; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|O:gio.DataInputStream.read_line", kwlist, &stop_chars, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; line = g_data_input_stream_read_until(G_DATA_INPUT_STREAM(self->obj), stop_chars, &length, cancellable, &error); if (pyg_error_check(&error)) return NULL; py_line = PyString_FromStringAndSize(line, length); g_free(line); return py_line; } #line 4070 "gio.c" #line 172 "gdatainputstream.override" static PyObject * _wrap_g_data_input_stream_read_until_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "stop_chars", "callback", "io_priority", "cancellable", "user_data", NULL }; const char *stop_chars; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.DataInputStream.read_until_async", kwlist, &stop_chars, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_data_input_stream_read_until_async(G_DATA_INPUT_STREAM(self->obj), stop_chars, io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 4122 "gio.c" #line 222 "gdatainputstream.override" static PyObject * _wrap_g_data_input_stream_read_until_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; gchar *line; gsize length; PyObject *py_line; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:gio.DataInputStream.read_until_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; line = g_data_input_stream_read_until_finish(G_DATA_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &length, &error); if (pyg_error_check(&error)) return NULL; py_line = PyString_FromStringAndSize(line, length); g_free(line); return py_line; } #line 4155 "gio.c" #line 59 "gdatainputstream.override" static PyObject * _wrap_g_data_input_stream_read_line_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:gio.DataInputStream.read_line_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_data_input_stream_read_line_async(G_DATA_INPUT_STREAM(self->obj), io_priority, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 4204 "gio.c" #line 106 "gdatainputstream.override" static PyObject * _wrap_g_data_input_stream_read_line_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; gchar *line; gsize length; PyObject *py_line; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:gio.DataInputStream.read_line_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; line = g_data_input_stream_read_line_finish(G_DATA_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &length, &error); if (pyg_error_check(&error)) return NULL; py_line = PyString_FromStringAndSize(line, length); g_free(line); return py_line; } #line 4238 "gio.c" static const PyMethodDef _PyGDataInputStream_methods[] = { { "set_byte_order", (PyCFunction)_wrap_g_data_input_stream_set_byte_order, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_byte_order", (PyCFunction)_wrap_g_data_input_stream_get_byte_order, METH_NOARGS, NULL }, { "set_newline_type", (PyCFunction)_wrap_g_data_input_stream_set_newline_type, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_newline_type", (PyCFunction)_wrap_g_data_input_stream_get_newline_type, METH_NOARGS, NULL }, { "read_byte", (PyCFunction)_wrap_g_data_input_stream_read_byte, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_int16", (PyCFunction)_wrap_g_data_input_stream_read_int16, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_uint16", (PyCFunction)_wrap_g_data_input_stream_read_uint16, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_int32", (PyCFunction)_wrap_g_data_input_stream_read_int32, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_uint32", (PyCFunction)_wrap_g_data_input_stream_read_uint32, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_int64", (PyCFunction)_wrap_g_data_input_stream_read_int64, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_uint64", (PyCFunction)_wrap_g_data_input_stream_read_uint64, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_line", (PyCFunction)_wrap_g_data_input_stream_read_line, METH_VARARGS|METH_KEYWORDS, (char *) "S.read_line([cancellable]) -> str\n" "Read a line from the stream. Return value includes ending newline\n" "character." }, { "read_until", (PyCFunction)_wrap_g_data_input_stream_read_until, METH_VARARGS|METH_KEYWORDS, (char *) "S.read_until(stop_chars, [cancellable]) -> str\n" "Read characters from the string, stopping at the end or upon reading\n" "any character in stop_chars. Return value does not include the stopping\n" "character." }, { "read_until_async", (PyCFunction)_wrap_g_data_input_stream_read_until_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_until_finish", (PyCFunction)_wrap_g_data_input_stream_read_until_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_line_async", (PyCFunction)_wrap_g_data_input_stream_read_line_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "read_line_finish", (PyCFunction)_wrap_g_data_input_stream_read_line_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGDataInputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.DataInputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGDataInputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_data_input_stream_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GMemoryInputStream ----------- */ static int _wrap_g_memory_input_stream_new(PyGObject *self, PyObject *args, PyObject *kwargs) { static char* kwlist[] = { NULL }; if (!PyArg_ParseTupleAndKeywords(args, kwargs, ":gio.MemoryInputStream.__init__", kwlist)) return -1; pygobject_constructv(self, 0, NULL); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.MemoryInputStream object"); return -1; } return 0; } #line 25 "gmemoryinputstream.override" static PyObject * _wrap_g_memory_input_stream_add_data(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", NULL }; PyObject *data; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:gio.MemoryInputStream.add_data", kwlist, &data)) return NULL; if (data != Py_None) { char *copy; int length; if (!PyString_Check(data)) { PyErr_SetString(PyExc_TypeError, "data must be a string or None"); return NULL; } length = PyString_Size(data); copy = g_malloc(length); memcpy(copy, PyString_AsString(data), length); g_memory_input_stream_add_data(G_MEMORY_INPUT_STREAM(self->obj), copy, length, (GDestroyNotify) g_free); } Py_INCREF(Py_None); return Py_None; } #line 4386 "gio.c" static const PyMethodDef _PyGMemoryInputStream_methods[] = { { "add_data", (PyCFunction)_wrap_g_memory_input_stream_add_data, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGMemoryInputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.MemoryInputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGMemoryInputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_memory_input_stream_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GMountOperation ----------- */ static int _wrap_g_mount_operation_new(PyGObject *self, PyObject *args, PyObject *kwargs) { static char* kwlist[] = { NULL }; if (!PyArg_ParseTupleAndKeywords(args, kwargs, ":gio.MountOperation.__init__", kwlist)) return -1; pygobject_constructv(self, 0, NULL); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.MountOperation object"); return -1; } return 0; } static PyObject * _wrap_g_mount_operation_get_username(PyGObject *self) { const gchar *ret; ret = g_mount_operation_get_username(G_MOUNT_OPERATION(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_mount_operation_set_username(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "username", NULL }; char *username; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.MountOperation.set_username", kwlist, &username)) return NULL; g_mount_operation_set_username(G_MOUNT_OPERATION(self->obj), username); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_mount_operation_get_password(PyGObject *self) { const gchar *ret; ret = g_mount_operation_get_password(G_MOUNT_OPERATION(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_mount_operation_set_password(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "password", NULL }; char *password; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.MountOperation.set_password", kwlist, &password)) return NULL; g_mount_operation_set_password(G_MOUNT_OPERATION(self->obj), password); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_mount_operation_get_anonymous(PyGObject *self) { int ret; ret = g_mount_operation_get_anonymous(G_MOUNT_OPERATION(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_mount_operation_set_anonymous(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "anonymous", NULL }; int anonymous; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.MountOperation.set_anonymous", kwlist, &anonymous)) return NULL; g_mount_operation_set_anonymous(G_MOUNT_OPERATION(self->obj), anonymous); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_mount_operation_get_domain(PyGObject *self) { const gchar *ret; ret = g_mount_operation_get_domain(G_MOUNT_OPERATION(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_mount_operation_set_domain(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "domain", NULL }; char *domain; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.MountOperation.set_domain", kwlist, &domain)) return NULL; g_mount_operation_set_domain(G_MOUNT_OPERATION(self->obj), domain); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_mount_operation_get_password_save(PyGObject *self) { gint ret; ret = g_mount_operation_get_password_save(G_MOUNT_OPERATION(self->obj)); return pyg_enum_from_gtype(G_TYPE_PASSWORD_SAVE, ret); } static PyObject * _wrap_g_mount_operation_set_password_save(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "save", NULL }; PyObject *py_save = NULL; GPasswordSave save; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O:gio.MountOperation.set_password_save", kwlist, &py_save)) return NULL; if (pyg_enum_get_value(G_TYPE_PASSWORD_SAVE, py_save, (gpointer)&save)) return NULL; g_mount_operation_set_password_save(G_MOUNT_OPERATION(self->obj), save); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_mount_operation_get_choice(PyGObject *self) { int ret; ret = g_mount_operation_get_choice(G_MOUNT_OPERATION(self->obj)); return PyInt_FromLong(ret); } static PyObject * _wrap_g_mount_operation_set_choice(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "choice", NULL }; int choice; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.MountOperation.set_choice", kwlist, &choice)) return NULL; g_mount_operation_set_choice(G_MOUNT_OPERATION(self->obj), choice); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_mount_operation_reply(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyObject *py_result = NULL; GMountOperationResult result; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O:gio.MountOperation.reply", kwlist, &py_result)) return NULL; if (pyg_enum_get_value(G_TYPE_MOUNT_OPERATION_RESULT, py_result, (gpointer)&result)) return NULL; g_mount_operation_reply(G_MOUNT_OPERATION(self->obj), result); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGMountOperation_methods[] = { { "get_username", (PyCFunction)_wrap_g_mount_operation_get_username, METH_NOARGS, NULL }, { "set_username", (PyCFunction)_wrap_g_mount_operation_set_username, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_password", (PyCFunction)_wrap_g_mount_operation_get_password, METH_NOARGS, NULL }, { "set_password", (PyCFunction)_wrap_g_mount_operation_set_password, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_anonymous", (PyCFunction)_wrap_g_mount_operation_get_anonymous, METH_NOARGS, NULL }, { "set_anonymous", (PyCFunction)_wrap_g_mount_operation_set_anonymous, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_domain", (PyCFunction)_wrap_g_mount_operation_get_domain, METH_NOARGS, NULL }, { "set_domain", (PyCFunction)_wrap_g_mount_operation_set_domain, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_password_save", (PyCFunction)_wrap_g_mount_operation_get_password_save, METH_NOARGS, NULL }, { "set_password_save", (PyCFunction)_wrap_g_mount_operation_set_password_save, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_choice", (PyCFunction)_wrap_g_mount_operation_get_choice, METH_NOARGS, NULL }, { "set_choice", (PyCFunction)_wrap_g_mount_operation_set_choice, METH_VARARGS|METH_KEYWORDS, NULL }, { "reply", (PyCFunction)_wrap_g_mount_operation_reply, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGMountOperation_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.MountOperation", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGMountOperation_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_mount_operation_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GOutputStream ----------- */ #line 24 "goutputstream.override" static PyObject * _wrap_g_output_stream_write(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "buffer", "cancellable", NULL }; PyGObject *pycancellable = NULL; gchar *buffer; long count = 0; GCancellable *cancellable; GError *error = NULL; gssize written; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s#|O!:OutputStream.write", kwlist, &buffer, &count, &PyGCancellable_Type, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; pyg_begin_allow_threads; written = g_output_stream_write(G_OUTPUT_STREAM(self->obj), buffer, count, cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyInt_FromLong(written); } #line 4763 "gio.c" #line 58 "goutputstream.override" static PyObject * _wrap_g_output_stream_write_all(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "buffer", "cancellable", NULL }; PyGObject *pycancellable = NULL; gchar *buffer; long count = 0; GCancellable *cancellable; GError *error = NULL; gsize written; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s#|O!:OutputStream.write", kwlist, &buffer, &count, &PyGCancellable_Type, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; pyg_begin_allow_threads; g_output_stream_write_all(G_OUTPUT_STREAM(self->obj), buffer, count, &written, cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyInt_FromLong(written); } #line 4799 "gio.c" static PyObject * _wrap_g_output_stream_splice(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "source", "flags", "cancellable", NULL }; GError *error = NULL; PyObject *py_flags = NULL; GCancellable *cancellable = NULL; GOutputStreamSpliceFlags flags = G_OUTPUT_STREAM_SPLICE_NONE; gssize ret; PyGObject *source, *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!|OO:gio.OutputStream.splice", kwlist, &PyGInputStream_Type, &source, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_OUTPUT_STREAM_SPLICE_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_output_stream_splice(G_OUTPUT_STREAM(self->obj), G_INPUT_STREAM(source->obj), flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyLong_FromLongLong(ret); } static PyObject * _wrap_g_output_stream_flush(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.OutputStream.flush", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_output_stream_flush(G_OUTPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_output_stream_close(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.OutputStream.close", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_output_stream_close(G_OUTPUT_STREAM(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 92 "goutputstream.override" static PyObject * _wrap_g_output_stream_write_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "buffer", "callback", "io_priority", "cancellable", "user_data", NULL }; gchar *buffer; long count = -1; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s#O|iOO:OutputStream.write_async", kwlist, &buffer, &count, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); pygio_notify_copy_buffer(notify, buffer, count); g_output_stream_write_async(G_OUTPUT_STREAM(self->obj), notify->buffer, notify->buffer_size, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 4941 "gio.c" static PyObject * _wrap_g_output_stream_write_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; gssize ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.OutputStream.write_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_output_stream_write_finish(G_OUTPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyLong_FromLongLong(ret); } #line 236 "goutputstream.override" static PyObject * _wrap_g_output_stream_splice_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "source", "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; GOutputStreamSpliceFlags flags = G_OUTPUT_STREAM_SPLICE_NONE; PyObject *py_flags = NULL; PyGObject *source; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OiOO:OutputStream.splice_async", kwlist, &PyGInputStream_Type, &source, ¬ify->callback, &py_flags, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_OUTPUT_STREAM_SPLICE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_output_stream_splice_async(G_OUTPUT_STREAM(self->obj), G_INPUT_STREAM(source->obj), flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } /* GOutputStream.write_all: No ArgType for const-void* */ #line 5021 "gio.c" static PyObject * _wrap_g_output_stream_splice_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GError *error = NULL; gssize ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.OutputStream.splice_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_output_stream_splice_finish(G_OUTPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyLong_FromLongLong(ret); } #line 190 "goutputstream.override" static PyObject * _wrap_g_output_stream_flush_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:OutputStream.flush_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_output_stream_flush_async(G_OUTPUT_STREAM(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 5088 "gio.c" static PyObject * _wrap_g_output_stream_flush_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.OutputStream.flush_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_output_stream_flush_finish(G_OUTPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 144 "goutputstream.override" static PyObject * _wrap_g_output_stream_close_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:OutputStream.close_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_output_stream_close_async(G_OUTPUT_STREAM(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 5155 "gio.c" static PyObject * _wrap_g_output_stream_close_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.OutputStream.close_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_output_stream_close_finish(G_OUTPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_output_stream_is_closed(PyGObject *self) { int ret; ret = g_output_stream_is_closed(G_OUTPUT_STREAM(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_output_stream_has_pending(PyGObject *self) { int ret; ret = g_output_stream_has_pending(G_OUTPUT_STREAM(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_output_stream_set_pending(PyGObject *self) { int ret; GError *error = NULL; ret = g_output_stream_set_pending(G_OUTPUT_STREAM(self->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_output_stream_clear_pending(PyGObject *self) { g_output_stream_clear_pending(G_OUTPUT_STREAM(self->obj)); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGOutputStream_methods[] = { { "write_part", (PyCFunction)_wrap_g_output_stream_write, METH_VARARGS|METH_KEYWORDS, (char *) "STREAM.write_part(buffer, [cancellable]) -> int\n" "\n" "Write the bytes in 'buffer' to the stream. Return the number of bytes\n" "successfully written. This method is allowed to stop at any time after\n" "writing at least 1 byte. Therefore, to reliably write the whole buffer,\n" "you need to use a loop. See also gio.OutputStream.write for easier to\n" "use (though less efficient) method.\n" "\n" "Note: this method roughly corresponds to C GIO g_output_stream_write." }, { "write", (PyCFunction)_wrap_g_output_stream_write_all, METH_VARARGS|METH_KEYWORDS, NULL }, { "splice", (PyCFunction)_wrap_g_output_stream_splice, METH_VARARGS|METH_KEYWORDS, NULL }, { "flush", (PyCFunction)_wrap_g_output_stream_flush, METH_VARARGS|METH_KEYWORDS, NULL }, { "close", (PyCFunction)_wrap_g_output_stream_close, METH_VARARGS|METH_KEYWORDS, NULL }, { "write_async", (PyCFunction)_wrap_g_output_stream_write_async, METH_VARARGS|METH_KEYWORDS, (char *) "S.write_async(buffer, callback [,io_priority] [,cancellable] [,user_data])\n" "\n" "Request an asynchronous write of count bytes from buffer into the stream.\n" "When the operation is finished callback will be called. You can then call\n" "gio.OutputStream.write_finish() to get the result of the operation.\n" "On success, the number of bytes written will be passed to the callback.\n" "It is not an error if this is not the same as the requested size, as it can\n" "happen e.g. on a partial I/O error, but generally tries to write as many \n" "bytes as requested.\n" "For the synchronous, blocking version of this function, see\n" "gio.OutputStream.write().\n" }, { "write_finish", (PyCFunction)_wrap_g_output_stream_write_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "splice_async", (PyCFunction)_wrap_g_output_stream_splice_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "splice_finish", (PyCFunction)_wrap_g_output_stream_splice_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "flush_async", (PyCFunction)_wrap_g_output_stream_flush_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "flush_finish", (PyCFunction)_wrap_g_output_stream_flush_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "close_async", (PyCFunction)_wrap_g_output_stream_close_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "close_finish", (PyCFunction)_wrap_g_output_stream_close_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "is_closed", (PyCFunction)_wrap_g_output_stream_is_closed, METH_NOARGS, NULL }, { "has_pending", (PyCFunction)_wrap_g_output_stream_has_pending, METH_NOARGS, NULL }, { "set_pending", (PyCFunction)_wrap_g_output_stream_set_pending, METH_NOARGS, NULL }, { "clear_pending", (PyCFunction)_wrap_g_output_stream_clear_pending, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGOutputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.OutputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGOutputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GMemoryOutputStream ----------- */ #line 24 "gmemoryoutputstream.override" static int _wrap_g_memory_output_stream_new(PyGObject *self) { self->obj = (GObject *)g_memory_output_stream_new(NULL, 0, g_realloc, g_free); if (!self->obj) { PyErr_SetString(PyExc_RuntimeError, "could not create gio.MemoryOutputStream object"); return -1; } pygobject_register_wrapper((PyObject *)self); return 0; } #line 5345 "gio.c" #line 39 "gmemoryoutputstream.override" static PyObject * _wrap_g_memory_output_stream_get_data(PyGObject *self) { GMemoryOutputStream *stream = G_MEMORY_OUTPUT_STREAM(self->obj); return PyString_FromStringAndSize(g_memory_output_stream_get_data(stream), g_seekable_tell(G_SEEKABLE(stream))); } #line 5356 "gio.c" static PyObject * _wrap_g_memory_output_stream_get_size(PyGObject *self) { gsize ret; ret = g_memory_output_stream_get_size(G_MEMORY_OUTPUT_STREAM(self->obj)); return PyLong_FromUnsignedLongLong(ret); } static PyObject * _wrap_g_memory_output_stream_get_data_size(PyGObject *self) { gsize ret; ret = g_memory_output_stream_get_data_size(G_MEMORY_OUTPUT_STREAM(self->obj)); return PyLong_FromUnsignedLongLong(ret); } static const PyMethodDef _PyGMemoryOutputStream_methods[] = { { "get_contents", (PyCFunction)_wrap_g_memory_output_stream_get_data, METH_NOARGS, NULL }, { "get_size", (PyCFunction)_wrap_g_memory_output_stream_get_size, METH_NOARGS, NULL }, { "get_data_size", (PyCFunction)_wrap_g_memory_output_stream_get_data_size, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGMemoryOutputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.MemoryOutputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGMemoryOutputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_memory_output_stream_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GFilterOutputStream ----------- */ static PyObject * _wrap_g_filter_output_stream_get_base_stream(PyGObject *self) { GOutputStream *ret; ret = g_filter_output_stream_get_base_stream(G_FILTER_OUTPUT_STREAM(self->obj)); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static PyObject * _wrap_g_filter_output_stream_get_close_base_stream(PyGObject *self) { int ret; ret = g_filter_output_stream_get_close_base_stream(G_FILTER_OUTPUT_STREAM(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_filter_output_stream_set_close_base_stream(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "close_base", NULL }; int close_base; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.FilterOutputStream.set_close_base_stream", kwlist, &close_base)) return NULL; g_filter_output_stream_set_close_base_stream(G_FILTER_OUTPUT_STREAM(self->obj), close_base); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGFilterOutputStream_methods[] = { { "get_base_stream", (PyCFunction)_wrap_g_filter_output_stream_get_base_stream, METH_NOARGS, NULL }, { "get_close_base_stream", (PyCFunction)_wrap_g_filter_output_stream_get_close_base_stream, METH_NOARGS, NULL }, { "set_close_base_stream", (PyCFunction)_wrap_g_filter_output_stream_set_close_base_stream, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGFilterOutputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FilterOutputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGFilterOutputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GBufferedOutputStream ----------- */ static int _wrap_g_buffered_output_stream_new(PyGObject *self, PyObject *args, PyObject *kwargs) { GType obj_type = pyg_type_from_object((PyObject *) self); GParameter params[1]; PyObject *parsed_args[1] = {NULL, }; char *arg_names[] = {"base_stream", NULL }; char *prop_names[] = {"base_stream", NULL }; guint nparams, i; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:gio.BufferedOutputStream.__init__" , arg_names , &parsed_args[0])) return -1; memset(params, 0, sizeof(GParameter)*1); if (!pyg_parse_constructor_args(obj_type, arg_names, prop_names, params, &nparams, parsed_args)) return -1; pygobject_constructv(self, nparams, params); for (i = 0; i < nparams; ++i) g_value_unset(¶ms[i].value); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.BufferedOutputStream object"); return -1; } return 0; } static PyObject * _wrap_g_buffered_output_stream_get_buffer_size(PyGObject *self) { gsize ret; ret = g_buffered_output_stream_get_buffer_size(G_BUFFERED_OUTPUT_STREAM(self->obj)); return PyLong_FromUnsignedLongLong(ret); } static PyObject * _wrap_g_buffered_output_stream_set_buffer_size(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "size", NULL }; gsize size; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"k:gio.BufferedOutputStream.set_buffer_size", kwlist, &size)) return NULL; g_buffered_output_stream_set_buffer_size(G_BUFFERED_OUTPUT_STREAM(self->obj), size); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_buffered_output_stream_get_auto_grow(PyGObject *self) { int ret; ret = g_buffered_output_stream_get_auto_grow(G_BUFFERED_OUTPUT_STREAM(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_buffered_output_stream_set_auto_grow(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "auto_grow", NULL }; int auto_grow; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.BufferedOutputStream.set_auto_grow", kwlist, &auto_grow)) return NULL; g_buffered_output_stream_set_auto_grow(G_BUFFERED_OUTPUT_STREAM(self->obj), auto_grow); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGBufferedOutputStream_methods[] = { { "get_buffer_size", (PyCFunction)_wrap_g_buffered_output_stream_get_buffer_size, METH_NOARGS, NULL }, { "set_buffer_size", (PyCFunction)_wrap_g_buffered_output_stream_set_buffer_size, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_auto_grow", (PyCFunction)_wrap_g_buffered_output_stream_get_auto_grow, METH_NOARGS, NULL }, { "set_auto_grow", (PyCFunction)_wrap_g_buffered_output_stream_set_auto_grow, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGBufferedOutputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.BufferedOutputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGBufferedOutputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_buffered_output_stream_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GDataOutputStream ----------- */ static int _wrap_g_data_output_stream_new(PyGObject *self, PyObject *args, PyObject *kwargs) { GType obj_type = pyg_type_from_object((PyObject *) self); GParameter params[1]; PyObject *parsed_args[1] = {NULL, }; char *arg_names[] = {"base_stream", NULL }; char *prop_names[] = {"base_stream", NULL }; guint nparams, i; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:gio.DataOutputStream.__init__" , arg_names , &parsed_args[0])) return -1; memset(params, 0, sizeof(GParameter)*1); if (!pyg_parse_constructor_args(obj_type, arg_names, prop_names, params, &nparams, parsed_args)) return -1; pygobject_constructv(self, nparams, params); for (i = 0; i < nparams; ++i) g_value_unset(¶ms[i].value); if (!self->obj) { PyErr_SetString( PyExc_RuntimeError, "could not create gio.DataOutputStream object"); return -1; } return 0; } static PyObject * _wrap_g_data_output_stream_set_byte_order(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "order", NULL }; PyObject *py_order = NULL; GDataStreamByteOrder order; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O:gio.DataOutputStream.set_byte_order", kwlist, &py_order)) return NULL; if (pyg_enum_get_value(G_TYPE_DATA_STREAM_BYTE_ORDER, py_order, (gpointer)&order)) return NULL; g_data_output_stream_set_byte_order(G_DATA_OUTPUT_STREAM(self->obj), order); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_data_output_stream_get_byte_order(PyGObject *self) { gint ret; ret = g_data_output_stream_get_byte_order(G_DATA_OUTPUT_STREAM(self->obj)); return pyg_enum_from_gtype(G_TYPE_DATA_STREAM_BYTE_ORDER, ret); } static PyObject * _wrap_g_data_output_stream_put_byte(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", "cancellable", NULL }; char data; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"c|O:gio.DataOutputStream.put_byte", kwlist, &data, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_output_stream_put_byte(G_DATA_OUTPUT_STREAM(self->obj), data, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_data_output_stream_put_int16(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", "cancellable", NULL }; int data, ret; PyGObject *py_cancellable = NULL; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i|O:gio.DataOutputStream.put_int16", kwlist, &data, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_output_stream_put_int16(G_DATA_OUTPUT_STREAM(self->obj), data, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_data_output_stream_put_uint16(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", "cancellable", NULL }; int data, ret; PyGObject *py_cancellable = NULL; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i|O:gio.DataOutputStream.put_uint16", kwlist, &data, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_output_stream_put_uint16(G_DATA_OUTPUT_STREAM(self->obj), data, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_data_output_stream_put_int32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", "cancellable", NULL }; int data, ret; PyGObject *py_cancellable = NULL; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i|O:gio.DataOutputStream.put_int32", kwlist, &data, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_output_stream_put_int32(G_DATA_OUTPUT_STREAM(self->obj), data, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_data_output_stream_put_uint32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; unsigned long data; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"k|O:gio.DataOutputStream.put_uint32", kwlist, &data, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_output_stream_put_uint32(G_DATA_OUTPUT_STREAM(self->obj), data, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_data_output_stream_put_int64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; gint64 data; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"L|O:gio.DataOutputStream.put_int64", kwlist, &data, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_output_stream_put_int64(G_DATA_OUTPUT_STREAM(self->obj), data, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_data_output_stream_put_uint64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "data", "cancellable", NULL }; PyObject *py_data = NULL; GCancellable *cancellable = NULL; GError *error = NULL; int ret; guint64 data; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!|O:gio.DataOutputStream.put_uint64", kwlist, &PyLong_Type, &py_data, &py_cancellable)) return NULL; data = PyLong_AsUnsignedLongLong(py_data); if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_output_stream_put_uint64(G_DATA_OUTPUT_STREAM(self->obj), data, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_data_output_stream_put_string(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "str", "cancellable", NULL }; char *str; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s|O:gio.DataOutputStream.put_string", kwlist, &str, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_data_output_stream_put_string(G_DATA_OUTPUT_STREAM(self->obj), str, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static const PyMethodDef _PyGDataOutputStream_methods[] = { { "set_byte_order", (PyCFunction)_wrap_g_data_output_stream_set_byte_order, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_byte_order", (PyCFunction)_wrap_g_data_output_stream_get_byte_order, METH_NOARGS, NULL }, { "put_byte", (PyCFunction)_wrap_g_data_output_stream_put_byte, METH_VARARGS|METH_KEYWORDS, NULL }, { "put_int16", (PyCFunction)_wrap_g_data_output_stream_put_int16, METH_VARARGS|METH_KEYWORDS, NULL }, { "put_uint16", (PyCFunction)_wrap_g_data_output_stream_put_uint16, METH_VARARGS|METH_KEYWORDS, NULL }, { "put_int32", (PyCFunction)_wrap_g_data_output_stream_put_int32, METH_VARARGS|METH_KEYWORDS, NULL }, { "put_uint32", (PyCFunction)_wrap_g_data_output_stream_put_uint32, METH_VARARGS|METH_KEYWORDS, NULL }, { "put_int64", (PyCFunction)_wrap_g_data_output_stream_put_int64, METH_VARARGS|METH_KEYWORDS, NULL }, { "put_uint64", (PyCFunction)_wrap_g_data_output_stream_put_uint64, METH_VARARGS|METH_KEYWORDS, NULL }, { "put_string", (PyCFunction)_wrap_g_data_output_stream_put_string, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGDataOutputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.DataOutputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGDataOutputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_data_output_stream_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GFileOutputStream ----------- */ static PyObject * _wrap_g_file_output_stream_query_info(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "cancellable", NULL }; char *attributes; PyGObject *py_cancellable = NULL; GCancellable *cancellable = NULL; GFileInfo *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s|O:gio.FileOutputStream.query_info", kwlist, &attributes, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_output_stream_query_info(G_FILE_OUTPUT_STREAM(self->obj), attributes, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } #line 25 "gfileoutputstream.override" static PyObject * _wrap_g_file_output_stream_query_info_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; int io_priority = G_PRIORITY_DEFAULT; char *attributes; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.FileOutputStream.query_info_async", kwlist, &attributes, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_output_stream_query_info_async(G_FILE_OUTPUT_STREAM(self->obj), attributes, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 6122 "gio.c" static PyObject * _wrap_g_file_output_stream_query_info_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; GFileInfo *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.FileOutputStream.query_info_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_file_output_stream_query_info_finish(G_FILE_OUTPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static PyObject * _wrap_g_file_output_stream_get_etag(PyGObject *self) { gchar *ret; ret = g_file_output_stream_get_etag(G_FILE_OUTPUT_STREAM(self->obj)); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGFileOutputStream_methods[] = { { "query_info", (PyCFunction)_wrap_g_file_output_stream_query_info, METH_VARARGS|METH_KEYWORDS, NULL }, { "query_info_async", (PyCFunction)_wrap_g_file_output_stream_query_info_async, METH_VARARGS|METH_KEYWORDS, NULL }, { "query_info_finish", (PyCFunction)_wrap_g_file_output_stream_query_info_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_etag", (PyCFunction)_wrap_g_file_output_stream_get_etag, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGFileOutputStream_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FileOutputStream", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGFileOutputStream_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GSimpleAsyncResult ----------- */ static int pygobject_no_constructor(PyObject *self, PyObject *args, PyObject *kwargs) { gchar buf[512]; g_snprintf(buf, sizeof(buf), "%s is an abstract widget", self->ob_type->tp_name); PyErr_SetString(PyExc_NotImplementedError, buf); return -1; } static PyObject * _wrap_g_simple_async_result_set_op_res_gssize(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "op_res", NULL }; gssize op_res; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"l:gio.SimpleAsyncResult.set_op_res_gssize", kwlist, &op_res)) return NULL; g_simple_async_result_set_op_res_gssize(G_SIMPLE_ASYNC_RESULT(self->obj), op_res); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_simple_async_result_get_op_res_gssize(PyGObject *self) { gssize ret; ret = g_simple_async_result_get_op_res_gssize(G_SIMPLE_ASYNC_RESULT(self->obj)); return PyLong_FromLongLong(ret); } static PyObject * _wrap_g_simple_async_result_set_op_res_gboolean(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "op_res", NULL }; int op_res; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.SimpleAsyncResult.set_op_res_gboolean", kwlist, &op_res)) return NULL; g_simple_async_result_set_op_res_gboolean(G_SIMPLE_ASYNC_RESULT(self->obj), op_res); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_simple_async_result_get_op_res_gboolean(PyGObject *self) { int ret; ret = g_simple_async_result_get_op_res_gboolean(G_SIMPLE_ASYNC_RESULT(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_simple_async_result_set_handle_cancellation(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "handle_cancellation", NULL }; int handle_cancellation; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"i:gio.SimpleAsyncResult.set_handle_cancellation", kwlist, &handle_cancellation)) return NULL; g_simple_async_result_set_handle_cancellation(G_SIMPLE_ASYNC_RESULT(self->obj), handle_cancellation); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_simple_async_result_complete(PyGObject *self) { g_simple_async_result_complete(G_SIMPLE_ASYNC_RESULT(self->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_simple_async_result_complete_in_idle(PyGObject *self) { g_simple_async_result_complete_in_idle(G_SIMPLE_ASYNC_RESULT(self->obj)); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_simple_async_result_propagate_error(PyGObject *self) { int ret; GError *dest = NULL; ret = g_simple_async_result_propagate_error(G_SIMPLE_ASYNC_RESULT(self->obj), &dest); if (pyg_error_check(&dest)) return NULL; return PyBool_FromLong(ret); } static const PyMethodDef _PyGSimpleAsyncResult_methods[] = { { "set_op_res_gssize", (PyCFunction)_wrap_g_simple_async_result_set_op_res_gssize, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_op_res_gssize", (PyCFunction)_wrap_g_simple_async_result_get_op_res_gssize, METH_NOARGS, NULL }, { "set_op_res_gboolean", (PyCFunction)_wrap_g_simple_async_result_set_op_res_gboolean, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_op_res_gboolean", (PyCFunction)_wrap_g_simple_async_result_get_op_res_gboolean, METH_NOARGS, NULL }, { "set_handle_cancellation", (PyCFunction)_wrap_g_simple_async_result_set_handle_cancellation, METH_VARARGS|METH_KEYWORDS, NULL }, { "complete", (PyCFunction)_wrap_g_simple_async_result_complete, METH_NOARGS, NULL }, { "complete_in_idle", (PyCFunction)_wrap_g_simple_async_result_complete_in_idle, METH_NOARGS, NULL }, { "propagate_error", (PyCFunction)_wrap_g_simple_async_result_propagate_error, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGSimpleAsyncResult_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.SimpleAsyncResult", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGSimpleAsyncResult_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)pygobject_no_constructor, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GVfs ----------- */ static PyObject * _wrap_g_vfs_is_active(PyGObject *self) { int ret; ret = g_vfs_is_active(G_VFS(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_vfs_get_file_for_path(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "path", NULL }; char *path; PyObject *py_ret; GFile *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.Vfs.get_file_for_path", kwlist, &path)) return NULL; ret = g_vfs_get_file_for_path(G_VFS(self->obj), path); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_vfs_get_file_for_uri(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "uri", NULL }; char *uri; PyObject *py_ret; GFile *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.Vfs.get_file_for_uri", kwlist, &uri)) return NULL; ret = g_vfs_get_file_for_uri(G_VFS(self->obj), uri); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_vfs_parse_name(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "parse_name", NULL }; char *parse_name; PyObject *py_ret; GFile *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.Vfs.parse_name", kwlist, &parse_name)) return NULL; ret = g_vfs_parse_name(G_VFS(self->obj), parse_name); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 357 "gio.override" static PyObject * _wrap_g_vfs_get_supported_uri_schemes(PyGObject *self) { const char * const *names; PyObject *ret; names = g_vfs_get_supported_uri_schemes(G_VFS(self->obj)); ret = PyList_New(0); while (names && *names) { PyObject *item = PyString_FromString(names[0]); PyList_Append(ret, item); Py_DECREF(item); names++; } return ret; } #line 6494 "gio.c" static const PyMethodDef _PyGVfs_methods[] = { { "is_active", (PyCFunction)_wrap_g_vfs_is_active, METH_NOARGS, NULL }, { "get_file_for_path", (PyCFunction)_wrap_g_vfs_get_file_for_path, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_file_for_uri", (PyCFunction)_wrap_g_vfs_get_file_for_uri, METH_VARARGS|METH_KEYWORDS, NULL }, { "parse_name", (PyCFunction)_wrap_g_vfs_parse_name, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_supported_uri_schemes", (PyCFunction)_wrap_g_vfs_get_supported_uri_schemes, METH_NOARGS, (char *) "VFS.get_supported_uri_schemes() -> [uri, ..]\n" "Gets a list of URI schemes supported by vfs." }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGVfs_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.Vfs", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGVfs_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GVolumeMonitor ----------- */ #line 31 "gvolumemonitor.override" static PyObject * _wrap_g_volume_monitor_get_connected_drives (PyGObject *self) { GList *list, *l; PyObject *ret; list = g_volume_monitor_get_connected_drives (G_VOLUME_MONITOR (self->obj)); ret = PyList_New(0); for (l = list; l; l = l->next) { GDrive *drive = l->data; PyObject *item = pygobject_new((GObject *)drive); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(drive); } g_list_free(list); return ret; } #line 6582 "gio.c" #line 53 "gvolumemonitor.override" static PyObject * _wrap_g_volume_monitor_get_volumes (PyGObject *self) { GList *list, *l; PyObject *ret; list = g_volume_monitor_get_volumes (G_VOLUME_MONITOR (self->obj)); ret = PyList_New(0); for (l = list; l; l = l->next) { GVolume *volume = l->data; PyObject *item = pygobject_new((GObject *)volume); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(volume); } g_list_free(list); return ret; } #line 6606 "gio.c" #line 75 "gvolumemonitor.override" static PyObject * _wrap_g_volume_monitor_get_mounts (PyGObject *self) { GList *list, *l; PyObject *ret; list = g_volume_monitor_get_mounts (G_VOLUME_MONITOR (self->obj)); ret = PyList_New(0); for (l = list; l; l = l->next) { GMount *mount = l->data; PyObject *item = pygobject_new((GObject *)mount); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(mount); } g_list_free(list); return ret; } #line 6630 "gio.c" static PyObject * _wrap_g_volume_monitor_get_volume_for_uuid(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "uuid", NULL }; char *uuid; PyObject *py_ret; GVolume *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.VolumeMonitor.get_volume_for_uuid", kwlist, &uuid)) return NULL; ret = g_volume_monitor_get_volume_for_uuid(G_VOLUME_MONITOR(self->obj), uuid); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_volume_monitor_get_mount_for_uuid(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "uuid", NULL }; char *uuid; GMount *ret; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.VolumeMonitor.get_mount_for_uuid", kwlist, &uuid)) return NULL; ret = g_volume_monitor_get_mount_for_uuid(G_VOLUME_MONITOR(self->obj), uuid); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static const PyMethodDef _PyGVolumeMonitor_methods[] = { { "get_connected_drives", (PyCFunction)_wrap_g_volume_monitor_get_connected_drives, METH_NOARGS, NULL }, { "get_volumes", (PyCFunction)_wrap_g_volume_monitor_get_volumes, METH_NOARGS, NULL }, { "get_mounts", (PyCFunction)_wrap_g_volume_monitor_get_mounts, METH_NOARGS, NULL }, { "get_volume_for_uuid", (PyCFunction)_wrap_g_volume_monitor_get_volume_for_uuid, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_mount_for_uuid", (PyCFunction)_wrap_g_volume_monitor_get_mount_for_uuid, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; #line 24 "gvolumemonitor.override" static PyObject * _wrap_g_volume_monitor_tp_new(PyObject *type, PyObject *args, PyObject *kwargs) { return pygobject_new(G_OBJECT(g_volume_monitor_get())); } #line 6691 "gio.c" PyTypeObject G_GNUC_INTERNAL PyGVolumeMonitor_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.VolumeMonitor", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGVolumeMonitor_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)_wrap_g_volume_monitor_tp_new, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GNativeVolumeMonitor ----------- */ PyTypeObject G_GNUC_INTERNAL PyGNativeVolumeMonitor_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.NativeVolumeMonitor", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)NULL, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GFileIcon ----------- */ static int _wrap_g_file_icon_new(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "file", NULL }; PyGObject *file; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.FileIcon.__init__", kwlist, &PyGFile_Type, &file)) return -1; self->obj = (GObject *)g_file_icon_new(G_FILE(file->obj)); if (!self->obj) { PyErr_SetString(PyExc_RuntimeError, "could not create GFileIcon object"); return -1; } pygobject_register_wrapper((PyObject *)self); return 0; } static PyObject * _wrap_g_file_icon_get_file(PyGObject *self) { GFile *ret; ret = g_file_icon_get_file(G_FILE_ICON(self->obj)); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static const PyMethodDef _PyGFileIcon_methods[] = { { "get_file", (PyCFunction)_wrap_g_file_icon_get_file, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; #line 171 "gicon.override" static PyObject * _wrap_g_file_icon_tp_repr(PyGObject *self) { GFile *file = g_file_icon_get_file(G_FILE_ICON(self->obj)); char *uri = (file ? g_file_get_uri(file) : NULL); gchar *representation; PyObject *result; if (uri) { representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, uri); g_free(uri); } else representation = g_strdup_printf("<%s at %p: UNKNOWN URI>", self->ob_type->tp_name, self); result = PyString_FromString(representation); g_free(representation); return result; } #line 6848 "gio.c" PyTypeObject G_GNUC_INTERNAL PyGFileIcon_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.FileIcon", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)_wrap_g_file_icon_tp_repr, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGFileIcon_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_file_icon_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GThemedIcon ----------- */ #line 194 "gicon.override" static int _wrap_g_themed_icon_new(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "name", "use_default_fallbacks", NULL }; PyObject *name; gboolean use_default_fallbacks = FALSE; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|i:gio.ThemedIcon.__init__", kwlist, &name, &use_default_fallbacks)) return -1; if (PyString_Check(name)) { pygobject_construct(self, "name", PyString_AsString(name), "use-default-fallbacks", use_default_fallbacks, NULL); return 0; } else if (PySequence_Check(name)) { PyObject *tuple = PySequence_Tuple(name); if (tuple) { int k; int length = PyTuple_Size(tuple); char **names = g_new(char *, length + 1); for (k = 0; k < length; k++) { PyObject *str = PyTuple_GetItem(tuple, k); if (str && PyString_Check(str)) names[k] = PyString_AsString(str); else { Py_DECREF(tuple); g_free(names); goto error; } } names[length] = NULL; pygobject_construct(self, "names", names, "use-default-fallbacks", use_default_fallbacks, NULL); Py_DECREF(tuple); g_free(names); return 0; } } error: if (!PyErr_Occurred()) { PyErr_SetString(PyExc_TypeError, "argument 1 of gio.ThemedIcon.__init__ " "must be either a string or a sequence of strings"); } return -1; } #line 6955 "gio.c" static PyObject * _wrap_g_themed_icon_prepend_name(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "iconname", NULL }; char *iconname; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.ThemedIcon.prepend_name", kwlist, &iconname)) return NULL; g_themed_icon_prepend_name(G_THEMED_ICON(self->obj), iconname); Py_INCREF(Py_None); return Py_None; } #line 250 "gicon.override" static PyObject * _wrap_g_themed_icon_get_names(PyGObject *self) { const char * const *names; PyObject *ret; names = g_themed_icon_get_names(G_THEMED_ICON(self->obj)); ret = PyList_New(0); while (names && *names) { PyObject *item = PyString_FromString(names[0]); PyList_Append(ret, item); Py_DECREF(item); names++; } return ret; } #line 6993 "gio.c" static PyObject * _wrap_g_themed_icon_append_name(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "iconname", NULL }; char *iconname; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.ThemedIcon.append_name", kwlist, &iconname)) return NULL; g_themed_icon_append_name(G_THEMED_ICON(self->obj), iconname); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGThemedIcon_methods[] = { { "prepend_name", (PyCFunction)_wrap_g_themed_icon_prepend_name, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_names", (PyCFunction)_wrap_g_themed_icon_get_names, METH_NOARGS, NULL }, { "append_name", (PyCFunction)_wrap_g_themed_icon_append_name, METH_VARARGS|METH_KEYWORDS, NULL }, { NULL, NULL, 0, NULL } }; #line 271 "gicon.override" static PyObject * _wrap_g_themed_icon_tp_repr(PyGObject *self) { const char * const *names = g_themed_icon_get_names(G_THEMED_ICON(self->obj)); GString *representation = g_string_new(NULL); PyObject *result; g_string_append_printf(representation, "<%s at %p: ", self->ob_type->tp_name, self); if (names) { gboolean first_name = TRUE; while (*names) { if (!first_name) g_string_append(representation, ", "); else first_name = FALSE; g_string_append(representation, *names++); } } g_string_append(representation, ">"); result = PyString_FromString(representation->str); g_string_free(representation, TRUE); return result; } #line 7048 "gio.c" PyTypeObject G_GNUC_INTERNAL PyGThemedIcon_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.ThemedIcon", /* tp_name */ sizeof(PyGObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)_wrap_g_themed_icon_tp_repr, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ offsetof(PyGObject, weakreflist), /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGThemedIcon_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ offsetof(PyGObject, inst_dict), /* tp_dictoffset */ (initproc)_wrap_g_themed_icon_new, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GAppInfo ----------- */ static PyObject * _wrap_g_app_info_dup(PyGObject *self) { GAppInfo *ret; PyObject *py_ret; ret = g_app_info_dup(G_APP_INFO(self->obj)); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_app_info_equal(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "appinfo2", NULL }; PyGObject *appinfo2; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.AppInfo.equal", kwlist, &PyGAppInfo_Type, &appinfo2)) return NULL; ret = g_app_info_equal(G_APP_INFO(self->obj), G_APP_INFO(appinfo2->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_get_id(PyGObject *self) { const gchar *ret; ret = g_app_info_get_id(G_APP_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_app_info_get_name(PyGObject *self) { const gchar *ret; ret = g_app_info_get_name(G_APP_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_app_info_get_description(PyGObject *self) { const gchar *ret; ret = g_app_info_get_description(G_APP_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_app_info_get_executable(PyGObject *self) { const gchar *ret; ret = g_app_info_get_executable(G_APP_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_app_info_get_icon(PyGObject *self) { GIcon *ret; ret = g_app_info_get_icon(G_APP_INFO(self->obj)); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } #line 118 "gappinfo.override" static PyObject * _wrap_g_app_info_launch(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "files", "launch_context", NULL }; GList *file_list = NULL; PyGObject *pycontext = NULL; GAppLaunchContext *ctx; PyObject *pyfile_list = Py_None; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OO:gio.AppInfo.launch", kwlist, &pyfile_list, &pycontext)) return NULL; if (!pygio_check_launch_context(pycontext, &ctx)) return NULL; if (pyfile_list == Py_None) file_list = NULL; else if (PySequence_Check (pyfile_list)) file_list = pygio_pylist_to_gfile_glist(pyfile_list); else { PyErr_SetString(PyExc_TypeError, "file_list should be a list of strings or None"); return NULL; } ret = g_app_info_launch(G_APP_INFO(self->obj), file_list, ctx, &error); g_list_free(file_list); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 7243 "gio.c" static PyObject * _wrap_g_app_info_supports_uris(PyGObject *self) { int ret; ret = g_app_info_supports_uris(G_APP_INFO(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_supports_files(PyGObject *self) { int ret; ret = g_app_info_supports_files(G_APP_INFO(self->obj)); return PyBool_FromLong(ret); } #line 73 "gappinfo.override" static PyObject * _wrap_g_app_info_launch_uris(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "files", "launch_context", NULL }; GList *file_list = NULL; PyGObject *pycontext = NULL; GAppLaunchContext *ctx; PyObject *pyfile_list = Py_None; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OO:gio.AppInfo.launch_uris", kwlist, &pyfile_list, &pycontext)) return NULL; if (!pygio_check_launch_context(pycontext, &ctx)) return NULL; if (pyfile_list == Py_None) file_list = NULL; else if (PySequence_Check (pyfile_list)) file_list = pygio_pylist_to_uri_glist(pyfile_list); else { PyErr_SetString(PyExc_TypeError, "file_list should be a list of strings or None"); return NULL; } ret = g_app_info_launch_uris(G_APP_INFO(self->obj), file_list, ctx, &error); g_list_free(file_list); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 7314 "gio.c" static PyObject * _wrap_g_app_info_should_show(PyGObject *self) { int ret; ret = g_app_info_should_show(G_APP_INFO(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_set_as_default_for_type(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "content_type", NULL }; char *content_type; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.AppInfo.set_as_default_for_type", kwlist, &content_type)) return NULL; ret = g_app_info_set_as_default_for_type(G_APP_INFO(self->obj), content_type, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_set_as_default_for_extension(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "extension", NULL }; char *extension; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.AppInfo.set_as_default_for_extension", kwlist, &extension)) return NULL; ret = g_app_info_set_as_default_for_extension(G_APP_INFO(self->obj), extension, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_add_supports_type(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "content_type", NULL }; char *content_type; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.AppInfo.add_supports_type", kwlist, &content_type)) return NULL; ret = g_app_info_add_supports_type(G_APP_INFO(self->obj), content_type, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_can_remove_supports_type(PyGObject *self) { int ret; ret = g_app_info_can_remove_supports_type(G_APP_INFO(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_remove_supports_type(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "content_type", NULL }; char *content_type; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.AppInfo.remove_supports_type", kwlist, &content_type)) return NULL; ret = g_app_info_remove_supports_type(G_APP_INFO(self->obj), content_type, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_can_delete(PyGObject *self) { int ret; ret = g_app_info_can_delete(G_APP_INFO(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_delete(PyGObject *self) { int ret; ret = g_app_info_delete(G_APP_INFO(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_app_info_get_commandline(PyGObject *self) { const gchar *ret; ret = g_app_info_get_commandline(G_APP_INFO(self->obj)); if (ret) return PyString_FromString(ret); Py_INCREF(Py_None); return Py_None; } static const PyMethodDef _PyGAppInfo_methods[] = { { "dup", (PyCFunction)_wrap_g_app_info_dup, METH_NOARGS, NULL }, { "equal", (PyCFunction)_wrap_g_app_info_equal, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_id", (PyCFunction)_wrap_g_app_info_get_id, METH_NOARGS, NULL }, { "get_name", (PyCFunction)_wrap_g_app_info_get_name, METH_NOARGS, NULL }, { "get_description", (PyCFunction)_wrap_g_app_info_get_description, METH_NOARGS, NULL }, { "get_executable", (PyCFunction)_wrap_g_app_info_get_executable, METH_NOARGS, NULL }, { "get_icon", (PyCFunction)_wrap_g_app_info_get_icon, METH_NOARGS, NULL }, { "launch", (PyCFunction)_wrap_g_app_info_launch, METH_VARARGS|METH_KEYWORDS, (char *) "launch (files=None, launch_context=None) -> gboolean\n" "\n" "Launches the application. Passes files to the launched application\n" "as arguments, using the optional launch_context to get information\n" "about the details of the launcher (like what screen it is on).\n" "On error, error will be set accordingly.\n\n" "Note that even if the launch is successful the application launched\n" "can fail to start if it runs into problems during startup.\n" "There is no way to detect this.\n\n" "Some URIs can be changed when passed through a gio.File\n" "(for instance unsupported uris with strange formats like mailto:),\n" "so if you have a textual uri you want to pass in as argument,\n" "consider using gio.AppInfo.launch_uris() instead." }, { "supports_uris", (PyCFunction)_wrap_g_app_info_supports_uris, METH_NOARGS, NULL }, { "supports_files", (PyCFunction)_wrap_g_app_info_supports_files, METH_NOARGS, NULL }, { "launch_uris", (PyCFunction)_wrap_g_app_info_launch_uris, METH_VARARGS|METH_KEYWORDS, (char *) "launch_uris (files=None, launch_context=None) -> gboolean\n" "\n" "Launches the application. Passes files to the launched application\n" "as arguments, using the optional launch_context to get information\n" "about the details of the launcher (like what screen it is on).\n" "On error, error will be set accordingly.\n\n" "Note that even if the launch is successful the application launched\n" "can fail to start if it runs into problems during startup.\n" "There is no way to detect this.\n\n" }, { "should_show", (PyCFunction)_wrap_g_app_info_should_show, METH_NOARGS, NULL }, { "set_as_default_for_type", (PyCFunction)_wrap_g_app_info_set_as_default_for_type, METH_VARARGS|METH_KEYWORDS, NULL }, { "set_as_default_for_extension", (PyCFunction)_wrap_g_app_info_set_as_default_for_extension, METH_VARARGS|METH_KEYWORDS, NULL }, { "add_supports_type", (PyCFunction)_wrap_g_app_info_add_supports_type, METH_VARARGS|METH_KEYWORDS, NULL }, { "can_remove_supports_type", (PyCFunction)_wrap_g_app_info_can_remove_supports_type, METH_NOARGS, NULL }, { "remove_supports_type", (PyCFunction)_wrap_g_app_info_remove_supports_type, METH_VARARGS|METH_KEYWORDS, NULL }, { "can_delete", (PyCFunction)_wrap_g_app_info_can_delete, METH_NOARGS, NULL }, { "delete", (PyCFunction)_wrap_g_app_info_delete, METH_NOARGS, NULL }, { "get_commandline", (PyCFunction)_wrap_g_app_info_get_commandline, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; #line 194 "gappinfo.override" static PyObject * _wrap_g_app_info_tp_repr(PyGObject *self) { const char *name = g_app_info_get_name(G_APP_INFO(self->obj)); gchar *representation; PyObject *result; representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, name ? name : "UNKNOWN NAME"); result = PyString_FromString(representation); g_free(representation); return result; } #line 7535 "gio.c" #line 163 "gappinfo.override" static PyObject * _wrap_g_app_info_tp_richcompare(PyGObject *self, PyGObject *other, int op) { PyObject *result; if (PyObject_TypeCheck(self, &PyGAppInfo_Type) && PyObject_TypeCheck(other, &PyGAppInfo_Type)) { GAppInfo *info1 = G_APP_INFO(self->obj); GAppInfo *info2 = G_APP_INFO(other->obj); switch (op) { case Py_EQ: result = (g_app_info_equal(info1, info2) ? Py_True : Py_False); break; case Py_NE: result = (!g_app_info_equal(info1, info2) ? Py_True : Py_False); break; default: result = Py_NotImplemented; } } else result = Py_NotImplemented; Py_INCREF(result); return result; } #line 7568 "gio.c" PyTypeObject G_GNUC_INTERNAL PyGAppInfo_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.AppInfo", /* tp_name */ sizeof(PyObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)_wrap_g_app_info_tp_repr, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)_wrap_g_app_info_tp_richcompare, /* tp_richcompare */ 0, /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGAppInfo_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ 0, /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GAsyncResult ----------- */ static PyObject * _wrap_g_async_result_get_source_object(PyGObject *self) { GObject *ret; ret = g_async_result_get_source_object(G_ASYNC_RESULT(self->obj)); /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static const PyMethodDef _PyGAsyncResult_methods[] = { { "get_source_object", (PyCFunction)_wrap_g_async_result_get_source_object, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; PyTypeObject G_GNUC_INTERNAL PyGAsyncResult_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.AsyncResult", /* tp_name */ sizeof(PyObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)0, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ 0, /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGAsyncResult_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ 0, /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GDrive ----------- */ static PyObject * _wrap_g_drive_get_name(PyGObject *self) { gchar *ret; ret = g_drive_get_name(G_DRIVE(self->obj)); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_drive_get_icon(PyGObject *self) { PyObject *py_ret; GIcon *ret; ret = g_drive_get_icon(G_DRIVE(self->obj)); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_drive_has_volumes(PyGObject *self) { int ret; ret = g_drive_has_volumes(G_DRIVE(self->obj)); return PyBool_FromLong(ret); } #line 26 "gdrive.override" static PyObject * _wrap_g_drive_get_volumes (PyGObject *self) { GList *list, *l; PyObject *ret; pyg_begin_allow_threads; list = g_drive_get_volumes (G_DRIVE (self->obj)); pyg_end_allow_threads; ret = PyList_New(0); for (l = list; l; l = l->next) { GVolume *volume = l->data; PyObject *item = pygobject_new((GObject *)volume); PyList_Append(ret, item); Py_DECREF(item); g_object_unref(volume); } g_list_free(list); return ret; } #line 7756 "gio.c" static PyObject * _wrap_g_drive_is_media_removable(PyGObject *self) { int ret; ret = g_drive_is_media_removable(G_DRIVE(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_drive_has_media(PyGObject *self) { int ret; ret = g_drive_has_media(G_DRIVE(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_drive_is_media_check_automatic(PyGObject *self) { int ret; ret = g_drive_is_media_check_automatic(G_DRIVE(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_drive_can_poll_for_media(PyGObject *self) { int ret; ret = g_drive_can_poll_for_media(G_DRIVE(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_drive_can_eject(PyGObject *self) { int ret; ret = g_drive_can_eject(G_DRIVE(self->obj)); return PyBool_FromLong(ret); } #line 52 "gdrive.override" static PyObject * _wrap_g_drive_eject(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; GMountUnmountFlags flags = G_MOUNT_UNMOUNT_NONE; PyGObject *py_cancellable = NULL; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOO:gio.Drive.eject", kwlist, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_UNMOUNT_FLAGS, py_flags, (gpointer) &flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_drive_eject(G_DRIVE(self->obj), flags, cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 7866 "gio.c" static PyObject * _wrap_g_drive_eject_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.Drive.eject_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_drive_eject_finish(G_DRIVE(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 100 "gdrive.override" static PyObject * _wrap_g_drive_poll_for_media(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyGObject *py_cancellable = NULL; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OO:gio.Drive.eject", kwlist, ¬ify->callback, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); pyg_begin_allow_threads; g_drive_poll_for_media(G_DRIVE(self->obj), cancellable, (GAsyncReadyCallback) async_result_callback_marshal, notify); pyg_end_allow_threads; Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 7931 "gio.c" static PyObject * _wrap_g_drive_poll_for_media_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.Drive.poll_for_media_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_drive_poll_for_media_finish(G_DRIVE(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_drive_get_identifier(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "kind", NULL }; char *kind; gchar *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.Drive.get_identifier", kwlist, &kind)) return NULL; ret = g_drive_get_identifier(G_DRIVE(self->obj), kind); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } #line 164 "gdrive.override" static PyObject * _wrap_g_drive_enumerate_identifiers (PyGObject *self) { char **ids; PyObject *ret; pyg_begin_allow_threads; ids = g_drive_enumerate_identifiers(G_DRIVE (self->obj)); pyg_end_allow_threads; if (ids && ids[0] != NULL) { ret = strv_to_pylist(ids); g_strfreev (ids); } else { ret = Py_None; Py_INCREF(ret); } return ret; } #line 7996 "gio.c" static const PyMethodDef _PyGDrive_methods[] = { { "get_name", (PyCFunction)_wrap_g_drive_get_name, METH_NOARGS, NULL }, { "get_icon", (PyCFunction)_wrap_g_drive_get_icon, METH_NOARGS, NULL }, { "has_volumes", (PyCFunction)_wrap_g_drive_has_volumes, METH_NOARGS, NULL }, { "get_volumes", (PyCFunction)_wrap_g_drive_get_volumes, METH_NOARGS, NULL }, { "is_media_removable", (PyCFunction)_wrap_g_drive_is_media_removable, METH_NOARGS, NULL }, { "has_media", (PyCFunction)_wrap_g_drive_has_media, METH_NOARGS, NULL }, { "is_media_check_automatic", (PyCFunction)_wrap_g_drive_is_media_check_automatic, METH_NOARGS, NULL }, { "can_poll_for_media", (PyCFunction)_wrap_g_drive_can_poll_for_media, METH_NOARGS, NULL }, { "can_eject", (PyCFunction)_wrap_g_drive_can_eject, METH_NOARGS, NULL }, { "eject", (PyCFunction)_wrap_g_drive_eject, METH_VARARGS|METH_KEYWORDS, NULL }, { "eject_finish", (PyCFunction)_wrap_g_drive_eject_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "poll_for_media", (PyCFunction)_wrap_g_drive_poll_for_media, METH_VARARGS|METH_KEYWORDS, NULL }, { "poll_for_media_finish", (PyCFunction)_wrap_g_drive_poll_for_media_finish, METH_VARARGS|METH_KEYWORDS, NULL }, { "get_identifier", (PyCFunction)_wrap_g_drive_get_identifier, METH_VARARGS|METH_KEYWORDS, NULL }, { "enumerate_identifiers", (PyCFunction)_wrap_g_drive_enumerate_identifiers, METH_NOARGS, NULL }, { NULL, NULL, 0, NULL } }; #line 144 "gdrive.override" static PyObject * _wrap_g_drive_tp_repr(PyGObject *self) { char *name = g_drive_get_name(G_DRIVE(self->obj)); gchar *representation; PyObject *result; if (name) { representation = g_strdup_printf("<%s at %p: %s>", self->ob_type->tp_name, self, name); g_free(name); } else representation = g_strdup_printf("<%s at %p: UNKNOWN NAME>", self->ob_type->tp_name, self); result = PyString_FromString(representation); g_free(representation); return result; } #line 8052 "gio.c" PyTypeObject G_GNUC_INTERNAL PyGDrive_Type = { PyObject_HEAD_INIT(NULL) 0, /* ob_size */ "gio.Drive", /* tp_name */ sizeof(PyObject), /* tp_basicsize */ 0, /* tp_itemsize */ /* methods */ (destructor)0, /* tp_dealloc */ (printfunc)0, /* tp_print */ (getattrfunc)0, /* tp_getattr */ (setattrfunc)0, /* tp_setattr */ (cmpfunc)0, /* tp_compare */ (reprfunc)_wrap_g_drive_tp_repr, /* tp_repr */ (PyNumberMethods*)0, /* tp_as_number */ (PySequenceMethods*)0, /* tp_as_sequence */ (PyMappingMethods*)0, /* tp_as_mapping */ (hashfunc)0, /* tp_hash */ (ternaryfunc)0, /* tp_call */ (reprfunc)0, /* tp_str */ (getattrofunc)0, /* tp_getattro */ (setattrofunc)0, /* tp_setattro */ (PyBufferProcs*)0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */ NULL, /* Documentation string */ (traverseproc)0, /* tp_traverse */ (inquiry)0, /* tp_clear */ (richcmpfunc)0, /* tp_richcompare */ 0, /* tp_weaklistoffset */ (getiterfunc)0, /* tp_iter */ (iternextfunc)0, /* tp_iternext */ (struct PyMethodDef*)_PyGDrive_methods, /* tp_methods */ (struct PyMemberDef*)0, /* tp_members */ (struct PyGetSetDef*)0, /* tp_getset */ NULL, /* tp_base */ NULL, /* tp_dict */ (descrgetfunc)0, /* tp_descr_get */ (descrsetfunc)0, /* tp_descr_set */ 0, /* tp_dictoffset */ (initproc)0, /* tp_init */ (allocfunc)0, /* tp_alloc */ (newfunc)0, /* tp_new */ (freefunc)0, /* tp_free */ (inquiry)0 /* tp_is_gc */ }; /* ----------- GFile ----------- */ static PyObject * _wrap_g_file_dup(PyGObject *self) { PyObject *py_ret; GFile *ret; ret = g_file_dup(G_FILE(self->obj)); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_equal(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "file2", NULL }; PyGObject *file2; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.equal", kwlist, &PyGFile_Type, &file2)) return NULL; ret = g_file_equal(G_FILE(self->obj), G_FILE(file2->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_get_basename(PyGObject *self) { gchar *ret; ret = g_file_get_basename(G_FILE(self->obj)); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_get_path(PyGObject *self) { gchar *ret; ret = g_file_get_path(G_FILE(self->obj)); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_get_uri(PyGObject *self) { gchar *ret; ret = g_file_get_uri(G_FILE(self->obj)); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_get_parse_name(PyGObject *self) { gchar *ret; ret = g_file_get_parse_name(G_FILE(self->obj)); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_get_parent(PyGObject *self) { PyObject *py_ret; GFile *ret; ret = g_file_get_parent(G_FILE(self->obj)); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_get_child(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "name", NULL }; char *name; PyObject *py_ret; GFile *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.File.get_child", kwlist, &name)) return NULL; ret = g_file_get_child(G_FILE(self->obj), name); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_get_child_for_display_name(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "display_name", NULL }; char *display_name; PyObject *py_ret; GFile *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.File.get_child_for_display_name", kwlist, &display_name)) return NULL; ret = g_file_get_child_for_display_name(G_FILE(self->obj), display_name, &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_has_prefix(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "descendant", NULL }; PyGObject *descendant; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.has_prefix", kwlist, &PyGFile_Type, &descendant)) return NULL; ret = g_file_has_prefix(G_FILE(self->obj), G_FILE(descendant->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_get_relative_path(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "descendant", NULL }; PyGObject *descendant; gchar *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.get_relative_path", kwlist, &PyGFile_Type, &descendant)) return NULL; ret = g_file_get_relative_path(G_FILE(self->obj), G_FILE(descendant->obj)); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_resolve_relative_path(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "relative_path", NULL }; char *relative_path; PyObject *py_ret; GFile *ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.File.resolve_relative_path", kwlist, &relative_path)) return NULL; ret = g_file_resolve_relative_path(G_FILE(self->obj), relative_path); py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_is_native(PyGObject *self) { int ret; ret = g_file_is_native(G_FILE(self->obj)); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_has_uri_scheme(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "uri_scheme", NULL }; char *uri_scheme; int ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s:gio.File.has_uri_scheme", kwlist, &uri_scheme)) return NULL; ret = g_file_has_uri_scheme(G_FILE(self->obj), uri_scheme); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_get_uri_scheme(PyGObject *self) { gchar *ret; ret = g_file_get_uri_scheme(G_FILE(self->obj)); if (ret) { PyObject *py_ret = PyString_FromString(ret); g_free(ret); return py_ret; } Py_INCREF(Py_None); return Py_None; } static PyObject * _wrap_g_file_read(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; GFileInputStream *ret; GCancellable *cancellable = NULL; GError *error = NULL; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.File.read", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_read(G_FILE(self->obj), (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 126 "gfile.override" static PyObject * _wrap_g_file_read_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:File.read_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_read_async(G_FILE(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 8436 "gio.c" static PyObject * _wrap_g_file_read_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; PyObject *py_ret; GFileInputStream *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.read_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_read_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_append_to(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "flags", "cancellable", NULL }; PyObject *py_flags = NULL, *py_ret; GCancellable *cancellable = NULL; GError *error = NULL; PyGObject *py_cancellable = NULL; GFileOutputStream *ret; GFileCreateFlags flags = G_FILE_CREATE_NONE; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|OO:gio.File.append_to", kwlist, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_append_to(G_FILE(self->obj), flags, (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_create(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "flags", "cancellable", NULL }; PyObject *py_flags = NULL, *py_ret; GCancellable *cancellable = NULL; GError *error = NULL; PyGObject *py_cancellable = NULL; GFileOutputStream *ret; GFileCreateFlags flags = G_FILE_CREATE_NONE; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|OO:gio.File.create", kwlist, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_create(G_FILE(self->obj), flags, (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_replace(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "etag", "make_backup", "flags", "cancellable", NULL }; int make_backup; GCancellable *cancellable = NULL; GError *error = NULL; char *etag; PyObject *py_flags = NULL, *py_ret; PyGObject *py_cancellable = NULL; GFileOutputStream *ret; GFileCreateFlags flags = G_FILE_CREATE_NONE; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"si|OO:gio.File.replace", kwlist, &etag, &make_backup, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_replace(G_FILE(self->obj), etag, make_backup, flags, (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 864 "gfile.override" static PyObject * _wrap_g_file_append_to_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OiOO:File.append_to_async", kwlist, ¬ify->callback, &flags, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_append_to_async(G_FILE(self->obj), flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 8612 "gio.c" static PyObject * _wrap_g_file_append_to_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; PyObject *py_ret; GFileOutputStream *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.append_to_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_append_to_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 912 "gfile.override" static PyObject * _wrap_g_file_create_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OiOO:File.create_async", kwlist, ¬ify->callback, &flags, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_create_async(G_FILE(self->obj), flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 8684 "gio.c" static PyObject * _wrap_g_file_create_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; PyObject *py_ret; GFileOutputStream *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.create_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_create_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 960 "gfile.override" static PyObject * _wrap_g_file_replace_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "etag", "make_backup", "flags", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; char *etag = NULL; gboolean make_backup = TRUE; PyObject *py_backup = Py_True; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|zOOiOO:File.replace_async", kwlist, ¬ify->callback, &etag, &py_backup, &flags, &io_priority, &pycancellable, ¬ify->data)) goto error; make_backup = PyObject_IsTrue(py_backup) ? TRUE : FALSE; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_replace_async(G_FILE(self->obj), etag, make_backup, flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 8763 "gio.c" static PyObject * _wrap_g_file_replace_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; PyObject *py_ret; GFileOutputStream *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.replace_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_replace_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_query_exists(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.File.query_exists", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_query_exists(G_FILE(self->obj), (GCancellable *) cancellable); return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_query_file_type(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "flags", "cancellable", NULL }; PyObject *py_flags = NULL; PyGObject *cancellable; GFileQueryInfoFlags flags; gint ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"OO!:gio.File.query_file_type", kwlist, &py_flags, &PyGCancellable_Type, &cancellable)) return NULL; if (pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; ret = g_file_query_file_type(G_FILE(self->obj), flags, G_CANCELLABLE(cancellable->obj)); return pyg_enum_from_gtype(G_TYPE_FILE_TYPE, ret); } static PyObject * _wrap_g_file_query_info(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_flags = NULL, *py_ret; GCancellable *cancellable = NULL; GError *error = NULL; char *attributes; GFileInfo *ret; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s|OO:gio.File.query_info", kwlist, &attributes, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_query_info(G_FILE(self->obj), attributes, flags, (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 1015 "gfile.override" static PyObject * _wrap_g_file_query_info_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; char *attributes; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|OiOO:File.query_info_async", kwlist, &attributes, ¬ify->callback, &flags, &io_priority, &pycancellable, ¬ify->data)) { /* To preserve compatibility with 2.16 we also allow swapped * 'attributes' and 'callback'. FIXME: Remove for 3.0. */ static char *old_kwlist[] = { "callback", "attributes", "flags", "io_priority", "cancellable", "user_data", NULL }; PyObject *exc_type, *exc_value, *exc_traceback; PyErr_Fetch(&exc_type, &exc_value, &exc_traceback); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "Os|OiOO:File.query_info_async", old_kwlist, ¬ify->callback, &attributes, &flags, &io_priority, &pycancellable, ¬ify->data) || !pygio_notify_callback_is_valid(notify)) { /* Report the error with new parameters. */ PyErr_Restore(exc_type, exc_value, exc_traceback); goto error; } Py_XDECREF(exc_type); Py_XDECREF(exc_value); Py_XDECREF(exc_traceback); } if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_query_info_async(G_FILE(self->obj), attributes, flags, io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 8942 "gio.c" static PyObject * _wrap_g_file_query_info_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; PyObject *py_ret; GFileInfo *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.query_info_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_query_info_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_query_filesystem_info(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "cancellable", NULL }; PyObject *py_ret; GCancellable *cancellable = NULL; GError *error = NULL; char *attributes; GFileInfo *ret; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s|O:gio.File.query_filesystem_info", kwlist, &attributes, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_query_filesystem_info(G_FILE(self->obj), attributes, (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 1402 "gfile.override" static PyObject * _wrap_g_file_query_filesystem_info_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "io_priority", "cancellable", "user_data", NULL }; PyGIONotify *notify; char *attributes; int io_priority = G_PRIORITY_DEFAULT; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.File.query_filesystem_info_async", kwlist, &attributes, ¬ify->callback, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_query_filesystem_info_async(G_FILE(self->obj), attributes, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 9046 "gio.c" static PyObject * _wrap_g_file_query_filesystem_info_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; GFileInfo *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.query_filesystem_info_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_query_filesystem_info_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; /* pygobject_new handles NULL checking */ return pygobject_new((GObject *)ret); } static PyObject * _wrap_g_file_find_enclosing_mount(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; GMount *ret; GCancellable *cancellable = NULL; GError *error = NULL; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.File.find_enclosing_mount", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_find_enclosing_mount(G_FILE(self->obj), (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 1356 "gfile.override" static PyObject * _wrap_g_file_find_enclosing_mount_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "io_priority", "cancellable", "user_data", NULL }; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|iOO:File.enclosing_mount_async", kwlist, ¬ify->callback, &io_priority, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_find_enclosing_mount_async(G_FILE(self->obj), io_priority, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 9144 "gio.c" static PyObject * _wrap_g_file_find_enclosing_mount_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; GMount *ret; GError *error = NULL; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.find_enclosing_mount_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_find_enclosing_mount_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_enumerate_children(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "flags", "cancellable", NULL }; GFileEnumerator *ret; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_flags = NULL, *py_ret; GCancellable *cancellable = NULL; GError *error = NULL; char *attributes; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s|OO:gio.File.enumerate_children", kwlist, &attributes, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_enumerate_children(G_FILE(self->obj), attributes, flags, (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 300 "gfile.override" static PyObject * _wrap_g_file_enumerate_children_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attributes", "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; PyGIONotify *notify; char *attributes; PyObject *py_flags = NULL; int io_priority = G_PRIORITY_DEFAULT; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|OiOO:gio.File.enumerate_children_async", kwlist, &attributes, ¬ify->callback, &py_flags, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_enumerate_children_async(G_FILE(self->obj), attributes, flags, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 9258 "gio.c" static PyObject * _wrap_g_file_enumerate_children_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; GFileEnumerator *ret; GError *error = NULL; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.enumerate_children_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_enumerate_children_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_set_display_name(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "display_name", "cancellable", NULL }; PyObject *py_ret; GCancellable *cancellable = NULL; GError *error = NULL; char *display_name; GFile *ret; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s|O:gio.File.set_display_name", kwlist, &display_name, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_set_display_name(G_FILE(self->obj), display_name, (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 1542 "gfile.override" static PyObject * _wrap_g_file_set_display_name_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "display_name", "callback", "io_priority", "cancellable", "user_data", NULL }; PyGIONotify *notify; char *display_name; int io_priority = G_PRIORITY_DEFAULT; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "sO|iOO:gio.File.set_display_name_async", kwlist, &display_name, ¬ify->callback, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_set_display_name_async(G_FILE(self->obj), display_name, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } /* GFile.load_partial_contents_async: No ArgType for GFileReadMoreCallback */ /* GFile.load_partial_contents_finish: No ArgType for char** */ #line 9366 "gio.c" static PyObject * _wrap_g_file_set_display_name_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; PyObject *py_ret; GFile *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.set_display_name_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_set_display_name_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } static PyObject * _wrap_g_file_delete(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.File.delete", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_delete(G_FILE(self->obj), (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_trash(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.File.trash", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_trash(G_FILE(self->obj), (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 516 "gfile.override" static PyObject * _wrap_g_file_copy(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "destination", "progress_callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *destination = NULL; PyGObject *py_cancellable = NULL; GFileCopyFlags flags = G_FILE_COPY_NONE; GCancellable *cancellable; int ret; GError *error = NULL; GFileProgressCallback callback = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!|OOOO:File.copy", kwlist, &PyGFile_Type, &destination, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (pygio_notify_using_optional_callback(notify)) { callback = (GFileProgressCallback)file_progress_callback_marshal; if (!pygio_notify_callback_is_valid(notify)) goto error; } if (py_flags && pyg_flags_get_value(G_TYPE_FILE_COPY_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; /* No need to reference callback here, because it will be used * only while this function is in progress. */ pyg_begin_allow_threads; ret = g_file_copy(G_FILE(self->obj), G_FILE(destination->obj), flags, cancellable, callback, notify, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) goto error; pygio_notify_free(notify); return PyBool_FromLong(ret); error: pygio_notify_free(notify); return NULL; } #line 9517 "gio.c" #line 587 "gfile.override" static PyObject * _wrap_g_file_copy_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "destination", "callback", "progress_callback", "flags", "io_priority", "cancellable", "user_data", "progress_callback_data", NULL }; PyGIONotify *notify, *progress_notify; PyObject *py_flags = NULL; PyGObject *destination = NULL; PyGObject *py_cancellable = NULL; GFileCopyFlags flags = G_FILE_COPY_NONE; int io_priority = G_PRIORITY_DEFAULT; PyGObject *pycancellable = NULL; GCancellable *cancellable; GFileProgressCallback progress_callback = NULL; /* After the creation, referencing/freeing will automatically be * done on the master and the slave. */ notify = pygio_notify_new(); progress_notify = pygio_notify_new_slave(notify); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OOiOOO:File.copy_async", kwlist, &PyGFile_Type, &destination, ¬ify->callback, &progress_notify->callback, &py_flags, &io_priority, &pycancellable, ¬ify->data, &progress_notify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; if (pygio_notify_using_optional_callback(progress_notify)) { progress_callback = (GFileProgressCallback) file_progress_callback_marshal; if (!pygio_notify_callback_is_valid_full(progress_notify, "progress_callback")) goto error; } if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_copy_async(G_FILE(self->obj), G_FILE(destination->obj), flags, io_priority, cancellable, progress_callback, progress_notify, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 9592 "gio.c" static PyObject * _wrap_g_file_copy_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "res", NULL }; PyGObject *res; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.copy_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_copy_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 660 "gfile.override" static PyObject * _wrap_g_file_move(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "destination", "progress_callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *destination = NULL; PyGObject *py_cancellable = NULL; GFileCopyFlags flags = G_FILE_COPY_NONE; GCancellable *cancellable; int ret; GError *error = NULL; GFileProgressCallback callback = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!|OOOO:File.move", kwlist, &PyGFile_Type, &destination, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (pygio_notify_using_optional_callback(notify)) { callback = (GFileProgressCallback)file_progress_callback_marshal; if (!pygio_notify_callback_is_valid(notify)) goto error; } if (py_flags && pyg_flags_get_value(G_TYPE_FILE_COPY_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; /* No need to reference callback here, because it will be used * only while this function is in progress. */ pyg_begin_allow_threads; ret = g_file_move(G_FILE(self->obj), G_FILE(destination->obj), flags, cancellable, callback, notify, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) goto error; pygio_notify_free(notify); return PyBool_FromLong(ret); error: pygio_notify_free(notify); return NULL; } #line 9684 "gio.c" static PyObject * _wrap_g_file_make_directory(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|O:gio.File.make_directory", kwlist, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_make_directory(G_FILE(self->obj), (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_make_directory_with_parents(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *cancellable; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.make_directory_with_parents", kwlist, &PyGCancellable_Type, &cancellable)) return NULL; pyg_begin_allow_threads; ret = g_file_make_directory_with_parents(G_FILE(self->obj), G_CANCELLABLE(cancellable->obj), &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_make_symbolic_link(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "symlink_value", "cancellable", NULL }; char *symlink_value; PyGObject *py_cancellable = NULL; int ret; GCancellable *cancellable = NULL; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"s|O:gio.File.make_symbolic_link", kwlist, &symlink_value, &py_cancellable)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } pyg_begin_allow_threads; ret = g_file_make_symbolic_link(G_FILE(self->obj), symlink_value, (GCancellable *) cancellable, &error); pyg_end_allow_threads; if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 772 "gfile.override" static PyObject * _wrap_g_file_query_settable_attributes(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *pycancellable = NULL; GCancellable *cancellable = NULL; GFileAttributeInfoList *ret; GError *error = NULL; gint i, n_infos; GFileAttributeInfo *infos; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O:gio.File.query_settable_attributes", kwlist, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; ret = g_file_query_settable_attributes(G_FILE(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; n_infos = ret->n_infos; infos = ret->infos; if (n_infos > 0) { py_ret = PyList_New(n_infos); for (i = 0; i < n_infos; i++) { PyList_SetItem(py_ret, i, pyg_file_attribute_info_new(&infos[i])); } g_file_attribute_info_list_unref(ret); return py_ret; } else { Py_INCREF(Py_None); return Py_None; } } #line 9808 "gio.c" #line 818 "gfile.override" static PyObject * _wrap_g_file_query_writable_namespaces(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "cancellable", NULL }; PyGObject *pycancellable = NULL; GCancellable *cancellable = NULL; GFileAttributeInfoList *ret; GError *error = NULL; gint i, n_infos; GFileAttributeInfo *infos; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O:gio.File.query_writable_namespaces", kwlist, &pycancellable)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; ret = g_file_query_writable_namespaces(G_FILE(self->obj), (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; n_infos = ret->n_infos; infos = ret->infos; if (n_infos > 0) { py_ret = PyList_New(n_infos); for (i = 0; i < n_infos; i++) { PyList_SetItem(py_ret, i, pyg_file_attribute_info_new(&infos[i])); } g_file_attribute_info_list_unref(ret); return py_ret; } else { Py_INCREF(Py_None); return Py_None; } } #line 9856 "gio.c" #line 731 "gfile.override" static PyObject * _wrap_g_file_set_attribute(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "type", "value_p", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; int ret; GCancellable *cancellable = NULL; GError *error = NULL; char *attribute; PyObject *py_type = NULL, *py_flags = NULL, *value_p; PyGObject *pycancellable = NULL; GFileAttributeType type; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sOO|OO:gio.File.set_attribute", kwlist, &attribute, &py_type, &value_p, &py_flags, &pycancellable)) return NULL; if (pyg_enum_get_value(G_TYPE_FILE_ATTRIBUTE_TYPE, py_type, (gpointer)&type)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if (!pygio_check_cancellable(pycancellable, &cancellable)) return NULL; ret = g_file_set_attribute(G_FILE(self->obj), attribute, type, (gpointer)value_p, flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 9899 "gio.c" static PyObject * _wrap_g_file_set_attributes_from_info(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "info", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_flags = NULL; GCancellable *cancellable = NULL; GError *error = NULL; int ret; PyGObject *info, *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!|OO:gio.File.set_attributes_from_info", kwlist, &PyGFileInfo_Type, &info, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_set_attributes_from_info(G_FILE(self->obj), G_FILE_INFO(info->obj), flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 1450 "gfile.override" static PyObject * _wrap_g_file_set_attributes_async(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "info", "callback", "flags", "io_priority", "cancellable", "user_data", NULL }; PyGObject *info; PyGIONotify *notify; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; int io_priority = G_PRIORITY_DEFAULT; GCancellable *cancellable = NULL; PyGObject *py_cancellable = NULL; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OiOO:gio.File.set_attributes_async", kwlist, &PyGFileInfo_Type, &info, ¬ify->callback, &flags, &io_priority, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_set_attributes_async(G_FILE(self->obj), G_FILE_INFO(info->obj), flags, io_priority, (GCancellable *) cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 9988 "gio.c" #line 1505 "gfile.override" static PyObject * _wrap_g_file_set_attributes_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *res; GFileInfo *info = NULL; GError *error = NULL; gboolean ret; PyObject *py_ret; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:File.set_attributes_finish", kwlist, &PyGAsyncResult_Type, &res)) return NULL; ret = g_file_set_attributes_finish(G_FILE(self->obj), G_ASYNC_RESULT(res->obj), &info, &error); if (pyg_error_check(&error)) return NULL; if (ret) { py_ret = pygobject_new((GObject *)info); } else { py_ret = Py_None; Py_INCREF(py_ret); } return py_ret; } #line 10027 "gio.c" static PyObject * _wrap_g_file_set_attribute_string(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "value", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_flags = NULL; GCancellable *cancellable = NULL; GError *error = NULL; char *attribute, *value; int ret; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"ss|OO:gio.File.set_attribute_string", kwlist, &attribute, &value, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_set_attribute_string(G_FILE(self->obj), attribute, value, flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_set_attribute_byte_string(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "value", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_flags = NULL; GCancellable *cancellable = NULL; GError *error = NULL; char *attribute, *value; int ret; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"ss|OO:gio.File.set_attribute_byte_string", kwlist, &attribute, &value, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_set_attribute_byte_string(G_FILE(self->obj), attribute, value, flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_set_attribute_uint32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "value", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_flags = NULL; GCancellable *cancellable = NULL; GError *error = NULL; char *attribute; int ret; unsigned long value; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sk|OO:gio.File.set_attribute_uint32", kwlist, &attribute, &value, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_set_attribute_uint32(G_FILE(self->obj), attribute, value, flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_set_attribute_int32(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "value", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; int value, ret; GCancellable *cancellable = NULL; GError *error = NULL; char *attribute; PyObject *py_flags = NULL; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"si|OO:gio.File.set_attribute_int32", kwlist, &attribute, &value, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_set_attribute_int32(G_FILE(self->obj), attribute, value, flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_set_attribute_uint64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "value", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_value = NULL, *py_flags = NULL; GCancellable *cancellable = NULL; GError *error = NULL; char *attribute; int ret; guint64 value; PyGObject *py_cancellable = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sO!|OO:gio.File.set_attribute_uint64", kwlist, &attribute, &PyLong_Type, &py_value, &py_flags, &py_cancellable)) return NULL; value = PyLong_AsUnsignedLongLong(py_value); if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_set_attribute_uint64(G_FILE(self->obj), attribute, value, flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_set_attribute_int64(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "attribute", "value", "flags", "cancellable", NULL }; GFileQueryInfoFlags flags = G_FILE_QUERY_INFO_NONE; PyObject *py_flags = NULL; GCancellable *cancellable = NULL; GError *error = NULL; char *attribute; int ret; PyGObject *py_cancellable = NULL; gint64 value; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sL|OO:gio.File.set_attribute_int64", kwlist, &attribute, &value, &py_flags, &py_cancellable)) return NULL; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_QUERY_INFO_FLAGS, py_flags, (gpointer)&flags)) return NULL; if ((PyObject *)py_cancellable == Py_None) cancellable = NULL; else if (py_cancellable && pygobject_check(py_cancellable, &PyGCancellable_Type)) cancellable = G_CANCELLABLE(py_cancellable->obj); else if (py_cancellable) { PyErr_SetString(PyExc_TypeError, "cancellable should be a GCancellable or None"); return NULL; } ret = g_file_set_attribute_int64(G_FILE(self->obj), attribute, value, flags, (GCancellable *) cancellable, &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 461 "gfile.override" static PyObject * _wrap_g_file_mount_enclosing_volume(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "mount_operation", "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *mount_operation; PyGObject *py_cancellable = NULL; GMountMountFlags flags = G_MOUNT_MOUNT_NONE; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OOO:File.mount_enclosing_volume", kwlist, &PyGMountOperation_Type, &mount_operation, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_MOUNT_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_mount_enclosing_volume(G_FILE(self->obj), flags, G_MOUNT_OPERATION(mount_operation->obj), cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 10286 "gio.c" static PyObject * _wrap_g_file_mount_enclosing_volume_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.mount_enclosing_volume_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_file_mount_enclosing_volume_finish(G_FILE(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 355 "gfile.override" static PyObject * _wrap_g_file_mount_mountable(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "mount_operation", "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *mount_operation; PyGObject *py_cancellable = NULL; GMountMountFlags flags = G_MOUNT_MOUNT_NONE; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!O|OOO:File.mount_mountable", kwlist, &PyGMountOperation_Type, &mount_operation, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_MOUNT_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_mount_mountable(G_FILE(self->obj), flags, G_MOUNT_OPERATION(mount_operation->obj), cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 10362 "gio.c" static PyObject * _wrap_g_file_mount_mountable_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; PyObject *py_ret; GFile *ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.mount_mountable_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_file_mount_mountable_finish(G_FILE(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; py_ret = pygobject_new((GObject *)ret); if (ret != NULL) g_object_unref(ret); return py_ret; } #line 410 "gfile.override" static PyObject * _wrap_g_file_unmount_mountable(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "cancellable", "user_data", NULL }; PyGIONotify *notify; PyObject *py_flags = NULL; PyGObject *py_cancellable = NULL; GMountUnmountFlags flags = G_MOUNT_UNMOUNT_NONE; GCancellable *cancellable; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOO:File.unmount_mountable", kwlist, ¬ify->callback, &py_flags, &py_cancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_MOUNT_UNMOUNT_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(py_cancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_unmount_mountable(G_FILE(self->obj), flags, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 10437 "gio.c" static PyObject * _wrap_g_file_unmount_mountable_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.unmount_mountable_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_file_unmount_mountable_finish(G_FILE(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } #line 1309 "gfile.override" static PyObject * _wrap_g_file_eject_mountable(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "callback", "flags", "cancellable", "user_data", NULL }; GCancellable *cancellable; PyGObject *pycancellable = NULL; GFileCreateFlags flags = G_FILE_CREATE_NONE; PyObject *py_flags = NULL; PyGIONotify *notify; notify = pygio_notify_new(); if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OOO:File.eject_mountable", kwlist, ¬ify->callback, &flags, &pycancellable, ¬ify->data)) goto error; if (!pygio_notify_callback_is_valid(notify)) goto error; if (py_flags && pyg_flags_get_value(G_TYPE_FILE_CREATE_FLAGS, py_flags, (gpointer)&flags)) goto error; if (!pygio_check_cancellable(pycancellable, &cancellable)) goto error; pygio_notify_reference_callback(notify); g_file_eject_mountable(G_FILE(self->obj), flags, cancellable, (GAsyncReadyCallback)async_result_callback_marshal, notify); Py_INCREF(Py_None); return Py_None; error: pygio_notify_free(notify); return NULL; } #line 10505 "gio.c" static PyObject * _wrap_g_file_eject_mountable_finish(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "result", NULL }; PyGObject *result; int ret; GError *error = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs,"O!:gio.File.eject_mountable_finish", kwlist, &PyGAsyncResult_Type, &result)) return NULL; ret = g_file_eject_mountable_finish(G_FILE(self->obj), G_ASYNC_RESULT(result->obj), &error); if (pyg_error_check(&error)) return NULL; return PyBool_FromLong(ret); } static PyObject * _wrap_g_file_copy_attributes(PyGObject *self, PyObject *args, PyObject *kwargs) { static char *kwlist[] = { "destination", "flags", "cancellable", NULL }; int ret; GFileCopyFlags flags = G_FILE_COPY_NONE; GCancellable *cancellable = NULL; GError *error = NULL; PyObject *py_flags = NULL; PyGObject *destination