/*
 * This file was generated by orbit-idl - DO NOT EDIT!
 */

#include <string.h>
#include "interface_repository.h"

void 
_ORBIT_skel_CORBA_IRObject__get_def_kind(POA_CORBA_IRObject * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_DefinitionKind(*_impl__get_def_kind) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_DefinitionKind _ORBIT_retval;
   _ORBIT_retval = _impl__get_def_kind(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_IRObject_destroy(POA_CORBA_IRObject * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl_destroy) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   _impl_destroy(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_Contained__get_id(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_RepositoryId(*_impl__get_id) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_RepositoryId _ORBIT_retval;
   _ORBIT_retval = _impl__get_id(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    CORBA_unsigned_long _ORBIT_tmpvar_1;
	    _ORBIT_tmpvar_1 = strlen(_ORBIT_retval) + 1;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	       memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
	    }
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_retval), sizeof(_ORBIT_retval[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_Contained__set_id(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_id) (PortableServer_Servant _servant, const CORBA_RepositoryId value, CORBA_Environment * ev))
{
   CORBA_RepositoryId value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(value[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(value[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
   }
   _impl__set_id(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_Contained__get_name(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_Identifier(*_impl__get_name) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_Identifier _ORBIT_retval;
   _ORBIT_retval = _impl__get_name(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    CORBA_unsigned_long _ORBIT_tmpvar_1;
	    _ORBIT_tmpvar_1 = strlen(_ORBIT_retval) + 1;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	       memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
	    }
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_retval), sizeof(_ORBIT_retval[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_Contained__set_name(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_name) (PortableServer_Servant _servant, const CORBA_Identifier value, CORBA_Environment * ev))
{
   CORBA_Identifier value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(value[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(value[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
   }
   _impl__set_name(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_Contained__get_version(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_VersionSpec(*_impl__get_version) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_VersionSpec _ORBIT_retval;
   _ORBIT_retval = _impl__get_version(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    CORBA_unsigned_long _ORBIT_tmpvar_1;
	    _ORBIT_tmpvar_1 = strlen(_ORBIT_retval) + 1;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	       memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
	    }
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_retval), sizeof(_ORBIT_retval[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_Contained__set_version(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_version) (PortableServer_Servant _servant, const CORBA_VersionSpec value, CORBA_Environment * ev))
{
   CORBA_VersionSpec value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(value[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(value[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
   }
   _impl__set_version(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_Contained__get_defined_in(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_Container(*_impl__get_defined_in) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_Container _ORBIT_retval;
   _ORBIT_retval = _impl__get_defined_in(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_Contained__get_absolute_name(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ScopedName(*_impl__get_absolute_name) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_ScopedName _ORBIT_retval;
   _ORBIT_retval = _impl__get_absolute_name(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    CORBA_unsigned_long _ORBIT_tmpvar_1;
	    _ORBIT_tmpvar_1 = strlen(_ORBIT_retval) + 1;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	       memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
	    }
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_retval), sizeof(_ORBIT_retval[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_Contained__get_containing_repository(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_Repository(*_impl__get_containing_repository) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_Repository _ORBIT_retval;
   _ORBIT_retval = _impl__get_containing_repository(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_Contained_describe(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_Contained_Description * (*_impl_describe) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_Contained_Description *_ORBIT_retval;
   _ORBIT_retval = _impl_describe(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &((*_ORBIT_retval).kind), sizeof((*_ORBIT_retval).kind));
	    ORBit_marshal_any(_ORBIT_send_buffer, &((*_ORBIT_retval).value));
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_Contained_move(POA_CORBA_Contained * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl_move) (PortableServer_Servant _servant, const CORBA_Container new_container, const CORBA_Identifier new_name, const CORBA_VersionSpec new_version, CORBA_Environment * ev))
{
   CORBA_Container new_container;
   CORBA_Identifier new_name;
   CORBA_VersionSpec new_version;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      CORBA_unsigned_long _ORBIT_tmpvar_7;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 new_container = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 new_name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(new_name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_7))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 new_version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(new_version[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 new_container = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 new_name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(new_name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_7 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 new_version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(new_version[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
      }
   }
   _impl_move(_ORBIT_servant, new_container, new_name, new_version, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_Object_release(new_container, ev);
   }
}
void 
_ORBIT_skel_CORBA_Container_lookup(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_Contained(*_impl_lookup) (PortableServer_Servant _servant, const CORBA_ScopedName search_name, CORBA_Environment * ev))
{
   CORBA_Contained _ORBIT_retval;
   CORBA_ScopedName search_name;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 search_name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(search_name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 search_name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(search_name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
   }
   _ORBIT_retval = _impl_lookup(_ORBIT_servant, search_name, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_Container_contents(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ContainedSeq * (*_impl_contents) (PortableServer_Servant _servant, const CORBA_DefinitionKind limit_type, const CORBA_boolean exclude_inherited, CORBA_Environment * ev))
{
   CORBA_ContainedSeq *_ORBIT_retval;
   CORBA_DefinitionKind limit_type;
   CORBA_boolean exclude_inherited;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (limit_type))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 exclude_inherited = *((CORBA_boolean *) _ORBIT_curptr);
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 limit_type = *((CORBA_DefinitionKind *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 exclude_inherited = *((CORBA_boolean *) _ORBIT_curptr);
      }
   }
   _ORBIT_retval = _impl_contents(_ORBIT_servant, limit_type, exclude_inherited, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0]);
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_Container_lookup_name(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ContainedSeq * (*_impl_lookup_name) (PortableServer_Servant _servant, const CORBA_Identifier search_name, const CORBA_long levels_to_search, const CORBA_DefinitionKind limit_type, const CORBA_boolean exclude_inherited, CORBA_Environment * ev))
{
   CORBA_ContainedSeq *_ORBIT_retval;
   CORBA_Identifier search_name;
   CORBA_long levels_to_search;
   CORBA_DefinitionKind limit_type;
   CORBA_boolean exclude_inherited;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 search_name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(search_name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (levels_to_search))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*((guint32 *) & (limit_type))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 exclude_inherited = *((CORBA_boolean *) _ORBIT_curptr);
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 search_name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(search_name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 levels_to_search = *((CORBA_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 limit_type = *((CORBA_DefinitionKind *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 exclude_inherited = *((CORBA_boolean *) _ORBIT_curptr);
      }
   }
   _ORBIT_retval = _impl_lookup_name(_ORBIT_servant, search_name, levels_to_search, limit_type, exclude_inherited, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_2;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_2 = 0; _ORBIT_tmpvar_2 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_2++) {
	       ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_2]);
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_Container_describe_contents(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_Container_DescriptionSeq * (*_impl_describe_contents) (PortableServer_Servant _servant, const CORBA_DefinitionKind limit_type, const CORBA_boolean exclude_inherited, const CORBA_long max_returned_objs, CORBA_Environment * ev))
{
   CORBA_Container_DescriptionSeq *_ORBIT_retval;
   CORBA_DefinitionKind limit_type;
   CORBA_boolean exclude_inherited;
   CORBA_long max_returned_objs;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (limit_type))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 exclude_inherited = *((CORBA_boolean *) _ORBIT_curptr);
	 _ORBIT_curptr += 1;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (max_returned_objs))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 limit_type = *((CORBA_DefinitionKind *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 exclude_inherited = *((CORBA_boolean *) _ORBIT_curptr);
	 _ORBIT_curptr += 1;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 max_returned_objs = *((CORBA_long *) _ORBIT_curptr);
      }
   }
   _ORBIT_retval = _impl_describe_contents(_ORBIT_servant, limit_type, exclude_inherited, max_returned_objs, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].contained_object);
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].kind));
		  memcpy(_ORBIT_t, &((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].kind), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].kind));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].kind));
	       }
	       ORBit_marshal_any(_ORBIT_send_buffer, &((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].value));
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_Container_create_module(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ModuleDef(*_impl_create_module) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, CORBA_Environment * ev))
{
   CORBA_ModuleDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      CORBA_unsigned_long _ORBIT_tmpvar_7;
      register CORBA_unsigned_long _ORBIT_tmpvar_8;
      CORBA_unsigned_long _ORBIT_tmpvar_9;
      register CORBA_unsigned_long _ORBIT_tmpvar_10;
      CORBA_unsigned_long _ORBIT_tmpvar_11;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_7))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_9))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_8]) * _ORBIT_tmpvar_9;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_11))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_10]) * _ORBIT_tmpvar_11;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_7 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_9 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_8]) * _ORBIT_tmpvar_9;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_11 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_10]) * _ORBIT_tmpvar_11;
      }
   }
   _ORBIT_retval = _impl_create_module(_ORBIT_servant, id, name, version, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_Container_create_constant(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ConstantDef(*_impl_create_constant) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType type, const CORBA_any * value, CORBA_Environment * ev))
{
   CORBA_ConstantDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   CORBA_IDLType type;
   CORBA_any value = {NULL, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      CORBA_unsigned_long _ORBIT_tmpvar_7;
      register CORBA_unsigned_long _ORBIT_tmpvar_8;
      CORBA_unsigned_long _ORBIT_tmpvar_9;
      register CORBA_unsigned_long _ORBIT_tmpvar_10;
      CORBA_unsigned_long _ORBIT_tmpvar_11;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_7))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_9))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_8]) * _ORBIT_tmpvar_9;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_11))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_10]) * _ORBIT_tmpvar_11;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_demarshal_any(_ORBIT_recv_buffer, &(value), CORBA_TRUE, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_7 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_9 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_8]) * _ORBIT_tmpvar_9;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_11 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_10]) * _ORBIT_tmpvar_11;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_demarshal_any(_ORBIT_recv_buffer, &(value), CORBA_TRUE, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _ORBIT_retval = _impl_create_constant(_ORBIT_servant, id, name, version, type, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_Object_release(type, ev);
      CORBA_any__free(&value, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_Container_create_struct(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_StructDef(*_impl_create_struct) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_StructMemberSeq * members, CORBA_Environment * ev))
{
   CORBA_StructDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   CORBA_StructMemberSeq members = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_9;
      CORBA_unsigned_long _ORBIT_tmpvar_10;
      register CORBA_unsigned_long _ORBIT_tmpvar_11;
      CORBA_unsigned_long _ORBIT_tmpvar_12;
      register CORBA_unsigned_long _ORBIT_tmpvar_13;
      CORBA_unsigned_long _ORBIT_tmpvar_14;
      register CORBA_unsigned_long _ORBIT_tmpvar_15;
      register CORBA_unsigned_long _ORBIT_tmpvar_16;
      CORBA_unsigned_long _ORBIT_tmpvar_17;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_10))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_12))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_14))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (members._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 members._buffer = CORBA_sequence_CORBA_StructMember_allocbuf(members._length);
	 members._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_15 = 0; _ORBIT_tmpvar_15 < members._length; _ORBIT_tmpvar_15++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_17))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    members._buffer[_ORBIT_tmpvar_15].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(members._buffer[_ORBIT_tmpvar_15].name[_ORBIT_tmpvar_16]) * _ORBIT_tmpvar_17;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&members._buffer[_ORBIT_tmpvar_15].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    members._buffer[_ORBIT_tmpvar_15].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_10 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_12 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_14 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 members._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 members._buffer = CORBA_sequence_CORBA_StructMember_allocbuf(members._length);
	 members._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_15 = 0; _ORBIT_tmpvar_15 < members._length; _ORBIT_tmpvar_15++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_17 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    members._buffer[_ORBIT_tmpvar_15].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(members._buffer[_ORBIT_tmpvar_15].name[_ORBIT_tmpvar_16]) * _ORBIT_tmpvar_17;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&members._buffer[_ORBIT_tmpvar_15].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    members._buffer[_ORBIT_tmpvar_15].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
   }
   _ORBIT_retval = _impl_create_struct(_ORBIT_servant, id, name, version, &(members), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_StructMemberSeq__free(&members, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_Container_create_union(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_UnionDef(*_impl_create_union) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType discriminator_type, const CORBA_UnionMemberSeq * members, CORBA_Environment * ev))
{
   CORBA_UnionDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   CORBA_IDLType discriminator_type;
   CORBA_UnionMemberSeq members = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_9;
      CORBA_unsigned_long _ORBIT_tmpvar_10;
      register CORBA_unsigned_long _ORBIT_tmpvar_11;
      CORBA_unsigned_long _ORBIT_tmpvar_12;
      register CORBA_unsigned_long _ORBIT_tmpvar_13;
      CORBA_unsigned_long _ORBIT_tmpvar_14;
      register CORBA_unsigned_long _ORBIT_tmpvar_15;
      register CORBA_unsigned_long _ORBIT_tmpvar_16;
      CORBA_unsigned_long _ORBIT_tmpvar_17;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_10))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_12))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_14))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 discriminator_type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (members._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 members._buffer = CORBA_sequence_CORBA_UnionMember_allocbuf(members._length);
	 members._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_15 = 0; _ORBIT_tmpvar_15 < members._length; _ORBIT_tmpvar_15++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_17))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    members._buffer[_ORBIT_tmpvar_15].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(members._buffer[_ORBIT_tmpvar_15].name[_ORBIT_tmpvar_16]) * _ORBIT_tmpvar_17;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_demarshal_any(_ORBIT_recv_buffer, &(members._buffer[_ORBIT_tmpvar_15].label), CORBA_TRUE, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&members._buffer[_ORBIT_tmpvar_15].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    members._buffer[_ORBIT_tmpvar_15].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_10 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_12 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_14 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 discriminator_type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 members._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 members._buffer = CORBA_sequence_CORBA_UnionMember_allocbuf(members._length);
	 members._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_15 = 0; _ORBIT_tmpvar_15 < members._length; _ORBIT_tmpvar_15++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_17 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    members._buffer[_ORBIT_tmpvar_15].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(members._buffer[_ORBIT_tmpvar_15].name[_ORBIT_tmpvar_16]) * _ORBIT_tmpvar_17;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_demarshal_any(_ORBIT_recv_buffer, &(members._buffer[_ORBIT_tmpvar_15].label), CORBA_TRUE, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&members._buffer[_ORBIT_tmpvar_15].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    members._buffer[_ORBIT_tmpvar_15].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
   }
   _ORBIT_retval = _impl_create_union(_ORBIT_servant, id, name, version, discriminator_type, &(members), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_Object_release(discriminator_type, ev);
      CORBA_UnionMemberSeq__free(&members, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_Container_create_enum(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_EnumDef(*_impl_create_enum) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_EnumMemberSeq * members, CORBA_Environment * ev))
{
   CORBA_EnumDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   CORBA_EnumMemberSeq members = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_9;
      CORBA_unsigned_long _ORBIT_tmpvar_10;
      register CORBA_unsigned_long _ORBIT_tmpvar_11;
      CORBA_unsigned_long _ORBIT_tmpvar_12;
      register CORBA_unsigned_long _ORBIT_tmpvar_13;
      CORBA_unsigned_long _ORBIT_tmpvar_14;
      register CORBA_unsigned_long _ORBIT_tmpvar_15;
      register CORBA_unsigned_long _ORBIT_tmpvar_16;
      CORBA_unsigned_long _ORBIT_tmpvar_17;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_10))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_12))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_14))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (members._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 members._buffer = alloca(sizeof(members._buffer[_ORBIT_tmpvar_15]) * members._length);
	 members._release = CORBA_FALSE;
	 for (_ORBIT_tmpvar_15 = 0; _ORBIT_tmpvar_15 < members._length; _ORBIT_tmpvar_15++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_17))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    members._buffer[_ORBIT_tmpvar_15] = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(members._buffer[_ORBIT_tmpvar_15][_ORBIT_tmpvar_16]) * _ORBIT_tmpvar_17;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_10 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_12 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_14 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 members._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 members._buffer = alloca(sizeof(members._buffer[_ORBIT_tmpvar_15]) * members._length);
	 members._release = CORBA_FALSE;
	 for (_ORBIT_tmpvar_15 = 0; _ORBIT_tmpvar_15 < members._length; _ORBIT_tmpvar_15++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_17 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    members._buffer[_ORBIT_tmpvar_15] = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(members._buffer[_ORBIT_tmpvar_15][_ORBIT_tmpvar_16]) * _ORBIT_tmpvar_17;
	 }

      }
   }
   _ORBIT_retval = _impl_create_enum(_ORBIT_servant, id, name, version, &(members), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_Container_create_alias(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_AliasDef(*_impl_create_alias) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType original_type, CORBA_Environment * ev))
{
   CORBA_AliasDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   CORBA_IDLType original_type;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      CORBA_unsigned_long _ORBIT_tmpvar_7;
      register CORBA_unsigned_long _ORBIT_tmpvar_8;
      CORBA_unsigned_long _ORBIT_tmpvar_9;
      register CORBA_unsigned_long _ORBIT_tmpvar_10;
      CORBA_unsigned_long _ORBIT_tmpvar_11;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_7))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_9))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_8]) * _ORBIT_tmpvar_9;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_11))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_10]) * _ORBIT_tmpvar_11;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 original_type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_7 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_9 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_8]) * _ORBIT_tmpvar_9;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_11 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_10]) * _ORBIT_tmpvar_11;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 original_type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _ORBIT_retval = _impl_create_alias(_ORBIT_servant, id, name, version, original_type, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_Object_release(original_type, ev);
   }
}
void 
_ORBIT_skel_CORBA_Container_create_interface(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_InterfaceDef(*_impl_create_interface) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_InterfaceDefSeq * base_interfaces, CORBA_Environment * ev))
{
   CORBA_InterfaceDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   CORBA_InterfaceDefSeq base_interfaces = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_7;
      CORBA_unsigned_long _ORBIT_tmpvar_8;
      register CORBA_unsigned_long _ORBIT_tmpvar_9;
      CORBA_unsigned_long _ORBIT_tmpvar_10;
      register CORBA_unsigned_long _ORBIT_tmpvar_11;
      CORBA_unsigned_long _ORBIT_tmpvar_12;
      register CORBA_unsigned_long _ORBIT_tmpvar_13;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_8))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_10))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_12))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (base_interfaces._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 base_interfaces._buffer = CORBA_sequence_CORBA_InterfaceDef_allocbuf(base_interfaces._length);
	 base_interfaces._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_13 = 0; _ORBIT_tmpvar_13 < base_interfaces._length; _ORBIT_tmpvar_13++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    base_interfaces._buffer[_ORBIT_tmpvar_13] = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_8 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_10 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_12 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 base_interfaces._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 base_interfaces._buffer = CORBA_sequence_CORBA_InterfaceDef_allocbuf(base_interfaces._length);
	 base_interfaces._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_13 = 0; _ORBIT_tmpvar_13 < base_interfaces._length; _ORBIT_tmpvar_13++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    base_interfaces._buffer[_ORBIT_tmpvar_13] = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
   }
   _ORBIT_retval = _impl_create_interface(_ORBIT_servant, id, name, version, &(base_interfaces), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_InterfaceDefSeq__free(&base_interfaces, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_Container_create_exception(POA_CORBA_Container * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ExceptionDef(*_impl_create_exception) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_StructMemberSeq * members, CORBA_Environment * ev))
{
   CORBA_ExceptionDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   CORBA_StructMemberSeq members = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_9;
      CORBA_unsigned_long _ORBIT_tmpvar_10;
      register CORBA_unsigned_long _ORBIT_tmpvar_11;
      CORBA_unsigned_long _ORBIT_tmpvar_12;
      register CORBA_unsigned_long _ORBIT_tmpvar_13;
      CORBA_unsigned_long _ORBIT_tmpvar_14;
      register CORBA_unsigned_long _ORBIT_tmpvar_15;
      register CORBA_unsigned_long _ORBIT_tmpvar_16;
      CORBA_unsigned_long _ORBIT_tmpvar_17;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_10))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_12))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_14))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (members._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 members._buffer = CORBA_sequence_CORBA_StructMember_allocbuf(members._length);
	 members._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_15 = 0; _ORBIT_tmpvar_15 < members._length; _ORBIT_tmpvar_15++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_17))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    members._buffer[_ORBIT_tmpvar_15].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(members._buffer[_ORBIT_tmpvar_15].name[_ORBIT_tmpvar_16]) * _ORBIT_tmpvar_17;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&members._buffer[_ORBIT_tmpvar_15].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    members._buffer[_ORBIT_tmpvar_15].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_10 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_12 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_14 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 members._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 members._buffer = CORBA_sequence_CORBA_StructMember_allocbuf(members._length);
	 members._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_15 = 0; _ORBIT_tmpvar_15 < members._length; _ORBIT_tmpvar_15++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_17 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    members._buffer[_ORBIT_tmpvar_15].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(members._buffer[_ORBIT_tmpvar_15].name[_ORBIT_tmpvar_16]) * _ORBIT_tmpvar_17;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&members._buffer[_ORBIT_tmpvar_15].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    members._buffer[_ORBIT_tmpvar_15].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
   }
   _ORBIT_retval = _impl_create_exception(_ORBIT_servant, id, name, version, &(members), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_StructMemberSeq__free(&members, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_IDLType__get_type(POA_CORBA_IDLType * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_TypeCode(*_impl__get_type) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_TypeCode _ORBIT_retval;
   _ORBIT_retval = _impl__get_type(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_encode_CORBA_TypeCode(_ORBIT_retval, _ORBIT_send_buffer);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_Repository_lookup_id(POA_CORBA_Repository * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_Contained(*_impl_lookup_id) (PortableServer_Servant _servant, const CORBA_RepositoryId search_id, CORBA_Environment * ev))
{
   CORBA_Contained _ORBIT_retval;
   CORBA_RepositoryId search_id;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 search_id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(search_id[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 search_id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(search_id[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
   }
   _ORBIT_retval = _impl_lookup_id(_ORBIT_servant, search_id, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_Repository_get_primitive(POA_CORBA_Repository * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_PrimitiveDef(*_impl_get_primitive) (PortableServer_Servant _servant, const CORBA_PrimitiveKind kind, CORBA_Environment * ev))
{
   CORBA_PrimitiveDef _ORBIT_retval;
   CORBA_PrimitiveKind kind;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (kind))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 kind = *((CORBA_PrimitiveKind *) _ORBIT_curptr);
      }
   }
   _ORBIT_retval = _impl_get_primitive(_ORBIT_servant, kind, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_Repository_create_string(POA_CORBA_Repository * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_StringDef(*_impl_create_string) (PortableServer_Servant _servant, const CORBA_unsigned_long bound, CORBA_Environment * ev))
{
   CORBA_StringDef _ORBIT_retval;
   CORBA_unsigned_long bound;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (bound))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 bound = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
   }
   _ORBIT_retval = _impl_create_string(_ORBIT_servant, bound, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_Repository_create_wstring(POA_CORBA_Repository * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_WstringDef(*_impl_create_wstring) (PortableServer_Servant _servant, const CORBA_unsigned_long bound, CORBA_Environment * ev))
{
   CORBA_WstringDef _ORBIT_retval;
   CORBA_unsigned_long bound;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (bound))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 bound = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
   }
   _ORBIT_retval = _impl_create_wstring(_ORBIT_servant, bound, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_Repository_create_sequence(POA_CORBA_Repository * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_SequenceDef(*_impl_create_sequence) (PortableServer_Servant _servant, const CORBA_unsigned_long bound, const CORBA_IDLType element_type, CORBA_Environment * ev))
{
   CORBA_SequenceDef _ORBIT_retval;
   CORBA_unsigned_long bound;
   CORBA_IDLType element_type;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (bound))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 element_type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 bound = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 element_type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _ORBIT_retval = _impl_create_sequence(_ORBIT_servant, bound, element_type, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_Object_release(element_type, ev);
   }
}
void 
_ORBIT_skel_CORBA_Repository_create_array(POA_CORBA_Repository * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ArrayDef(*_impl_create_array) (PortableServer_Servant _servant, const CORBA_unsigned_long length, const CORBA_IDLType element_type, CORBA_Environment * ev))
{
   CORBA_ArrayDef _ORBIT_retval;
   CORBA_unsigned_long length;
   CORBA_IDLType element_type;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 element_type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 element_type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _ORBIT_retval = _impl_create_array(_ORBIT_servant, length, element_type, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_Object_release(element_type, ev);
   }
}
void 
_ORBIT_skel_CORBA_Repository_create_fixed(POA_CORBA_Repository * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_FixedDef(*_impl_create_fixed) (PortableServer_Servant _servant, const CORBA_unsigned_short digits, const CORBA_short scale, CORBA_Environment * ev))
{
   CORBA_FixedDef _ORBIT_retval;
   CORBA_unsigned_short digits;
   CORBA_short scale;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 (*((guint16 *) & (digits))) = GUINT16_SWAP_LE_BE(*((guint16 *) _ORBIT_curptr));
	 _ORBIT_curptr += 2;
	 (*((guint16 *) & (scale))) = GUINT16_SWAP_LE_BE(*((guint16 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 digits = *((CORBA_unsigned_short *) _ORBIT_curptr);
	 _ORBIT_curptr += 2;
	 scale = *((CORBA_short *) _ORBIT_curptr);
      }
   }
   _ORBIT_retval = _impl_create_fixed(_ORBIT_servant, digits, scale, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_ConstantDef__get_type(POA_CORBA_ConstantDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_TypeCode(*_impl__get_type) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_TypeCode _ORBIT_retval;
   _ORBIT_retval = _impl__get_type(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_encode_CORBA_TypeCode(_ORBIT_retval, _ORBIT_send_buffer);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_ConstantDef__get_type_def(POA_CORBA_ConstantDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_IDLType(*_impl__get_type_def) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_IDLType _ORBIT_retval;
   _ORBIT_retval = _impl__get_type_def(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_ConstantDef__set_type_def(POA_CORBA_ConstantDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_type_def) (PortableServer_Servant _servant, const CORBA_IDLType value, CORBA_Environment * ev))
{
   CORBA_IDLType value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _impl__set_type_def(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_Object_release(value, ev);
   }
}
void 
_ORBIT_skel_CORBA_ConstantDef__get_value(POA_CORBA_ConstantDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_any * (*_impl__get_value) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_any *_ORBIT_retval;
   _ORBIT_retval = _impl__get_value(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_any(_ORBIT_send_buffer, &((*_ORBIT_retval)));
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_ConstantDef__set_value(POA_CORBA_ConstantDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_value) (PortableServer_Servant _servant, const CORBA_any * value, CORBA_Environment * ev))
{
   CORBA_any value = {NULL, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_demarshal_any(_ORBIT_recv_buffer, &(value), CORBA_TRUE, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_demarshal_any(_ORBIT_recv_buffer, &(value), CORBA_TRUE, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _impl__set_value(_ORBIT_servant, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_any__free(&value, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_StructDef__get_members(POA_CORBA_StructDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_StructMemberSeq * (*_impl__get_members) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_StructMemberSeq *_ORBIT_retval;
   _ORBIT_retval = _impl__get_members(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    register CORBA_unsigned_long _ORBIT_tmpvar_1;
	    CORBA_unsigned_long _ORBIT_tmpvar_2;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       _ORBIT_tmpvar_2 = strlen((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	       }
	       ORBit_encode_CORBA_TypeCode((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].type, _ORBIT_send_buffer);
	       ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].type_def);
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_StructDef__set_members(POA_CORBA_StructDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_members) (PortableServer_Servant _servant, const CORBA_StructMemberSeq * value, CORBA_Environment * ev))
{
   CORBA_StructMemberSeq value = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_StructMember_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&value._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_StructMember_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&value._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
   }
   _impl__set_members(_ORBIT_servant, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_StructMemberSeq__free(&value, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_UnionDef__get_discriminator_type(POA_CORBA_UnionDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_TypeCode(*_impl__get_discriminator_type) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_TypeCode _ORBIT_retval;
   _ORBIT_retval = _impl__get_discriminator_type(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_encode_CORBA_TypeCode(_ORBIT_retval, _ORBIT_send_buffer);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_UnionDef__get_discriminator_type_def(POA_CORBA_UnionDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_IDLType(*_impl__get_discriminator_type_def) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_IDLType _ORBIT_retval;
   _ORBIT_retval = _impl__get_discriminator_type_def(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_UnionDef__set_discriminator_type_def(POA_CORBA_UnionDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_discriminator_type_def) (PortableServer_Servant _servant, const CORBA_IDLType value, CORBA_Environment * ev))
{
   CORBA_IDLType value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _impl__set_discriminator_type_def(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_Object_release(value, ev);
   }
}
void 
_ORBIT_skel_CORBA_UnionDef__get_members(POA_CORBA_UnionDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_UnionMemberSeq * (*_impl__get_members) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_UnionMemberSeq *_ORBIT_retval;
   _ORBIT_retval = _impl__get_members(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    register CORBA_unsigned_long _ORBIT_tmpvar_1;
	    CORBA_unsigned_long _ORBIT_tmpvar_2;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       _ORBIT_tmpvar_2 = strlen((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	       }
	       ORBit_marshal_any(_ORBIT_send_buffer, &((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].label));
	       ORBit_encode_CORBA_TypeCode((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].type, _ORBIT_send_buffer);
	       ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].type_def);
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_UnionDef__set_members(POA_CORBA_UnionDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_members) (PortableServer_Servant _servant, const CORBA_UnionMemberSeq * value, CORBA_Environment * ev))
{
   CORBA_UnionMemberSeq value = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_UnionMember_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_demarshal_any(_ORBIT_recv_buffer, &(value._buffer[_ORBIT_tmpvar_3].label), CORBA_TRUE, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&value._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_UnionMember_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_demarshal_any(_ORBIT_recv_buffer, &(value._buffer[_ORBIT_tmpvar_3].label), CORBA_TRUE, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&value._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
   }
   _impl__set_members(_ORBIT_servant, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_UnionMemberSeq__free(&value, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_EnumDef__get_members(POA_CORBA_EnumDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_EnumMemberSeq * (*_impl__get_members) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_EnumMemberSeq *_ORBIT_retval;
   _ORBIT_retval = _impl__get_members(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    register CORBA_unsigned_long _ORBIT_tmpvar_1;
	    CORBA_unsigned_long _ORBIT_tmpvar_2;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       _ORBIT_tmpvar_2 = strlen((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0]) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0]), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	       }
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_EnumDef__set_members(POA_CORBA_EnumDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_members) (PortableServer_Servant _servant, const CORBA_EnumMemberSeq * value, CORBA_Environment * ev))
{
   CORBA_EnumMemberSeq value = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value._buffer = alloca(sizeof(value._buffer[_ORBIT_tmpvar_3]) * value._length);
	 value._release = CORBA_FALSE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3] = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value._buffer = alloca(sizeof(value._buffer[_ORBIT_tmpvar_3]) * value._length);
	 value._release = CORBA_FALSE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3] = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 }

      }
   }
   _impl__set_members(_ORBIT_servant, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_AliasDef__get_original_type_def(POA_CORBA_AliasDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_IDLType(*_impl__get_original_type_def) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_IDLType _ORBIT_retval;
   _ORBIT_retval = _impl__get_original_type_def(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_AliasDef__set_original_type_def(POA_CORBA_AliasDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_original_type_def) (PortableServer_Servant _servant, const CORBA_IDLType value, CORBA_Environment * ev))
{
   CORBA_IDLType value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _impl__set_original_type_def(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_Object_release(value, ev);
   }
}
void 
_ORBIT_skel_CORBA_PrimitiveDef__get_kind(POA_CORBA_PrimitiveDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_PrimitiveKind(*_impl__get_kind) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_PrimitiveKind _ORBIT_retval;
   _ORBIT_retval = _impl__get_kind(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_StringDef__get_bound(POA_CORBA_StringDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_unsigned_long(*_impl__get_bound) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_unsigned_long _ORBIT_retval;
   _ORBIT_retval = _impl__get_bound(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_StringDef__set_bound(POA_CORBA_StringDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_bound) (PortableServer_Servant _servant, const CORBA_unsigned_long value, CORBA_Environment * ev))
{
   CORBA_unsigned_long value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
   }
   _impl__set_bound(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_WstringDef__get_bound(POA_CORBA_WstringDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_unsigned_long(*_impl__get_bound) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_unsigned_long _ORBIT_retval;
   _ORBIT_retval = _impl__get_bound(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_WstringDef__set_bound(POA_CORBA_WstringDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_bound) (PortableServer_Servant _servant, const CORBA_unsigned_long value, CORBA_Environment * ev))
{
   CORBA_unsigned_long value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
   }
   _impl__set_bound(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_FixedDef__get_digits(POA_CORBA_FixedDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_unsigned_short(*_impl__get_digits) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_unsigned_short _ORBIT_retval;
   _ORBIT_retval = _impl__get_digits(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 2);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_FixedDef__set_digits(POA_CORBA_FixedDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_digits) (PortableServer_Servant _servant, const CORBA_unsigned_short value, CORBA_Environment * ev))
{
   CORBA_unsigned_short value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 (*((guint16 *) & (value))) = GUINT16_SWAP_LE_BE(*((guint16 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 value = *((CORBA_unsigned_short *) _ORBIT_curptr);
      }
   }
   _impl__set_digits(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_FixedDef__get_scale(POA_CORBA_FixedDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_short(*_impl__get_scale) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_short _ORBIT_retval;
   _ORBIT_retval = _impl__get_scale(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 2);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_FixedDef__set_scale(POA_CORBA_FixedDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_scale) (PortableServer_Servant _servant, const CORBA_short value, CORBA_Environment * ev))
{
   CORBA_short value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 (*((guint16 *) & (value))) = GUINT16_SWAP_LE_BE(*((guint16 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 value = *((CORBA_short *) _ORBIT_curptr);
      }
   }
   _impl__set_scale(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_SequenceDef__get_bound(POA_CORBA_SequenceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_unsigned_long(*_impl__get_bound) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_unsigned_long _ORBIT_retval;
   _ORBIT_retval = _impl__get_bound(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_SequenceDef__set_bound(POA_CORBA_SequenceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_bound) (PortableServer_Servant _servant, const CORBA_unsigned_long value, CORBA_Environment * ev))
{
   CORBA_unsigned_long value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
   }
   _impl__set_bound(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_SequenceDef__get_element_type(POA_CORBA_SequenceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_TypeCode(*_impl__get_element_type) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_TypeCode _ORBIT_retval;
   _ORBIT_retval = _impl__get_element_type(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_encode_CORBA_TypeCode(_ORBIT_retval, _ORBIT_send_buffer);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_SequenceDef__get_element_type_def(POA_CORBA_SequenceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_IDLType(*_impl__get_element_type_def) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_IDLType _ORBIT_retval;
   _ORBIT_retval = _impl__get_element_type_def(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_SequenceDef__set_element_type_def(POA_CORBA_SequenceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_element_type_def) (PortableServer_Servant _servant, const CORBA_IDLType value, CORBA_Environment * ev))
{
   CORBA_IDLType value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _impl__set_element_type_def(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_Object_release(value, ev);
   }
}
void 
_ORBIT_skel_CORBA_ArrayDef__get_length(POA_CORBA_ArrayDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_unsigned_long(*_impl__get_length) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_unsigned_long _ORBIT_retval;
   _ORBIT_retval = _impl__get_length(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_ArrayDef__set_length(POA_CORBA_ArrayDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_length) (PortableServer_Servant _servant, const CORBA_unsigned_long value, CORBA_Environment * ev))
{
   CORBA_unsigned_long value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
   }
   _impl__set_length(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_ArrayDef__get_element_type(POA_CORBA_ArrayDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_TypeCode(*_impl__get_element_type) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_TypeCode _ORBIT_retval;
   _ORBIT_retval = _impl__get_element_type(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_encode_CORBA_TypeCode(_ORBIT_retval, _ORBIT_send_buffer);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_ArrayDef__get_element_type_def(POA_CORBA_ArrayDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_IDLType(*_impl__get_element_type_def) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_IDLType _ORBIT_retval;
   _ORBIT_retval = _impl__get_element_type_def(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_ArrayDef__set_element_type_def(POA_CORBA_ArrayDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_element_type_def) (PortableServer_Servant _servant, const CORBA_IDLType value, CORBA_Environment * ev))
{
   CORBA_IDLType value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _impl__set_element_type_def(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_Object_release(value, ev);
   }
}
void 
_ORBIT_skel_CORBA_ExceptionDef__get_type(POA_CORBA_ExceptionDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_TypeCode(*_impl__get_type) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_TypeCode _ORBIT_retval;
   _ORBIT_retval = _impl__get_type(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_encode_CORBA_TypeCode(_ORBIT_retval, _ORBIT_send_buffer);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_ExceptionDef__get_members(POA_CORBA_ExceptionDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_StructMemberSeq * (*_impl__get_members) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_StructMemberSeq *_ORBIT_retval;
   _ORBIT_retval = _impl__get_members(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    register CORBA_unsigned_long _ORBIT_tmpvar_1;
	    CORBA_unsigned_long _ORBIT_tmpvar_2;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       _ORBIT_tmpvar_2 = strlen((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	       }
	       ORBit_encode_CORBA_TypeCode((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].type, _ORBIT_send_buffer);
	       ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].type_def);
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_ExceptionDef__set_members(POA_CORBA_ExceptionDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_members) (PortableServer_Servant _servant, const CORBA_StructMemberSeq * value, CORBA_Environment * ev))
{
   CORBA_StructMemberSeq value = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_StructMember_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&value._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_StructMember_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&value._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
   }
   _impl__set_members(_ORBIT_servant, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_StructMemberSeq__free(&value, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_AttributeDef__get_type(POA_CORBA_AttributeDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_TypeCode(*_impl__get_type) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_TypeCode _ORBIT_retval;
   _ORBIT_retval = _impl__get_type(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_encode_CORBA_TypeCode(_ORBIT_retval, _ORBIT_send_buffer);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_AttributeDef__get_type_def(POA_CORBA_AttributeDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_IDLType(*_impl__get_type_def) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_IDLType _ORBIT_retval;
   _ORBIT_retval = _impl__get_type_def(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_AttributeDef__set_type_def(POA_CORBA_AttributeDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_type_def) (PortableServer_Servant _servant, const CORBA_IDLType value, CORBA_Environment * ev))
{
   CORBA_IDLType value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _impl__set_type_def(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_Object_release(value, ev);
   }
}
void 
_ORBIT_skel_CORBA_AttributeDef__get_mode(POA_CORBA_AttributeDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_AttributeMode(*_impl__get_mode) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_AttributeMode _ORBIT_retval;
   _ORBIT_retval = _impl__get_mode(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_AttributeDef__set_mode(POA_CORBA_AttributeDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_mode) (PortableServer_Servant _servant, const CORBA_AttributeMode value, CORBA_Environment * ev))
{
   CORBA_AttributeMode value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value = *((CORBA_AttributeMode *) _ORBIT_curptr);
      }
   }
   _impl__set_mode(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__get_result(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_TypeCode(*_impl__get_result) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_TypeCode _ORBIT_retval;
   _ORBIT_retval = _impl__get_result(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_encode_CORBA_TypeCode(_ORBIT_retval, _ORBIT_send_buffer);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__get_result_def(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_IDLType(*_impl__get_result_def) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_IDLType _ORBIT_retval;
   _ORBIT_retval = _impl__get_result_def(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__set_result_def(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_result_def) (PortableServer_Servant _servant, const CORBA_IDLType value, CORBA_Environment * ev))
{
   CORBA_IDLType value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 value = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
   }
   _impl__set_result_def(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_Object_release(value, ev);
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__get_params(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ParDescriptionSeq * (*_impl__get_params) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_ParDescriptionSeq *_ORBIT_retval;
   _ORBIT_retval = _impl__get_params(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    register CORBA_unsigned_long _ORBIT_tmpvar_1;
	    CORBA_unsigned_long _ORBIT_tmpvar_2;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       _ORBIT_tmpvar_2 = strlen((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name) + 1;
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	       }
	       ORBit_encode_CORBA_TypeCode((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].type, _ORBIT_send_buffer);
	       ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].type_def);
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].mode));
		  memcpy(_ORBIT_t, &((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].mode), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].mode));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0].mode));
	       }
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__set_params(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_params) (PortableServer_Servant _servant, const CORBA_ParDescriptionSeq * value, CORBA_Environment * ev))
{
   CORBA_ParDescriptionSeq value = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_ParameterDescription_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&value._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (value._buffer[_ORBIT_tmpvar_3].mode))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_ParameterDescription_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&value._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    value._buffer[_ORBIT_tmpvar_3].mode = *((CORBA_ParameterMode *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	 }

      }
   }
   _impl__set_params(_ORBIT_servant, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_ParDescriptionSeq__free(&value, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__get_mode(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_OperationMode(*_impl__get_mode) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_OperationMode _ORBIT_retval;
   _ORBIT_retval = _impl__get_mode(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__set_mode(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_mode) (PortableServer_Servant _servant, const CORBA_OperationMode value, CORBA_Environment * ev))
{
   CORBA_OperationMode value;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value = *((CORBA_OperationMode *) _ORBIT_curptr);
      }
   }
   _impl__set_mode(_ORBIT_servant, value, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__get_contexts(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ContextIdSeq * (*_impl__get_contexts) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_ContextIdSeq *_ORBIT_retval;
   _ORBIT_retval = _impl__get_contexts(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    register CORBA_unsigned_long _ORBIT_tmpvar_1;
	    CORBA_unsigned_long _ORBIT_tmpvar_2;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       _ORBIT_tmpvar_2 = strlen((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0]) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0]), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	       }
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__set_contexts(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_contexts) (PortableServer_Servant _servant, const CORBA_ContextIdSeq * value, CORBA_Environment * ev))
{
   CORBA_ContextIdSeq value = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value._buffer = alloca(sizeof(value._buffer[_ORBIT_tmpvar_3]) * value._length);
	 value._release = CORBA_FALSE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3] = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value._buffer = alloca(sizeof(value._buffer[_ORBIT_tmpvar_3]) * value._length);
	 value._release = CORBA_FALSE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < value._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    value._buffer[_ORBIT_tmpvar_3] = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(value._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 }

      }
   }
   _impl__set_contexts(_ORBIT_servant, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__get_exceptions(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_ExceptionDefSeq * (*_impl__get_exceptions) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_ExceptionDefSeq *_ORBIT_retval;
   _ORBIT_retval = _impl__get_exceptions(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0]);
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_OperationDef__set_exceptions(POA_CORBA_OperationDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_exceptions) (PortableServer_Servant _servant, const CORBA_ExceptionDefSeq * value, CORBA_Environment * ev))
{
   CORBA_ExceptionDefSeq value = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_1;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_ExceptionDef_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < value._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_ExceptionDef_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < value._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
   }
   _impl__set_exceptions(_ORBIT_servant, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_ExceptionDefSeq__free(&value, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_InterfaceDef__get_base_interfaces(POA_CORBA_InterfaceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_InterfaceDefSeq * (*_impl__get_base_interfaces) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_InterfaceDefSeq *_ORBIT_retval;
   _ORBIT_retval = _impl__get_base_interfaces(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval)._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval)._length), sizeof((*_ORBIT_retval)._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval)._length));
	    }
	    for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_0++) {
	       ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_0]);
	    }

	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_InterfaceDef__set_base_interfaces(POA_CORBA_InterfaceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, void (*_impl__set_base_interfaces) (PortableServer_Servant _servant, const CORBA_InterfaceDefSeq * value, CORBA_Environment * ev))
{
   CORBA_InterfaceDefSeq value = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_1;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (value._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_InterfaceDef_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < value._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 value._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 value._buffer = CORBA_sequence_CORBA_InterfaceDef_allocbuf(value._length);
	 value._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < value._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    value._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
   }
   _impl__set_base_interfaces(_ORBIT_servant, &(value), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      CORBA_InterfaceDefSeq__free(&value, NULL, CORBA_FALSE);
   }
}
void 
_ORBIT_skel_CORBA_InterfaceDef_is_a(POA_CORBA_InterfaceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_boolean(*_impl_is_a) (PortableServer_Servant _servant, const CORBA_RepositoryId interface_id, CORBA_Environment * ev))
{
   CORBA_boolean _ORBIT_retval;
   CORBA_RepositoryId interface_id;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 interface_id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(interface_id[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 interface_id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(interface_id[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
   }
   _ORBIT_retval = _impl_is_a(_ORBIT_servant, interface_id, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_retval));
	       memcpy(_ORBIT_t, &(_ORBIT_retval), sizeof(_ORBIT_retval));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_retval));
	    }
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
   }
}
void 
_ORBIT_skel_CORBA_InterfaceDef_describe_interface(POA_CORBA_InterfaceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_InterfaceDef_FullInterfaceDescription * (*_impl_describe_interface) (PortableServer_Servant _servant, CORBA_Environment * ev))
{
   CORBA_InterfaceDef_FullInterfaceDescription *_ORBIT_retval;
   _ORBIT_retval = _impl_describe_interface(_ORBIT_servant, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    register CORBA_unsigned_long _ORBIT_tmpvar_0;
	    CORBA_unsigned_long _ORBIT_tmpvar_1;
	    register CORBA_unsigned_long _ORBIT_tmpvar_2;
	    CORBA_unsigned_long _ORBIT_tmpvar_3;
	    register CORBA_unsigned_long _ORBIT_tmpvar_4;
	    CORBA_unsigned_long _ORBIT_tmpvar_5;
	    register CORBA_unsigned_long _ORBIT_tmpvar_6;
	    CORBA_unsigned_long _ORBIT_tmpvar_7;
	    register CORBA_unsigned_long _ORBIT_tmpvar_8;
	    register CORBA_unsigned_long _ORBIT_tmpvar_9;
	    CORBA_unsigned_long _ORBIT_tmpvar_10;
	    register CORBA_unsigned_long _ORBIT_tmpvar_11;
	    CORBA_unsigned_long _ORBIT_tmpvar_12;
	    register CORBA_unsigned_long _ORBIT_tmpvar_13;
	    CORBA_unsigned_long _ORBIT_tmpvar_14;
	    register CORBA_unsigned_long _ORBIT_tmpvar_15;
	    CORBA_unsigned_long _ORBIT_tmpvar_16;
	    register CORBA_unsigned_long _ORBIT_tmpvar_17;
	    register CORBA_unsigned_long _ORBIT_tmpvar_18;
	    CORBA_unsigned_long _ORBIT_tmpvar_19;
	    register CORBA_unsigned_long _ORBIT_tmpvar_20;
	    register CORBA_unsigned_long _ORBIT_tmpvar_21;
	    CORBA_unsigned_long _ORBIT_tmpvar_22;
	    register CORBA_unsigned_long _ORBIT_tmpvar_23;
	    register CORBA_unsigned_long _ORBIT_tmpvar_24;
	    CORBA_unsigned_long _ORBIT_tmpvar_25;
	    register CORBA_unsigned_long _ORBIT_tmpvar_26;
	    CORBA_unsigned_long _ORBIT_tmpvar_27;
	    register CORBA_unsigned_long _ORBIT_tmpvar_28;
	    CORBA_unsigned_long _ORBIT_tmpvar_29;
	    register CORBA_unsigned_long _ORBIT_tmpvar_30;
	    CORBA_unsigned_long _ORBIT_tmpvar_31;
	    register CORBA_unsigned_long _ORBIT_tmpvar_32;
	    register CORBA_unsigned_long _ORBIT_tmpvar_33;
	    CORBA_unsigned_long _ORBIT_tmpvar_34;
	    register CORBA_unsigned_long _ORBIT_tmpvar_35;
	    CORBA_unsigned_long _ORBIT_tmpvar_36;
	    register CORBA_unsigned_long _ORBIT_tmpvar_37;
	    CORBA_unsigned_long _ORBIT_tmpvar_38;
	    register CORBA_unsigned_long _ORBIT_tmpvar_39;
	    CORBA_unsigned_long _ORBIT_tmpvar_40;
	    register CORBA_unsigned_long _ORBIT_tmpvar_41;
	    register CORBA_unsigned_long _ORBIT_tmpvar_42;
	    CORBA_unsigned_long _ORBIT_tmpvar_43;
	    _ORBIT_tmpvar_1 = strlen((*_ORBIT_retval).name) + 1;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	       memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
	    }
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), ((*_ORBIT_retval).name), sizeof((*_ORBIT_retval).name[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
	    _ORBIT_tmpvar_3 = strlen((*_ORBIT_retval).id) + 1;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	       memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
	    }
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), ((*_ORBIT_retval).id), sizeof((*_ORBIT_retval).id[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
	    _ORBIT_tmpvar_5 = strlen((*_ORBIT_retval).defined_in) + 1;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	       memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
	    }
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), ((*_ORBIT_retval).defined_in), sizeof((*_ORBIT_retval).defined_in[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_tmpvar_7 = strlen((*_ORBIT_retval).version) + 1;
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_7));
	       memcpy(_ORBIT_t, &(_ORBIT_tmpvar_7), sizeof(_ORBIT_tmpvar_7));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_7));
	    }
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), ((*_ORBIT_retval).version), sizeof((*_ORBIT_retval).version[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7);
	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval).operations._length), sizeof((*_ORBIT_retval).operations._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._length));
	    }
	    for (_ORBIT_tmpvar_8 = 0; _ORBIT_tmpvar_8 < (*_ORBIT_retval).operations._length; _ORBIT_tmpvar_8++) {
	       _ORBIT_tmpvar_10 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].name) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_10));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_10), sizeof(_ORBIT_tmpvar_10));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_10));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].name[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].name), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].name[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].name[_ORBIT_tmpvar_9]) * _ORBIT_tmpvar_10);
	       }
	       _ORBIT_tmpvar_12 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].id) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_12));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_12), sizeof(_ORBIT_tmpvar_12));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_12));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].id[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].id), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].id[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].id[_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12);
	       }
	       _ORBIT_tmpvar_14 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].defined_in) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_14));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_14), sizeof(_ORBIT_tmpvar_14));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_14));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].defined_in[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].defined_in), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].defined_in[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].defined_in[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14);
	       }
	       _ORBIT_tmpvar_16 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].version) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_16));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_16), sizeof(_ORBIT_tmpvar_16));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_16));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].version[_ORBIT_tmpvar_15]) * _ORBIT_tmpvar_16);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].version), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].version[_ORBIT_tmpvar_15]) * _ORBIT_tmpvar_16);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].version[_ORBIT_tmpvar_15]) * _ORBIT_tmpvar_16);
	       }
	       ORBit_encode_CORBA_TypeCode((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].result, _ORBIT_send_buffer);
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].mode));
		  memcpy(_ORBIT_t, &((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].mode), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].mode));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].mode));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._length));
		  memcpy(_ORBIT_t, &((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._length), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._length));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._length));
	       }
	       for (_ORBIT_tmpvar_17 = 0; _ORBIT_tmpvar_17 < (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._length; _ORBIT_tmpvar_17++) {
		  _ORBIT_tmpvar_19 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._buffer[_ORBIT_tmpvar_17]) + 1;
		  giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_19));
		     memcpy(_ORBIT_t, &(_ORBIT_tmpvar_19), sizeof(_ORBIT_tmpvar_19));
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_19));
		  }
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._buffer[_ORBIT_tmpvar_17][_ORBIT_tmpvar_18]) * _ORBIT_tmpvar_19);
		     memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._buffer[_ORBIT_tmpvar_17]), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._buffer[_ORBIT_tmpvar_17][_ORBIT_tmpvar_18]) * _ORBIT_tmpvar_19);
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].contexts._buffer[_ORBIT_tmpvar_17][_ORBIT_tmpvar_18]) * _ORBIT_tmpvar_19);
		  }
	       }

	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._length));
		  memcpy(_ORBIT_t, &((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._length), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._length));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._length));
	       }
	       for (_ORBIT_tmpvar_20 = 0; _ORBIT_tmpvar_20 < (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._length; _ORBIT_tmpvar_20++) {
		  _ORBIT_tmpvar_22 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].name) + 1;
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_22));
		     memcpy(_ORBIT_t, &(_ORBIT_tmpvar_22), sizeof(_ORBIT_tmpvar_22));
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_22));
		  }
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].name[_ORBIT_tmpvar_21]) * _ORBIT_tmpvar_22);
		     memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].name), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].name[_ORBIT_tmpvar_21]) * _ORBIT_tmpvar_22);
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].name[_ORBIT_tmpvar_21]) * _ORBIT_tmpvar_22);
		  }
		  ORBit_encode_CORBA_TypeCode((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].type, _ORBIT_send_buffer);
		  ORBit_marshal_object(_ORBIT_send_buffer, (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].type_def);
		  giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].mode));
		     memcpy(_ORBIT_t, &((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].mode), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].mode));
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].parameters._buffer[_ORBIT_tmpvar_20].mode));
		  }
	       }

	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._length));
		  memcpy(_ORBIT_t, &((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._length), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._length));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._length));
	       }
	       for (_ORBIT_tmpvar_23 = 0; _ORBIT_tmpvar_23 < (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._length; _ORBIT_tmpvar_23++) {
		  _ORBIT_tmpvar_25 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].name) + 1;
		  giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_25));
		     memcpy(_ORBIT_t, &(_ORBIT_tmpvar_25), sizeof(_ORBIT_tmpvar_25));
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_25));
		  }
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].name[_ORBIT_tmpvar_24]) * _ORBIT_tmpvar_25);
		     memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].name), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].name[_ORBIT_tmpvar_24]) * _ORBIT_tmpvar_25);
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].name[_ORBIT_tmpvar_24]) * _ORBIT_tmpvar_25);
		  }
		  _ORBIT_tmpvar_27 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].id) + 1;
		  giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_27));
		     memcpy(_ORBIT_t, &(_ORBIT_tmpvar_27), sizeof(_ORBIT_tmpvar_27));
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_27));
		  }
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].id[_ORBIT_tmpvar_26]) * _ORBIT_tmpvar_27);
		     memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].id), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].id[_ORBIT_tmpvar_26]) * _ORBIT_tmpvar_27);
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].id[_ORBIT_tmpvar_26]) * _ORBIT_tmpvar_27);
		  }
		  _ORBIT_tmpvar_29 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].defined_in) + 1;
		  giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_29));
		     memcpy(_ORBIT_t, &(_ORBIT_tmpvar_29), sizeof(_ORBIT_tmpvar_29));
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_29));
		  }
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].defined_in[_ORBIT_tmpvar_28]) * _ORBIT_tmpvar_29);
		     memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].defined_in), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].defined_in[_ORBIT_tmpvar_28]) * _ORBIT_tmpvar_29);
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].defined_in[_ORBIT_tmpvar_28]) * _ORBIT_tmpvar_29);
		  }
		  _ORBIT_tmpvar_31 = strlen((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].version) + 1;
		  giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_31));
		     memcpy(_ORBIT_t, &(_ORBIT_tmpvar_31), sizeof(_ORBIT_tmpvar_31));
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_31));
		  }
		  {
		     guchar *_ORBIT_t;
		     _ORBIT_t = alloca(sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].version[_ORBIT_tmpvar_30]) * _ORBIT_tmpvar_31);
		     memcpy(_ORBIT_t, ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].version), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].version[_ORBIT_tmpvar_30]) * _ORBIT_tmpvar_31);
		     giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].version[_ORBIT_tmpvar_30]) * _ORBIT_tmpvar_31);
		  }
		  ORBit_encode_CORBA_TypeCode((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_8].exceptions._buffer[_ORBIT_tmpvar_23].type, _ORBIT_send_buffer);
	       }

	    }

	    giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval).attributes._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval).attributes._length), sizeof((*_ORBIT_retval).attributes._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).attributes._length));
	    }
	    for (_ORBIT_tmpvar_32 = 0; _ORBIT_tmpvar_32 < (*_ORBIT_retval).attributes._length; _ORBIT_tmpvar_32++) {
	       _ORBIT_tmpvar_34 = strlen((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].name) + 1;
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_34));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_34), sizeof(_ORBIT_tmpvar_34));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_34));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].name[_ORBIT_tmpvar_33]) * _ORBIT_tmpvar_34);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].name), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].name[_ORBIT_tmpvar_33]) * _ORBIT_tmpvar_34);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].name[_ORBIT_tmpvar_33]) * _ORBIT_tmpvar_34);
	       }
	       _ORBIT_tmpvar_36 = strlen((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].id) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_36));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_36), sizeof(_ORBIT_tmpvar_36));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_36));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].id[_ORBIT_tmpvar_35]) * _ORBIT_tmpvar_36);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].id), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].id[_ORBIT_tmpvar_35]) * _ORBIT_tmpvar_36);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].id[_ORBIT_tmpvar_35]) * _ORBIT_tmpvar_36);
	       }
	       _ORBIT_tmpvar_38 = strlen((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].defined_in) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_38));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_38), sizeof(_ORBIT_tmpvar_38));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_38));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].defined_in[_ORBIT_tmpvar_37]) * _ORBIT_tmpvar_38);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].defined_in), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].defined_in[_ORBIT_tmpvar_37]) * _ORBIT_tmpvar_38);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].defined_in[_ORBIT_tmpvar_37]) * _ORBIT_tmpvar_38);
	       }
	       _ORBIT_tmpvar_40 = strlen((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].version) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_40));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_40), sizeof(_ORBIT_tmpvar_40));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_40));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].version[_ORBIT_tmpvar_39]) * _ORBIT_tmpvar_40);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].version), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].version[_ORBIT_tmpvar_39]) * _ORBIT_tmpvar_40);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].version[_ORBIT_tmpvar_39]) * _ORBIT_tmpvar_40);
	       }
	       ORBit_encode_CORBA_TypeCode((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].type, _ORBIT_send_buffer);
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].mode));
		  memcpy(_ORBIT_t, &((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].mode), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].mode));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_32].mode));
	       }
	    }

	    {
	       guchar *_ORBIT_t;
	       _ORBIT_t = alloca(sizeof((*_ORBIT_retval).base_interfaces._length));
	       memcpy(_ORBIT_t, &((*_ORBIT_retval).base_interfaces._length), sizeof((*_ORBIT_retval).base_interfaces._length));
	       giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).base_interfaces._length));
	    }
	    for (_ORBIT_tmpvar_41 = 0; _ORBIT_tmpvar_41 < (*_ORBIT_retval).base_interfaces._length; _ORBIT_tmpvar_41++) {
	       _ORBIT_tmpvar_43 = strlen((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_41]) + 1;
	       giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_43));
		  memcpy(_ORBIT_t, &(_ORBIT_tmpvar_43), sizeof(_ORBIT_tmpvar_43));
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_43));
	       }
	       {
		  guchar *_ORBIT_t;
		  _ORBIT_t = alloca(sizeof((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_41][_ORBIT_tmpvar_42]) * _ORBIT_tmpvar_43);
		  memcpy(_ORBIT_t, ((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_41]), sizeof((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_41][_ORBIT_tmpvar_42]) * _ORBIT_tmpvar_43);
		  giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_41][_ORBIT_tmpvar_42]) * _ORBIT_tmpvar_43);
	       }
	    }

	    ORBit_encode_CORBA_TypeCode((*_ORBIT_retval).type, _ORBIT_send_buffer);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_free(_ORBIT_retval);
   }
}
void 
_ORBIT_skel_CORBA_InterfaceDef_create_attribute(POA_CORBA_InterfaceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_AttributeDef(*_impl_create_attribute) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType type, const CORBA_AttributeMode mode, CORBA_Environment * ev))
{
   CORBA_AttributeDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   CORBA_IDLType type;
   CORBA_AttributeMode mode;
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      CORBA_unsigned_long _ORBIT_tmpvar_7;
      register CORBA_unsigned_long _ORBIT_tmpvar_8;
      CORBA_unsigned_long _ORBIT_tmpvar_9;
      register CORBA_unsigned_long _ORBIT_tmpvar_10;
      CORBA_unsigned_long _ORBIT_tmpvar_11;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_7))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_9))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_8]) * _ORBIT_tmpvar_9;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_11))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_10]) * _ORBIT_tmpvar_11;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (mode))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_7 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_6]) * _ORBIT_tmpvar_7;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_9 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_8]) * _ORBIT_tmpvar_9;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_11 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_10]) * _ORBIT_tmpvar_11;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 type = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 mode = *((CORBA_AttributeMode *) _ORBIT_curptr);
      }
   }
   _ORBIT_retval = _impl_create_attribute(_ORBIT_servant, id, name, version, type, mode, ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_Object_release(type, ev);
   }
}
void 
_ORBIT_skel_CORBA_InterfaceDef_create_operation(POA_CORBA_InterfaceDef * _ORBIT_servant, GIOPRecvBuffer * _ORBIT_recv_buffer, CORBA_Environment * ev, CORBA_OperationDef(*_impl_create_operation) (PortableServer_Servant _servant, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType result, const CORBA_OperationMode mode, const CORBA_ParDescriptionSeq * params, const CORBA_ExceptionDefSeq * exceptions, const CORBA_ContextIdSeq * contexts, CORBA_Environment * ev))
{
   CORBA_OperationDef _ORBIT_retval;
   CORBA_RepositoryId id;
   CORBA_Identifier name;
   CORBA_VersionSpec version;
   CORBA_IDLType result;
   CORBA_OperationMode mode;
   CORBA_ParDescriptionSeq params = {0, 0, NULL, CORBA_FALSE};
   CORBA_ExceptionDefSeq exceptions = {0, 0, NULL, CORBA_FALSE};
   CORBA_ContextIdSeq contexts = {0, 0, NULL, CORBA_FALSE};
   {				/* demarshalling */
      guchar *_ORBIT_curptr;
      register CORBA_unsigned_long _ORBIT_tmpvar_13;
      CORBA_unsigned_long _ORBIT_tmpvar_14;
      register CORBA_unsigned_long _ORBIT_tmpvar_15;
      CORBA_unsigned_long _ORBIT_tmpvar_16;
      register CORBA_unsigned_long _ORBIT_tmpvar_17;
      CORBA_unsigned_long _ORBIT_tmpvar_18;
      register CORBA_unsigned_long _ORBIT_tmpvar_19;
      register CORBA_unsigned_long _ORBIT_tmpvar_20;
      CORBA_unsigned_long _ORBIT_tmpvar_21;
      register CORBA_unsigned_long _ORBIT_tmpvar_22;
      register CORBA_unsigned_long _ORBIT_tmpvar_23;
      register CORBA_unsigned_long _ORBIT_tmpvar_24;
      CORBA_unsigned_long _ORBIT_tmpvar_25;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_14))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_16))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_15]) * _ORBIT_tmpvar_16;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_18))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_17]) * _ORBIT_tmpvar_18;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 result = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (mode))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*((guint32 *) & (params._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 params._buffer = CORBA_sequence_CORBA_ParameterDescription_allocbuf(params._length);
	 params._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_19 = 0; _ORBIT_tmpvar_19 < params._length; _ORBIT_tmpvar_19++) {
	    (*((guint32 *) & (_ORBIT_tmpvar_21))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    params._buffer[_ORBIT_tmpvar_19].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(params._buffer[_ORBIT_tmpvar_19].name[_ORBIT_tmpvar_20]) * _ORBIT_tmpvar_21;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&params._buffer[_ORBIT_tmpvar_19].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    params._buffer[_ORBIT_tmpvar_19].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (params._buffer[_ORBIT_tmpvar_19].mode))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	 }

	 (*((guint32 *) & (exceptions._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 exceptions._buffer = CORBA_sequence_CORBA_ExceptionDef_allocbuf(exceptions._length);
	 exceptions._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_22 = 0; _ORBIT_tmpvar_22 < exceptions._length; _ORBIT_tmpvar_22++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    exceptions._buffer[_ORBIT_tmpvar_22] = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (contexts._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 contexts._buffer = alloca(sizeof(contexts._buffer[_ORBIT_tmpvar_23]) * contexts._length);
	 contexts._release = CORBA_FALSE;
	 for (_ORBIT_tmpvar_23 = 0; _ORBIT_tmpvar_23 < contexts._length; _ORBIT_tmpvar_23++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_25))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    contexts._buffer[_ORBIT_tmpvar_23] = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(contexts._buffer[_ORBIT_tmpvar_23][_ORBIT_tmpvar_24]) * _ORBIT_tmpvar_25;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_14 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 id = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(id[_ORBIT_tmpvar_13]) * _ORBIT_tmpvar_14;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_16 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 name = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(name[_ORBIT_tmpvar_15]) * _ORBIT_tmpvar_16;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_18 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 version = (void *) _ORBIT_curptr;
	 _ORBIT_curptr += sizeof(version[_ORBIT_tmpvar_17]) * _ORBIT_tmpvar_18;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 result = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 mode = *((CORBA_OperationMode *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 params._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 params._buffer = CORBA_sequence_CORBA_ParameterDescription_allocbuf(params._length);
	 params._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_19 = 0; _ORBIT_tmpvar_19 < params._length; _ORBIT_tmpvar_19++) {
	    _ORBIT_tmpvar_21 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    params._buffer[_ORBIT_tmpvar_19].name = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(params._buffer[_ORBIT_tmpvar_19].name[_ORBIT_tmpvar_20]) * _ORBIT_tmpvar_21;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&params._buffer[_ORBIT_tmpvar_19].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    params._buffer[_ORBIT_tmpvar_19].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    params._buffer[_ORBIT_tmpvar_19].mode = *((CORBA_ParameterMode *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	 }

	 exceptions._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 exceptions._buffer = CORBA_sequence_CORBA_ExceptionDef_allocbuf(exceptions._length);
	 exceptions._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_22 = 0; _ORBIT_tmpvar_22 < exceptions._length; _ORBIT_tmpvar_22++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    exceptions._buffer[_ORBIT_tmpvar_22] = ORBit_demarshal_object(_ORBIT_recv_buffer, (((ORBit_ObjectKey *) _ORBIT_servant->_private)->object->orb));
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 contexts._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 contexts._buffer = alloca(sizeof(contexts._buffer[_ORBIT_tmpvar_23]) * contexts._length);
	 contexts._release = CORBA_FALSE;
	 for (_ORBIT_tmpvar_23 = 0; _ORBIT_tmpvar_23 < contexts._length; _ORBIT_tmpvar_23++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_25 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    contexts._buffer[_ORBIT_tmpvar_23] = (void *) _ORBIT_curptr;
	    _ORBIT_curptr += sizeof(contexts._buffer[_ORBIT_tmpvar_23][_ORBIT_tmpvar_24]) * _ORBIT_tmpvar_25;
	 }

      }
   }
   _ORBIT_retval = _impl_create_operation(_ORBIT_servant, id, name, version, result, mode, &(params), &(exceptions), &(contexts), ev);
   {				/* marshalling */
      register GIOPSendBuffer *_ORBIT_send_buffer;
      _ORBIT_send_buffer = giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection, NULL, _ORBIT_recv_buffer->message.u.request.request_id, ev->_major);
      if (_ORBIT_send_buffer) {
	 if (ev->_major == CORBA_NO_EXCEPTION) {
	    ORBit_marshal_object(_ORBIT_send_buffer, _ORBIT_retval);
	 } else
	    ORBit_send_system_exception(_ORBIT_send_buffer, ev);
	 giop_send_buffer_write(_ORBIT_send_buffer);
	 giop_send_buffer_unuse(_ORBIT_send_buffer);
      }
      if (ev->_major == CORBA_NO_EXCEPTION)
	 CORBA_Object_release(_ORBIT_retval, ev);
      CORBA_Object_release(result, ev);
      CORBA_ParDescriptionSeq__free(&params, NULL, CORBA_FALSE);
      CORBA_ExceptionDefSeq__free(&exceptions, NULL, CORBA_FALSE);
   }
}
static ORBitSkeleton 
get_skel_CORBA_IRObject(POA_CORBA_IRObject * servant,
			GIOPRecvBuffer * _ORBIT_recv_buffer,
			gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    if (strcmp((opname + 1), "get_def_kind"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
	    break;
	 case 'd':
	    if (strcmp((opname + 1), "estroy"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_IRObject(CORBA_Object obj, POA_CORBA_IRObject * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
}
void 
POA_CORBA_IRObject__init(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_IRObject, "IDL:omg.org/CORBA/IRObject:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_IRObject};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_IRObject__classid)
      CORBA_IRObject__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_IRObject__fini(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_Contained(POA_CORBA_Contained * servant,
			 GIOPRecvBuffer * _ORBIT_recv_buffer,
			 gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       if (strcmp((opname + 4), "ribe"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_Contained(CORBA_Object obj, POA_CORBA_Contained * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
}
void 
POA_CORBA_Contained__init(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_Contained, "IDL:omg.org/CORBA/Contained:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_Contained};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_IRObject__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_Contained__classid)
      CORBA_Contained__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_Contained__fini(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   POA_CORBA_IRObject__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_Container(POA_CORBA_Container * servant,
			 GIOPRecvBuffer * _ORBIT_recv_buffer,
			 gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    if (strcmp((opname + 1), "get_def_kind"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
	    break;
	 case 'c':
	    switch (opname[1]) {
		  case 'o':
		     if (strcmp((opname + 2), "ntents"))
			break;
		     *impl = (gpointer) servant->vepv->CORBA_Container_epv->contents;
		     return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_contents;
		     break;
		  case 'r':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 'a':
				       switch (opname[4]) {
					     case 't':
						switch (opname[5]) {
						      case 'e':
							 switch (opname[6]) {
							       case '_':
								  switch (opname[7]) {
									case 'a':
									   if (strcmp((opname + 8), "lias"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_alias;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_alias;
									   break;
									case 'c':
									   if (strcmp((opname + 8), "onstant"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_constant;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_constant;
									   break;
									case 'e':
									   switch (opname[8]) {
										 case 'n':
										    if (strcmp((opname + 9), "um"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_enum;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_enum;
										    break;
										 case 'x':
										    if (strcmp((opname + 9), "ception"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_exception;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_exception;
										    break;
										 default:
										    break;
									   }
									   break;
									case 'i':
									   if (strcmp((opname + 8), "nterface"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_interface;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_interface;
									   break;
									case 'm':
									   if (strcmp((opname + 8), "odule"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_module;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_module;
									   break;
									case 's':
									   if (strcmp((opname + 8), "truct"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_struct;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_struct;
									   break;
									case 'u':
									   if (strcmp((opname + 8), "nion"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_union;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_union;
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       if (strcmp((opname + 4), "ribe_contents"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_Container_epv->describe_contents;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_describe_contents;
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'l':
	    switch (opname[1]) {
		  case 'o':
		     switch (opname[2]) {
			   case 'o':
			      switch (opname[3]) {
				    case 'k':
				       switch (opname[4]) {
					     case 'u':
						switch (opname[5]) {
						      case 'p':
							 switch (opname[6]) {
							       case '\0':
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup;
								  break;
							       case '_':
								  if (strcmp((opname + 7), "name"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup_name;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup_name;
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_Container(CORBA_Object obj, POA_CORBA_Container * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Container__classid] = servant->vepv->CORBA_Container_epv;
}
void 
POA_CORBA_Container__init(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_Container, "IDL:omg.org/CORBA/Container:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_Container};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_IRObject__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_Container__classid)
      CORBA_Container__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_Container__fini(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   POA_CORBA_IRObject__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_IDLType(POA_CORBA_IDLType * servant,
		       GIOPRecvBuffer * _ORBIT_recv_buffer,
		       gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'd':
							 if (strcmp((opname + 6), "ef_kind"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    if (strcmp((opname + 1), "estroy"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_IDLType(CORBA_Object obj, POA_CORBA_IDLType * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
}
void 
POA_CORBA_IDLType__init(PortableServer_Servant servant,
			CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_IDLType, "IDL:omg.org/CORBA/IDLType:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_IDLType};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_IRObject__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_IDLType__classid)
      CORBA_IDLType__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_IDLType__fini(PortableServer_Servant servant,
			CORBA_Environment * env)
{
   POA_CORBA_IRObject__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_Repository(POA_CORBA_Repository * servant,
			  GIOPRecvBuffer * _ORBIT_recv_buffer,
			  gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    if (strcmp((opname + 1), "get_def_kind"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
	    break;
	 case 'c':
	    switch (opname[1]) {
		  case 'o':
		     if (strcmp((opname + 2), "ntents"))
			break;
		     *impl = (gpointer) servant->vepv->CORBA_Container_epv->contents;
		     return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_contents;
		     break;
		  case 'r':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 'a':
				       switch (opname[4]) {
					     case 't':
						switch (opname[5]) {
						      case 'e':
							 switch (opname[6]) {
							       case '_':
								  switch (opname[7]) {
									case 'a':
									   switch (opname[8]) {
										 case 'l':
										    if (strcmp((opname + 9), "ias"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_alias;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_alias;
										    break;
										 case 'r':
										    if (strcmp((opname + 9), "ray"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Repository_epv->create_array;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Repository_create_array;
										    break;
										 default:
										    break;
									   }
									   break;
									case 'c':
									   if (strcmp((opname + 8), "onstant"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_constant;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_constant;
									   break;
									case 'e':
									   switch (opname[8]) {
										 case 'n':
										    if (strcmp((opname + 9), "um"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_enum;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_enum;
										    break;
										 case 'x':
										    if (strcmp((opname + 9), "ception"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_exception;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_exception;
										    break;
										 default:
										    break;
									   }
									   break;
									case 'f':
									   if (strcmp((opname + 8), "ixed"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Repository_epv->create_fixed;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Repository_create_fixed;
									   break;
									case 'i':
									   if (strcmp((opname + 8), "nterface"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_interface;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_interface;
									   break;
									case 'm':
									   if (strcmp((opname + 8), "odule"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_module;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_module;
									   break;
									case 's':
									   switch (opname[8]) {
										 case 'e':
										    if (strcmp((opname + 9), "quence"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Repository_epv->create_sequence;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Repository_create_sequence;
										    break;
										 case 't':
										    switch (opname[9]) {
											  case 'r':
											     switch (opname[10]) {
												   case 'i':
												      if (strcmp((opname + 11), "ng"))
													 break;
												      *impl = (gpointer) servant->vepv->CORBA_Repository_epv->create_string;
												      return (ORBitSkeleton) _ORBIT_skel_CORBA_Repository_create_string;
												      break;
												   case 'u':
												      if (strcmp((opname + 11), "ct"))
													 break;
												      *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_struct;
												      return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_struct;
												      break;
												   default:
												      break;
											     }
											     break;
											  default:
											     break;
										    }
										    break;
										 default:
										    break;
									   }
									   break;
									case 'u':
									   if (strcmp((opname + 8), "nion"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_union;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_union;
									   break;
									case 'w':
									   if (strcmp((opname + 8), "string"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Repository_epv->create_wstring;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Repository_create_wstring;
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       if (strcmp((opname + 4), "ribe_contents"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_Container_epv->describe_contents;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_describe_contents;
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'g':
	    if (strcmp((opname + 1), "et_primitive"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Repository_epv->get_primitive;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Repository_get_primitive;
	    break;
	 case 'l':
	    switch (opname[1]) {
		  case 'o':
		     switch (opname[2]) {
			   case 'o':
			      switch (opname[3]) {
				    case 'k':
				       switch (opname[4]) {
					     case 'u':
						switch (opname[5]) {
						      case 'p':
							 switch (opname[6]) {
							       case '\0':
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup;
								  break;
							       case '_':
								  switch (opname[7]) {
									case 'i':
									   if (strcmp((opname + 8), "d"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Repository_epv->lookup_id;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Repository_lookup_id;
									   break;
									case 'n':
									   if (strcmp((opname + 8), "ame"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup_name;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup_name;
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_Repository(CORBA_Object obj, POA_CORBA_Repository * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Container__classid] = servant->vepv->CORBA_Container_epv;
   obj->vepv[CORBA_Repository__classid] = servant->vepv->CORBA_Repository_epv;
}
void 
POA_CORBA_Repository__init(PortableServer_Servant servant,
			   CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_Repository, "IDL:omg.org/CORBA/Repository:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_Repository};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_Container__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_Repository__classid)
      CORBA_Repository__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_Repository__fini(PortableServer_Servant servant,
			   CORBA_Environment * env)
{
   POA_CORBA_Container__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_ModuleDef(POA_CORBA_ModuleDef * servant,
			 GIOPRecvBuffer * _ORBIT_recv_buffer,
			 gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'c':
	    switch (opname[1]) {
		  case 'o':
		     if (strcmp((opname + 2), "ntents"))
			break;
		     *impl = (gpointer) servant->vepv->CORBA_Container_epv->contents;
		     return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_contents;
		     break;
		  case 'r':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 'a':
				       switch (opname[4]) {
					     case 't':
						switch (opname[5]) {
						      case 'e':
							 switch (opname[6]) {
							       case '_':
								  switch (opname[7]) {
									case 'a':
									   if (strcmp((opname + 8), "lias"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_alias;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_alias;
									   break;
									case 'c':
									   if (strcmp((opname + 8), "onstant"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_constant;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_constant;
									   break;
									case 'e':
									   switch (opname[8]) {
										 case 'n':
										    if (strcmp((opname + 9), "um"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_enum;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_enum;
										    break;
										 case 'x':
										    if (strcmp((opname + 9), "ception"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_exception;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_exception;
										    break;
										 default:
										    break;
									   }
									   break;
									case 'i':
									   if (strcmp((opname + 8), "nterface"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_interface;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_interface;
									   break;
									case 'm':
									   if (strcmp((opname + 8), "odule"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_module;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_module;
									   break;
									case 's':
									   if (strcmp((opname + 8), "truct"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_struct;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_struct;
									   break;
									case 'u':
									   if (strcmp((opname + 8), "nion"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_union;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_union;
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       switch (opname[4]) {
					     case 'r':
						switch (opname[5]) {
						      case 'i':
							 switch (opname[6]) {
							       case 'b':
								  switch (opname[7]) {
									case 'e':
									   switch (opname[8]) {
										 case '\0':
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
										    break;
										 case '_':
										    if (strcmp((opname + 9), "contents"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->describe_contents;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_describe_contents;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'l':
	    switch (opname[1]) {
		  case 'o':
		     switch (opname[2]) {
			   case 'o':
			      switch (opname[3]) {
				    case 'k':
				       switch (opname[4]) {
					     case 'u':
						switch (opname[5]) {
						      case 'p':
							 switch (opname[6]) {
							       case '\0':
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup;
								  break;
							       case '_':
								  if (strcmp((opname + 7), "name"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup_name;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup_name;
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_ModuleDef(CORBA_Object obj, POA_CORBA_ModuleDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Container__classid] = servant->vepv->CORBA_Container_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_ModuleDef__classid] = servant->vepv->CORBA_ModuleDef_epv;
}
void 
POA_CORBA_ModuleDef__init(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_ModuleDef, "IDL:omg.org/CORBA/ModuleDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_ModuleDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_Container__init(servant, env);
   POA_CORBA_Contained__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_ModuleDef__classid)
      CORBA_ModuleDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_ModuleDef__fini(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   POA_CORBA_Contained__fini(servant, env);
   POA_CORBA_Container__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_ConstantDef(POA_CORBA_ConstantDef * servant,
			   GIOPRecvBuffer * _ORBIT_recv_buffer,
			   gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 't':
							 switch (opname[6]) {
							       case 'y':
								  switch (opname[7]) {
									case 'p':
									   switch (opname[8]) {
										 case 'e':
										    switch (opname[9]) {
											  case '\0':
											     *impl = (gpointer) servant->vepv->CORBA_ConstantDef_epv->_get_type;
											     return (ORBitSkeleton) _ORBIT_skel_CORBA_ConstantDef__get_type;
											     break;
											  case '_':
											     if (strcmp((opname + 10), "def"))
												break;
											     *impl = (gpointer) servant->vepv->CORBA_ConstantDef_epv->_get_type_def;
											     return (ORBitSkeleton) _ORBIT_skel_CORBA_ConstantDef__get_type_def;
											     break;
											  default:
											     break;
										    }
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'v':
							 switch (opname[6]) {
							       case 'a':
								  if (strcmp((opname + 7), "lue"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_ConstantDef_epv->_get_value;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_ConstantDef__get_value;
								  break;
							       case 'e':
								  if (strcmp((opname + 7), "rsion"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype_def"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_ConstantDef_epv->_set_type_def;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_ConstantDef__set_type_def;
							 break;
						      case 'v':
							 switch (opname[6]) {
							       case 'a':
								  if (strcmp((opname + 7), "lue"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_ConstantDef_epv->_set_value;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_ConstantDef__set_value;
								  break;
							       case 'e':
								  if (strcmp((opname + 7), "rsion"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       if (strcmp((opname + 4), "ribe"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_ConstantDef(CORBA_Object obj, POA_CORBA_ConstantDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_ConstantDef__classid] = servant->vepv->CORBA_ConstantDef_epv;
}
void 
POA_CORBA_ConstantDef__init(PortableServer_Servant servant,
			    CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_ConstantDef, "IDL:omg.org/CORBA/ConstantDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_ConstantDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_Contained__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_ConstantDef__classid)
      CORBA_ConstantDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_ConstantDef__fini(PortableServer_Servant servant,
			    CORBA_Environment * env)
{
   POA_CORBA_Contained__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_TypedefDef(POA_CORBA_TypedefDef * servant,
			  GIOPRecvBuffer * _ORBIT_recv_buffer,
			  gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       if (strcmp((opname + 4), "ribe"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_TypedefDef(CORBA_Object obj, POA_CORBA_TypedefDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_TypedefDef__classid] = servant->vepv->CORBA_TypedefDef_epv;
}
void 
POA_CORBA_TypedefDef__init(PortableServer_Servant servant,
			   CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_TypedefDef, "IDL:omg.org/CORBA/TypedefDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_TypedefDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_Contained__init(servant, env);
   POA_CORBA_IDLType__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_TypedefDef__classid)
      CORBA_TypedefDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_TypedefDef__fini(PortableServer_Servant servant,
			   CORBA_Environment * env)
{
   POA_CORBA_IDLType__fini(servant, env);
   POA_CORBA_Contained__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_StructDef(POA_CORBA_StructDef * servant,
			 GIOPRecvBuffer * _ORBIT_recv_buffer,
			 gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "embers"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_StructDef_epv->_get_members;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_StructDef__get_members;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "embers"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_StructDef_epv->_set_members;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_StructDef__set_members;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'c':
	    switch (opname[1]) {
		  case 'o':
		     if (strcmp((opname + 2), "ntents"))
			break;
		     *impl = (gpointer) servant->vepv->CORBA_Container_epv->contents;
		     return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_contents;
		     break;
		  case 'r':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 'a':
				       switch (opname[4]) {
					     case 't':
						switch (opname[5]) {
						      case 'e':
							 switch (opname[6]) {
							       case '_':
								  switch (opname[7]) {
									case 'a':
									   if (strcmp((opname + 8), "lias"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_alias;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_alias;
									   break;
									case 'c':
									   if (strcmp((opname + 8), "onstant"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_constant;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_constant;
									   break;
									case 'e':
									   switch (opname[8]) {
										 case 'n':
										    if (strcmp((opname + 9), "um"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_enum;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_enum;
										    break;
										 case 'x':
										    if (strcmp((opname + 9), "ception"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_exception;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_exception;
										    break;
										 default:
										    break;
									   }
									   break;
									case 'i':
									   if (strcmp((opname + 8), "nterface"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_interface;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_interface;
									   break;
									case 'm':
									   if (strcmp((opname + 8), "odule"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_module;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_module;
									   break;
									case 's':
									   if (strcmp((opname + 8), "truct"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_struct;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_struct;
									   break;
									case 'u':
									   if (strcmp((opname + 8), "nion"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_union;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_union;
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       switch (opname[4]) {
					     case 'r':
						switch (opname[5]) {
						      case 'i':
							 switch (opname[6]) {
							       case 'b':
								  switch (opname[7]) {
									case 'e':
									   switch (opname[8]) {
										 case '\0':
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
										    break;
										 case '_':
										    if (strcmp((opname + 9), "contents"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->describe_contents;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_describe_contents;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'l':
	    switch (opname[1]) {
		  case 'o':
		     switch (opname[2]) {
			   case 'o':
			      switch (opname[3]) {
				    case 'k':
				       switch (opname[4]) {
					     case 'u':
						switch (opname[5]) {
						      case 'p':
							 switch (opname[6]) {
							       case '\0':
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup;
								  break;
							       case '_':
								  if (strcmp((opname + 7), "name"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup_name;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup_name;
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_StructDef(CORBA_Object obj, POA_CORBA_StructDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_TypedefDef__classid] = servant->vepv->CORBA_TypedefDef_epv;
   obj->vepv[CORBA_Container__classid] = servant->vepv->CORBA_Container_epv;
   obj->vepv[CORBA_StructDef__classid] = servant->vepv->CORBA_StructDef_epv;
}
void 
POA_CORBA_StructDef__init(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_StructDef, "IDL:omg.org/CORBA/StructDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_StructDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_TypedefDef__init(servant, env);
   POA_CORBA_Container__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_StructDef__classid)
      CORBA_StructDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_StructDef__fini(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   POA_CORBA_Container__fini(servant, env);
   POA_CORBA_TypedefDef__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_UnionDef(POA_CORBA_UnionDef * servant,
			GIOPRecvBuffer * _ORBIT_recv_buffer,
			gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       case 'i':
								  switch (opname[7]) {
									case 's':
									   switch (opname[8]) {
										 case 'c':
										    switch (opname[9]) {
											  case 'r':
											     switch (opname[10]) {
												   case 'i':
												      switch (opname[11]) {
													    case 'm':
													       switch (opname[12]) {
														     case 'i':
															switch (opname[13]) {
															      case 'n':
																 switch (opname[14]) {
																       case 'a':
																	  switch (opname[15]) {
																		case 't':
																		   switch (opname[16]) {
																			 case 'o':
																			    switch (opname[17]) {
																				  case 'r':
																				     switch (opname[18]) {
																					   case '_':
																					      switch (opname[19]) {
																						    case 't':
																						       switch (opname[20]) {
																							     case 'y':
																								switch (opname[21]) {
																								      case 'p':
																									 switch (opname[22]) {
																									       case 'e':
																										  switch (opname[23]) {
																											case '\0':
																											   *impl = (gpointer) servant->vepv->CORBA_UnionDef_epv->_get_discriminator_type;
																											   return (ORBitSkeleton) _ORBIT_skel_CORBA_UnionDef__get_discriminator_type;
																											   break;
																											case '_':
																											   if (strcmp((opname + 24), "def"))
																											      break;
																											   *impl = (gpointer) servant->vepv->CORBA_UnionDef_epv->_get_discriminator_type_def;
																											   return (ORBitSkeleton) _ORBIT_skel_CORBA_UnionDef__get_discriminator_type_def;
																											   break;
																											default:
																											   break;
																										  }
																										  break;
																									       default:
																										  break;
																									 }
																									 break;
																								      default:
																									 break;
																								}
																								break;
																							     default:
																								break;
																						       }
																						       break;
																						    default:
																						       break;
																					      }
																					      break;
																					   default:
																					      break;
																				     }
																				     break;
																				  default:
																				     break;
																			    }
																			    break;
																			 default:
																			    break;
																		   }
																		   break;
																		default:
																		   break;
																	  }
																	  break;
																       default:
																	  break;
																 }
																 break;
															      default:
																 break;
															}
															break;
														     default:
															break;
													       }
													       break;
													    default:
													       break;
												      }
												      break;
												   default:
												      break;
											     }
											     break;
											  default:
											     break;
										    }
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "embers"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_UnionDef_epv->_get_members;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_UnionDef__get_members;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'd':
							 if (strcmp((opname + 6), "iscriminator_type_def"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_UnionDef_epv->_set_discriminator_type_def;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_UnionDef__set_discriminator_type_def;
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "embers"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_UnionDef_epv->_set_members;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_UnionDef__set_members;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'c':
	    switch (opname[1]) {
		  case 'o':
		     if (strcmp((opname + 2), "ntents"))
			break;
		     *impl = (gpointer) servant->vepv->CORBA_Container_epv->contents;
		     return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_contents;
		     break;
		  case 'r':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 'a':
				       switch (opname[4]) {
					     case 't':
						switch (opname[5]) {
						      case 'e':
							 switch (opname[6]) {
							       case '_':
								  switch (opname[7]) {
									case 'a':
									   if (strcmp((opname + 8), "lias"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_alias;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_alias;
									   break;
									case 'c':
									   if (strcmp((opname + 8), "onstant"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_constant;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_constant;
									   break;
									case 'e':
									   switch (opname[8]) {
										 case 'n':
										    if (strcmp((opname + 9), "um"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_enum;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_enum;
										    break;
										 case 'x':
										    if (strcmp((opname + 9), "ception"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_exception;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_exception;
										    break;
										 default:
										    break;
									   }
									   break;
									case 'i':
									   if (strcmp((opname + 8), "nterface"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_interface;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_interface;
									   break;
									case 'm':
									   if (strcmp((opname + 8), "odule"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_module;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_module;
									   break;
									case 's':
									   if (strcmp((opname + 8), "truct"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_struct;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_struct;
									   break;
									case 'u':
									   if (strcmp((opname + 8), "nion"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_union;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_union;
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       switch (opname[4]) {
					     case 'r':
						switch (opname[5]) {
						      case 'i':
							 switch (opname[6]) {
							       case 'b':
								  switch (opname[7]) {
									case 'e':
									   switch (opname[8]) {
										 case '\0':
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
										    break;
										 case '_':
										    if (strcmp((opname + 9), "contents"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->describe_contents;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_describe_contents;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'l':
	    switch (opname[1]) {
		  case 'o':
		     switch (opname[2]) {
			   case 'o':
			      switch (opname[3]) {
				    case 'k':
				       switch (opname[4]) {
					     case 'u':
						switch (opname[5]) {
						      case 'p':
							 switch (opname[6]) {
							       case '\0':
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup;
								  break;
							       case '_':
								  if (strcmp((opname + 7), "name"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup_name;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup_name;
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_UnionDef(CORBA_Object obj, POA_CORBA_UnionDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_TypedefDef__classid] = servant->vepv->CORBA_TypedefDef_epv;
   obj->vepv[CORBA_Container__classid] = servant->vepv->CORBA_Container_epv;
   obj->vepv[CORBA_UnionDef__classid] = servant->vepv->CORBA_UnionDef_epv;
}
void 
POA_CORBA_UnionDef__init(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_UnionDef, "IDL:omg.org/CORBA/UnionDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_UnionDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_TypedefDef__init(servant, env);
   POA_CORBA_Container__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_UnionDef__classid)
      CORBA_UnionDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_UnionDef__fini(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   POA_CORBA_Container__fini(servant, env);
   POA_CORBA_TypedefDef__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_EnumDef(POA_CORBA_EnumDef * servant,
		       GIOPRecvBuffer * _ORBIT_recv_buffer,
		       gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "embers"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_EnumDef_epv->_get_members;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_EnumDef__get_members;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "embers"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_EnumDef_epv->_set_members;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_EnumDef__set_members;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       if (strcmp((opname + 4), "ribe"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_EnumDef(CORBA_Object obj, POA_CORBA_EnumDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_TypedefDef__classid] = servant->vepv->CORBA_TypedefDef_epv;
   obj->vepv[CORBA_EnumDef__classid] = servant->vepv->CORBA_EnumDef_epv;
}
void 
POA_CORBA_EnumDef__init(PortableServer_Servant servant,
			CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_EnumDef, "IDL:omg.org/CORBA/EnumDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_EnumDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_TypedefDef__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_EnumDef__classid)
      CORBA_EnumDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_EnumDef__fini(PortableServer_Servant servant,
			CORBA_Environment * env)
{
   POA_CORBA_TypedefDef__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_AliasDef(POA_CORBA_AliasDef * servant,
			GIOPRecvBuffer * _ORBIT_recv_buffer,
			gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 'o':
							 if (strcmp((opname + 6), "riginal_type_def"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_AliasDef_epv->_get_original_type_def;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_AliasDef__get_original_type_def;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'o':
							 if (strcmp((opname + 6), "riginal_type_def"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_AliasDef_epv->_set_original_type_def;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_AliasDef__set_original_type_def;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       if (strcmp((opname + 4), "ribe"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_AliasDef(CORBA_Object obj, POA_CORBA_AliasDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_TypedefDef__classid] = servant->vepv->CORBA_TypedefDef_epv;
   obj->vepv[CORBA_AliasDef__classid] = servant->vepv->CORBA_AliasDef_epv;
}
void 
POA_CORBA_AliasDef__init(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_AliasDef, "IDL:omg.org/CORBA/AliasDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_AliasDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_TypedefDef__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_AliasDef__classid)
      CORBA_AliasDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_AliasDef__fini(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   POA_CORBA_TypedefDef__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_PrimitiveDef(POA_CORBA_PrimitiveDef * servant,
			    GIOPRecvBuffer * _ORBIT_recv_buffer,
			    gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'd':
							 if (strcmp((opname + 6), "ef_kind"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
							 break;
						      case 'k':
							 if (strcmp((opname + 6), "ind"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_PrimitiveDef_epv->_get_kind;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_PrimitiveDef__get_kind;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    if (strcmp((opname + 1), "estroy"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_PrimitiveDef(CORBA_Object obj, POA_CORBA_PrimitiveDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_PrimitiveDef__classid] = servant->vepv->CORBA_PrimitiveDef_epv;
}
void 
POA_CORBA_PrimitiveDef__init(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_PrimitiveDef, "IDL:omg.org/CORBA/PrimitiveDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_PrimitiveDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_IDLType__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_PrimitiveDef__classid)
      CORBA_PrimitiveDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_PrimitiveDef__fini(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   POA_CORBA_IDLType__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_StringDef(POA_CORBA_StringDef * servant,
			 GIOPRecvBuffer * _ORBIT_recv_buffer,
			 gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'b':
							 if (strcmp((opname + 6), "ound"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_StringDef_epv->_get_bound;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_StringDef__get_bound;
							 break;
						      case 'd':
							 if (strcmp((opname + 6), "ef_kind"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     if (strcmp((opname + 2), "et_bound"))
			break;
		     *impl = (gpointer) servant->vepv->CORBA_StringDef_epv->_set_bound;
		     return (ORBitSkeleton) _ORBIT_skel_CORBA_StringDef__set_bound;
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    if (strcmp((opname + 1), "estroy"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_StringDef(CORBA_Object obj, POA_CORBA_StringDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_StringDef__classid] = servant->vepv->CORBA_StringDef_epv;
}
void 
POA_CORBA_StringDef__init(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_StringDef, "IDL:omg.org/CORBA/StringDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_StringDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_IDLType__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_StringDef__classid)
      CORBA_StringDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_StringDef__fini(PortableServer_Servant servant,
			  CORBA_Environment * env)
{
   POA_CORBA_IDLType__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_WstringDef(POA_CORBA_WstringDef * servant,
			  GIOPRecvBuffer * _ORBIT_recv_buffer,
			  gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'b':
							 if (strcmp((opname + 6), "ound"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_WstringDef_epv->_get_bound;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_WstringDef__get_bound;
							 break;
						      case 'd':
							 if (strcmp((opname + 6), "ef_kind"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     if (strcmp((opname + 2), "et_bound"))
			break;
		     *impl = (gpointer) servant->vepv->CORBA_WstringDef_epv->_set_bound;
		     return (ORBitSkeleton) _ORBIT_skel_CORBA_WstringDef__set_bound;
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    if (strcmp((opname + 1), "estroy"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_WstringDef(CORBA_Object obj, POA_CORBA_WstringDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_WstringDef__classid] = servant->vepv->CORBA_WstringDef_epv;
}
void 
POA_CORBA_WstringDef__init(PortableServer_Servant servant,
			   CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_WstringDef, "IDL:omg.org/CORBA/WstringDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_WstringDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_IDLType__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_WstringDef__classid)
      CORBA_WstringDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_WstringDef__fini(PortableServer_Servant servant,
			   CORBA_Environment * env)
{
   POA_CORBA_IDLType__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_FixedDef(POA_CORBA_FixedDef * servant,
			GIOPRecvBuffer * _ORBIT_recv_buffer,
			gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  if (strcmp((opname + 7), "f_kind"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
								  break;
							       case 'i':
								  if (strcmp((opname + 7), "gits"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_FixedDef_epv->_get_digits;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_FixedDef__get_digits;
								  break;
							       default:
								  break;
							 }
							 break;
						      case 's':
							 if (strcmp((opname + 6), "cale"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_FixedDef_epv->_get_scale;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_FixedDef__get_scale;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'd':
							 if (strcmp((opname + 6), "igits"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_FixedDef_epv->_set_digits;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_FixedDef__set_digits;
							 break;
						      case 's':
							 if (strcmp((opname + 6), "cale"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_FixedDef_epv->_set_scale;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_FixedDef__set_scale;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    if (strcmp((opname + 1), "estroy"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_FixedDef(CORBA_Object obj, POA_CORBA_FixedDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_FixedDef__classid] = servant->vepv->CORBA_FixedDef_epv;
}
void 
POA_CORBA_FixedDef__init(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_FixedDef, "IDL:omg.org/CORBA/FixedDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_FixedDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_IDLType__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_FixedDef__classid)
      CORBA_FixedDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_FixedDef__fini(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   POA_CORBA_IDLType__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_SequenceDef(POA_CORBA_SequenceDef * servant,
			   GIOPRecvBuffer * _ORBIT_recv_buffer,
			   gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'b':
							 if (strcmp((opname + 6), "ound"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_SequenceDef_epv->_get_bound;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_SequenceDef__get_bound;
							 break;
						      case 'd':
							 if (strcmp((opname + 6), "ef_kind"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
							 break;
						      case 'e':
							 switch (opname[6]) {
							       case 'l':
								  switch (opname[7]) {
									case 'e':
									   switch (opname[8]) {
										 case 'm':
										    switch (opname[9]) {
											  case 'e':
											     switch (opname[10]) {
												   case 'n':
												      switch (opname[11]) {
													    case 't':
													       switch (opname[12]) {
														     case '_':
															switch (opname[13]) {
															      case 't':
																 switch (opname[14]) {
																       case 'y':
																	  switch (opname[15]) {
																		case 'p':
																		   switch (opname[16]) {
																			 case 'e':
																			    switch (opname[17]) {
																				  case '\0':
																				     *impl = (gpointer) servant->vepv->CORBA_SequenceDef_epv->_get_element_type;
																				     return (ORBitSkeleton) _ORBIT_skel_CORBA_SequenceDef__get_element_type;
																				     break;
																				  case '_':
																				     if (strcmp((opname + 18), "def"))
																					break;
																				     *impl = (gpointer) servant->vepv->CORBA_SequenceDef_epv->_get_element_type_def;
																				     return (ORBitSkeleton) _ORBIT_skel_CORBA_SequenceDef__get_element_type_def;
																				     break;
																				  default:
																				     break;
																			    }
																			    break;
																			 default:
																			    break;
																		   }
																		   break;
																		default:
																		   break;
																	  }
																	  break;
																       default:
																	  break;
																 }
																 break;
															      default:
																 break;
															}
															break;
														     default:
															break;
													       }
													       break;
													    default:
													       break;
												      }
												      break;
												   default:
												      break;
											     }
											     break;
											  default:
											     break;
										    }
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'b':
							 if (strcmp((opname + 6), "ound"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_SequenceDef_epv->_set_bound;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_SequenceDef__set_bound;
							 break;
						      case 'e':
							 if (strcmp((opname + 6), "lement_type_def"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_SequenceDef_epv->_set_element_type_def;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_SequenceDef__set_element_type_def;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    if (strcmp((opname + 1), "estroy"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_SequenceDef(CORBA_Object obj, POA_CORBA_SequenceDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_SequenceDef__classid] = servant->vepv->CORBA_SequenceDef_epv;
}
void 
POA_CORBA_SequenceDef__init(PortableServer_Servant servant,
			    CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_SequenceDef, "IDL:omg.org/CORBA/SequenceDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_SequenceDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_IDLType__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_SequenceDef__classid)
      CORBA_SequenceDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_SequenceDef__fini(PortableServer_Servant servant,
			    CORBA_Environment * env)
{
   POA_CORBA_IDLType__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_ArrayDef(POA_CORBA_ArrayDef * servant,
			GIOPRecvBuffer * _ORBIT_recv_buffer,
			gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'd':
							 if (strcmp((opname + 6), "ef_kind"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
							 break;
						      case 'e':
							 switch (opname[6]) {
							       case 'l':
								  switch (opname[7]) {
									case 'e':
									   switch (opname[8]) {
										 case 'm':
										    switch (opname[9]) {
											  case 'e':
											     switch (opname[10]) {
												   case 'n':
												      switch (opname[11]) {
													    case 't':
													       switch (opname[12]) {
														     case '_':
															switch (opname[13]) {
															      case 't':
																 switch (opname[14]) {
																       case 'y':
																	  switch (opname[15]) {
																		case 'p':
																		   switch (opname[16]) {
																			 case 'e':
																			    switch (opname[17]) {
																				  case '\0':
																				     *impl = (gpointer) servant->vepv->CORBA_ArrayDef_epv->_get_element_type;
																				     return (ORBitSkeleton) _ORBIT_skel_CORBA_ArrayDef__get_element_type;
																				     break;
																				  case '_':
																				     if (strcmp((opname + 18), "def"))
																					break;
																				     *impl = (gpointer) servant->vepv->CORBA_ArrayDef_epv->_get_element_type_def;
																				     return (ORBitSkeleton) _ORBIT_skel_CORBA_ArrayDef__get_element_type_def;
																				     break;
																				  default:
																				     break;
																			    }
																			    break;
																			 default:
																			    break;
																		   }
																		   break;
																		default:
																		   break;
																	  }
																	  break;
																       default:
																	  break;
																 }
																 break;
															      default:
																 break;
															}
															break;
														     default:
															break;
													       }
													       break;
													    default:
													       break;
												      }
												      break;
												   default:
												      break;
											     }
											     break;
											  default:
											     break;
										    }
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'l':
							 if (strcmp((opname + 6), "ength"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_ArrayDef_epv->_get_length;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_ArrayDef__get_length;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'e':
							 if (strcmp((opname + 6), "lement_type_def"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_ArrayDef_epv->_set_element_type_def;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_ArrayDef__set_element_type_def;
							 break;
						      case 'l':
							 if (strcmp((opname + 6), "ength"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_ArrayDef_epv->_set_length;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_ArrayDef__set_length;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    if (strcmp((opname + 1), "estroy"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_ArrayDef(CORBA_Object obj, POA_CORBA_ArrayDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_ArrayDef__classid] = servant->vepv->CORBA_ArrayDef_epv;
}
void 
POA_CORBA_ArrayDef__init(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_ArrayDef, "IDL:omg.org/CORBA/ArrayDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_ArrayDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_IDLType__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_ArrayDef__classid)
      CORBA_ArrayDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_ArrayDef__fini(PortableServer_Servant servant,
			 CORBA_Environment * env)
{
   POA_CORBA_IDLType__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_ExceptionDef(POA_CORBA_ExceptionDef * servant,
			    GIOPRecvBuffer * _ORBIT_recv_buffer,
			    gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "embers"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_ExceptionDef_epv->_get_members;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_ExceptionDef__get_members;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_ExceptionDef_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_ExceptionDef__get_type;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "embers"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_ExceptionDef_epv->_set_members;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_ExceptionDef__set_members;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'c':
	    switch (opname[1]) {
		  case 'o':
		     if (strcmp((opname + 2), "ntents"))
			break;
		     *impl = (gpointer) servant->vepv->CORBA_Container_epv->contents;
		     return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_contents;
		     break;
		  case 'r':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 'a':
				       switch (opname[4]) {
					     case 't':
						switch (opname[5]) {
						      case 'e':
							 switch (opname[6]) {
							       case '_':
								  switch (opname[7]) {
									case 'a':
									   if (strcmp((opname + 8), "lias"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_alias;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_alias;
									   break;
									case 'c':
									   if (strcmp((opname + 8), "onstant"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_constant;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_constant;
									   break;
									case 'e':
									   switch (opname[8]) {
										 case 'n':
										    if (strcmp((opname + 9), "um"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_enum;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_enum;
										    break;
										 case 'x':
										    if (strcmp((opname + 9), "ception"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_exception;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_exception;
										    break;
										 default:
										    break;
									   }
									   break;
									case 'i':
									   if (strcmp((opname + 8), "nterface"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_interface;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_interface;
									   break;
									case 'm':
									   if (strcmp((opname + 8), "odule"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_module;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_module;
									   break;
									case 's':
									   if (strcmp((opname + 8), "truct"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_struct;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_struct;
									   break;
									case 'u':
									   if (strcmp((opname + 8), "nion"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_union;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_union;
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       switch (opname[4]) {
					     case 'r':
						switch (opname[5]) {
						      case 'i':
							 switch (opname[6]) {
							       case 'b':
								  switch (opname[7]) {
									case 'e':
									   switch (opname[8]) {
										 case '\0':
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
										    break;
										 case '_':
										    if (strcmp((opname + 9), "contents"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->describe_contents;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_describe_contents;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'l':
	    switch (opname[1]) {
		  case 'o':
		     switch (opname[2]) {
			   case 'o':
			      switch (opname[3]) {
				    case 'k':
				       switch (opname[4]) {
					     case 'u':
						switch (opname[5]) {
						      case 'p':
							 switch (opname[6]) {
							       case '\0':
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup;
								  break;
							       case '_':
								  if (strcmp((opname + 7), "name"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup_name;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup_name;
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_ExceptionDef(CORBA_Object obj, POA_CORBA_ExceptionDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_Container__classid] = servant->vepv->CORBA_Container_epv;
   obj->vepv[CORBA_ExceptionDef__classid] = servant->vepv->CORBA_ExceptionDef_epv;
}
void 
POA_CORBA_ExceptionDef__init(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_ExceptionDef, "IDL:omg.org/CORBA/ExceptionDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_ExceptionDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_Contained__init(servant, env);
   POA_CORBA_Container__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_ExceptionDef__classid)
      CORBA_ExceptionDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_ExceptionDef__fini(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   POA_CORBA_Container__fini(servant, env);
   POA_CORBA_Contained__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_AttributeDef(POA_CORBA_AttributeDef * servant,
			    GIOPRecvBuffer * _ORBIT_recv_buffer,
			    gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "ode"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_AttributeDef_epv->_get_mode;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_AttributeDef__get_mode;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 't':
							 switch (opname[6]) {
							       case 'y':
								  switch (opname[7]) {
									case 'p':
									   switch (opname[8]) {
										 case 'e':
										    switch (opname[9]) {
											  case '\0':
											     *impl = (gpointer) servant->vepv->CORBA_AttributeDef_epv->_get_type;
											     return (ORBitSkeleton) _ORBIT_skel_CORBA_AttributeDef__get_type;
											     break;
											  case '_':
											     if (strcmp((opname + 10), "def"))
												break;
											     *impl = (gpointer) servant->vepv->CORBA_AttributeDef_epv->_get_type_def;
											     return (ORBitSkeleton) _ORBIT_skel_CORBA_AttributeDef__get_type_def;
											     break;
											  default:
											     break;
										    }
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "ode"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_AttributeDef_epv->_set_mode;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_AttributeDef__set_mode;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype_def"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_AttributeDef_epv->_set_type_def;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_AttributeDef__set_type_def;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       if (strcmp((opname + 4), "ribe"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_AttributeDef(CORBA_Object obj, POA_CORBA_AttributeDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_AttributeDef__classid] = servant->vepv->CORBA_AttributeDef_epv;
}
void 
POA_CORBA_AttributeDef__init(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_AttributeDef, "IDL:omg.org/CORBA/AttributeDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_AttributeDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_Contained__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_AttributeDef__classid)
      CORBA_AttributeDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_AttributeDef__fini(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   POA_CORBA_Contained__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_OperationDef(POA_CORBA_OperationDef * servant,
			    GIOPRecvBuffer * _ORBIT_recv_buffer,
			    gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'c':
							 switch (opname[6]) {
							       case 'o':
								  switch (opname[7]) {
									case 'n':
									   switch (opname[8]) {
										 case 't':
										    switch (opname[9]) {
											  case 'a':
											     if (strcmp((opname + 10), "ining_repository"))
												break;
											     *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
											     return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
											     break;
											  case 'e':
											     if (strcmp((opname + 10), "xts"))
												break;
											     *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_get_contexts;
											     return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__get_contexts;
											     break;
											  default:
											     break;
										    }
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'e':
							 if (strcmp((opname + 6), "xceptions"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_get_exceptions;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__get_exceptions;
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "ode"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_get_mode;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__get_mode;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 'p':
							 if (strcmp((opname + 6), "arams"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_get_params;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__get_params;
							 break;
						      case 'r':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 's':
									   switch (opname[8]) {
										 case 'u':
										    switch (opname[9]) {
											  case 'l':
											     switch (opname[10]) {
												   case 't':
												      switch (opname[11]) {
													    case '\0':
													       *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_get_result;
													       return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__get_result;
													       break;
													    case '_':
													       if (strcmp((opname + 12), "def"))
														  break;
													       *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_get_result_def;
													       return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__get_result_def;
													       break;
													    default:
													       break;
												      }
												      break;
												   default:
												      break;
											     }
											     break;
											  default:
											     break;
										    }
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'c':
							 if (strcmp((opname + 6), "ontexts"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_set_contexts;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__set_contexts;
							 break;
						      case 'e':
							 if (strcmp((opname + 6), "xceptions"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_set_exceptions;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__set_exceptions;
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'm':
							 if (strcmp((opname + 6), "ode"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_set_mode;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__set_mode;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'p':
							 if (strcmp((opname + 6), "arams"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_set_params;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__set_params;
							 break;
						      case 'r':
							 if (strcmp((opname + 6), "esult_def"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_OperationDef_epv->_set_result_def;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_OperationDef__set_result_def;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       if (strcmp((opname + 4), "ribe"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_OperationDef(CORBA_Object obj, POA_CORBA_OperationDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_OperationDef__classid] = servant->vepv->CORBA_OperationDef_epv;
}
void 
POA_CORBA_OperationDef__init(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_OperationDef, "IDL:omg.org/CORBA/OperationDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_OperationDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_Contained__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_OperationDef__classid)
      CORBA_OperationDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_OperationDef__fini(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   POA_CORBA_Contained__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}

static ORBitSkeleton 
get_skel_CORBA_InterfaceDef(POA_CORBA_InterfaceDef * servant,
			    GIOPRecvBuffer * _ORBIT_recv_buffer,
			    gpointer * impl)
{
   gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
   switch (opname[0]) {
	 case '_':
	    switch (opname[1]) {
		  case 'g':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'a':
							 if (strcmp((opname + 6), "bsolute_name"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_absolute_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_absolute_name;
							 break;
						      case 'b':
							 if (strcmp((opname + 6), "ase_interfaces"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_InterfaceDef_epv->_get_base_interfaces;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_InterfaceDef__get_base_interfaces;
							 break;
						      case 'c':
							 if (strcmp((opname + 6), "ontaining_repository"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_containing_repository;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_containing_repository;
							 break;
						      case 'd':
							 switch (opname[6]) {
							       case 'e':
								  switch (opname[7]) {
									case 'f':
									   switch (opname[8]) {
										 case '_':
										    if (strcmp((opname + 9), "kind"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->_get_def_kind;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject__get_def_kind;
										    break;
										 case 'i':
										    if (strcmp((opname + 9), "ned_in"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_defined_in;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_defined_in;
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_name;
							 break;
						      case 't':
							 if (strcmp((opname + 6), "ype"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_IDLType_epv->_get_type;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_IDLType__get_type;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_get_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__get_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  case 's':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 't':
				       switch (opname[4]) {
					     case '_':
						switch (opname[5]) {
						      case 'b':
							 if (strcmp((opname + 6), "ase_interfaces"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_InterfaceDef_epv->_set_base_interfaces;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_InterfaceDef__set_base_interfaces;
							 break;
						      case 'i':
							 if (strcmp((opname + 6), "d"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_id;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_id;
							 break;
						      case 'n':
							 if (strcmp((opname + 6), "ame"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_name;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_name;
							 break;
						      case 'v':
							 if (strcmp((opname + 6), "ersion"))
							    break;
							 *impl = (gpointer) servant->vepv->CORBA_Contained_epv->_set_version;
							 return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained__set_version;
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'c':
	    switch (opname[1]) {
		  case 'o':
		     if (strcmp((opname + 2), "ntents"))
			break;
		     *impl = (gpointer) servant->vepv->CORBA_Container_epv->contents;
		     return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_contents;
		     break;
		  case 'r':
		     switch (opname[2]) {
			   case 'e':
			      switch (opname[3]) {
				    case 'a':
				       switch (opname[4]) {
					     case 't':
						switch (opname[5]) {
						      case 'e':
							 switch (opname[6]) {
							       case '_':
								  switch (opname[7]) {
									case 'a':
									   switch (opname[8]) {
										 case 'l':
										    if (strcmp((opname + 9), "ias"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_alias;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_alias;
										    break;
										 case 't':
										    if (strcmp((opname + 9), "tribute"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_InterfaceDef_epv->create_attribute;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_InterfaceDef_create_attribute;
										    break;
										 default:
										    break;
									   }
									   break;
									case 'c':
									   if (strcmp((opname + 8), "onstant"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_constant;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_constant;
									   break;
									case 'e':
									   switch (opname[8]) {
										 case 'n':
										    if (strcmp((opname + 9), "um"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_enum;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_enum;
										    break;
										 case 'x':
										    if (strcmp((opname + 9), "ception"))
										       break;
										    *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_exception;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_exception;
										    break;
										 default:
										    break;
									   }
									   break;
									case 'i':
									   if (strcmp((opname + 8), "nterface"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_interface;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_interface;
									   break;
									case 'm':
									   if (strcmp((opname + 8), "odule"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_module;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_module;
									   break;
									case 'o':
									   if (strcmp((opname + 8), "peration"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_InterfaceDef_epv->create_operation;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_InterfaceDef_create_operation;
									   break;
									case 's':
									   if (strcmp((opname + 8), "truct"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_struct;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_struct;
									   break;
									case 'u':
									   if (strcmp((opname + 8), "nion"))
									      break;
									   *impl = (gpointer) servant->vepv->CORBA_Container_epv->create_union;
									   return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_create_union;
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'd':
	    switch (opname[1]) {
		  case 'e':
		     switch (opname[2]) {
			   case 's':
			      switch (opname[3]) {
				    case 'c':
				       switch (opname[4]) {
					     case 'r':
						switch (opname[5]) {
						      case 'i':
							 switch (opname[6]) {
							       case 'b':
								  switch (opname[7]) {
									case 'e':
									   switch (opname[8]) {
										 case '\0':
										    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->describe;
										    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_describe;
										    break;
										 case '_':
										    switch (opname[9]) {
											  case 'c':
											     if (strcmp((opname + 10), "ontents"))
												break;
											     *impl = (gpointer) servant->vepv->CORBA_Container_epv->describe_contents;
											     return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_describe_contents;
											     break;
											  case 'i':
											     if (strcmp((opname + 10), "nterface"))
												break;
											     *impl = (gpointer) servant->vepv->CORBA_InterfaceDef_epv->describe_interface;
											     return (ORBitSkeleton) _ORBIT_skel_CORBA_InterfaceDef_describe_interface;
											     break;
											  default:
											     break;
										    }
										    break;
										 default:
										    break;
									   }
									   break;
									default:
									   break;
								  }
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    case 't':
				       if (strcmp((opname + 4), "roy"))
					  break;
				       *impl = (gpointer) servant->vepv->CORBA_IRObject_epv->destroy;
				       return (ORBitSkeleton) _ORBIT_skel_CORBA_IRObject_destroy;
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'i':
	    if (strcmp((opname + 1), "s_a"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_InterfaceDef_epv->is_a;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_InterfaceDef_is_a;
	    break;
	 case 'l':
	    switch (opname[1]) {
		  case 'o':
		     switch (opname[2]) {
			   case 'o':
			      switch (opname[3]) {
				    case 'k':
				       switch (opname[4]) {
					     case 'u':
						switch (opname[5]) {
						      case 'p':
							 switch (opname[6]) {
							       case '\0':
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup;
								  break;
							       case '_':
								  if (strcmp((opname + 7), "name"))
								     break;
								  *impl = (gpointer) servant->vepv->CORBA_Container_epv->lookup_name;
								  return (ORBitSkeleton) _ORBIT_skel_CORBA_Container_lookup_name;
								  break;
							       default:
								  break;
							 }
							 break;
						      default:
							 break;
						}
						break;
					     default:
						break;
				       }
				       break;
				    default:
				       break;
			      }
			      break;
			   default:
			      break;
		     }
		     break;
		  default:
		     break;
	    }
	    break;
	 case 'm':
	    if (strcmp((opname + 1), "ove"))
	       break;
	    *impl = (gpointer) servant->vepv->CORBA_Contained_epv->move;
	    return (ORBitSkeleton) _ORBIT_skel_CORBA_Contained_move;
	    break;
	 default:
	    break;
   }
   return NULL;
}

static void 
init_local_objref_CORBA_InterfaceDef(CORBA_Object obj, POA_CORBA_InterfaceDef * servant)
{
   obj->vepv[CORBA_IRObject__classid] = servant->vepv->CORBA_IRObject_epv;
   obj->vepv[CORBA_Container__classid] = servant->vepv->CORBA_Container_epv;
   obj->vepv[CORBA_Contained__classid] = servant->vepv->CORBA_Contained_epv;
   obj->vepv[CORBA_IDLType__classid] = servant->vepv->CORBA_IDLType_epv;
   obj->vepv[CORBA_InterfaceDef__classid] = servant->vepv->CORBA_InterfaceDef_epv;
}
void 
POA_CORBA_InterfaceDef__init(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   static const PortableServer_ClassInfo class_info = {(ORBit_impl_finder) & get_skel_CORBA_InterfaceDef, "IDL:omg.org/CORBA/InterfaceDef:1.0", (ORBit_local_objref_init) & init_local_objref_CORBA_InterfaceDef};
   PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant), env);
   POA_CORBA_Container__init(servant, env);
   POA_CORBA_Contained__init(servant, env);
   POA_CORBA_IDLType__init(servant, env);
   ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->class_info = (PortableServer_ClassInfo *) & class_info;
   if (!CORBA_InterfaceDef__classid)
      CORBA_InterfaceDef__classid = ORBit_register_class(&class_info);
}

void 
POA_CORBA_InterfaceDef__fini(PortableServer_Servant servant,
			     CORBA_Environment * env)
{
   POA_CORBA_IDLType__fini(servant, env);
   POA_CORBA_Contained__fini(servant, env);
   POA_CORBA_Container__fini(servant, env);
   PortableServer_ServantBase__fini(servant, env);
}
