diff --git a/conda.recipe/build.sh b/conda.recipe/build.sh
index de8a9f32ece60e597b6e14fcc11ad059ffad614d..6bec7bb00c2c226e15615907839aae8cc68ccf31 100644
--- a/conda.recipe/build.sh
+++ b/conda.recipe/build.sh
@@ -12,4 +12,4 @@
 # Since we setup subfolders for ipaaca and proto, we want to step into the ipaaca folder here
 cd ipaaca
 echo "Installing ipaaca using setup.py"
-python setup.py install
+python setup.py install --single-version-externally-managed --record=record.txt 
diff --git a/ipaacalib/python/ipaaca_pb2.py b/ipaacalib/python/ipaaca_pb2.py
deleted file mode 100644
index effe073718791d1e7dfbabe7efffa0181a9dbd77..0000000000000000000000000000000000000000
--- a/ipaacalib/python/ipaaca_pb2.py
+++ /dev/null
@@ -1,1102 +0,0 @@
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: ipaaca.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
-from google.protobuf.internal import enum_type_wrapper
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='ipaaca.proto',
-  package='ipaaca.protobuf',
-  syntax='proto2',
-  serialized_options=None,
-  serialized_pb=_b('\n\x0cipaaca.proto\x12\x0fipaaca.protobuf\"s\n\x15TransportLevelWrapper\x12\x45\n\x16transport_message_type\x18\x01 \x02(\x0e\x32%.ipaaca.protobuf.TransportMessageType\x12\x13\n\x0braw_message\x18\x02 \x02(\x0c\"\x1b\n\nIntMessage\x12\r\n\x05value\x18\x01 \x02(\x11\"(\n\x07LinkSet\x12\x0c\n\x04type\x18\x01 \x02(\t\x12\x0f\n\x07targets\x18\x02 \x03(\t\"<\n\x0bPayloadItem\x12\x0b\n\x03key\x18\x01 \x02(\t\x12\r\n\x05value\x18\x02 \x02(\t\x12\x11\n\x04type\x18\x03 \x02(\t:\x03str\"\x96\x03\n\x02IU\x12\x0b\n\x03uid\x18\x01 \x02(\t\x12\x10\n\x08revision\x18\x02 \x02(\r\x12\x17\n\x08\x63\x61tegory\x18\x03 \x02(\t:\x05undef\x12\x19\n\x0cpayload_type\x18\x04 \x02(\t:\x03MAP\x12\x12\n\nowner_name\x18\x05 \x02(\t\x12\x18\n\tcommitted\x18\x06 \x02(\x08:\x05\x66\x61lse\x12\x39\n\x0b\x61\x63\x63\x65ss_mode\x18\x07 \x02(\x0e\x32\x1e.ipaaca.protobuf.IU.AccessMode:\x04PUSH\x12\x18\n\tread_only\x18\x08 \x02(\x08:\x05\x66\x61lse\x12-\n\x07payload\x18\t \x03(\x0b\x32\x1c.ipaaca.protobuf.PayloadItem\x12\'\n\x05links\x18\n \x03(\x0b\x32\x18.ipaaca.protobuf.LinkSet\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\x12\x1a\n\x10request_endpoint\x18\x65 \x01(\t:\x00\"/\n\nAccessMode\x12\x08\n\x04PUSH\x10\x00\x12\n\n\x06REMOTE\x10\x01\x12\x0b\n\x07MESSAGE\x10\x02\"\xda\x01\n\x0fIUPayloadUpdate\x12\x0b\n\x03uid\x18\x01 \x02(\t\x12\x10\n\x08revision\x18\x02 \x02(\r\x12/\n\tnew_items\x18\x03 \x03(\x0b\x32\x1c.ipaaca.protobuf.PayloadItem\x12\x16\n\x0ekeys_to_remove\x18\x04 \x03(\t\x12\x17\n\x08is_delta\x18\x05 \x02(\x08:\x05\x66\x61lse\x12\x13\n\x0bwriter_name\x18\x06 \x02(\t\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\x12\x1a\n\x10request_endpoint\x18\x65 \x01(\t:\x00\"`\n\x0cIURetraction\x12\x0b\n\x03uid\x18\x01 \x02(\t\x12\x10\n\x08revision\x18\x02 \x02(\r\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\x12\x1a\n\x10request_endpoint\x18\x65 \x01(\t:\x00\"u\n\x0cIUCommission\x12\x0b\n\x03uid\x18\x01 \x02(\t\x12\x10\n\x08revision\x18\x02 \x02(\r\x12\x13\n\x0bwriter_name\x18\x03 \x02(\t\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\x12\x1a\n\x10request_endpoint\x18\x65 \x01(\t:\x00\"\xee\x01\n\x0cIULinkUpdate\x12\x0b\n\x03uid\x18\x01 \x02(\t\x12\x10\n\x08revision\x18\x02 \x02(\r\x12+\n\tnew_links\x18\x03 \x03(\x0b\x32\x18.ipaaca.protobuf.LinkSet\x12\x31\n\x0flinks_to_remove\x18\x04 \x03(\x0b\x32\x18.ipaaca.protobuf.LinkSet\x12\x17\n\x08is_delta\x18\x05 \x02(\x08:\x05\x66\x61lse\x12\x13\n\x0bwriter_name\x18\x06 \x02(\t\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\x12\x1a\n\x10request_endpoint\x18\x65 \x01(\t:\x00\"l\n\x0fIUResendRequest\x12\x0b\n\x03uid\x18\x01 \x02(\t\x12\x19\n\x11hidden_scope_name\x18\x02 \x02(\t\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\x12\x1a\n\x10request_endpoint\x18\x65 \x01(\t:\x00\"<\n\x13RemoteRequestResult\x12\x0e\n\x06result\x18\x01 \x02(\r\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\"\xe1\x01\n\x16IUPayloadUpdateRequest\x12\x0b\n\x03uid\x18\x01 \x02(\t\x12\x10\n\x08revision\x18\x02 \x02(\r\x12/\n\tnew_items\x18\x03 \x03(\x0b\x32\x1c.ipaaca.protobuf.PayloadItem\x12\x16\n\x0ekeys_to_remove\x18\x04 \x03(\t\x12\x17\n\x08is_delta\x18\x05 \x02(\x08:\x05\x66\x61lse\x12\x13\n\x0bwriter_name\x18\x06 \x02(\t\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\x12\x1a\n\x10request_endpoint\x18\x65 \x01(\t:\x00\"|\n\x13IUCommissionRequest\x12\x0b\n\x03uid\x18\x01 \x02(\t\x12\x10\n\x08revision\x18\x02 \x02(\r\x12\x13\n\x0bwriter_name\x18\x03 \x02(\t\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\x12\x1a\n\x10request_endpoint\x18\x65 \x01(\t:\x00\"\xf5\x01\n\x13IULinkUpdateRequest\x12\x0b\n\x03uid\x18\x01 \x02(\t\x12\x10\n\x08revision\x18\x02 \x02(\r\x12+\n\tnew_links\x18\x03 \x03(\x0b\x32\x18.ipaaca.protobuf.LinkSet\x12\x31\n\x0flinks_to_remove\x18\x04 \x03(\x0b\x32\x18.ipaaca.protobuf.LinkSet\x12\x17\n\x08is_delta\x18\x05 \x02(\x08:\x05\x66\x61lse\x12\x13\n\x0bwriter_name\x18\x06 \x02(\t\x12\x15\n\x0brequest_uid\x18\x64 \x01(\t:\x00\x12\x1a\n\x10request_endpoint\x18\x65 \x01(\t:\x00*\xfa\x02\n\x14TransportMessageType\x12\x14\n\x10WireTypeRESERVED\x10\x00\x12\x16\n\x12WireTypeIntMessage\x10\x01\x12\x1f\n\x1bWireTypeRemoteRequestResult\x10\x02\x12\x0e\n\nWireTypeIU\x10\x03\x12\x15\n\x11WireTypeMessageIU\x10\x04\x12\x1b\n\x17WireTypeIUPayloadUpdate\x10\x05\x12\x18\n\x14WireTypeIULinkUpdate\x10\x06\x12\x18\n\x14WireTypeIURetraction\x10\x07\x12\x18\n\x14WireTypeIUCommission\x10\x08\x12\x1b\n\x17WireTypeIUResendRequest\x10\t\x12\"\n\x1eWireTypeIUPayloadUpdateRequest\x10\x64\x12\x1f\n\x1bWireTypeIUCommissionRequest\x10\x65\x12\x1f\n\x1bWireTypeIULinkUpdateRequest\x10\x66')
-)
-
-_TRANSPORTMESSAGETYPE = _descriptor.EnumDescriptor(
-  name='TransportMessageType',
-  full_name='ipaaca.protobuf.TransportMessageType',
-  filename=None,
-  file=DESCRIPTOR,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeRESERVED', index=0, number=0,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIntMessage', index=1, number=1,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeRemoteRequestResult', index=2, number=2,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIU', index=3, number=3,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeMessageIU', index=4, number=4,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIUPayloadUpdate', index=5, number=5,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIULinkUpdate', index=6, number=6,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIURetraction', index=7, number=7,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIUCommission', index=8, number=8,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIUResendRequest', index=9, number=9,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIUPayloadUpdateRequest', index=10, number=100,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIUCommissionRequest', index=11, number=101,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='WireTypeIULinkUpdateRequest', index=12, number=102,
-      serialized_options=None,
-      type=None),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=2146,
-  serialized_end=2524,
-)
-_sym_db.RegisterEnumDescriptor(_TRANSPORTMESSAGETYPE)
-
-TransportMessageType = enum_type_wrapper.EnumTypeWrapper(_TRANSPORTMESSAGETYPE)
-WireTypeRESERVED = 0
-WireTypeIntMessage = 1
-WireTypeRemoteRequestResult = 2
-WireTypeIU = 3
-WireTypeMessageIU = 4
-WireTypeIUPayloadUpdate = 5
-WireTypeIULinkUpdate = 6
-WireTypeIURetraction = 7
-WireTypeIUCommission = 8
-WireTypeIUResendRequest = 9
-WireTypeIUPayloadUpdateRequest = 100
-WireTypeIUCommissionRequest = 101
-WireTypeIULinkUpdateRequest = 102
-
-
-_IU_ACCESSMODE = _descriptor.EnumDescriptor(
-  name='AccessMode',
-  full_name='ipaaca.protobuf.IU.AccessMode',
-  filename=None,
-  file=DESCRIPTOR,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='PUSH', index=0, number=0,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='REMOTE', index=1, number=1,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='MESSAGE', index=2, number=2,
-      serialized_options=None,
-      type=None),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=643,
-  serialized_end=690,
-)
-_sym_db.RegisterEnumDescriptor(_IU_ACCESSMODE)
-
-
-_TRANSPORTLEVELWRAPPER = _descriptor.Descriptor(
-  name='TransportLevelWrapper',
-  full_name='ipaaca.protobuf.TransportLevelWrapper',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='transport_message_type', full_name='ipaaca.protobuf.TransportLevelWrapper.transport_message_type', index=0,
-      number=1, type=14, cpp_type=8, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='raw_message', full_name='ipaaca.protobuf.TransportLevelWrapper.raw_message', index=1,
-      number=2, type=12, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b(""),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=33,
-  serialized_end=148,
-)
-
-
-_INTMESSAGE = _descriptor.Descriptor(
-  name='IntMessage',
-  full_name='ipaaca.protobuf.IntMessage',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='value', full_name='ipaaca.protobuf.IntMessage.value', index=0,
-      number=1, type=17, cpp_type=1, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=150,
-  serialized_end=177,
-)
-
-
-_LINKSET = _descriptor.Descriptor(
-  name='LinkSet',
-  full_name='ipaaca.protobuf.LinkSet',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='type', full_name='ipaaca.protobuf.LinkSet.type', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='targets', full_name='ipaaca.protobuf.LinkSet.targets', index=1,
-      number=2, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=179,
-  serialized_end=219,
-)
-
-
-_PAYLOADITEM = _descriptor.Descriptor(
-  name='PayloadItem',
-  full_name='ipaaca.protobuf.PayloadItem',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='key', full_name='ipaaca.protobuf.PayloadItem.key', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='value', full_name='ipaaca.protobuf.PayloadItem.value', index=1,
-      number=2, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='type', full_name='ipaaca.protobuf.PayloadItem.type', index=2,
-      number=3, type=9, cpp_type=9, label=2,
-      has_default_value=True, default_value=_b("str").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=221,
-  serialized_end=281,
-)
-
-
-_IU = _descriptor.Descriptor(
-  name='IU',
-  full_name='ipaaca.protobuf.IU',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='uid', full_name='ipaaca.protobuf.IU.uid', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='revision', full_name='ipaaca.protobuf.IU.revision', index=1,
-      number=2, type=13, cpp_type=3, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='category', full_name='ipaaca.protobuf.IU.category', index=2,
-      number=3, type=9, cpp_type=9, label=2,
-      has_default_value=True, default_value=_b("undef").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='payload_type', full_name='ipaaca.protobuf.IU.payload_type', index=3,
-      number=4, type=9, cpp_type=9, label=2,
-      has_default_value=True, default_value=_b("MAP").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='owner_name', full_name='ipaaca.protobuf.IU.owner_name', index=4,
-      number=5, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='committed', full_name='ipaaca.protobuf.IU.committed', index=5,
-      number=6, type=8, cpp_type=7, label=2,
-      has_default_value=True, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='access_mode', full_name='ipaaca.protobuf.IU.access_mode', index=6,
-      number=7, type=14, cpp_type=8, label=2,
-      has_default_value=True, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='read_only', full_name='ipaaca.protobuf.IU.read_only', index=7,
-      number=8, type=8, cpp_type=7, label=2,
-      has_default_value=True, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='payload', full_name='ipaaca.protobuf.IU.payload', index=8,
-      number=9, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='links', full_name='ipaaca.protobuf.IU.links', index=9,
-      number=10, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.IU.request_uid', index=10,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_endpoint', full_name='ipaaca.protobuf.IU.request_endpoint', index=11,
-      number=101, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-    _IU_ACCESSMODE,
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=284,
-  serialized_end=690,
-)
-
-
-_IUPAYLOADUPDATE = _descriptor.Descriptor(
-  name='IUPayloadUpdate',
-  full_name='ipaaca.protobuf.IUPayloadUpdate',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='uid', full_name='ipaaca.protobuf.IUPayloadUpdate.uid', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='revision', full_name='ipaaca.protobuf.IUPayloadUpdate.revision', index=1,
-      number=2, type=13, cpp_type=3, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='new_items', full_name='ipaaca.protobuf.IUPayloadUpdate.new_items', index=2,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='keys_to_remove', full_name='ipaaca.protobuf.IUPayloadUpdate.keys_to_remove', index=3,
-      number=4, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='is_delta', full_name='ipaaca.protobuf.IUPayloadUpdate.is_delta', index=4,
-      number=5, type=8, cpp_type=7, label=2,
-      has_default_value=True, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='writer_name', full_name='ipaaca.protobuf.IUPayloadUpdate.writer_name', index=5,
-      number=6, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.IUPayloadUpdate.request_uid', index=6,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_endpoint', full_name='ipaaca.protobuf.IUPayloadUpdate.request_endpoint', index=7,
-      number=101, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=693,
-  serialized_end=911,
-)
-
-
-_IURETRACTION = _descriptor.Descriptor(
-  name='IURetraction',
-  full_name='ipaaca.protobuf.IURetraction',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='uid', full_name='ipaaca.protobuf.IURetraction.uid', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='revision', full_name='ipaaca.protobuf.IURetraction.revision', index=1,
-      number=2, type=13, cpp_type=3, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.IURetraction.request_uid', index=2,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_endpoint', full_name='ipaaca.protobuf.IURetraction.request_endpoint', index=3,
-      number=101, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=913,
-  serialized_end=1009,
-)
-
-
-_IUCOMMISSION = _descriptor.Descriptor(
-  name='IUCommission',
-  full_name='ipaaca.protobuf.IUCommission',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='uid', full_name='ipaaca.protobuf.IUCommission.uid', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='revision', full_name='ipaaca.protobuf.IUCommission.revision', index=1,
-      number=2, type=13, cpp_type=3, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='writer_name', full_name='ipaaca.protobuf.IUCommission.writer_name', index=2,
-      number=3, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.IUCommission.request_uid', index=3,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_endpoint', full_name='ipaaca.protobuf.IUCommission.request_endpoint', index=4,
-      number=101, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1011,
-  serialized_end=1128,
-)
-
-
-_IULINKUPDATE = _descriptor.Descriptor(
-  name='IULinkUpdate',
-  full_name='ipaaca.protobuf.IULinkUpdate',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='uid', full_name='ipaaca.protobuf.IULinkUpdate.uid', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='revision', full_name='ipaaca.protobuf.IULinkUpdate.revision', index=1,
-      number=2, type=13, cpp_type=3, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='new_links', full_name='ipaaca.protobuf.IULinkUpdate.new_links', index=2,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='links_to_remove', full_name='ipaaca.protobuf.IULinkUpdate.links_to_remove', index=3,
-      number=4, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='is_delta', full_name='ipaaca.protobuf.IULinkUpdate.is_delta', index=4,
-      number=5, type=8, cpp_type=7, label=2,
-      has_default_value=True, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='writer_name', full_name='ipaaca.protobuf.IULinkUpdate.writer_name', index=5,
-      number=6, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.IULinkUpdate.request_uid', index=6,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_endpoint', full_name='ipaaca.protobuf.IULinkUpdate.request_endpoint', index=7,
-      number=101, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1131,
-  serialized_end=1369,
-)
-
-
-_IURESENDREQUEST = _descriptor.Descriptor(
-  name='IUResendRequest',
-  full_name='ipaaca.protobuf.IUResendRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='uid', full_name='ipaaca.protobuf.IUResendRequest.uid', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='hidden_scope_name', full_name='ipaaca.protobuf.IUResendRequest.hidden_scope_name', index=1,
-      number=2, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.IUResendRequest.request_uid', index=2,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_endpoint', full_name='ipaaca.protobuf.IUResendRequest.request_endpoint', index=3,
-      number=101, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1371,
-  serialized_end=1479,
-)
-
-
-_REMOTEREQUESTRESULT = _descriptor.Descriptor(
-  name='RemoteRequestResult',
-  full_name='ipaaca.protobuf.RemoteRequestResult',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='result', full_name='ipaaca.protobuf.RemoteRequestResult.result', index=0,
-      number=1, type=13, cpp_type=3, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.RemoteRequestResult.request_uid', index=1,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1481,
-  serialized_end=1541,
-)
-
-
-_IUPAYLOADUPDATEREQUEST = _descriptor.Descriptor(
-  name='IUPayloadUpdateRequest',
-  full_name='ipaaca.protobuf.IUPayloadUpdateRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='uid', full_name='ipaaca.protobuf.IUPayloadUpdateRequest.uid', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='revision', full_name='ipaaca.protobuf.IUPayloadUpdateRequest.revision', index=1,
-      number=2, type=13, cpp_type=3, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='new_items', full_name='ipaaca.protobuf.IUPayloadUpdateRequest.new_items', index=2,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='keys_to_remove', full_name='ipaaca.protobuf.IUPayloadUpdateRequest.keys_to_remove', index=3,
-      number=4, type=9, cpp_type=9, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='is_delta', full_name='ipaaca.protobuf.IUPayloadUpdateRequest.is_delta', index=4,
-      number=5, type=8, cpp_type=7, label=2,
-      has_default_value=True, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='writer_name', full_name='ipaaca.protobuf.IUPayloadUpdateRequest.writer_name', index=5,
-      number=6, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.IUPayloadUpdateRequest.request_uid', index=6,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_endpoint', full_name='ipaaca.protobuf.IUPayloadUpdateRequest.request_endpoint', index=7,
-      number=101, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1544,
-  serialized_end=1769,
-)
-
-
-_IUCOMMISSIONREQUEST = _descriptor.Descriptor(
-  name='IUCommissionRequest',
-  full_name='ipaaca.protobuf.IUCommissionRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='uid', full_name='ipaaca.protobuf.IUCommissionRequest.uid', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='revision', full_name='ipaaca.protobuf.IUCommissionRequest.revision', index=1,
-      number=2, type=13, cpp_type=3, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='writer_name', full_name='ipaaca.protobuf.IUCommissionRequest.writer_name', index=2,
-      number=3, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.IUCommissionRequest.request_uid', index=3,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_endpoint', full_name='ipaaca.protobuf.IUCommissionRequest.request_endpoint', index=4,
-      number=101, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1771,
-  serialized_end=1895,
-)
-
-
-_IULINKUPDATEREQUEST = _descriptor.Descriptor(
-  name='IULinkUpdateRequest',
-  full_name='ipaaca.protobuf.IULinkUpdateRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='uid', full_name='ipaaca.protobuf.IULinkUpdateRequest.uid', index=0,
-      number=1, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='revision', full_name='ipaaca.protobuf.IULinkUpdateRequest.revision', index=1,
-      number=2, type=13, cpp_type=3, label=2,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='new_links', full_name='ipaaca.protobuf.IULinkUpdateRequest.new_links', index=2,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='links_to_remove', full_name='ipaaca.protobuf.IULinkUpdateRequest.links_to_remove', index=3,
-      number=4, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='is_delta', full_name='ipaaca.protobuf.IULinkUpdateRequest.is_delta', index=4,
-      number=5, type=8, cpp_type=7, label=2,
-      has_default_value=True, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='writer_name', full_name='ipaaca.protobuf.IULinkUpdateRequest.writer_name', index=5,
-      number=6, type=9, cpp_type=9, label=2,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_uid', full_name='ipaaca.protobuf.IULinkUpdateRequest.request_uid', index=6,
-      number=100, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='request_endpoint', full_name='ipaaca.protobuf.IULinkUpdateRequest.request_endpoint', index=7,
-      number=101, type=9, cpp_type=9, label=1,
-      has_default_value=True, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto2',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1898,
-  serialized_end=2143,
-)
-
-_TRANSPORTLEVELWRAPPER.fields_by_name['transport_message_type'].enum_type = _TRANSPORTMESSAGETYPE
-_IU.fields_by_name['access_mode'].enum_type = _IU_ACCESSMODE
-_IU.fields_by_name['payload'].message_type = _PAYLOADITEM
-_IU.fields_by_name['links'].message_type = _LINKSET
-_IU_ACCESSMODE.containing_type = _IU
-_IUPAYLOADUPDATE.fields_by_name['new_items'].message_type = _PAYLOADITEM
-_IULINKUPDATE.fields_by_name['new_links'].message_type = _LINKSET
-_IULINKUPDATE.fields_by_name['links_to_remove'].message_type = _LINKSET
-_IUPAYLOADUPDATEREQUEST.fields_by_name['new_items'].message_type = _PAYLOADITEM
-_IULINKUPDATEREQUEST.fields_by_name['new_links'].message_type = _LINKSET
-_IULINKUPDATEREQUEST.fields_by_name['links_to_remove'].message_type = _LINKSET
-DESCRIPTOR.message_types_by_name['TransportLevelWrapper'] = _TRANSPORTLEVELWRAPPER
-DESCRIPTOR.message_types_by_name['IntMessage'] = _INTMESSAGE
-DESCRIPTOR.message_types_by_name['LinkSet'] = _LINKSET
-DESCRIPTOR.message_types_by_name['PayloadItem'] = _PAYLOADITEM
-DESCRIPTOR.message_types_by_name['IU'] = _IU
-DESCRIPTOR.message_types_by_name['IUPayloadUpdate'] = _IUPAYLOADUPDATE
-DESCRIPTOR.message_types_by_name['IURetraction'] = _IURETRACTION
-DESCRIPTOR.message_types_by_name['IUCommission'] = _IUCOMMISSION
-DESCRIPTOR.message_types_by_name['IULinkUpdate'] = _IULINKUPDATE
-DESCRIPTOR.message_types_by_name['IUResendRequest'] = _IURESENDREQUEST
-DESCRIPTOR.message_types_by_name['RemoteRequestResult'] = _REMOTEREQUESTRESULT
-DESCRIPTOR.message_types_by_name['IUPayloadUpdateRequest'] = _IUPAYLOADUPDATEREQUEST
-DESCRIPTOR.message_types_by_name['IUCommissionRequest'] = _IUCOMMISSIONREQUEST
-DESCRIPTOR.message_types_by_name['IULinkUpdateRequest'] = _IULINKUPDATEREQUEST
-DESCRIPTOR.enum_types_by_name['TransportMessageType'] = _TRANSPORTMESSAGETYPE
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-TransportLevelWrapper = _reflection.GeneratedProtocolMessageType('TransportLevelWrapper', (_message.Message,), dict(
-  DESCRIPTOR = _TRANSPORTLEVELWRAPPER,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.TransportLevelWrapper)
-  ))
-_sym_db.RegisterMessage(TransportLevelWrapper)
-
-IntMessage = _reflection.GeneratedProtocolMessageType('IntMessage', (_message.Message,), dict(
-  DESCRIPTOR = _INTMESSAGE,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IntMessage)
-  ))
-_sym_db.RegisterMessage(IntMessage)
-
-LinkSet = _reflection.GeneratedProtocolMessageType('LinkSet', (_message.Message,), dict(
-  DESCRIPTOR = _LINKSET,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.LinkSet)
-  ))
-_sym_db.RegisterMessage(LinkSet)
-
-PayloadItem = _reflection.GeneratedProtocolMessageType('PayloadItem', (_message.Message,), dict(
-  DESCRIPTOR = _PAYLOADITEM,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.PayloadItem)
-  ))
-_sym_db.RegisterMessage(PayloadItem)
-
-IU = _reflection.GeneratedProtocolMessageType('IU', (_message.Message,), dict(
-  DESCRIPTOR = _IU,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IU)
-  ))
-_sym_db.RegisterMessage(IU)
-
-IUPayloadUpdate = _reflection.GeneratedProtocolMessageType('IUPayloadUpdate', (_message.Message,), dict(
-  DESCRIPTOR = _IUPAYLOADUPDATE,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IUPayloadUpdate)
-  ))
-_sym_db.RegisterMessage(IUPayloadUpdate)
-
-IURetraction = _reflection.GeneratedProtocolMessageType('IURetraction', (_message.Message,), dict(
-  DESCRIPTOR = _IURETRACTION,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IURetraction)
-  ))
-_sym_db.RegisterMessage(IURetraction)
-
-IUCommission = _reflection.GeneratedProtocolMessageType('IUCommission', (_message.Message,), dict(
-  DESCRIPTOR = _IUCOMMISSION,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IUCommission)
-  ))
-_sym_db.RegisterMessage(IUCommission)
-
-IULinkUpdate = _reflection.GeneratedProtocolMessageType('IULinkUpdate', (_message.Message,), dict(
-  DESCRIPTOR = _IULINKUPDATE,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IULinkUpdate)
-  ))
-_sym_db.RegisterMessage(IULinkUpdate)
-
-IUResendRequest = _reflection.GeneratedProtocolMessageType('IUResendRequest', (_message.Message,), dict(
-  DESCRIPTOR = _IURESENDREQUEST,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IUResendRequest)
-  ))
-_sym_db.RegisterMessage(IUResendRequest)
-
-RemoteRequestResult = _reflection.GeneratedProtocolMessageType('RemoteRequestResult', (_message.Message,), dict(
-  DESCRIPTOR = _REMOTEREQUESTRESULT,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.RemoteRequestResult)
-  ))
-_sym_db.RegisterMessage(RemoteRequestResult)
-
-IUPayloadUpdateRequest = _reflection.GeneratedProtocolMessageType('IUPayloadUpdateRequest', (_message.Message,), dict(
-  DESCRIPTOR = _IUPAYLOADUPDATEREQUEST,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IUPayloadUpdateRequest)
-  ))
-_sym_db.RegisterMessage(IUPayloadUpdateRequest)
-
-IUCommissionRequest = _reflection.GeneratedProtocolMessageType('IUCommissionRequest', (_message.Message,), dict(
-  DESCRIPTOR = _IUCOMMISSIONREQUEST,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IUCommissionRequest)
-  ))
-_sym_db.RegisterMessage(IUCommissionRequest)
-
-IULinkUpdateRequest = _reflection.GeneratedProtocolMessageType('IULinkUpdateRequest', (_message.Message,), dict(
-  DESCRIPTOR = _IULINKUPDATEREQUEST,
-  __module__ = 'ipaaca_pb2'
-  # @@protoc_insertion_point(class_scope:ipaaca.protobuf.IULinkUpdateRequest)
-  ))
-_sym_db.RegisterMessage(IULinkUpdateRequest)
-
-
-# @@protoc_insertion_point(module_scope)
diff --git a/ipaacalib/python/setup.py b/ipaacalib/python/setup.py
index 7d72112483fe6926282472a14171e1d8fe3ce030..a3e0ad2d05b6074b4ce217862fe9c547da1fd5ac 100644
--- a/ipaacalib/python/setup.py
+++ b/ipaacalib/python/setup.py
@@ -50,7 +50,7 @@ class ProtoBuild(build_py):
 
             if (not op.exists(output) or (op.getmtime(source) > op.getmtime(output))):
                 sys.stderr.write('Protobuf-compiling ' + source + '\n')
-                subprocess.check_call([self.find_protoc(), "-I={}".format(packagedir),'--python_out=.', source])
+                subprocess.check_call([self.find_protoc(), "-I={}".format(packagedir),'--python_out=./src/ipaaca', source])
 
 class BDist_egg(bdist_egg):
     '''