Glib::RefPtr<Gio::FileInfo> Gio::FileOutputStream::query_info(const Glib::RefPtr<Gio::Cancellable>&, const string&) (struct FileOutputStream * const this, const struct RefPtr & cancellable, const struct string & attributes)
{
  struct BaseObjectType * D.99517;
  const char * D.99518;
  gchar * D.99519;
  struct GFileOutputStream * D.99520;
  struct GFileInfo * D.99521;
  struct GError * gerror.0;
  bool retval.1;
  struct FileInfo * D.99528;
  int (*__vtbl_ptr_type) () * D.99529;
  int (*__vtbl_ptr_type) () * D.99530;
  long int D.99531;
  sizetype D.99532;
  struct ObjectBase * D.99533;
  int (*__vtbl_ptr_type) () * D.99534;
  int (*__vtbl_ptr_type) () * D.99535;
  int (*__vtbl_ptr_type) () D.99536;
  struct GError * gerror;
  struct RefPtr retvalue [value-expr: *<retval>];

  try
    {
      gerror = 0B;
      D.99517 = Glib::unwrap<Gio::Cancellable> (cancellable);
      D.99518 = std::basic_string<char>::c_str (attributes);
      D.99519 = g_strdup (D.99518);
      D.99520 = Gio::FileOutputStream::gobj (this);
      D.99521 = g_file_output_stream_query_info (D.99520, D.99519, D.99517, &gerror);
      *<retval> = Glib::wrap (D.99521, 0); [return slot optimization]
      try
        {
          gerror.0 = gerror;
          if (gerror.0 != 0B) goto <D.99523>; else goto <D.99524>;
          <D.99523>:
          gerror.0 = gerror;
          Glib::Error::throw_exception (gerror.0);
          <D.99524>:
          retval.1 = Glib::RefPtr<Gio::FileInfo>::operator bool (<retval>);
          if (retval.1 != 0) goto <D.99526>; else goto <D.99527>;
          <D.99526>:
          D.99528 = Glib::RefPtr<Gio::FileInfo>::operator-> (<retval>);
          D.99529 = D.99528->D.97856._vptr.Object;
          D.99530 = D.99529 + 18446744073709551592;
          D.99531 = MEM[(long int *)D.99530];
          D.99532 = (sizetype) D.99531;
          D.99533 = D.99528 + D.99532;
          D.99529 = D.99528->D.97856._vptr.Object;
          D.99530 = D.99529 + 18446744073709551592;
          D.99531 = MEM[(long int *)D.99530];
          D.99532 = (sizetype) D.99531;
          D.99533 = D.99528 + D.99532;
          D.99534 = D.99533->_vptr.ObjectBase;
          D.99535 = D.99534 + 16;
          D.99536 = *D.99535;
          D.99529 = D.99528->D.97856._vptr.Object;
          D.99530 = D.99529 + 18446744073709551592;
          D.99531 = MEM[(long int *)D.99530];
          D.99532 = (sizetype) D.99531;
          D.99533 = D.99528 + D.99532;
          OBJ_TYPE_REF(D.99536;(const struct ObjectBase)D.99533->2) (D.99533);
          goto <D.99537>;
          <D.99527>:
          <D.99537>:
          return <retval>;
        }
      catch
        {
          Glib::RefPtr<Gio::FileInfo>::~RefPtr (<retval>);
        }
    }
  finally
    {
      gerror = {CLOBBER};
    }
}


typename T::BaseObjectType* Glib::unwrap(const Glib::RefPtr<T_CppObject>&) [with T = Gio::Cancellable; typename T::BaseObjectType = _GCancellable] (const struct RefPtr & ptr)
{
  struct BaseObjectType * D.99547;
  struct BaseObjectType * iftmp.2;
  bool D.99549;
  struct Cancellable * D.99552;

  D.99549 = Glib::RefPtr<Gio::Cancellable>::operator bool (ptr);
  if (D.99549 != 0) goto <D.99550>; else goto <D.99551>;
  <D.99550>:
  D.99552 = Glib::RefPtr<Gio::Cancellable>::operator-> (ptr);
  iftmp.2 = Gio::Cancellable::gobj (D.99552);
  goto <D.99553>;
  <D.99551>:
  iftmp.2 = 0B;
  <D.99553>:
  D.99547 = iftmp.2;
  return D.99547;
}


Glib::RefPtr<T_CppObject>::operator bool() const [with T_CppObject = Gio::Cancellable] (const struct RefPtr * const this)
{
  bool D.99555;
  struct Cancellable * D.99556;

  D.99556 = this->pCppObject_;
  D.99555 = D.99556 != 0B;
  return D.99555;
}


T_CppObject* Glib::RefPtr<T_CppObject>::operator->() const [with T_CppObject = Gio::Cancellable] (const struct RefPtr * const this)
{
  struct Cancellable * D.99558;

  D.99558 = this->pCppObject_;
  return D.99558;
}


GCancellable* Gio::Cancellable::gobj() (struct Cancellable * const this)
{
  struct GCancellable * D.99560;
  int (*__vtbl_ptr_type) () * D.99561;
  int (*__vtbl_ptr_type) () * D.99562;
  long int D.99563;
  sizetype D.99564;
  struct ObjectBase * D.99565;

  D.99561 = this->D.86174._vptr.Object;
  D.99562 = D.99561 + 18446744073709551592;
  D.99563 = MEM[(long int *)D.99562];
  D.99564 = (sizetype) D.99563;
  D.99565 = this + D.99564;
  D.99560 = D.99565->gobject_;
  return D.99560;
}


const _CharT* std::basic_string<_CharT, _Traits, _Alloc>::c_str() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>] (const struct basic_string * const this)
{
  const char * D.99567;

  D.99567 = std::basic_string<char>::_M_data (this);
  return D.99567;
}


_CharT* std::basic_string<_CharT, _Traits, _Alloc>::_M_data() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>] (const struct basic_string * const this)
{
  char * D.99570;

  D.99570 = this->_M_dataplus._M_p;
  return D.99570;
}


GFileOutputStream* Gio::FileOutputStream::gobj() (struct FileOutputStream * const this)
{
  struct GFileOutputStream * D.99572;
  int (*__vtbl_ptr_type) () * D.99573;
  int (*__vtbl_ptr_type) () * D.99574;
  long int D.99575;
  sizetype D.99576;
  struct ObjectBase * D.99577;

  D.99573 = this->D.97980.D.86631._vptr.Object;
  D.99574 = D.99573 + 18446744073709551592;
  D.99575 = MEM[(long int *)D.99574];
  D.99576 = (sizetype) D.99575;
  D.99577 = this + D.99576;
  D.99572 = D.99577->gobject_;
  return D.99572;
}


Glib::RefPtr<T_CppObject>::operator bool() const [with T_CppObject = Gio::FileInfo] (const struct RefPtr * const this)
{
  bool D.99579;
  struct FileInfo * D.99580;

  D.99580 = this->pCppObject_;
  D.99579 = D.99580 != 0B;
  return D.99579;
}


T_CppObject* Glib::RefPtr<T_CppObject>::operator->() const [with T_CppObject = Gio::FileInfo] (const struct RefPtr * const this)
{
  struct FileInfo * D.99582;

  D.99582 = this->pCppObject_;
  return D.99582;
}


Glib::RefPtr<T_CppObject>::~RefPtr() [with T_CppObject = Gio::FileInfo] (struct RefPtr * const this)
{
  struct FileInfo * D.99584;
  int (*__vtbl_ptr_type) () * D.99587;
  int (*__vtbl_ptr_type) () * D.99588;
  long int D.99589;
  sizetype D.99590;
  struct ObjectBase * D.99591;
  int (*__vtbl_ptr_type) () * D.99592;
  int (*__vtbl_ptr_type) () * D.99593;
  int (*__vtbl_ptr_type) () D.99594;

  {
    try
      {
        D.99584 = this->pCppObject_;
        if (D.99584 != 0B) goto <D.99585>; else goto <D.99586>;
        <D.99585>:
        D.99584 = this->pCppObject_;
        D.99584 = this->pCppObject_;
        D.99587 = D.99584->D.97856._vptr.Object;
        D.99588 = D.99587 + 18446744073709551592;
        D.99589 = MEM[(long int *)D.99588];
        D.99590 = (sizetype) D.99589;
        D.99591 = D.99584 + D.99590;
        D.99584 = this->pCppObject_;
        D.99584 = this->pCppObject_;
        D.99587 = D.99584->D.97856._vptr.Object;
        D.99588 = D.99587 + 18446744073709551592;
        D.99589 = MEM[(long int *)D.99588];
        D.99590 = (sizetype) D.99589;
        D.99591 = D.99584 + D.99590;
        D.99592 = D.99591->_vptr.ObjectBase;
        D.99593 = D.99592 + 24;
        D.99594 = *D.99593;
        D.99584 = this->pCppObject_;
        D.99584 = this->pCppObject_;
        D.99587 = D.99584->D.97856._vptr.Object;
        D.99588 = D.99587 + 18446744073709551592;
        D.99589 = MEM[(long int *)D.99588];
        D.99590 = (sizetype) D.99589;
        D.99591 = D.99584 + D.99590;
        OBJ_TYPE_REF(D.99594;(const struct ObjectBase)D.99591->3) (D.99591);
        goto <D.99595>;
        <D.99586>:
        <D.99595>:
      }
    finally
      {
        *this = {CLOBBER};
      }
  }
  <D.99150>:
}


Glib::RefPtr<Gio::FileInfo> Gio::FileOutputStream::query_info(const string&) (struct FileOutputStream * const this, const struct string & attributes)
{
  const char * D.99598;
  gchar * D.99599;
  struct GFileOutputStream * D.99600;
  struct GFileInfo * D.99601;
  struct GError * gerror.3;
  bool retval.4;
  struct FileInfo * D.99608;
  int (*__vtbl_ptr_type) () * D.99609;
  int (*__vtbl_ptr_type) () * D.99610;
  long int D.99611;
  sizetype D.99612;
  struct ObjectBase * D.99613;
  int (*__vtbl_ptr_type) () * D.99614;
  int (*__vtbl_ptr_type) () * D.99615;
  int (*__vtbl_ptr_type) () D.99616;
  struct GError * gerror;
  struct RefPtr retvalue [value-expr: *<retval>];

  try
    {
      gerror = 0B;
      D.99598 = std::basic_string<char>::c_str (attributes);
      D.99599 = g_strdup (D.99598);
      D.99600 = Gio::FileOutputStream::gobj (this);
      D.99601 = g_file_output_stream_query_info (D.99600, D.99599, 0B, &gerror);
      *<retval> = Glib::wrap (D.99601, 0); [return slot optimization]
      try
        {
          gerror.3 = gerror;
          if (gerror.3 != 0B) goto <D.99603>; else goto <D.99604>;
          <D.99603>:
          gerror.3 = gerror;
          Glib::Error::throw_exception (gerror.3);
          <D.99604>:
          retval.4 = Glib::RefPtr<Gio::FileInfo>::operator bool (<retval>);
          if (retval.4 != 0) goto <D.99606>; else goto <D.99607>;
          <D.99606>:
          D.99608 = Glib::RefPtr<Gio::FileInfo>::operator-> (<retval>);
          D.99609 = D.99608->D.97856._vptr.Object;
          D.99610 = D.99609 + 18446744073709551592;
          D.99611 = MEM[(long int *)D.99610];
          D.99612 = (sizetype) D.99611;
          D.99613 = D.99608 + D.99612;
          D.99609 = D.99608->D.97856._vptr.Object;
          D.99610 = D.99609 + 18446744073709551592;
          D.99611 = MEM[(long int *)D.99610];
          D.99612 = (sizetype) D.99611;
          D.99613 = D.99608 + D.99612;
          D.99614 = D.99613->_vptr.ObjectBase;
          D.99615 = D.99614 + 16;
          D.99616 = *D.99615;
          D.99609 = D.99608->D.97856._vptr.Object;
          D.99610 = D.99609 + 18446744073709551592;
          D.99611 = MEM[(long int *)D.99610];
          D.99612 = (sizetype) D.99611;
          D.99613 = D.99608 + D.99612;
          OBJ_TYPE_REF(D.99616;(const struct ObjectBase)D.99613->2) (D.99613);
          goto <D.99617>;
          <D.99607>:
          <D.99617>:
          return <retval>;
        }
      catch
        {
          Glib::RefPtr<Gio::FileInfo>::~RefPtr (<retval>);
        }
    }
  finally
    {
      gerror = {CLOBBER};
    }
}


void Gio::FileOutputStream::query_info_async(const SlotAsyncReady&, const Glib::RefPtr<Gio::Cancellable>&, const string&, int) (struct FileOutputStream * const this, const struct SlotAsyncReady & slot, const struct RefPtr & cancellable, const struct string & attributes, int io_priority)
{
  void * slot_copy.5;
  struct BaseObjectType * D.99625;
  const char * D.99626;
  struct GFileOutputStream * D.99627;
  struct SlotAsyncReady * slot_copy;

  slot_copy.5 = operator new (16);
  try
    {
      sigc::slot<void, Glib::RefPtr<Gio::AsyncResult>&>::slot (slot_copy.5, slot);
    }
  catch
    {
      operator delete (slot_copy.5);
    }
  slot_copy = slot_copy.5;
  D.99625 = Glib::unwrap<Gio::Cancellable> (cancellable);
  D.99626 = std::basic_string<char>::c_str (attributes);
  D.99627 = Gio::FileOutputStream::gobj (this);
  g_file_output_stream_query_info_async (D.99627, D.99626, io_priority, D.99625, SignalProxy_async_callback, slot_copy);
}


sigc::slot<T_return, T_arg1, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>::slot(const sigc::slot<T_return, T_arg1, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>&) [with T_return = void; T_arg1 = Glib::RefPtr<Gio::AsyncResult>&] (struct slot * const this, const struct slot & src)
{
  struct slot1 * D.99632;

  D.99632 = &this->D.98446;
  sigc::slot1<void, Glib::RefPtr<Gio::AsyncResult>&>::slot1 (D.99632, src);
  try
    {

    }
  catch
    {
      D.99632 = &this->D.98446;
      sigc::slot1<void, Glib::RefPtr<Gio::AsyncResult>&>::~slot1 (D.99632);
    }
}


sigc::slot1<T_return, T_arg1>::slot1(const sigc::slot1<T_return, T_arg1>&) [with T_return = void; T_arg1 = Glib::RefPtr<Gio::AsyncResult>&] (struct slot1 * const this, const struct slot1 & src)
{
  const struct slot_base * D.99633;
  struct slot_base * D.99634;

  D.99633 = &src->D.98404;
  D.99634 = &this->D.98404;
  sigc::slot_base::slot_base (D.99634, D.99633);
  try
    {

    }
  catch
    {
      D.99634 = &this->D.98404;
      sigc::slot_base::~slot_base (D.99634);
    }
}


void Gio::FileOutputStream::query_info_async(const SlotAsyncReady&, const string&, int) (struct FileOutputStream * const this, const struct SlotAsyncReady & slot, const struct string & attributes, int io_priority)
{
  void * slot_copy.6;
  const char * D.99635;
  struct GFileOutputStream * D.99636;
  struct SlotAsyncReady * slot_copy;

  slot_copy.6 = operator new (16);
  try
    {
      sigc::slot<void, Glib::RefPtr<Gio::AsyncResult>&>::slot (slot_copy.6, slot);
    }
  catch
    {
      operator delete (slot_copy.6);
    }
  slot_copy = slot_copy.6;
  D.99635 = std::basic_string<char>::c_str (attributes);
  D.99636 = Gio::FileOutputStream::gobj (this);
  g_file_output_stream_query_info_async (D.99636, D.99635, io_priority, 0B, SignalProxy_async_callback, slot_copy);
}


Glib::RefPtr<Gio::FileOutputStream> Glib::wrap(GFileOutputStream*, bool) (struct GFileOutputStream * object, bool take_copy)
{
  struct FileOutputStream * iftmp.7;
  int D.99642;
  struct ObjectBase * D.99643;

  D.99642 = (int) take_copy;
  D.99643 = Glib::wrap_auto (object, D.99642);
  if (D.99643 == 0B) goto <D.99644>; else goto <D.99645>;
  <D.99644>:
  iftmp.7 = 0B;
  goto <D.99646>;
  <D.99645>:
  iftmp.7 = __dynamic_cast (D.99643, &_ZTIN4Glib10ObjectBaseE, &_ZTIN3Gio16FileOutputStreamE, -1);
  <D.99646>:
  Glib::RefPtr<Gio::FileOutputStream>::RefPtr (<retval>, iftmp.7);
  return <retval>;
}


Glib::RefPtr<T_CppObject>::RefPtr(T_CppObject*) [with T_CppObject = Gio::FileOutputStream] (struct RefPtr * const this, struct FileOutputStream * pCppObject)
{
  this->pCppObject_ = pCppObject;
}


const Glib::Class& Gio::FileOutputStream_Class::init() (struct FileOutputStream_Class * const this)
{
  long unsigned int D.99649;
  long unsigned int D.99652;
  struct Class * D.99653;
  long unsigned int D.99654;
  const struct Class & D.99656;

  D.99649 = this->D.98057.gtype_;
  if (D.99649 == 0) goto <D.99650>; else goto <D.99651>;
  <D.99650>:
  this->D.98057.class_init_func_ = class_init_function;
  D.99652 = g_file_output_stream_get_type ();
  D.99653 = &this->D.98057;
  Glib::Class::register_derived_type (D.99653, D.99652);
  D.99653 = &this->D.98057;
  D.99654 = Glib::Class::get_type (D.99653);
  Gio::Seekable::add_interface (D.99654);
  goto <D.99655>;
  <D.99651>:
  <D.99655>:
  D.99656 = &this->D.98057;
  return D.99656;
}


GType Glib::Class::get_type() const (const struct Class * const this)
{
  GType D.99659;

  D.99659 = this->gtype_;
  return D.99659;
}


static void Gio::FileOutputStream_Class::class_init_function(void*, void*) (void * g_class, void * class_data)
{
  struct BaseClassType * const klass;

  klass = g_class;
  Gio::OutputStream_Class::class_init_function (klass, class_data);
}


static Glib::ObjectBase* Gio::FileOutputStream_Class::wrap_new(GObject*) (struct GObject * object)
{
  struct ObjectBase * D.99661;
  struct ObjectBase * iftmp.8;
  void * D.98743;
  void * D.99663;
  int (*__vtbl_ptr_type) () * D.99666;
  int (*__vtbl_ptr_type) () * D.99667;
  long int D.99668;
  sizetype D.99669;

  D.98743 = operator new (56);
  try
    {
      Gio::FileOutputStream::FileOutputStream (D.98743, object);
    }
  catch
    {
      operator delete (D.98743);
    }
  D.99663 = D.98743;
  if (D.99663 != 0B) goto <D.99664>; else goto <D.99665>;
  <D.99664>:
  D.99666 = MEM[(struct FileOutputStream *)D.99663].D.97980.D.86631._vptr.Object;
  D.99667 = D.99666 + 18446744073709551592;
  D.99668 = MEM[(long int *)D.99667];
  D.99669 = (sizetype) D.99668;
  iftmp.8 = D.99663 + D.99669;
  goto <D.99670>;
  <D.99665>:
  iftmp.8 = 0B;
  <D.99670>:
  D.99661 = iftmp.8;
  return D.99661;
}


GFileOutputStream* Gio::FileOutputStream::gobj_copy() (struct FileOutputStream * const this)
{
  int (*__vtbl_ptr_type) () * D.99674;
  int (*__vtbl_ptr_type) () * D.99675;
  long int D.99676;
  sizetype D.99677;
  struct ObjectBase * D.99678;
  int (*__vtbl_ptr_type) () * D.99679;
  int (*__vtbl_ptr_type) () * D.99680;
  int (*__vtbl_ptr_type) () D.99681;
  struct GFileOutputStream * D.99682;

  D.99674 = this->D.97980.D.86631._vptr.Object;
  D.99675 = D.99674 + 18446744073709551592;
  D.99676 = MEM[(long int *)D.99675];
  D.99677 = (sizetype) D.99676;
  D.99678 = this + D.99677;
  D.99674 = this->D.97980.D.86631._vptr.Object;
  D.99675 = D.99674 + 18446744073709551592;
  D.99676 = MEM[(long int *)D.99675];
  D.99677 = (sizetype) D.99676;
  D.99678 = this + D.99677;
  D.99679 = D.99678->_vptr.ObjectBase;
  D.99680 = D.99679 + 16;
  D.99681 = *D.99680;
  D.99674 = this->D.97980.D.86631._vptr.Object;
  D.99675 = D.99674 + 18446744073709551592;
  D.99676 = MEM[(long int *)D.99675];
  D.99677 = (sizetype) D.99676;
  D.99678 = this + D.99677;
  OBJ_TYPE_REF(D.99681;(const struct ObjectBase)D.99678->2) (D.99678);
  D.99682 = Gio::FileOutputStream::gobj (this);
  return D.99682;
}


Gio::FileOutputStream::FileOutputStream(const Glib::ConstructParams&) (struct FileOutputStream * const this, const void * * __vtt_parm, const struct ConstructParams & construct_params)
{
  struct trackable * D.99686;
  const void * * iftmp.9;
  struct ObjectBase * D.99694;
  const void * * iftmp.10;
  struct OutputStream * D.99700;
  const void * * iftmp.11;
  struct Seekable * D.99705;
  int (*__vtbl_ptr_type) () * iftmp.12;
  sizetype iftmp.13;
  int (*__vtbl_ptr_type) () * D.99713;
  int (*__vtbl_ptr_type) () * D.99714;
  long int D.99715;
  struct ObjectBase * D.99717;
  int (*__vtbl_ptr_type) () * iftmp.14;
  int (*__vtbl_ptr_type) () * iftmp.15;
  const void * * iftmp.16;
  const void * * iftmp.17;
  const void * * iftmp.18;

  if (0 != 0) goto <D.99684>; else goto <D.99685>;
  <D.99684>:
  D.99686 = &this->D.97985;
  sigc::trackable::trackable (D.99686);
  goto <D.99687>;
  <D.99685>:
  <D.99687>:
  try
    {
      if (0 != 0) goto <D.99688>; else goto <D.99689>;
      <D.99688>:
      if (0 == 0) goto <D.99691>; else goto <D.99692>;
      <D.99691>:
      iftmp.9 = __vtt_parm + 88;
      goto <D.99693>;
      <D.99692>:
      iftmp.9 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
      <D.99693>:
      D.99694 = &this->D.97984;
      Glib::ObjectBase::ObjectBase (D.99694, iftmp.9);
      goto <D.99695>;
      <D.99689>:
      <D.99695>:
      try
        {
          if (0 == 0) goto <D.99697>; else goto <D.99698>;
          <D.99697>:
          iftmp.10 = __vtt_parm + 8;
          goto <D.99699>;
          <D.99698>:
          iftmp.10 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
          <D.99699>:
          D.99700 = &this->D.97980;
          Gio::OutputStream::OutputStream (D.99700, iftmp.10, construct_params);
          try
            {
              if (0 == 0) goto <D.99702>; else goto <D.99703>;
              <D.99702>:
              iftmp.11 = __vtt_parm + 40;
              goto <D.99704>;
              <D.99703>:
              iftmp.11 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
              <D.99704>:
              D.99705 = &this->D.97981;
              Gio::Seekable::Seekable (D.99705, iftmp.11);
              try
                {
                  if (0 == 0) goto <D.99707>; else goto <D.99708>;
                  <D.99707>:
                  iftmp.12 = *__vtt_parm;
                  goto <D.99709>;
                  <D.99708>:
                  iftmp.12 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 32B];
                  <D.99709>:
                  this->D.97980.D.86631._vptr.Object = iftmp.12;
                  if (0 == 0) goto <D.99711>; else goto <D.99712>;
                  <D.99711>:
                  D.99713 = this->D.97980.D.86631._vptr.Object;
                  D.99714 = D.99713 + 18446744073709551592;
                  D.99715 = MEM[(long int *)D.99714];
                  iftmp.13 = (sizetype) D.99715;
                  goto <D.99716>;
                  <D.99712>:
                  iftmp.13 = 16;
                  <D.99716>:
                  D.99717 = this + iftmp.13;
                  if (0 == 0) goto <D.99719>; else goto <D.99720>;
                  <D.99719>:
                  iftmp.14 = MEM[(const void * *)__vtt_parm + 72B];
                  goto <D.99721>;
                  <D.99720>:
                  iftmp.14 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 160B];
                  <D.99721>:
                  D.99717->_vptr.ObjectBase = iftmp.14;
                  if (0 == 0) goto <D.99723>; else goto <D.99724>;
                  <D.99723>:
                  iftmp.15 = MEM[(const void * *)__vtt_parm + 80B];
                  goto <D.99725>;
                  <D.99724>:
                  iftmp.15 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 80B];
                  <D.99725>:
                  this->D.97981.D.86768._vptr.Interface = iftmp.15;
                }
              catch
                {
                  if (0 == 0) goto <D.99727>; else goto <D.99728>;
                  <D.99727>:
                  iftmp.16 = __vtt_parm + 40;
                  goto <D.99729>;
                  <D.99728>:
                  iftmp.16 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
                  <D.99729>:
                  D.99705 = &this->D.97981;
                  Gio::Seekable::~Seekable (D.99705, iftmp.16);
                }
            }
          catch
            {
              if (0 == 0) goto <D.99731>; else goto <D.99732>;
              <D.99731>:
              iftmp.17 = __vtt_parm + 8;
              goto <D.99733>;
              <D.99732>:
              iftmp.17 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
              <D.99733>:
              D.99700 = &this->D.97980;
              Gio::OutputStream::~OutputStream (D.99700, iftmp.17);
            }
        }
      catch
        {
          if (0 != 0) goto <D.99734>; else goto <D.99735>;
          <D.99734>:
          if (0 == 0) goto <D.99737>; else goto <D.99738>;
          <D.99737>:
          iftmp.18 = __vtt_parm + 88;
          goto <D.99739>;
          <D.99738>:
          iftmp.18 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
          <D.99739>:
          D.99694 = &this->D.97984;
          Glib::ObjectBase::~ObjectBase (D.99694, iftmp.18);
          goto <D.99740>;
          <D.99735>:
          <D.99740>:
        }
    }
  catch
    {
      if (0 != 0) goto <D.99741>; else goto <D.99742>;
      <D.99741>:
      D.99686 = &this->D.97985;
      sigc::trackable::~trackable (D.99686);
      goto <D.99743>;
      <D.99742>:
      <D.99743>:
    }
}


Gio::FileOutputStream::FileOutputStream(const Glib::ConstructParams&) (struct FileOutputStream * const this, const struct ConstructParams & construct_params)
{
  struct trackable * D.99749;
  const void * * iftmp.19;
  struct ObjectBase * D.99757;
  const void * * iftmp.20;
  struct OutputStream * D.99763;
  const void * * iftmp.21;
  struct Seekable * D.99768;
  int (*__vtbl_ptr_type) () * iftmp.22;
  const void * * D.99772;
  sizetype iftmp.23;
  int (*__vtbl_ptr_type) () * D.99777;
  int (*__vtbl_ptr_type) () * D.99778;
  long int D.99779;
  struct ObjectBase * D.99781;
  int (*__vtbl_ptr_type) () * iftmp.24;
  int (*__vtbl_ptr_type) () * iftmp.25;
  const void * * iftmp.26;
  const void * * iftmp.27;
  const void * * iftmp.28;

  if (1 != 0) goto <D.99747>; else goto <D.99748>;
  <D.99747>:
  D.99749 = &this->D.97985;
  sigc::trackable::trackable (D.99749);
  goto <D.99750>;
  <D.99748>:
  <D.99750>:
  try
    {
      if (1 != 0) goto <D.99751>; else goto <D.99752>;
      <D.99751>:
      if (1 == 0) goto <D.99754>; else goto <D.99755>;
      <D.99754>:
      iftmp.19 = 88B;
      goto <D.99756>;
      <D.99755>:
      iftmp.19 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
      <D.99756>:
      D.99757 = &this->D.97984;
      Glib::ObjectBase::ObjectBase (D.99757, iftmp.19);
      goto <D.99758>;
      <D.99752>:
      <D.99758>:
      try
        {
          if (1 == 0) goto <D.99760>; else goto <D.99761>;
          <D.99760>:
          iftmp.20 = 8B;
          goto <D.99762>;
          <D.99761>:
          iftmp.20 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
          <D.99762>:
          D.99763 = &this->D.97980;
          Gio::OutputStream::OutputStream (D.99763, iftmp.20, construct_params);
          try
            {
              if (1 == 0) goto <D.99765>; else goto <D.99766>;
              <D.99765>:
              iftmp.21 = 40B;
              goto <D.99767>;
              <D.99766>:
              iftmp.21 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
              <D.99767>:
              D.99768 = &this->D.97981;
              Gio::Seekable::Seekable (D.99768, iftmp.21);
              try
                {
                  if (1 == 0) goto <D.99770>; else goto <D.99771>;
                  <D.99770>:
                  D.99772 = 0B;
                  iftmp.22 = *D.99772;
                  goto <D.99773>;
                  <D.99771>:
                  iftmp.22 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 32B];
                  <D.99773>:
                  this->D.97980.D.86631._vptr.Object = iftmp.22;
                  if (1 == 0) goto <D.99775>; else goto <D.99776>;
                  <D.99775>:
                  D.99777 = this->D.97980.D.86631._vptr.Object;
                  D.99778 = D.99777 + 18446744073709551592;
                  D.99779 = MEM[(long int *)D.99778];
                  iftmp.23 = (sizetype) D.99779;
                  goto <D.99780>;
                  <D.99776>:
                  iftmp.23 = 16;
                  <D.99780>:
                  D.99781 = this + iftmp.23;
                  if (1 == 0) goto <D.99783>; else goto <D.99784>;
                  <D.99783>:
                  iftmp.24 = MEM[(const void * *)0B + 72B];
                  goto <D.99785>;
                  <D.99784>:
                  iftmp.24 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 160B];
                  <D.99785>:
                  D.99781->_vptr.ObjectBase = iftmp.24;
                  if (1 == 0) goto <D.99787>; else goto <D.99788>;
                  <D.99787>:
                  iftmp.25 = MEM[(const void * *)0B + 80B];
                  goto <D.99789>;
                  <D.99788>:
                  iftmp.25 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 80B];
                  <D.99789>:
                  this->D.97981.D.86768._vptr.Interface = iftmp.25;
                }
              catch
                {
                  if (1 == 0) goto <D.99791>; else goto <D.99792>;
                  <D.99791>:
                  iftmp.26 = 40B;
                  goto <D.99793>;
                  <D.99792>:
                  iftmp.26 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
                  <D.99793>:
                  D.99768 = &this->D.97981;
                  Gio::Seekable::~Seekable (D.99768, iftmp.26);
                }
            }
          catch
            {
              if (1 == 0) goto <D.99795>; else goto <D.99796>;
              <D.99795>:
              iftmp.27 = 8B;
              goto <D.99797>;
              <D.99796>:
              iftmp.27 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
              <D.99797>:
              D.99763 = &this->D.97980;
              Gio::OutputStream::~OutputStream (D.99763, iftmp.27);
            }
        }
      catch
        {
          if (1 != 0) goto <D.99798>; else goto <D.99799>;
          <D.99798>:
          if (1 == 0) goto <D.99801>; else goto <D.99802>;
          <D.99801>:
          iftmp.28 = 88B;
          goto <D.99803>;
          <D.99802>:
          iftmp.28 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
          <D.99803>:
          D.99757 = &this->D.97984;
          Glib::ObjectBase::~ObjectBase (D.99757, iftmp.28);
          goto <D.99804>;
          <D.99799>:
          <D.99804>:
        }
    }
  catch
    {
      if (1 != 0) goto <D.99805>; else goto <D.99806>;
      <D.99805>:
      D.99749 = &this->D.97985;
      sigc::trackable::~trackable (D.99749);
      goto <D.99807>;
      <D.99806>:
      <D.99807>:
    }
}


Gio::FileOutputStream::FileOutputStream(GFileOutputStream*) (struct FileOutputStream * const this, const void * * __vtt_parm, struct GFileOutputStream * castitem)
{
  struct trackable * D.99813;
  const void * * iftmp.29;
  struct ObjectBase * D.99821;
  const void * * iftmp.30;
  struct OutputStream * D.99827;
  const void * * iftmp.31;
  struct Seekable * D.99832;
  int (*__vtbl_ptr_type) () * iftmp.32;
  sizetype iftmp.33;
  int (*__vtbl_ptr_type) () * D.99840;
  int (*__vtbl_ptr_type) () * D.99841;
  long int D.99842;
  struct ObjectBase * D.99844;
  int (*__vtbl_ptr_type) () * iftmp.34;
  int (*__vtbl_ptr_type) () * iftmp.35;
  const void * * iftmp.36;
  const void * * iftmp.37;
  const void * * iftmp.38;

  if (0 != 0) goto <D.99811>; else goto <D.99812>;
  <D.99811>:
  D.99813 = &this->D.97985;
  sigc::trackable::trackable (D.99813);
  goto <D.99814>;
  <D.99812>:
  <D.99814>:
  try
    {
      if (0 != 0) goto <D.99815>; else goto <D.99816>;
      <D.99815>:
      if (0 == 0) goto <D.99818>; else goto <D.99819>;
      <D.99818>:
      iftmp.29 = __vtt_parm + 88;
      goto <D.99820>;
      <D.99819>:
      iftmp.29 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
      <D.99820>:
      D.99821 = &this->D.97984;
      Glib::ObjectBase::ObjectBase (D.99821, iftmp.29);
      goto <D.99822>;
      <D.99816>:
      <D.99822>:
      try
        {
          if (0 == 0) goto <D.99824>; else goto <D.99825>;
          <D.99824>:
          iftmp.30 = __vtt_parm + 8;
          goto <D.99826>;
          <D.99825>:
          iftmp.30 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
          <D.99826>:
          D.99827 = &this->D.97980;
          Gio::OutputStream::OutputStream (D.99827, iftmp.30, castitem);
          try
            {
              if (0 == 0) goto <D.99829>; else goto <D.99830>;
              <D.99829>:
              iftmp.31 = __vtt_parm + 40;
              goto <D.99831>;
              <D.99830>:
              iftmp.31 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
              <D.99831>:
              D.99832 = &this->D.97981;
              Gio::Seekable::Seekable (D.99832, iftmp.31);
              try
                {
                  if (0 == 0) goto <D.99834>; else goto <D.99835>;
                  <D.99834>:
                  iftmp.32 = *__vtt_parm;
                  goto <D.99836>;
                  <D.99835>:
                  iftmp.32 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 32B];
                  <D.99836>:
                  this->D.97980.D.86631._vptr.Object = iftmp.32;
                  if (0 == 0) goto <D.99838>; else goto <D.99839>;
                  <D.99838>:
                  D.99840 = this->D.97980.D.86631._vptr.Object;
                  D.99841 = D.99840 + 18446744073709551592;
                  D.99842 = MEM[(long int *)D.99841];
                  iftmp.33 = (sizetype) D.99842;
                  goto <D.99843>;
                  <D.99839>:
                  iftmp.33 = 16;
                  <D.99843>:
                  D.99844 = this + iftmp.33;
                  if (0 == 0) goto <D.99846>; else goto <D.99847>;
                  <D.99846>:
                  iftmp.34 = MEM[(const void * *)__vtt_parm + 72B];
                  goto <D.99848>;
                  <D.99847>:
                  iftmp.34 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 160B];
                  <D.99848>:
                  D.99844->_vptr.ObjectBase = iftmp.34;
                  if (0 == 0) goto <D.99850>; else goto <D.99851>;
                  <D.99850>:
                  iftmp.35 = MEM[(const void * *)__vtt_parm + 80B];
                  goto <D.99852>;
                  <D.99851>:
                  iftmp.35 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 80B];
                  <D.99852>:
                  this->D.97981.D.86768._vptr.Interface = iftmp.35;
                }
              catch
                {
                  if (0 == 0) goto <D.99854>; else goto <D.99855>;
                  <D.99854>:
                  iftmp.36 = __vtt_parm + 40;
                  goto <D.99856>;
                  <D.99855>:
                  iftmp.36 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
                  <D.99856>:
                  D.99832 = &this->D.97981;
                  Gio::Seekable::~Seekable (D.99832, iftmp.36);
                }
            }
          catch
            {
              if (0 == 0) goto <D.99858>; else goto <D.99859>;
              <D.99858>:
              iftmp.37 = __vtt_parm + 8;
              goto <D.99860>;
              <D.99859>:
              iftmp.37 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
              <D.99860>:
              D.99827 = &this->D.97980;
              Gio::OutputStream::~OutputStream (D.99827, iftmp.37);
            }
        }
      catch
        {
          if (0 != 0) goto <D.99861>; else goto <D.99862>;
          <D.99861>:
          if (0 == 0) goto <D.99864>; else goto <D.99865>;
          <D.99864>:
          iftmp.38 = __vtt_parm + 88;
          goto <D.99866>;
          <D.99865>:
          iftmp.38 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
          <D.99866>:
          D.99821 = &this->D.97984;
          Glib::ObjectBase::~ObjectBase (D.99821, iftmp.38);
          goto <D.99867>;
          <D.99862>:
          <D.99867>:
        }
    }
  catch
    {
      if (0 != 0) goto <D.99868>; else goto <D.99869>;
      <D.99868>:
      D.99813 = &this->D.97985;
      sigc::trackable::~trackable (D.99813);
      goto <D.99870>;
      <D.99869>:
      <D.99870>:
    }
}


Gio::FileOutputStream::FileOutputStream(GFileOutputStream*) (struct FileOutputStream * const this, struct GFileOutputStream * castitem)
{
  struct trackable * D.99876;
  const void * * iftmp.39;
  struct ObjectBase * D.99884;
  const void * * iftmp.40;
  struct OutputStream * D.99890;
  const void * * iftmp.41;
  struct Seekable * D.99895;
  int (*__vtbl_ptr_type) () * iftmp.42;
  const void * * D.99899;
  sizetype iftmp.43;
  int (*__vtbl_ptr_type) () * D.99904;
  int (*__vtbl_ptr_type) () * D.99905;
  long int D.99906;
  struct ObjectBase * D.99908;
  int (*__vtbl_ptr_type) () * iftmp.44;
  int (*__vtbl_ptr_type) () * iftmp.45;
  const void * * iftmp.46;
  const void * * iftmp.47;
  const void * * iftmp.48;

  if (1 != 0) goto <D.99874>; else goto <D.99875>;
  <D.99874>:
  D.99876 = &this->D.97985;
  sigc::trackable::trackable (D.99876);
  goto <D.99877>;
  <D.99875>:
  <D.99877>:
  try
    {
      if (1 != 0) goto <D.99878>; else goto <D.99879>;
      <D.99878>:
      if (1 == 0) goto <D.99881>; else goto <D.99882>;
      <D.99881>:
      iftmp.39 = 88B;
      goto <D.99883>;
      <D.99882>:
      iftmp.39 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
      <D.99883>:
      D.99884 = &this->D.97984;
      Glib::ObjectBase::ObjectBase (D.99884, iftmp.39);
      goto <D.99885>;
      <D.99879>:
      <D.99885>:
      try
        {
          if (1 == 0) goto <D.99887>; else goto <D.99888>;
          <D.99887>:
          iftmp.40 = 8B;
          goto <D.99889>;
          <D.99888>:
          iftmp.40 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
          <D.99889>:
          D.99890 = &this->D.97980;
          Gio::OutputStream::OutputStream (D.99890, iftmp.40, castitem);
          try
            {
              if (1 == 0) goto <D.99892>; else goto <D.99893>;
              <D.99892>:
              iftmp.41 = 40B;
              goto <D.99894>;
              <D.99893>:
              iftmp.41 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
              <D.99894>:
              D.99895 = &this->D.97981;
              Gio::Seekable::Seekable (D.99895, iftmp.41);
              try
                {
                  if (1 == 0) goto <D.99897>; else goto <D.99898>;
                  <D.99897>:
                  D.99899 = 0B;
                  iftmp.42 = *D.99899;
                  goto <D.99900>;
                  <D.99898>:
                  iftmp.42 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 32B];
                  <D.99900>:
                  this->D.97980.D.86631._vptr.Object = iftmp.42;
                  if (1 == 0) goto <D.99902>; else goto <D.99903>;
                  <D.99902>:
                  D.99904 = this->D.97980.D.86631._vptr.Object;
                  D.99905 = D.99904 + 18446744073709551592;
                  D.99906 = MEM[(long int *)D.99905];
                  iftmp.43 = (sizetype) D.99906;
                  goto <D.99907>;
                  <D.99903>:
                  iftmp.43 = 16;
                  <D.99907>:
                  D.99908 = this + iftmp.43;
                  if (1 == 0) goto <D.99910>; else goto <D.99911>;
                  <D.99910>:
                  iftmp.44 = MEM[(const void * *)0B + 72B];
                  goto <D.99912>;
                  <D.99911>:
                  iftmp.44 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 160B];
                  <D.99912>:
                  D.99908->_vptr.ObjectBase = iftmp.44;
                  if (1 == 0) goto <D.99914>; else goto <D.99915>;
                  <D.99914>:
                  iftmp.45 = MEM[(const void * *)0B + 80B];
                  goto <D.99916>;
                  <D.99915>:
                  iftmp.45 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 80B];
                  <D.99916>:
                  this->D.97981.D.86768._vptr.Interface = iftmp.45;
                }
              catch
                {
                  if (1 == 0) goto <D.99918>; else goto <D.99919>;
                  <D.99918>:
                  iftmp.46 = 40B;
                  goto <D.99920>;
                  <D.99919>:
                  iftmp.46 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
                  <D.99920>:
                  D.99895 = &this->D.97981;
                  Gio::Seekable::~Seekable (D.99895, iftmp.46);
                }
            }
          catch
            {
              if (1 == 0) goto <D.99922>; else goto <D.99923>;
              <D.99922>:
              iftmp.47 = 8B;
              goto <D.99924>;
              <D.99923>:
              iftmp.47 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
              <D.99924>:
              D.99890 = &this->D.97980;
              Gio::OutputStream::~OutputStream (D.99890, iftmp.47);
            }
        }
      catch
        {
          if (1 != 0) goto <D.99925>; else goto <D.99926>;
          <D.99925>:
          if (1 == 0) goto <D.99928>; else goto <D.99929>;
          <D.99928>:
          iftmp.48 = 88B;
          goto <D.99930>;
          <D.99929>:
          iftmp.48 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
          <D.99930>:
          D.99884 = &this->D.97984;
          Glib::ObjectBase::~ObjectBase (D.99884, iftmp.48);
          goto <D.99931>;
          <D.99926>:
          <D.99931>:
        }
    }
  catch
    {
      if (1 != 0) goto <D.99932>; else goto <D.99933>;
      <D.99932>:
      D.99876 = &this->D.97985;
      sigc::trackable::~trackable (D.99876);
      goto <D.99934>;
      <D.99933>:
      <D.99934>:
    }
}


Gio::FileOutputStream::~FileOutputStream() (struct FileOutputStream * const this, const void * * __vtt_parm)
{
  int (*__vtbl_ptr_type) () * iftmp.49;
  sizetype iftmp.50;
  int (*__vtbl_ptr_type) () * D.99945;
  int (*__vtbl_ptr_type) () * D.99946;
  long int D.99947;
  struct ObjectBase * D.99949;
  int (*__vtbl_ptr_type) () * iftmp.51;
  int (*__vtbl_ptr_type) () * iftmp.52;
  const void * * iftmp.53;
  struct Seekable * D.99962;
  const void * * iftmp.54;
  struct OutputStream * D.99967;
  int D.99968;
  const void * * iftmp.55;
  struct ObjectBase * D.99975;
  struct trackable * D.99979;
  int D.99981;

  {
    if (0 == 0) goto <D.99939>; else goto <D.99940>;
    <D.99939>:
    iftmp.49 = *__vtt_parm;
    goto <D.99941>;
    <D.99940>:
    iftmp.49 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 32B];
    <D.99941>:
    this->D.97980.D.86631._vptr.Object = iftmp.49;
    if (0 == 0) goto <D.99943>; else goto <D.99944>;
    <D.99943>:
    D.99945 = this->D.97980.D.86631._vptr.Object;
    D.99946 = D.99945 + 18446744073709551592;
    D.99947 = MEM[(long int *)D.99946];
    iftmp.50 = (sizetype) D.99947;
    goto <D.99948>;
    <D.99944>:
    iftmp.50 = 16;
    <D.99948>:
    D.99949 = this + iftmp.50;
    if (0 == 0) goto <D.99951>; else goto <D.99952>;
    <D.99951>:
    iftmp.51 = MEM[(const void * *)__vtt_parm + 72B];
    goto <D.99953>;
    <D.99952>:
    iftmp.51 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 160B];
    <D.99953>:
    D.99949->_vptr.ObjectBase = iftmp.51;
    if (0 == 0) goto <D.99955>; else goto <D.99956>;
    <D.99955>:
    iftmp.52 = MEM[(const void * *)__vtt_parm + 80B];
    goto <D.99957>;
    <D.99956>:
    iftmp.52 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 80B];
    <D.99957>:
    this->D.97981.D.86768._vptr.Interface = iftmp.52;
    try
      {
        try
          {
            try
              {
                try
                  {
                    try
                      {

                      }
                    finally
                      {
                        if (0 == 0) goto <D.99959>; else goto <D.99960>;
                        <D.99959>:
                        iftmp.53 = __vtt_parm + 40;
                        goto <D.99961>;
                        <D.99960>:
                        iftmp.53 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
                        <D.99961>:
                        D.99962 = &this->D.97981;
                        Gio::Seekable::~Seekable (D.99962, iftmp.53);
                      }
                  }
                finally
                  {
                    if (0 == 0) goto <D.99964>; else goto <D.99965>;
                    <D.99964>:
                    iftmp.54 = __vtt_parm + 8;
                    goto <D.99966>;
                    <D.99965>:
                    iftmp.54 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
                    <D.99966>:
                    D.99967 = &this->D.97980;
                    Gio::OutputStream::~OutputStream (D.99967, iftmp.54);
                  }
              }
            finally
              {
                D.99968 = 0;
                if (D.99968 != 0) goto <D.99969>; else goto <D.99970>;
                <D.99969>:
                if (0 == 0) goto <D.99972>; else goto <D.99973>;
                <D.99972>:
                iftmp.55 = __vtt_parm + 88;
                goto <D.99974>;
                <D.99973>:
                iftmp.55 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
                <D.99974>:
                D.99975 = &this->D.97984;
                Glib::ObjectBase::~ObjectBase (D.99975, iftmp.55);
                goto <D.99976>;
                <D.99970>:
                <D.99976>:
              }
          }
        finally
          {
            D.99968 = 0;
            if (D.99968 != 0) goto <D.99977>; else goto <D.99978>;
            <D.99977>:
            D.99979 = &this->D.97985;
            sigc::trackable::~trackable (D.99979);
            goto <D.99980>;
            <D.99978>:
            <D.99980>:
          }
      }
    finally
      {
        *this = {CLOBBER};
      }
  }
  <D.98771>:
  D.99981 = 0;
  if (D.99981 != 0) goto <D.99982>; else goto <D.99983>;
  <D.99982>:
  operator delete (this);
  goto <D.99984>;
  <D.99983>:
  <D.99984>:
}


virtual Gio::FileOutputStream::~FileOutputStream() (struct FileOutputStream * const this)
{
  int (*__vtbl_ptr_type) () * iftmp.56;
  const void * * D.100004;
  sizetype iftmp.57;
  int (*__vtbl_ptr_type) () * D.100009;
  int (*__vtbl_ptr_type) () * D.100010;
  long int D.100011;
  struct ObjectBase * D.100013;
  int (*__vtbl_ptr_type) () * iftmp.58;
  int (*__vtbl_ptr_type) () * iftmp.59;
  const void * * iftmp.60;
  struct Seekable * D.100026;
  const void * * iftmp.61;
  struct OutputStream * D.100031;
  int D.100032;
  const void * * iftmp.62;
  struct ObjectBase * D.100039;
  struct trackable * D.100043;
  int D.100045;

  {
    if (2 == 0) goto <D.100002>; else goto <D.100003>;
    <D.100002>:
    D.100004 = 0B;
    iftmp.56 = *D.100004;
    goto <D.100005>;
    <D.100003>:
    iftmp.56 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 32B];
    <D.100005>:
    this->D.97980.D.86631._vptr.Object = iftmp.56;
    if (2 == 0) goto <D.100007>; else goto <D.100008>;
    <D.100007>:
    D.100009 = this->D.97980.D.86631._vptr.Object;
    D.100010 = D.100009 + 18446744073709551592;
    D.100011 = MEM[(long int *)D.100010];
    iftmp.57 = (sizetype) D.100011;
    goto <D.100012>;
    <D.100008>:
    iftmp.57 = 16;
    <D.100012>:
    D.100013 = this + iftmp.57;
    if (2 == 0) goto <D.100015>; else goto <D.100016>;
    <D.100015>:
    iftmp.58 = MEM[(const void * *)0B + 72B];
    goto <D.100017>;
    <D.100016>:
    iftmp.58 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 160B];
    <D.100017>:
    D.100013->_vptr.ObjectBase = iftmp.58;
    if (2 == 0) goto <D.100019>; else goto <D.100020>;
    <D.100019>:
    iftmp.59 = MEM[(const void * *)0B + 80B];
    goto <D.100021>;
    <D.100020>:
    iftmp.59 = &MEM[(void *)&_ZTVN3Gio16FileOutputStreamE + 80B];
    <D.100021>:
    this->D.97981.D.86768._vptr.Interface = iftmp.59;
    try
      {
        try
          {
            try
              {
                try
                  {
                    try
                      {

                      }
                    finally
                      {
                        if (2 == 0) goto <D.100023>; else goto <D.100024>;
                        <D.100023>:
                        iftmp.60 = 40B;
                        goto <D.100025>;
                        <D.100024>:
                        iftmp.60 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 40B];
                        <D.100025>:
                        D.100026 = &this->D.97981;
                        Gio::Seekable::~Seekable (D.100026, iftmp.60);
                      }
                  }
                finally
                  {
                    if (2 == 0) goto <D.100028>; else goto <D.100029>;
                    <D.100028>:
                    iftmp.61 = 8B;
                    goto <D.100030>;
                    <D.100029>:
                    iftmp.61 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 8B];
                    <D.100030>:
                    D.100031 = &this->D.97980;
                    Gio::OutputStream::~OutputStream (D.100031, iftmp.61);
                  }
              }
            finally
              {
                D.100032 = 2;
                if (D.100032 != 0) goto <D.100033>; else goto <D.100034>;
                <D.100033>:
                if (2 == 0) goto <D.100036>; else goto <D.100037>;
                <D.100036>:
                iftmp.62 = 88B;
                goto <D.100038>;
                <D.100037>:
                iftmp.62 = &MEM[(void *)&_ZTTN3Gio16FileOutputStreamE + 88B];
                <D.100038>:
                D.100039 = &this->D.97984;
                Glib::ObjectBase::~ObjectBase (D.100039, iftmp.62);
                goto <D.100040>;
                <D.100034>:
                <D.100040>:
              }
          }
        finally
          {
            D.100032 = 2;
            if (D.100032 != 0) goto <D.100041>; else goto <D.100042>;
            <D.100041>:
            D.100043 = &this->D.97985;
            sigc::trackable::~trackable (D.100043);
            goto <D.100044>;
            <D.100042>:
            <D.100044>:
          }
      }
    finally
      {
        *this = {CLOBBER};
      }
  }
  <D.98774>:
  D.100045 = 0;
  if (D.100045 != 0) goto <D.100046>; else goto <D.100047>;
  <D.100046>:
  operator delete (this);
  goto <D.100048>;
  <D.100047>:
  <D.100048>:
}


virtual Gio::FileOutputStream::~FileOutputStream() (struct FileOutputStream * const this)
{
  Gio::FileOutputStream::~FileOutputStream (this);
  <D.98782>:
  operator delete (this);
}


static GType Gio::FileOutputStream::get_type() ()
{
  GType D.100065;
  const struct Class & D.100066;

  D.100066 = Gio::FileOutputStream_Class::init (&fileoutputstream_class_);
  D.100065 = Glib::Class::get_type (D.100066);
  return D.100065;
}


static GType Gio::FileOutputStream::get_base_type() ()
{
  GType D.100069;

  D.100069 = g_file_output_stream_get_type ();
  return D.100069;
}


Glib::RefPtr<Gio::FileInfo> Gio::FileOutputStream::query_info_finish(const Glib::RefPtr<Gio::AsyncResult>&) (struct FileOutputStream * const this, const struct RefPtr & result)
{
  struct BaseObjectType * D.100073;
  struct GFileOutputStream * D.100074;
  struct GFileInfo * D.100075;
  struct GError * gerror.63;
  bool retval.64;
  struct FileInfo * D.100082;
  int (*__vtbl_ptr_type) () * D.100083;
  int (*__vtbl_ptr_type) () * D.100084;
  long int D.100085;
  sizetype D.100086;
  struct ObjectBase * D.100087;
  int (*__vtbl_ptr_type) () * D.100088;
  int (*__vtbl_ptr_type) () * D.100089;
  int (*__vtbl_ptr_type) () D.100090;
  struct GError * gerror;
  struct RefPtr retvalue [value-expr: *<retval>];

  try
    {
      gerror = 0B;
      D.100073 = Glib::unwrap<Gio::AsyncResult> (result);
      D.100074 = Gio::FileOutputStream::gobj (this);
      D.100075 = g_file_output_stream_query_info_finish (D.100074, D.100073, &gerror);
      *<retval> = Glib::wrap (D.100075, 0); [return slot optimization]
      try
        {
          gerror.63 = gerror;
          if (gerror.63 != 0B) goto <D.100077>; else goto <D.100078>;
          <D.100077>:
          gerror.63 = gerror;
          Glib::Error::throw_exception (gerror.63);
          <D.100078>:
          retval.64 = Glib::RefPtr<Gio::FileInfo>::operator bool (<retval>);
          if (retval.64 != 0) goto <D.100080>; else goto <D.100081>;
          <D.100080>:
          D.100082 = Glib::RefPtr<Gio::FileInfo>::operator-> (<retval>);
          D.100083 = D.100082->D.97856._vptr.Object;
          D.100084 = D.100083 + 18446744073709551592;
          D.100085 = MEM[(long int *)D.100084];
          D.100086 = (sizetype) D.100085;
          D.100087 = D.100082 + D.100086;
          D.100083 = D.100082->D.97856._vptr.Object;
          D.100084 = D.100083 + 18446744073709551592;
          D.100085 = MEM[(long int *)D.100084];
          D.100086 = (sizetype) D.100085;
          D.100087 = D.100082 + D.100086;
          D.100088 = D.100087->_vptr.ObjectBase;
          D.100089 = D.100088 + 16;
          D.100090 = *D.100089;
          D.100083 = D.100082->D.97856._vptr.Object;
          D.100084 = D.100083 + 18446744073709551592;
          D.100085 = MEM[(long int *)D.100084];
          D.100086 = (sizetype) D.100085;
          D.100087 = D.100082 + D.100086;
          OBJ_TYPE_REF(D.100090;(const struct ObjectBase)D.100087->2) (D.100087);
          goto <D.100091>;
          <D.100081>:
          <D.100091>:
          return <retval>;
        }
      catch
        {
          Glib::RefPtr<Gio::FileInfo>::~RefPtr (<retval>);
        }
    }
  finally
    {
      gerror = {CLOBBER};
    }
}


typename T::BaseObjectType* Glib::unwrap(const Glib::RefPtr<T_CppObject>&) [with T = Gio::AsyncResult; typename T::BaseObjectType = _GAsyncResult] (const struct RefPtr & ptr)
{
  struct BaseObjectType * D.100098;
  struct BaseObjectType * iftmp.65;
  bool D.100100;
  struct AsyncResult * D.100103;

  D.100100 = Glib::RefPtr<Gio::AsyncResult>::operator bool (ptr);
  if (D.100100 != 0) goto <D.100101>; else goto <D.100102>;
  <D.100101>:
  D.100103 = Glib::RefPtr<Gio::AsyncResult>::operator-> (ptr);
  iftmp.65 = Gio::AsyncResult::gobj (D.100103);
  goto <D.100104>;
  <D.100102>:
  iftmp.65 = 0B;
  <D.100104>:
  D.100098 = iftmp.65;
  return D.100098;
}


Glib::RefPtr<T_CppObject>::operator bool() const [with T_CppObject = Gio::AsyncResult] (const struct RefPtr * const this)
{
  bool D.100106;
  struct AsyncResult * D.100107;

  D.100107 = this->pCppObject_;
  D.100106 = D.100107 != 0B;
  return D.100106;
}


T_CppObject* Glib::RefPtr<T_CppObject>::operator->() const [with T_CppObject = Gio::AsyncResult] (const struct RefPtr * const this)
{
  struct AsyncResult * D.100109;

  D.100109 = this->pCppObject_;
  return D.100109;
}


GAsyncResult* Gio::AsyncResult::gobj() (struct AsyncResult * const this)
{
  struct GAsyncResult * D.100111;
  int (*__vtbl_ptr_type) () * D.100112;
  int (*__vtbl_ptr_type) () * D.100113;
  long int D.100114;
  sizetype D.100115;
  struct ObjectBase * D.100116;

  D.100112 = this->D.86030._vptr.Interface;
  D.100113 = D.100112 + 18446744073709551592;
  D.100114 = MEM[(long int *)D.100113];
  D.100115 = (sizetype) D.100114;
  D.100116 = this + D.100115;
  D.100111 = D.100116->gobject_;
  return D.100111;
}


std::string Gio::FileOutputStream::get_etag() const (const struct FileOutputStream * const this)
{
  const struct GFileOutputStream * D.100119;
  char * D.100120;

  D.100119 = Gio::FileOutputStream::gobj (this);
  D.100120 = g_file_output_stream_get_etag (D.100119);
  *<retval> = Glib::convert_return_gchar_ptr_to_stdstring (D.100120); [return slot optimization]
  return <retval>;
}


const GFileOutputStream* Gio::FileOutputStream::gobj() const (const struct FileOutputStream * const this)
{
  const struct GFileOutputStream * D.100123;
  int (*__vtbl_ptr_type) () * D.100124;
  int (*__vtbl_ptr_type) () * D.100125;
  long int D.100126;
  sizetype D.100127;
  const struct ObjectBase * D.100128;

  D.100124 = this->D.97980.D.86631._vptr.Object;
  D.100125 = D.100124 + 18446744073709551592;
  D.100126 = MEM[(long int *)D.100125];
  D.100127 = (sizetype) D.100126;
  D.100128 = this + D.100127;
  D.100123 = D.100128->gobject_;
  return D.100123;
}


std::string Glib::convert_return_gchar_ptr_to_stdstring(char*) (char * str)
{
  struct allocator D.78983;
  bool cleanup.66;
  struct ScopedPtr D.78981;
  bool cleanup.67;
  char * D.100139;
  struct string * D.100140;

  cleanup.66 = 0;
  try
    {
      cleanup.67 = 0;
      try
        {
          if (str != 0B) goto <D.100131>; else goto <D.100132>;
          <D.100131>:
          std::allocator<char>::allocator (&D.78983);
          cleanup.66 = 1;
          Glib::ScopedPtr<char>::ScopedPtr (&D.78981, str);
          cleanup.67 = 1;
          D.100139 = Glib::ScopedPtr<char>::get (&D.78981);
          D.100140 = <retval>;
          std::basic_string<char>::basic_string (D.100140, D.100139, &D.78983);
          goto <D.100141>;
          <D.100132>:
          D.100140 = <retval>;
          std::basic_string<char>::basic_string (D.100140);
          <D.100141>:
          return <retval>;
        }
      finally
        {
          if (cleanup.67 != 0) goto <D.100137>; else goto <D.100138>;
          <D.100137>:
          Glib::ScopedPtr<char>::~ScopedPtr (&D.78981);
          D.78981 = {CLOBBER};
          <D.100138>:
        }
    }
  finally
    {
      if (cleanup.66 != 0) goto <D.100134>; else goto <D.100135>;
      <D.100134>:
      std::allocator<char>::~allocator (&D.78983);
      D.78983 = {CLOBBER};
      <D.100135>:
    }
}


std::allocator< <template-parameter-1-1> >::allocator() [with _Tp = char] (struct allocator * const this)
{
  void * D.100151;

  try
    {
      {
        __gnu_cxx::new_allocator<char>::new_allocator (this);
        try
          {

          }
        catch
          {
            __gnu_cxx::new_allocator<char>::~new_allocator (this);
          }
      }
    }
  catch
    {
      <<<eh_filter (NULL)>>>
        {
          
            D.100151 = __builtin_eh_pointer (0);
            __cxa_call_unexpected (D.100151);
          
        }
    }
}


__gnu_cxx::new_allocator<_Tp>::new_allocator() [with _Tp = char] (struct new_allocator * const this)
{
  void * D.100152;

  try
    {
      {

      }
    }
  catch
    {
      <<<eh_filter (NULL)>>>
        {
          
            D.100152 = __builtin_eh_pointer (0);
            __cxa_call_unexpected (D.100152);
          
        }
    }
}


Glib::ScopedPtr<T>::ScopedPtr(T*) [with T = char] (struct ScopedPtr * const this, char * ptr)
{
  this->ptr_ = ptr;
}


T* Glib::ScopedPtr<T>::get() const [with T = char] (const struct ScopedPtr * const this)
{
  char * D.100153;

  D.100153 = this->ptr_;
  return D.100153;
}


std::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>] (struct basic_string * const this)
{
  struct allocator D.99107;
  struct _Rep & D.100155;
  char * D.100156;
  struct _Alloc_hider * D.100157;

  std::allocator<char>::allocator (&D.99107);
  try
    {
      D.100155 = std::basic_string<char>::_S_empty_rep ();
      D.100156 = std::basic_string<char>::_Rep::_M_refdata (D.100155);
      D.100157 = &this->_M_dataplus;
      std::basic_string<char>::_Alloc_hider::_Alloc_hider (D.100157, D.100156, &D.99107);
    }
  finally
    {
      std::allocator<char>::~allocator (&D.99107);
      D.99107 = {CLOBBER};
    }
  try
    {

    }
  catch
    {
      D.100157 = &this->_M_dataplus;
      std::basic_string<char>::_Alloc_hider::~_Alloc_hider (D.100157);
    }
}


static std::basic_string<_CharT, _Traits, _Alloc>::_Rep& std::basic_string<_CharT, _Traits, _Alloc>::_S_empty_rep() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>] ()
{
  struct _Rep & D.100160;

  D.100160 = std::basic_string<char>::_Rep::_S_empty_rep ();
  return D.100160;
}


static std::basic_string<_CharT, _Traits, _Alloc>::_Rep& std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_S_empty_rep() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>] ()
{
  struct _Rep & D.100163;
  void * __p;

  __p = &_S_empty_rep_storage;
  D.100163 = __p;
  return D.100163;
}


_CharT* std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_M_refdata() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>] (struct _Rep * const this)
{
  char * D.100165;
  void * D.100166;

  try
    {
      D.100165 = this + 24;
      return D.100165;
    }
  catch
    {
      <<<eh_filter (NULL)>>>
        {
          
            D.100166 = __builtin_eh_pointer (0);
            __cxa_call_unexpected (D.100166);
          
        }
    }
}


std::basic_string<_CharT, _Traits, _Alloc>::_Alloc_hider::_Alloc_hider(_CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>] (struct _Alloc_hider * const this, char * __dat, const struct allocator & __a)
{
  std::allocator<char>::allocator (this, __a);
  try
    {
      this->_M_p = __dat;
    }
  catch
    {
      std::allocator<char>::~allocator (this);
    }
}


std::allocator< <template-parameter-1-1> >::allocator(const std::allocator< <template-parameter-1-1> >&) [with _Tp = char] (struct allocator * const this, const struct allocator & __a)
{
  void * D.100168;

  try
    {
      {
        __gnu_cxx::new_allocator<char>::new_allocator (this, __a);
        try
          {

          }
        catch
          {
            __gnu_cxx::new_allocator<char>::~new_allocator (this);
          }
      }
    }
  catch
    {
      <<<eh_filter (NULL)>>>
        {
          
            D.100168 = __builtin_eh_pointer (0);
            __cxa_call_unexpected (D.100168);
          
        }
    }
}


__gnu_cxx::new_allocator<_Tp>::new_allocator(const __gnu_cxx::new_allocator<_Tp>&) [with _Tp = char] (struct new_allocator * const this, const struct new_allocator & D.14983)
{
  void * D.100169;

  try
    {
      {

      }
    }
  catch
    {
      <<<eh_filter (NULL)>>>
        {
          
            D.100169 = __builtin_eh_pointer (0);
            __cxa_call_unexpected (D.100169);
          
        }
    }
}


Glib::ScopedPtr<T>::~ScopedPtr() [with T = char] (struct ScopedPtr * const this)
{
  char * D.100170;

  {
    try
      {
        D.100170 = this->ptr_;
        g_free (D.100170);
      }
    finally
      {
        *this = {CLOBBER};
      }
  }
  <D.99138>:
}


std::allocator< <template-parameter-1-1> >::~allocator() [with _Tp = char] (struct allocator * const this)
{
  void * D.100172;

  try
    {
      {
        try
          {
            try
              {

              }
            finally
              {
                __gnu_cxx::new_allocator<char>::~new_allocator (this);
              }
          }
        finally
          {
            *this = {CLOBBER};
          }
      }
      <D.99082>:
    }
  catch
    {
      <<<eh_filter (NULL)>>>
        {
          
            D.100172 = __builtin_eh_pointer (0);
            __cxa_call_unexpected (D.100172);
          
        }
    }
}


__gnu_cxx::new_allocator<_Tp>::~new_allocator() [with _Tp = char] (struct new_allocator * const this)
{
  void * D.100173;

  try
    {
      {
        try
          {

          }
        finally
          {
            *this = {CLOBBER};
          }
      }
      <D.99283>:
    }
  catch
    {
      <<<eh_filter (NULL)>>>
        {
          
            D.100173 = __builtin_eh_pointer (0);
            __cxa_call_unexpected (D.100173);
          
        }
    }
}


