Index: mojo/dart/packages/_mojo_for_test_only/lib/mojo/test/versioning/versioning_test_client.mojom.dart |
diff --git a/mojo/dart/packages/_mojo_for_test_only/lib/mojo/test/versioning/versioning_test_client.mojom.dart b/mojo/dart/packages/_mojo_for_test_only/lib/mojo/test/versioning/versioning_test_client.mojom.dart |
index 2004a480db11f6b543899744a3b61f6fb21913e5..f25985a88435b119a5872be5105071eccd86d047 100644 |
--- a/mojo/dart/packages/_mojo_for_test_only/lib/mojo/test/versioning/versioning_test_client.mojom.dart |
+++ b/mojo/dart/packages/_mojo_for_test_only/lib/mojo/test/versioning/versioning_test_client.mojom.dart |
@@ -77,6 +77,12 @@ class Employee extends bindings.Struct { |
Employee() : super(kVersions.last.size); |
+ Employee.init( |
+ int this.employeeId, |
+ String this.name, |
+ Department this.department |
+ ) : super(kVersions.last.size); |
+ |
static Employee deserialize(bindings.Message message) { |
var decoder = new bindings.Decoder(message); |
var result = decode(decoder); |
@@ -179,6 +185,10 @@ class _HumanResourceDatabaseAddEmployeeParams extends bindings.Struct { |
_HumanResourceDatabaseAddEmployeeParams() : super(kVersions.last.size); |
+ _HumanResourceDatabaseAddEmployeeParams.init( |
+ Employee this.employee |
+ ) : super(kVersions.last.size); |
+ |
static _HumanResourceDatabaseAddEmployeeParams deserialize(bindings.Message message) { |
var decoder = new bindings.Decoder(message); |
var result = decode(decoder); |
@@ -252,6 +262,10 @@ class HumanResourceDatabaseAddEmployeeResponseParams extends bindings.Struct { |
HumanResourceDatabaseAddEmployeeResponseParams() : super(kVersions.last.size); |
+ HumanResourceDatabaseAddEmployeeResponseParams.init( |
+ bool this.success |
+ ) : super(kVersions.last.size); |
+ |
static HumanResourceDatabaseAddEmployeeResponseParams deserialize(bindings.Message message) { |
var decoder = new bindings.Decoder(message); |
var result = decode(decoder); |
@@ -326,6 +340,11 @@ class _HumanResourceDatabaseQueryEmployeeParams extends bindings.Struct { |
_HumanResourceDatabaseQueryEmployeeParams() : super(kVersions.last.size); |
+ _HumanResourceDatabaseQueryEmployeeParams.init( |
+ int this.id, |
+ bool this.retrieveFingerPrint |
+ ) : super(kVersions.last.size); |
+ |
static _HumanResourceDatabaseQueryEmployeeParams deserialize(bindings.Message message) { |
var decoder = new bindings.Decoder(message); |
var result = decode(decoder); |
@@ -413,6 +432,11 @@ class HumanResourceDatabaseQueryEmployeeResponseParams extends bindings.Struct { |
HumanResourceDatabaseQueryEmployeeResponseParams() : super(kVersions.last.size); |
+ HumanResourceDatabaseQueryEmployeeResponseParams.init( |
+ Employee this.employee, |
+ List<int> this.fingerPrint |
+ ) : super(kVersions.last.size); |
+ |
static HumanResourceDatabaseQueryEmployeeResponseParams deserialize(bindings.Message message) { |
var decoder = new bindings.Decoder(message); |
var result = decode(decoder); |
@@ -500,6 +524,11 @@ class _HumanResourceDatabaseAttachFingerPrintParams extends bindings.Struct { |
_HumanResourceDatabaseAttachFingerPrintParams() : super(kVersions.last.size); |
+ _HumanResourceDatabaseAttachFingerPrintParams.init( |
+ int this.id, |
+ List<int> this.fingerPrint |
+ ) : super(kVersions.last.size); |
+ |
static _HumanResourceDatabaseAttachFingerPrintParams deserialize(bindings.Message message) { |
var decoder = new bindings.Decoder(message); |
var result = decode(decoder); |
@@ -585,6 +614,10 @@ class HumanResourceDatabaseAttachFingerPrintResponseParams extends bindings.Stru |
HumanResourceDatabaseAttachFingerPrintResponseParams() : super(kVersions.last.size); |
+ HumanResourceDatabaseAttachFingerPrintResponseParams.init( |
+ bool this.success |
+ ) : super(kVersions.last.size); |
+ |
static HumanResourceDatabaseAttachFingerPrintResponseParams deserialize(bindings.Message message) { |
var decoder = new bindings.Decoder(message); |
var result = decode(decoder); |
@@ -656,6 +689,9 @@ class _HumanResourceDatabaseListEmployeeIdsParams extends bindings.Struct { |
_HumanResourceDatabaseListEmployeeIdsParams() : super(kVersions.last.size); |
+ _HumanResourceDatabaseListEmployeeIdsParams.init( |
+ ) : super(kVersions.last.size); |
+ |
static _HumanResourceDatabaseListEmployeeIdsParams deserialize(bindings.Message message) { |
var decoder = new bindings.Decoder(message); |
var result = decode(decoder); |
@@ -715,6 +751,10 @@ class HumanResourceDatabaseListEmployeeIdsResponseParams extends bindings.Struct |
HumanResourceDatabaseListEmployeeIdsResponseParams() : super(kVersions.last.size); |
+ HumanResourceDatabaseListEmployeeIdsResponseParams.init( |
+ List<int> this.ids |
+ ) : super(kVersions.last.size); |
+ |
static HumanResourceDatabaseListEmployeeIdsResponseParams deserialize(bindings.Message message) { |
var decoder = new bindings.Decoder(message); |
var result = decode(decoder); |
@@ -784,17 +824,19 @@ const int _humanResourceDatabaseMethodAttachFingerPrintName = 2; |
const int _humanResourceDatabaseMethodListEmployeeIdsName = 3; |
class _HumanResourceDatabaseServiceDescription implements service_describer.ServiceDescription { |
- dynamic getTopLevelInterface([Function responseFactory]){ |
+ void getTopLevelInterface(Function responder){ |
var interfaceTypeKey = getRuntimeTypeInfo().services["mojo::test::versioning::HumanResourceDatabase"]; |
var userDefinedType = getAllMojomTypeDefinitions()[interfaceTypeKey]; |
- return responseFactory(userDefinedType.interfaceType); |
+ responder(userDefinedType.interfaceType); |
} |
- dynamic getTypeDefinition(String typeKey, [Function responseFactory]) => |
- responseFactory(getAllMojomTypeDefinitions()[typeKey]); |
+ void getTypeDefinition(String typeKey, Function responder) { |
+ responder(getAllMojomTypeDefinitions()[typeKey]); |
+ } |
- dynamic getAllTypeDefinitions([Function responseFactory]) => |
- responseFactory(getAllMojomTypeDefinitions()); |
+ void getAllTypeDefinitions(Function responder) { |
+ responder(getAllMojomTypeDefinitions()); |
+ } |
} |
abstract class HumanResourceDatabase { |
@@ -819,10 +861,10 @@ abstract class HumanResourceDatabase { |
s.connectToService(url, p, name); |
return p; |
} |
- dynamic addEmployee(Employee employee,[Function responseFactory = null]); |
- dynamic queryEmployee(int id,bool retrieveFingerPrint,[Function responseFactory = null]); |
- dynamic attachFingerPrint(int id,List<int> fingerPrint,[Function responseFactory = null]); |
- dynamic listEmployeeIds([Function responseFactory = null]); |
+ void addEmployee(Employee employee,void callback(bool success)); |
+ void queryEmployee(int id,bool retrieveFingerPrint,void callback(Employee employee, List<int> fingerPrint)); |
+ void attachFingerPrint(int id,List<int> fingerPrint,void callback(bool success)); |
+ void listEmployeeIds(void callback(List<int> ids)); |
} |
abstract class HumanResourceDatabaseInterface |
@@ -872,18 +914,14 @@ class _HumanResourceDatabaseProxyControl |
proxyError("Expected a message with a valid request Id."); |
return; |
} |
- Completer c = completerMap[message.header.requestId]; |
- if (c == null) { |
+ Function callback = callbackMap[message.header.requestId]; |
+ if (callback == null) { |
proxyError( |
"Message had unknown request Id: ${message.header.requestId}"); |
return; |
} |
- completerMap.remove(message.header.requestId); |
- if (c.isCompleted) { |
- proxyError("Response completer already completed"); |
- return; |
- } |
- c.complete(r); |
+ callbackMap.remove(message.header.requestId); |
+ callback(r.success ); |
break; |
case _humanResourceDatabaseMethodQueryEmployeeName: |
var r = HumanResourceDatabaseQueryEmployeeResponseParams.deserialize( |
@@ -892,18 +930,14 @@ class _HumanResourceDatabaseProxyControl |
proxyError("Expected a message with a valid request Id."); |
return; |
} |
- Completer c = completerMap[message.header.requestId]; |
- if (c == null) { |
+ Function callback = callbackMap[message.header.requestId]; |
+ if (callback == null) { |
proxyError( |
"Message had unknown request Id: ${message.header.requestId}"); |
return; |
} |
- completerMap.remove(message.header.requestId); |
- if (c.isCompleted) { |
- proxyError("Response completer already completed"); |
- return; |
- } |
- c.complete(r); |
+ callbackMap.remove(message.header.requestId); |
+ callback(r.employee , r.fingerPrint ); |
break; |
case _humanResourceDatabaseMethodAttachFingerPrintName: |
var r = HumanResourceDatabaseAttachFingerPrintResponseParams.deserialize( |
@@ -912,18 +946,14 @@ class _HumanResourceDatabaseProxyControl |
proxyError("Expected a message with a valid request Id."); |
return; |
} |
- Completer c = completerMap[message.header.requestId]; |
- if (c == null) { |
+ Function callback = callbackMap[message.header.requestId]; |
+ if (callback == null) { |
proxyError( |
"Message had unknown request Id: ${message.header.requestId}"); |
return; |
} |
- completerMap.remove(message.header.requestId); |
- if (c.isCompleted) { |
- proxyError("Response completer already completed"); |
- return; |
- } |
- c.complete(r); |
+ callbackMap.remove(message.header.requestId); |
+ callback(r.success ); |
break; |
case _humanResourceDatabaseMethodListEmployeeIdsName: |
var r = HumanResourceDatabaseListEmployeeIdsResponseParams.deserialize( |
@@ -932,18 +962,14 @@ class _HumanResourceDatabaseProxyControl |
proxyError("Expected a message with a valid request Id."); |
return; |
} |
- Completer c = completerMap[message.header.requestId]; |
- if (c == null) { |
+ Function callback = callbackMap[message.header.requestId]; |
+ if (callback == null) { |
proxyError( |
"Message had unknown request Id: ${message.header.requestId}"); |
return; |
} |
- completerMap.remove(message.header.requestId); |
- if (c.isCompleted) { |
- proxyError("Response completer already completed"); |
- return; |
- } |
- c.complete(r); |
+ callbackMap.remove(message.header.requestId); |
+ callback(r.ids ); |
break; |
default: |
proxyError("Unexpected message type: ${message.header.type}"); |
@@ -988,54 +1014,62 @@ class HumanResourceDatabaseProxy |
} |
- dynamic addEmployee(Employee employee,[Function responseFactory = null]) { |
+ void addEmployee(Employee employee,void callback(bool success)) { |
if (impl != null) { |
- return new Future(() => impl.addEmployee(employee,_HumanResourceDatabaseStubControl._humanResourceDatabaseAddEmployeeResponseParamsFactory)); |
+ impl.addEmployee(employee,callback); |
+ return; |
} |
var params = new _HumanResourceDatabaseAddEmployeeParams(); |
params.employee = employee; |
- return ctrl.sendMessageWithRequestId( |
+ ctrl.sendMessageWithRequestId( |
params, |
_humanResourceDatabaseMethodAddEmployeeName, |
-1, |
- bindings.MessageHeader.kMessageExpectsResponse); |
+ bindings.MessageHeader.kMessageExpectsResponse, |
+ callback); |
} |
- dynamic queryEmployee(int id,bool retrieveFingerPrint,[Function responseFactory = null]) { |
+ void queryEmployee(int id,bool retrieveFingerPrint,void callback(Employee employee, List<int> fingerPrint)) { |
if (impl != null) { |
- return new Future(() => impl.queryEmployee(id,retrieveFingerPrint,_HumanResourceDatabaseStubControl._humanResourceDatabaseQueryEmployeeResponseParamsFactory)); |
+ impl.queryEmployee(id,retrieveFingerPrint,callback); |
+ return; |
} |
var params = new _HumanResourceDatabaseQueryEmployeeParams(); |
params.id = id; |
params.retrieveFingerPrint = retrieveFingerPrint; |
- return ctrl.sendMessageWithRequestId( |
+ ctrl.sendMessageWithRequestId( |
params, |
_humanResourceDatabaseMethodQueryEmployeeName, |
-1, |
- bindings.MessageHeader.kMessageExpectsResponse); |
+ bindings.MessageHeader.kMessageExpectsResponse, |
+ callback); |
} |
- dynamic attachFingerPrint(int id,List<int> fingerPrint,[Function responseFactory = null]) { |
+ void attachFingerPrint(int id,List<int> fingerPrint,void callback(bool success)) { |
if (impl != null) { |
- return new Future(() => impl.attachFingerPrint(id,fingerPrint,_HumanResourceDatabaseStubControl._humanResourceDatabaseAttachFingerPrintResponseParamsFactory)); |
+ impl.attachFingerPrint(id,fingerPrint,callback); |
+ return; |
} |
var params = new _HumanResourceDatabaseAttachFingerPrintParams(); |
params.id = id; |
params.fingerPrint = fingerPrint; |
- return ctrl.sendMessageWithRequestId( |
+ ctrl.sendMessageWithRequestId( |
params, |
_humanResourceDatabaseMethodAttachFingerPrintName, |
-1, |
- bindings.MessageHeader.kMessageExpectsResponse); |
+ bindings.MessageHeader.kMessageExpectsResponse, |
+ callback); |
} |
- dynamic listEmployeeIds([Function responseFactory = null]) { |
+ void listEmployeeIds(void callback(List<int> ids)) { |
if (impl != null) { |
- return new Future(() => impl.listEmployeeIds(_HumanResourceDatabaseStubControl._humanResourceDatabaseListEmployeeIdsResponseParamsFactory)); |
+ impl.listEmployeeIds(callback); |
+ return; |
} |
var params = new _HumanResourceDatabaseListEmployeeIdsParams(); |
- return ctrl.sendMessageWithRequestId( |
+ ctrl.sendMessageWithRequestId( |
params, |
_humanResourceDatabaseMethodListEmployeeIdsName, |
-1, |
- bindings.MessageHeader.kMessageExpectsResponse); |
+ bindings.MessageHeader.kMessageExpectsResponse, |
+ callback); |
} |
} |
@@ -1061,33 +1095,61 @@ class _HumanResourceDatabaseStubControl |
String get serviceName => HumanResourceDatabase.serviceName; |
- static HumanResourceDatabaseAddEmployeeResponseParams _humanResourceDatabaseAddEmployeeResponseParamsFactory(bool success) { |
- var result = new HumanResourceDatabaseAddEmployeeResponseParams(); |
- result.success = success; |
- return result; |
- } |
- static HumanResourceDatabaseQueryEmployeeResponseParams _humanResourceDatabaseQueryEmployeeResponseParamsFactory(Employee employee, List<int> fingerPrint) { |
- var result = new HumanResourceDatabaseQueryEmployeeResponseParams(); |
- result.employee = employee; |
- result.fingerPrint = fingerPrint; |
- return result; |
- } |
- static HumanResourceDatabaseAttachFingerPrintResponseParams _humanResourceDatabaseAttachFingerPrintResponseParamsFactory(bool success) { |
- var result = new HumanResourceDatabaseAttachFingerPrintResponseParams(); |
- result.success = success; |
- return result; |
- } |
- static HumanResourceDatabaseListEmployeeIdsResponseParams _humanResourceDatabaseListEmployeeIdsResponseParamsFactory(List<int> ids) { |
- var result = new HumanResourceDatabaseListEmployeeIdsResponseParams(); |
- result.ids = ids; |
- return result; |
- } |
- |
- dynamic handleMessage(bindings.ServiceMessage message) { |
+ Function _humanResourceDatabaseAddEmployeeResponseParamsResponder( |
+ int requestId) { |
+ return (bool success) { |
+ var result = new HumanResourceDatabaseAddEmployeeResponseParams(); |
+ result.success = success; |
+ sendResponse(buildResponseWithId( |
+ result, |
+ _humanResourceDatabaseMethodAddEmployeeName, |
+ requestId, |
+ bindings.MessageHeader.kMessageIsResponse)); |
+ }; |
+ } |
+ Function _humanResourceDatabaseQueryEmployeeResponseParamsResponder( |
+ int requestId) { |
+ return (Employee employee, List<int> fingerPrint) { |
+ var result = new HumanResourceDatabaseQueryEmployeeResponseParams(); |
+ result.employee = employee; |
+ result.fingerPrint = fingerPrint; |
+ sendResponse(buildResponseWithId( |
+ result, |
+ _humanResourceDatabaseMethodQueryEmployeeName, |
+ requestId, |
+ bindings.MessageHeader.kMessageIsResponse)); |
+ }; |
+ } |
+ Function _humanResourceDatabaseAttachFingerPrintResponseParamsResponder( |
+ int requestId) { |
+ return (bool success) { |
+ var result = new HumanResourceDatabaseAttachFingerPrintResponseParams(); |
+ result.success = success; |
+ sendResponse(buildResponseWithId( |
+ result, |
+ _humanResourceDatabaseMethodAttachFingerPrintName, |
+ requestId, |
+ bindings.MessageHeader.kMessageIsResponse)); |
+ }; |
+ } |
+ Function _humanResourceDatabaseListEmployeeIdsResponseParamsResponder( |
+ int requestId) { |
+ return (List<int> ids) { |
+ var result = new HumanResourceDatabaseListEmployeeIdsResponseParams(); |
+ result.ids = ids; |
+ sendResponse(buildResponseWithId( |
+ result, |
+ _humanResourceDatabaseMethodListEmployeeIdsName, |
+ requestId, |
+ bindings.MessageHeader.kMessageIsResponse)); |
+ }; |
+ } |
+ |
+ void handleMessage(bindings.ServiceMessage message) { |
if (bindings.ControlMessageHandler.isControlMessage(message)) { |
- return bindings.ControlMessageHandler.handleMessage(this, |
- 2, |
- message); |
+ bindings.ControlMessageHandler.handleMessage( |
+ this, 2, message); |
+ return; |
} |
if (_impl == null) { |
throw new core.MojoApiError("$this has no implementation set"); |
@@ -1096,94 +1158,25 @@ class _HumanResourceDatabaseStubControl |
case _humanResourceDatabaseMethodAddEmployeeName: |
var params = _HumanResourceDatabaseAddEmployeeParams.deserialize( |
message.payload); |
- var response = _impl.addEmployee(params.employee,_humanResourceDatabaseAddEmployeeResponseParamsFactory); |
- if (response is Future) { |
- return response.then((response) { |
- if (response != null) { |
- return buildResponseWithId( |
- response, |
- _humanResourceDatabaseMethodAddEmployeeName, |
- message.header.requestId, |
- bindings.MessageHeader.kMessageIsResponse); |
- } |
- }); |
- } else if (response != null) { |
- return buildResponseWithId( |
- response, |
- _humanResourceDatabaseMethodAddEmployeeName, |
- message.header.requestId, |
- bindings.MessageHeader.kMessageIsResponse); |
- } |
+ _impl.addEmployee(params.employee, _humanResourceDatabaseAddEmployeeResponseParamsResponder(message.header.requestId)); |
break; |
case _humanResourceDatabaseMethodQueryEmployeeName: |
var params = _HumanResourceDatabaseQueryEmployeeParams.deserialize( |
message.payload); |
- var response = _impl.queryEmployee(params.id,params.retrieveFingerPrint,_humanResourceDatabaseQueryEmployeeResponseParamsFactory); |
- if (response is Future) { |
- return response.then((response) { |
- if (response != null) { |
- return buildResponseWithId( |
- response, |
- _humanResourceDatabaseMethodQueryEmployeeName, |
- message.header.requestId, |
- bindings.MessageHeader.kMessageIsResponse); |
- } |
- }); |
- } else if (response != null) { |
- return buildResponseWithId( |
- response, |
- _humanResourceDatabaseMethodQueryEmployeeName, |
- message.header.requestId, |
- bindings.MessageHeader.kMessageIsResponse); |
- } |
+ _impl.queryEmployee(params.id, params.retrieveFingerPrint, _humanResourceDatabaseQueryEmployeeResponseParamsResponder(message.header.requestId)); |
break; |
case _humanResourceDatabaseMethodAttachFingerPrintName: |
var params = _HumanResourceDatabaseAttachFingerPrintParams.deserialize( |
message.payload); |
- var response = _impl.attachFingerPrint(params.id,params.fingerPrint,_humanResourceDatabaseAttachFingerPrintResponseParamsFactory); |
- if (response is Future) { |
- return response.then((response) { |
- if (response != null) { |
- return buildResponseWithId( |
- response, |
- _humanResourceDatabaseMethodAttachFingerPrintName, |
- message.header.requestId, |
- bindings.MessageHeader.kMessageIsResponse); |
- } |
- }); |
- } else if (response != null) { |
- return buildResponseWithId( |
- response, |
- _humanResourceDatabaseMethodAttachFingerPrintName, |
- message.header.requestId, |
- bindings.MessageHeader.kMessageIsResponse); |
- } |
+ _impl.attachFingerPrint(params.id, params.fingerPrint, _humanResourceDatabaseAttachFingerPrintResponseParamsResponder(message.header.requestId)); |
break; |
case _humanResourceDatabaseMethodListEmployeeIdsName: |
- var response = _impl.listEmployeeIds(_humanResourceDatabaseListEmployeeIdsResponseParamsFactory); |
- if (response is Future) { |
- return response.then((response) { |
- if (response != null) { |
- return buildResponseWithId( |
- response, |
- _humanResourceDatabaseMethodListEmployeeIdsName, |
- message.header.requestId, |
- bindings.MessageHeader.kMessageIsResponse); |
- } |
- }); |
- } else if (response != null) { |
- return buildResponseWithId( |
- response, |
- _humanResourceDatabaseMethodListEmployeeIdsName, |
- message.header.requestId, |
- bindings.MessageHeader.kMessageIsResponse); |
- } |
+ _impl.listEmployeeIds(_humanResourceDatabaseListEmployeeIdsResponseParamsResponder(message.header.requestId)); |
break; |
default: |
throw new bindings.MojoCodecError("Unexpected message name"); |
break; |
} |
- return null; |
} |
HumanResourceDatabase get impl => _impl; |
@@ -1237,17 +1230,17 @@ class HumanResourceDatabaseStub |
} |
- dynamic addEmployee(Employee employee,[Function responseFactory = null]) { |
- return impl.addEmployee(employee,responseFactory); |
+ void addEmployee(Employee employee,void callback(bool success)) { |
+ return impl.addEmployee(employee,callback); |
} |
- dynamic queryEmployee(int id,bool retrieveFingerPrint,[Function responseFactory = null]) { |
- return impl.queryEmployee(id,retrieveFingerPrint,responseFactory); |
+ void queryEmployee(int id,bool retrieveFingerPrint,void callback(Employee employee, List<int> fingerPrint)) { |
+ return impl.queryEmployee(id,retrieveFingerPrint,callback); |
} |
- dynamic attachFingerPrint(int id,List<int> fingerPrint,[Function responseFactory = null]) { |
- return impl.attachFingerPrint(id,fingerPrint,responseFactory); |
+ void attachFingerPrint(int id,List<int> fingerPrint,void callback(bool success)) { |
+ return impl.attachFingerPrint(id,fingerPrint,callback); |
} |
- dynamic listEmployeeIds([Function responseFactory = null]) { |
- return impl.listEmployeeIds(responseFactory); |
+ void listEmployeeIds(void callback(List<int> ids)) { |
+ return impl.listEmployeeIds(callback); |
} |
} |
@@ -1264,7 +1257,7 @@ mojom_types.RuntimeTypeInfo _initRuntimeTypeInfo() { |
// serializedRuntimeTypeInfo contains the bytes of the Mojo serialization of |
// a mojom_types.RuntimeTypeInfo struct describing the Mojom types in this |
// file. The string contains the base64 encoding of the gzip-compressed bytes. |
- var serializedRuntimeTypeInfo = "H4sIAAAJbogC/+xaT2/jRBS3nUJDl9WW/VfDQtcFAdHCxhUIKcpeWtGgRSwoULRiT5HrTBujxA62U3U57ZEjH4PjHvcj8BE47pEjx95gZv0GT8YztpO4sSN1pKepXccz7zfv/d5vJtGVqG1C/wJ6/n6XuVax1eH6C2z3sY28n712O0RB2G6fIj9wPNdxT9rth5OR5f6AAm/i2+jACq0jK0CC9zzA9jm2H590O71vOk/a5IVN8r5m/Lqm7G3J+f4JvYGtxvx/D/oB9LvYGpnjHqCx5Ycj5IZN/OxHmc93RuOh9xShxf1qwfypXw1uHZ7X4mvy51918fptqtP+K4z/7P1/of2kiNt1bBvYYkSi+x9juwtxkAJfYl5XsL2GzcV2jM2cBL459GxraJ543skQmQNvhMxffcskrzYD347+GE+Oho5tOm6I/GPLRoF55Lh9PFpgkuEDMx6/R2707KFD1o98eBThozHzaKnT+BpKepPh2MqJ41Xw+3D/UecQcujDbPya9HkexzfBn2XjmIWXWhBeVyC+DzqPX11/gu2DHHjR53m8rpaEl8HzKwB0vjYbTl0JTpvAqZSBSEy9J8MppqkkX2BbLwkflq93AZ+uNo1Pi5vvhpKvyfBVGHxF92m7AbGIALqe0xfG11vY3igBPxE+KpuIXKvPgY/K8CTfCA+RUHatERLhcr0kXDYlfrI4ET6uq/K8mhUnLSWOaB3tc3WUx+sGcFVZPMX7b2TogFn1FK8DdWbMGjMeX2dewDr9Db0mWdfnnB6k/PlPCn+y8zEEeniduU/54BD5p46NvoOwn1sXE66+hU32/8+w3ZPxuVxGJuJqC9Zv2XE1Ly66JA514BtKcRrETQPu0+d2X4/6365F/cvb4rg6h/6P2sXUjf1+n6m6Sb/0iugSisOZlt9/0loS/+8ABoz/9330ywTPRIgDbWXUCTb/ZXVCVk/n1RuNDD1H9YYoXrYqVB90iQ6ddd+cVhdUCQ+wcasXFLfvYruZiNtg7LkBWrW4naUtGrfXoE4GExv7Egh57l4FcJLFlawuvFzLt6/l9bKsLtwCfff9BPlPU/Zj71SsLvxeKya/qN6Z8p+pDFXJL/68yFCXux+V5dkGzAu2ocK42arIPjSt1SXnRfTzZ5K8eraAjq8x49H9zLeO+zhybDo+fRT6DjpFvWPsMPJ7Y99xQwneZhXiM4PfdE4z6xn1tL5WTL5vY7styHdaUaua78/U1dCDd0CvlFUn1AvSgyLcyfp01WL55OyC+eQmnJFxNKKI1vFByetIMKHzWef2p4vyDK+vHtLznLX4PEfNuW7aEurA23Cmux+Glj346tXqdeniCdZvuyJ6jTo2mFGv7Unw3AEsEjhM7eYvdduium0bOKAKuk1LORef9/sD2X4oLz8SfD4t+dxDxI9p+8s0nUXz1NCKydP3QYuK8jQ+vbg8v5j3/ILE35crdH6xB/E11uLvVrSc9bVWgC7SMurrFmD+yAlCqvq+7idx36nYOci5Usy+6C5gwPn/f1WtSp7Wc/CckhIPFK9WQeezBrw7iVvEcqvEb9oS95H09zQOzjFRHdiB33RVZf+xkSPuWP77LwAA///UgNHD2CgAAA=="; |
+ var serializedRuntimeTypeInfo = "H4sIAAAJbogC/+xaT4/bRBS3nYUNW6ou/beGwtYLAqJC41URUpRedsUGFVFQYFFFT5HXmSZGiR1sZ7Xl1CNHPgbHHvsR+Agce+TIcW8wk7ypJ+MZ20m8sSN1pKdZe53xvN+893u/mURXpm0b+hfQ8/fbzLWKrQrXX2K7i23o/eI1myEKwmbzFPmB47mO22s2H4yHlvsjCryxb6MjK7ROrAAJxrmP7QtsPz1utzrfth43yYB1Ml49Gq4uGy0+37+gN7BVmP8fQN+Hfh9bLfW9R2hk+eEQuWEdP/tJ6vOt4WjgPUVoeb8aMH/qV41bh+eV6Jr8+XdVvH7b6qz/CuM/e/8/aD8r4nYV2xa2CJHp/U+x3YY4SIAvNq9L2N7A5mHrYTPHgW8OPNsamD3P6w2Q2feGyPzNt0wy9D0z8O3JX+ZofDJwbNNxQ+Q/sWwUmCeO28WvC0zy/sCMJtAhNzr2wCELSD48nMxDY+bRUGfxNZTkJsOxkRHHy+D38eHD1jHk0Mfp+NXp8zyOb4M/q8YxDS81J7wuQXwftR5Nrj/D9lEGvOjzPF6XC8LL4PkVADrfmA+ntgSnbeBUykAkpj6Q4RTRVJwvsG0WhA/L1/uAT1ubxafBzXdLydZk+CoMvqL7tF2DWEQAXcfpCuPrHWxvFYCfCB+VTUSuVRfAR2V4km+Eh0gou9YQiXC5WhAu2xI/WZwIH1dVeV7Ni5OWEEe0jna5OsrjdQ24qiie4v03UnTAvHqK14E6884K8z6+zryAdfoHek2yrs85PUj5898E/mTnYwj08CZzn/LBMfJPHRt9D2G/sC4mXH0Dm+z/97DdkfG5XEbG4moH1m/VcbUoLrokDnXgG0pxGsRNDe7T5/bfnPa/X5n2L2+K4+oc+j8rF1M3DrtdpurG/dJLoksoDmdadv9Ja0j8vwUYMP7f9dGvYzwRIQ60FVEn2PyX1QlZPV1Ub9RS9BzVG6J42SlRfdAlOnTefXNSXVAlPMDGrZ5T3L6P7XosboOR5wZo3eJ2nrZs3F6BOhmMbexKIOS5OyXASRZXsrrwciPbvpbXy7K6cAP03Q9j5D9N2I+9V7K68Ecln/yiemfGf6YylCW/+PMiQ13tflSWZ1swL9iGCuNmpyT70KRWlZwX0c+fSfLq2RI6vsK8j+5nvnPcR1O/ZuPTR6HvoFPUeYL9RX5n5DtuKMHbLEN8pvCbzmlmPaWeVjfyyfddbDcF+U4ralnz/Zm6HnrwFuiVouqEekF6UIQ7WZ+2mi+fnF0wn1yHMzKORhTROt4veB0JJnQ+m9z+dFme4fXVA3qesxGd56gZ101bQR14F850D8PQsvtfT1avTRdPsH67JdFr1LH+nHrtQILnHmARw2FmN/9aty2r23aBA8qg27SEc/FFvz+Q7Yey8iPB5/OCzz1E/Ji0v0zSWTRPDS2fPP0QtKgoT6PTi9fnF4ueX5D4+2qNzi8OIL5GWvTdipaxvlZy0EVaSn3dAcwfOkFIVd833TjueyU7BzlX8tkX3QYMOP9fVdWy5Gk1A88pCfFA8WrkdD5rwNhx3KYst078pq1wH0l/T+PgHBPVgT34TVdZ9h9bGeKO5b//AwAA///eLupx2CgAAA=="; |
// Deserialize RuntimeTypeInfo |
var bytes = BASE64.decode(serializedRuntimeTypeInfo); |